.nav[data-astro-cid-dmqpwcec]{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-height);background:#fafaf7cc;backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);transition:background .3s ease,border-color .3s ease;border-bottom:1px solid var(--af-ivory-dark)}.nav[data-astro-cid-dmqpwcec].scrolled{background:#fafaf7f2;border-bottom-color:var(--af-ivory-dark)}.nav-inner[data-astro-cid-dmqpwcec]{display:flex;align-items:center;justify-content:space-between;max-width:var(--nav-max-width);height:100%;margin:0 auto;padding:0 var(--side-padding)}.nav-logo[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:var(--sp-2);font-family:var(--af-font-heading);font-size:var(--fs-body-l);font-weight:500;color:var(--af-slate-dark);text-decoration:none;flex-shrink:0}.nav-logo[data-astro-cid-dmqpwcec]:hover{color:var(--af-slate-dark)}.nav-links[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:var(--sp-8);list-style:none}.nav-link[data-astro-cid-dmqpwcec]{font-family:var(--af-font-heading);font-size:var(--fs-body-m);font-weight:400;color:var(--af-slate-light);text-decoration:none;padding:var(--sp-1) 0;position:relative;transition:color .2s ease}.nav-link[data-astro-cid-dmqpwcec]:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1.5px;background:var(--af-accent);transition:width .2s ease}.nav-link[data-astro-cid-dmqpwcec]:hover,.nav-link[data-astro-cid-dmqpwcec].active{color:var(--af-slate-dark)}.nav-link[data-astro-cid-dmqpwcec].active:after,.nav-link[data-astro-cid-dmqpwcec]:hover:after{width:100%}.nav-cta[data-astro-cid-dmqpwcec]{display:inline-flex;align-items:center;background:var(--af-slate-dark);color:var(--af-ivory-light);border-radius:8px;padding:10px 24px;font-family:var(--af-font-heading);font-size:var(--fs-body-m);font-weight:500;letter-spacing:.01em;text-decoration:none;white-space:nowrap;transition:background .2s ease;flex-shrink:0}.nav-cta[data-astro-cid-dmqpwcec]:hover{background:var(--af-slate-medium);color:var(--af-ivory-light)}.nav-hamburger[data-astro-cid-dmqpwcec]{display:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;background:none;border:none;cursor:pointer;padding:4px}.nav-hamburger[data-astro-cid-dmqpwcec] span[data-astro-cid-dmqpwcec]{display:block;width:100%;height:1.5px;background:var(--af-slate-dark);transition:all .3s ease;transform-origin:center}.nav-hamburger[data-astro-cid-dmqpwcec].open span[data-astro-cid-dmqpwcec]:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.nav-hamburger[data-astro-cid-dmqpwcec].open span[data-astro-cid-dmqpwcec]:nth-child(2){opacity:0}.nav-hamburger[data-astro-cid-dmqpwcec].open span[data-astro-cid-dmqpwcec]:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.nav-mobile-overlay[data-astro-cid-dmqpwcec]{position:fixed;top:var(--nav-height);left:0;right:0;bottom:0;background:var(--af-ivory-light);display:flex;align-items:center;justify-content:center;clip-path:circle(0% at calc(100% - 2.5rem) 0);transition:clip-path .5s ease;z-index:99}.nav-mobile-overlay[data-astro-cid-dmqpwcec].open{clip-path:circle(150% at calc(100% - 2.5rem) 0)}.nav-mobile-links[data-astro-cid-dmqpwcec]{list-style:none;text-align:center;display:flex;flex-direction:column;gap:var(--sp-8)}.nav-mobile-link[data-astro-cid-dmqpwcec]{font-family:var(--af-font-heading);font-size:var(--fs-h2);font-weight:400;color:var(--af-slate-light);text-decoration:none;transition:color .2s ease}.nav-mobile-link[data-astro-cid-dmqpwcec]:hover,.nav-mobile-link[data-astro-cid-dmqpwcec].active{color:var(--af-accent)}.nav-mobile-cta[data-astro-cid-dmqpwcec]{display:inline-flex;align-items:center;justify-content:center;background:var(--af-slate-dark);color:var(--af-ivory-light);border-radius:8px;padding:12px 32px;font-family:var(--af-font-heading);font-size:var(--fs-body-l);font-weight:500;text-decoration:none;transition:background .2s ease}.nav-mobile-cta[data-astro-cid-dmqpwcec]:hover{background:var(--af-slate-medium);color:var(--af-ivory-light)}@media(max-width:768px){.nav-links[data-astro-cid-dmqpwcec],.nav-cta[data-astro-cid-dmqpwcec]{display:none}.nav-hamburger[data-astro-cid-dmqpwcec]{display:flex}}.footer[data-astro-cid-sz7xmlte]{background:var(--af-slate-dark);color:var(--af-cloud-medium);padding:var(--sp-24) 0 var(--sp-8)}.footer-inner[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;align-items:center;gap:var(--sp-8)}.footer-brand[data-astro-cid-sz7xmlte]{text-align:center}.footer-logo[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:var(--sp-2);font-family:var(--af-font-heading);font-size:var(--fs-body-l);font-weight:500;color:var(--af-ivory-light);text-decoration:none;transition:opacity .2s ease}.footer-logo[data-astro-cid-sz7xmlte]:hover{opacity:.8;color:var(--af-ivory-light)}.footer-tagline[data-astro-cid-sz7xmlte]{margin-top:var(--sp-2);font-size:var(--fs-body-s);color:var(--af-ivory-light);letter-spacing:.02em}.footer-nav[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:var(--sp-8)}.footer-nav-link[data-astro-cid-sz7xmlte]{font-family:var(--af-font-heading);font-size:var(--fs-body-s);color:var(--af-cloud-medium);text-decoration:none;transition:color .2s ease}.footer-nav-link[data-astro-cid-sz7xmlte]:hover{color:var(--af-ivory-light)}.footer-social[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:var(--sp-6)}.footer-social-link[data-astro-cid-sz7xmlte]{color:var(--af-cloud-dark);transition:color .2s ease;display:inline-flex}.footer-social-link[data-astro-cid-sz7xmlte]:hover{color:var(--af-accent-soft)}.footer-divider[data-astro-cid-sz7xmlte]{width:48px;border:none;border-top:1px solid rgba(255,255,255,.1);margin:0}.footer-bottom[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:var(--sp-4);font-size:var(--fs-body-xs);color:var(--af-cloud-dark)}.footer-top-link[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.1);color:var(--af-cloud-dark);text-decoration:none;transition:all .2s ease}.footer-top-link[data-astro-cid-sz7xmlte]:hover{color:var(--af-ivory-light);border-color:#ffffff40}@font-face{font-family:Styrene A;font-weight:400;font-style:normal;font-display:swap;src:url(https://github.com/hashingsystems/Composer/raw/refs/heads/master/src/html/fonts/Styrene-Font/StyreneA-Regular.otf) format("opentype")}@font-face{font-family:Styrene A;font-weight:500;font-style:normal;font-display:swap;src:url(https://github.com/hashingsystems/Composer/raw/refs/heads/master/src/html/fonts/Styrene-Font/StyreneA-Medium.otf) format("opentype")}@font-face{font-family:Styrene A;font-weight:700;font-style:normal;font-display:swap;src:url(https://github.com/hashingsystems/Composer/raw/refs/heads/master/src/html/fonts/Styrene-Font/StyreneA-Bold.otf) format("opentype")}@font-face{font-family:Styrene A;font-weight:100;font-style:normal;font-display:swap;src:url(https://github.com/hashingsystems/Composer/raw/refs/heads/master/src/html/fonts/Styrene-Font/StyreneA-Thin.otf) format("opentype")}@font-face{font-family:Styrene A;font-weight:300;font-style:normal;font-display:swap;src:url(https://github.com/hashingsystems/Composer/raw/refs/heads/master/src/html/fonts/Styrene-Font/StyreneA-Light.otf) format("opentype")}@font-face{font-family:Tiempos Text;font-weight:400;font-style:normal;font-display:swap;src:url(https://github.com/nTamura/redstamp-email/raw/refs/heads/master/fonts/Tiempos/TiemposText/TiemposText-Regular.otf) format("opentype")}@font-face{font-family:Tiempos Text;font-weight:500;font-style:normal;font-display:swap;src:url(https://github.com/nTamura/redstamp-email/raw/refs/heads/master/fonts/Tiempos/TiemposText/TiemposText-Medium.otf) format("opentype")}@font-face{font-family:Tiempos Text;font-weight:600;font-style:normal;font-display:swap;src:url(https://github.com/nTamura/redstamp-email/raw/refs/heads/master/fonts/Tiempos/TiemposText/TiemposText-Semibold.otf) format("opentype")}:root{--af-accent: #cc785c;--af-accent-soft: #d4a27f;--af-accent-mute: #ebdbbc;--af-slate-dark: #191919;--af-slate-medium: #262625;--af-slate-light: #40403e;--af-warm-dark: #2a2520;--af-cloud-dark: #666663;--af-cloud-medium: #91918d;--af-cloud-light: #bfbfba;--af-ivory-dark: #e5e4df;--af-ivory-medium: #f0f0eb;--af-ivory-light: #fafaf7;--af-font-heading: "Styrene A", Helvetica, Arial, sans-serif;--af-font-body: "Tiempos Text", STZhongsong, FangSong, serif;--af-font-mono: "Cascadia Code", "Fira Code", "JetBrains Mono", monospace}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes error-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes icon-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes draw-line{0%{stroke-dashoffset:200}to{stroke-dashoffset:0}}.font-heading{font-family:var(--af-font-heading)}.font-body{font-family:var(--af-font-body)}.font-mono{font-family:var(--af-font-mono)}.animate-fade-in{animation:fade-in .3s ease-out both}.animate-fade-in-d1{animation:fade-in .3s ease-out .1s both}.animate-fade-in-d2{animation:fade-in .3s ease-out .2s both}.animate-fade-in-d3{animation:fade-in .3s ease-out .3s both}.animate-shake{animation:shake .4s ease-in-out}.animate-float{animation:float 4s ease-in-out infinite}.animate-float-slow{animation:float 6s ease-in-out infinite}.animate-float-delayed{animation:float 4s ease-in-out 1s infinite}@keyframes pulse_badge{0%,to{opacity:1}50%{opacity:.5}}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.015)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.6)}}@keyframes materialize{0%{opacity:0;transform:scale(1.4)}to{opacity:1;transform:scale(1)}}.scrollbar-thin{scrollbar-width:thin;scrollbar-color:#bfbfba transparent}.scrollbar-thin::-webkit-scrollbar{width:6px}.scrollbar-thin::-webkit-scrollbar-track{background:transparent}.scrollbar-thin::-webkit-scrollbar-thumb{background-color:#bfbfba;border-radius:3px}:root{--sp-1: .25rem;--sp-2: .5rem;--sp-3: .75rem;--sp-4: 1rem;--sp-6: 1.5rem;--sp-8: 2rem;--sp-12: 3rem;--sp-16: 4rem;--sp-24: 6rem;--sp-32: 8rem;--nav-max-width: 1440px;--content-max-width: 1280px;--text-max-width: 560px;--side-padding: clamp(1.5rem, 1rem + 2.5vw, 5rem);--column-gap: clamp(1rem, .5rem + 1vw, 2rem);--fs-display: clamp(2rem, 1.5rem + 2vw, 3.5rem);--fs-h1: clamp(2rem, 1.6rem + 2vw, 3.5rem);--fs-h2: clamp(1.5rem, 1.3rem + 1vw, 2.25rem);--fs-h3: clamp(1.25rem, 1.15rem + .5vw, 1.75rem);--fs-body-l: clamp(1.125rem, 1.05rem + .35vw, 1.375rem);--fs-body-m: 1rem;--fs-body-s: .875rem;--fs-body-xs: .75rem;--nav-height: 4.25rem}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-y:scroll;scrollbar-gutter:stable}body{font-family:var(--af-font-body);font-size:var(--fs-body-m);line-height:1.6;color:var(--af-slate-dark);background-color:var(--af-ivory-light)}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}a:hover{color:var(--af-accent)}h1,h2,h3,h4,h5,h6{font-family:var(--af-font-heading);line-height:1.2;font-weight:500}.text-display{font-size:var(--fs-display);font-family:var(--af-font-heading);font-weight:500;line-height:1.1;letter-spacing:-.02em;color:var(--af-slate-dark)}.text-h1{font-size:var(--fs-h1);font-family:var(--af-font-heading);font-weight:500;line-height:1.15;letter-spacing:-.01em}.text-h2{font-size:var(--fs-h2);font-family:var(--af-font-heading);font-weight:500;line-height:1.2}.text-h3{font-size:var(--fs-h3);font-family:var(--af-font-heading);font-weight:500;line-height:1.25}.text-body-l{font-size:var(--fs-body-l);line-height:1.6}.text-body-s{font-size:var(--fs-body-s);line-height:1.5}.text-body-xs{font-size:var(--fs-body-xs);line-height:1.4}.container{width:100%;max-width:var(--content-max-width);margin-left:auto;margin-right:auto;padding-left:var(--side-padding);padding-right:var(--side-padding)}.container-narrow{width:100%;max-width:720px;margin-left:auto;margin-right:auto;padding-left:var(--side-padding);padding-right:var(--side-padding)}.section{padding-top:clamp(var(--sp-16),4rem + 2vw,var(--sp-24));padding-bottom:clamp(var(--sp-16),4rem + 2vw,var(--sp-24))}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);font-family:var(--af-font-heading);font-size:var(--fs-body-m);font-weight:500;line-height:1;border:none;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-primary{background:var(--af-accent);color:#fff;border-radius:6px;padding:12px 28px}.btn-primary:hover{background:var(--af-accent-soft);color:#fff;transform:translateY(-1px)}.btn-secondary{background:transparent;border:1.5px solid var(--af-slate-dark);color:var(--af-slate-dark);border-radius:6px;padding:12px 28px}.btn-secondary:hover{background:var(--af-ivory-medium);color:var(--af-slate-dark)}.btn-ghost{background:transparent;color:var(--af-accent);padding:4px 0;border:none}.btn-ghost:hover{color:var(--af-accent-soft)}.btn-ghost:after{content:" →"}.card{background:var(--af-ivory-medium);border:1px solid var(--af-ivory-dark);border-radius:12px;padding:var(--sp-6);transition:transform .2s ease,box-shadow .2s ease}.card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000000f}.tag{display:inline-block;background:var(--af-accent-mute);color:var(--af-accent);font-family:var(--af-font-heading);font-size:var(--fs-body-xs);font-weight:500;text-transform:uppercase;letter-spacing:.08em;padding:4px 10px;border-radius:4px}.text-secondary{color:var(--af-slate-light);line-height:1.6}.text-muted{color:var(--af-cloud-dark)}.text-center{text-align:center}.flex-center{display:flex;align-items:center;justify-content:center}.flex-col-center{display:flex;flex-direction:column;align-items:center}.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-d1{transition-delay:.1s}.reveal-d2{transition-delay:.2s}.reveal-d3{transition-delay:.3s}.reveal-d4{transition-delay:.4s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
