﻿@font-face{font-family:"Inter";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/inter-latin.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:"Inter";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/inter-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:400 500;font-display:swap;src:url("../fonts/jetbrains-mono-latin.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:400 500;font-display:swap;src:url("../fonts/jetbrains-mono-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}:root{--blue: #005b99;--blue-light: #eaf5fb;--sky: #71b5dc;--text: #171b20;--muted: #5a636d;--line: #e7eaed;--white: #ffffff;--bg: #f8fafb;--dark: #11161b;--dark-line: #343c43;--dark-muted: #9ca6ae;--black: #0c1014;--radius: 22px;--max: 1180px;--gutter: 24px;--font-body: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;color-scheme:light;padding-top:env(safe-area-inset-top, 0px);padding-bottom:env(safe-area-inset-bottom, 0px)}@media(max-width: 600px){:root{--gutter: 16px}}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(env(safe-area-inset-top, 0px) + 76px)}@media(max-width: 960px){html{scroll-padding-top:calc(env(safe-area-inset-top, 0px) + 68px)}}body{margin:0;font-family:var(--font-body);font-size:.875rem;color:var(--text);background:var(--white);line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}[hidden]:not([hidden=until-found i]){display:none !important}:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px}.container{width:min(100% - 2*var(--gutter),var(--max));margin-inline:auto}h1,h2,h3{overflow-wrap:break-word;hyphens:auto}h1{font-size:clamp(2.5rem,5.4vw,4.7rem);line-height:1.04;letter-spacing:-0.05em;font-weight:650;margin:0 0 26px;text-wrap:balance}h1 span{color:var(--blue)}h2{margin:0;font-size:clamp(2rem,4vw,3.3rem);line-height:1.08;letter-spacing:-0.045em;font-weight:650;text-wrap:balance}.skip-link{position:absolute;top:calc(env(safe-area-inset-top, 0px) + 12px);left:var(--gutter);z-index:200;padding:12px 20px;border-radius:999px;background:var(--blue);color:#fff;font-weight:600;font-size:.92rem;transform:translateY(-200%)}.skip-link:focus{transform:none}.skip-link:focus-visible{outline-color:var(--text)}main:focus{outline:none}.site-header{position:sticky;top:env(safe-area-inset-top, 0px);z-index:100;background:rgba(255,255,255,.97);backdrop-filter:blur(16px);border-bottom:1px solid rgba(231,234,237,.8);transition:box-shadow .3s ease}.site-header.scrolled{box-shadow:0 8px 30px rgba(20,30,40,.06)}.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:30px}@media(max-width: 960px){.nav{min-height:68px}}.logo{width:210px;height:auto}@media(max-width: 960px){.logo{width:180px}}.nav-links{display:flex;align-items:center;gap:28px;font-size:.92rem;font-weight:500}.nav-links a{position:relative;color:#303840;transition:color .25s ease}.nav-links a::after{content:"";position:absolute;left:0;bottom:-7px;width:100%;height:1px;background:var(--blue);transform:scaleX(0);transform-origin:right;transition:transform .3s ease}.nav-links a:hover::after,.nav-links a:focus-visible::after,.nav-links a[aria-current]::after{transform:scaleX(1);transform-origin:left}.nav-links a[aria-current]{color:var(--blue)}.nav-links a.nav-contact{padding:10px 18px;border:1px solid var(--blue);border-radius:999px;color:var(--blue);transition:background .25s ease,color .25s ease}.nav-links a.nav-contact::after{display:none}.nav-links a.nav-contact:hover,.nav-links a.nav-contact[aria-current]{background:var(--blue);color:#fff}@media(max-width: 960px){.nav-links{display:none;position:absolute;left:var(--gutter);right:var(--gutter);top:64px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 40px rgba(20,30,40,.1);flex-direction:column;align-items:stretch;gap:18px}.nav-links.open{display:flex}.nav-links a.nav-contact{text-align:center}}.menu-button{display:none;border:0;background:none;padding:8px;cursor:pointer}.menu-button span{display:block;width:24px;height:2px;margin:5px;background:var(--text)}@media(max-width: 960px){.menu-button{display:block}}.button{display:inline-flex;align-items:center;gap:12px;padding:14px 22px;border-radius:999px;background:var(--blue);color:#fff;font-weight:600;font-size:.92rem;border:0;cursor:pointer;font-family:inherit;transition:transform .25s ease,box-shadow .25s ease}.button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,91,153,.2)}.button.arrow::after{content:"→";content:"→"/"";font-size:1.1rem}.button-light{background:#fff;color:var(--blue);font-family:var(--font-mono);font-weight:500;font-size:clamp(.9rem,2.6vw,1rem);overflow-wrap:anywhere;user-select:all}.button-light:hover{box-shadow:0 12px 30px rgba(0,0,0,.18)}.button-outline{background:rgba(0,0,0,0);color:#fff;border:1px solid rgba(255,255,255,.6)}.button-outline:hover{background:rgba(255,255,255,.12);box-shadow:none}section{padding-block:clamp(80px,9vw,120px)}.section-head{max-width:700px;margin-bottom:clamp(36px,5vw,60px)}.section-label{font-family:var(--font-mono);font-size:.86rem;color:var(--blue);letter-spacing:normal;font-weight:500;margin-bottom:14px}.section-label::before{content:"{ ";content:"{ "/""}.section-label::after{content:" }";content:" }"/""}.section-intro{color:var(--muted);margin:20px 0 0;font-size:1.05rem}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--blue);text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;margin-bottom:18px}.eyebrow::before{content:"";width:28px;height:1px;background:currentColor}@property --angle{syntax:"<angle>";inherits:false;initial-value:0deg}.code-panel{position:relative;background:rgba(255,255,255,.72);backdrop-filter:blur(14px) saturate(140%);border-radius:var(--radius);padding:26px 28px;font-family:var(--font-mono);font-size:14.5px;line-height:1.9;overflow-x:auto;box-shadow:0 30px 80px rgba(0,91,153,.12),0 8px 24px rgba(20,30,40,.05)}.code-panel::before{content:"";position:absolute;inset:0;padding:1px;border-radius:inherit;background:conic-gradient(from var(--angle), var(--line) 0deg 240deg, var(--sky) 300deg, var(--blue) 335deg, var(--line) 360deg);mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);pointer-events:none;animation:border-spin 2.2s linear 2}.code-panel:hover::before{animation:border-spin 2.2s linear infinite}.code-panel .code-bar{display:flex;align-items:center;gap:7px;margin:-26px -28px 18px;padding:12px 20px;border-bottom:1px solid var(--line)}.code-panel .code-dot{width:10px;height:10px;border-radius:50%;background:var(--line)}.code-panel .code-dot:first-child{background:var(--blue)}.code-panel .code-dot:nth-child(2){background:var(--sky)}.code-panel .code-file{margin-left:10px;font-size:.78rem;line-height:1;color:var(--muted)}.code-panel .brace{color:var(--blue);font-weight:500}.code-panel .key{color:var(--muted)}.code-panel .val{color:var(--text)}.code-panel .row{padding-left:1.6em;white-space:nowrap}.code-panel .cursor{display:inline-block;width:.55em;height:1.05em;background:var(--blue);vertical-align:-0.15em;animation:blink 1.1s steps(1) 4}@media(max-width: 600px){.code-panel{font-size:13px;padding:20px}.code-panel .code-bar{margin:-20px -20px 14px;padding:10px 16px}.code-panel .row{white-space:normal;padding-left:1.2em}}.dots span{display:inline-block;animation:dot 1.8s ease-in-out 2}.dots span:nth-child(2){animation-delay:.2s}.dots span:nth-child(3){animation-delay:.4s}@keyframes border-spin{to{--angle: 360deg}}.hero{position:relative;overflow:hidden;isolation:isolate;padding-block:clamp(56px,9vw,120px) clamp(64px,9vw,120px);background:var(--white)}.hero::before{content:"";position:absolute;z-index:1;width:480px;height:480px;right:-240px;top:80px;border:1px solid rgba(0,91,153,.09);border-radius:50%;pointer-events:none}.hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none}.hero-bg::before,.hero-bg::after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle, var(--dot-color) 1px, transparent 1.6px);background-size:22px 22px;background-position:center}.hero-bg::before{--dot-color: rgba(0, 91, 153, .13);mask-image:linear-gradient(to bottom, #000 65%, transparent)}.hero-bg::after{--dot-color: rgba(0, 91, 153, .6);mask-image:radial-gradient(circle 200px at var(--mx, 50%) var(--my, 50%), #000, transparent);opacity:0;transition:opacity .4s ease}.hero.is-pointer .hero-bg::after{opacity:1}.blob{position:absolute;border-radius:50%;background:radial-gradient(circle, var(--blob-color), transparent 68%);translate:calc(var(--px, 0)*var(--depth)) calc(var(--py, 0)*var(--depth));transition:translate 1.4s cubic-bezier(0.2, 0.7, 0.2, 1);animation:blob-in 3.5s cubic-bezier(0.2, 0.7, 0.2, 1) both}.blob-1{--blob-color: rgba(113, 181, 220, .38);--depth: 60px;width:clamp(360px,48vw,680px);aspect-ratio:1;right:-8%;top:-18%}.blob-2{--blob-color: rgba(0, 91, 153, .16);--depth: -45px;width:clamp(300px,40vw,560px);aspect-ratio:1;left:-12%;bottom:-30%;animation-delay:.3s}.blob-3{--blob-color: rgba(0, 91, 153, .12);--depth: 90px;width:clamp(220px,26vw,380px);aspect-ratio:1;left:38%;top:30%;animation-delay:.6s}@keyframes blob-in{from{opacity:0;scale:.6}}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0, 1.2fr) minmax(0, 1fr);gap:clamp(32px,6vw,80px);align-items:center}@media(max-width: 900px){.hero-grid{grid-template-columns:minmax(0, 1fr)}}.hero-text{max-width:34em;margin:0 0 36px;color:#4a535c;font-size:1.12rem}.skills{background:var(--blue-light)}.tech-grid{display:grid;grid-template-columns:repeat(10, minmax(0, 1fr));gap:16px}@media(max-width: 1000px){.tech-grid{grid-template-columns:repeat(6, minmax(0, 1fr))}}@media(max-width: 600px){.tech-grid{grid-template-columns:minmax(0, 1fr)}}.tech{transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.tech:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(20,30,40,.08)}.tech{grid-column:span 2;background:var(--white);border:1px solid rgba(0,91,153,.12);border-radius:18px;padding:26px 24px 28px}.tech:hover{border-color:rgba(0,91,153,.3)}.tech h3{font-size:1.5rem;letter-spacing:-0.03em;margin:28px 0 8px}.tech p{margin:0;font-size:.9rem;color:var(--muted)}@media(max-width: 1000px){.tech:nth-child(n+4){grid-column:span 3}}@media(max-width: 600px){.tech,.tech:nth-child(n+4){grid-column:auto}}.tech-kind{font-family:var(--font-mono);font-size:.74rem;color:var(--blue);letter-spacing:.04em}.focus-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:16px;margin-top:16px}@media(max-width: 800px){.focus-grid{grid-template-columns:minmax(0, 1fr)}}.focus{background:var(--blue);color:#fff;border-radius:var(--radius);padding:clamp(26px,4vw,38px);display:flex;flex-direction:column;gap:12px}.focus .section-label{color:#b8ddf0;margin:0}.focus h3{font-size:1.6rem;letter-spacing:-0.035em;margin:0}.focus p{color:#d7eaf4;margin:0;max-width:32em}.focus:last-child:nth-child(odd){grid-column:1/-1}.focus .tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:8px 0 0;padding:0}.focus .tags li{font-family:var(--font-mono);font-size:.76rem;background:rgba(255,255,255,.14);padding:4px 11px;border-radius:999px}.about-grid{display:grid;grid-template-columns:minmax(0, 0.85fr) minmax(0, 1.15fr);gap:clamp(40px,7vw,100px);align-items:center}@media(max-width: 850px){.about-grid{grid-template-columns:minmax(0, 1fr);gap:50px}}.about-mark{aspect-ratio:1;width:100%;max-width:390px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;margin:auto;position:relative}.about-mark::before,.about-mark::after{content:"";position:absolute;border:1px solid rgba(0,91,153,.13);border-radius:50%}.about-mark::before{inset:12%}.about-mark::after{inset:25%}.about-mark img{width:58%;position:relative;z-index:2}.about-copy h2{margin-bottom:24px}.about-copy p{color:var(--muted);margin:0 0 16px;max-width:36em}.about-copy p:first-of-type{font-size:1.18rem;color:#303840}.process{background:var(--dark);color:#fff}.process .section-label{color:var(--sky)}.process .section-intro{color:#aeb7bf}.process-grid{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr))}@media(max-width: 850px){.process-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(max-width: 600px){.process-grid{grid-template-columns:minmax(0, 1fr)}}.process-step{padding:0 32px;border-left:1px solid var(--dark-line)}.process-step:first-child{padding-left:0;border-left:0}.process-step h3{margin:32px 0 12px;font-size:1.15rem;letter-spacing:-0.01em}.process-step p{color:var(--dark-muted);font-size:.92rem;margin:0}@media(max-width: 850px){.process-step,.process-step:first-child{padding:25px 20px;border-left:1px solid var(--dark-line)}.process-step:nth-child(odd){border-left:0;padding-left:0}}@media(max-width: 600px){.process-step,.process-step:nth-child(odd){border-left:0;border-top:1px solid var(--dark-line);padding:25px 0}.process-step:first-child{border-top:0}}.process-number{font-family:var(--font-mono);font-size:.76rem;color:var(--blue);letter-spacing:.08em;color:var(--sky);text-transform:uppercase}.projects-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:20px}@media(max-width: 800px){.projects-grid{grid-template-columns:minmax(0, 1fr)}}.project{padding:34px;border-radius:var(--radius);background:linear-gradient(135deg, #f5f8fa, #edf4f8);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;gap:32px;overflow:hidden;position:relative}.project::after{content:"";width:220px;height:220px;position:absolute;right:-90px;bottom:-100px;border:1px solid rgba(0,91,153,.15);border-radius:50%;transition:transform .5s ease}.project:hover::after{transform:scale(1.5)}.project>*{position:relative;z-index:1}.project h3{font-size:1.8rem;letter-spacing:-0.035em;margin:10px 0;text-wrap:balance;line-height:1.3}.project p{color:var(--muted);max-width:30em;margin:0}.project ul{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:8px;font-size:.94rem;color:#303840}.project li{display:flex;gap:10px}.project li::before{content:"→";content:"→"/"";font-family:var(--font-mono);color:var(--blue);flex:none}@media(max-width: 600px){.project{padding:26px}}.project-type{font-family:var(--font-mono);font-size:.78rem;color:var(--blue);letter-spacing:.04em;font-weight:500;position:relative;z-index:1}.faq{background:var(--bg)}.faq-grid{display:grid;grid-template-columns:minmax(0, 0.8fr) minmax(0, 1.2fr);gap:clamp(40px,6vw,90px);align-items:start}.faq-grid .section-head{position:sticky;top:120px;margin-bottom:0}@media(max-width: 850px){.faq-grid{grid-template-columns:minmax(0, 1fr);gap:0}.faq-grid .section-head{position:static;margin-bottom:clamp(36px,5vw,60px)}}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;cursor:pointer;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:"+";content:"+"/"";font-family:var(--font-mono);font-size:1.4rem;color:var(--blue);letter-spacing:normal;line-height:1;flex:none;transition:transform .3s cubic-bezier(0.2, 0.7, 0.2, 1)}.faq-item summary:hover .faq-question{color:var(--blue)}.faq-item summary:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:4px}.faq-item[open] summary::after{transform:rotate(45deg)}.faq-item .faq-question{min-width:0;overflow-wrap:break-word;hyphens:auto;font-weight:700;font-size:1.12rem;line-height:1.4;letter-spacing:-0.01em;transition:color .2s ease}.faq-item p{margin:0;padding:0 48px 26px 0;color:var(--muted);font-size:1.05rem;max-width:40em}@media(max-width: 600px){.faq-item p{padding-right:0}}.contact{background:var(--blue);color:#fff;text-align:center}.contact .section-label{color:#b8ddf0}.contact :focus-visible{outline-color:#fff}.contact h2{max-width:800px;margin-inline:auto}.contact p{color:#d7eaf4;max-width:34em;margin:24px auto 32px}.contact .hint{min-height:1.6em;margin:16px auto 0;font-size:.9rem}.mail-line{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}.legal-hero{padding-block:clamp(56px,8vw,104px) clamp(40px,6vw,72px);border-bottom:1px solid var(--line);background:radial-gradient(circle at 88% 10%, rgba(0, 91, 153, 0.08), transparent 32%),var(--white)}.legal-hero h1{font-size:clamp(2.2rem,4.6vw,3.8rem);margin-bottom:18px}.legal-intro{max-width:36em;margin:0;color:var(--muted);font-size:1.12rem}.legal-updated{font-family:var(--font-mono);font-size:.78rem;color:var(--blue);letter-spacing:.04em;margin:22px 0 0;color:var(--muted)}.legal{display:grid;grid-template-columns:minmax(0, 250px) minmax(0, 1fr);gap:clamp(40px,6vw,96px);align-items:start;padding-block:clamp(48px,7vw,96px) clamp(80px,9vw,120px)}@media(max-width: 900px){.legal{grid-template-columns:minmax(0, 1fr);gap:40px}}.legal-toc{position:sticky;top:100px}@media(max-width: 900px){.legal-toc{position:static;padding:22px 24px;background:var(--bg);border:1px solid var(--line);border-radius:18px}}.legal-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}.legal-toc a{display:flex;gap:12px;padding:6px 0;color:var(--muted);font-size:.92rem;line-height:1.45;transition:color .2s ease}.legal-toc a span{font-family:var(--font-mono);font-size:.74rem;color:var(--blue);letter-spacing:.04em;padding-top:.15em;flex:none}.legal-toc a:hover,.legal-toc a.is-active{color:var(--text)}.legal-toc a.is-active span{font-weight:700}.legal-toc-title{font-family:var(--font-mono);font-size:.78rem;color:var(--blue);letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px}.prose{max-width:72ch;font-size:1rem;line-height:1.75;color:#3a434c}.prose h2{font-size:clamp(1.4rem,2.4vw,1.75rem);letter-spacing:-0.03em;line-height:1.2;color:var(--text);margin:64px 0 18px;scroll-margin-top:24px}.prose h2:first-child{margin-top:0}.prose p{margin:0 0 16px}.prose strong{color:var(--text);font-weight:600}.prose a{color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.prose a:hover{text-decoration-thickness:2px}.prose ul:not(.legal-facts){list-style:none;margin:0 0 20px;padding:0;display:grid;gap:6px}.prose ul:not(.legal-facts) li{display:flex;gap:10px}.prose ul:not(.legal-facts) li::before{content:"→";content:"→"/"";font-family:var(--font-mono);color:var(--blue);flex:none}.legal-card{margin:0 0 18px;padding:22px 26px;background:var(--bg);border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:14px;font-style:normal;line-height:1.8}.legal-list{display:grid;grid-template-columns:max-content minmax(0, 1fr);gap:6px 24px;align-items:baseline;margin:0 0 18px}.legal-list dt{font-family:var(--font-mono);font-size:.78rem;color:var(--blue);letter-spacing:.04em}.legal-list dd{margin:0}.legal-facts{list-style:none;margin:0 0 24px;padding:0;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:10px}@media(max-width: 600px){.legal-facts{grid-template-columns:minmax(0, 1fr)}}.legal-facts li{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--blue-light);border-radius:14px;color:var(--text);font-weight:500;line-height:1.4}.legal-facts li::before{content:"";flex:none;width:6px;height:11px;margin:0 4px 3px 4px;border:solid var(--blue);border-width:0 2px 2px 0;transform:rotate(45deg)}.legal-note{margin:24px 0;padding:24px 26px;background:var(--blue);color:#d7eaf4;border-radius:var(--radius)}.legal-note p:last-child{margin-bottom:0}.legal-note strong{color:#fff}.error-page{min-height:62vh;border-bottom:0}.error-page .button{margin-top:18px}footer{background:var(--black);color:#9da5ab;padding-block:32px;font-size:.82rem}footer :focus-visible{outline-color:#fff}.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px}.footer-inner .brace{font-family:var(--font-mono);color:var(--sky)}.footer-links{display:flex;gap:24px}.footer-links a:hover,.footer-links a[aria-current=page]{color:#fff}.reveal{transition:transform .8s cubic-bezier(0.2, 0.7, 0.2, 1)}.reveal.pre{transform:translateY(25px)}.rise{animation:rise .8s cubic-bezier(0.2, 0.7, 0.2, 1) both}.rise.d1{animation-delay:.08s}.rise.d2{animation-delay:.16s}.rise.d3{animation-delay:.24s}@keyframes rise{from{transform:translateY(18px);opacity:0}to{transform:none;opacity:1}}@keyframes blink{50%{opacity:0}}@keyframes dot{0%,100%{opacity:.35}40%{opacity:1}}@media(forced-colors: active){.button,.focus{border:1px solid CanvasText}.menu-button span{forced-color-adjust:none;background:CanvasText}}@media(prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none !important;transition:none !important}.reveal.pre{transform:none}}
