:root{--bg:#fafafa;--surface:#fff;--text-primary:#1a1a1a;--text-secondary:#666;--accent:#000;--border:#eaeaea;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 4px 6px #0000000a;--shadow-lg:0 10px 15px #0000000a;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:"Space Grotesk", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", Consolas, monospace;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--spring:cubic-bezier(.34, 1.56, .64, 1);--spring-soft:cubic-bezier(.25, .46, .45, .94);--spring-out:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.025em;font-weight:600;line-height:1.2}a{color:inherit;transition:opacity .25s var(--spring-out);text-decoration:none}a:hover{opacity:.65}.container{max-width:1100px;margin:0 auto;padding:0 24px}.section{padding:100px 0}.section-title{font-family:var(--font-display);letter-spacing:-.03em;margin-bottom:3rem;font-size:2rem;font-weight:600}.badge{background:var(--surface);border:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.02em;color:var(--text-secondary);transition:transform .2s var(--spring), border-color .2s ease;border-radius:9999px;align-items:center;padding:4px 12px;font-size:.75rem;display:inline-flex}.badge:hover{border-color:var(--text-secondary);transform:scale(1.04)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:transform .35s var(--spring-out), box-shadow .35s var(--spring-out);will-change:transform;padding:24px}.card:hover{transform:translateY(-5px)scale(1.01);box-shadow:0 12px 32px #00000014}.card:active{transition-duration:.12s;transform:scale(.98)}.btn{border-radius:var(--radius-md);font-family:var(--font-sans);cursor:pointer;letter-spacing:.01em;transition:transform .25s var(--spring), opacity .2s ease, box-shadow .25s ease;will-change:transform;border:none;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:.9rem;font-weight:500;display:inline-flex}.btn:hover{transform:translateY(-2px)scale(1.02)}.btn:active{transition-duration:.1s;transform:scale(.95)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{opacity:1;box-shadow:0 6px 20px #0000002e}.btn-secondary{border:1px solid var(--border);color:var(--text-primary);background:0 0}.btn-secondary:hover{background:var(--surface);border-color:var(--text-primary)}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.reveal{opacity:0;transition:opacity .6s var(--spring-out), transform .6s var(--spring-out);transform:translateY(28px)}.reveal.visible{opacity:1;transform:translateY(0)}.footer{background:#fff;border-top:1px solid #0000000f;margin-top:80px;padding:80px 0 40px}.footer-content{grid-template-columns:1.5fr 1fr 1fr;gap:40px;margin-bottom:64px;display:grid}.footer-brand{flex-direction:column;gap:16px;display:flex}.footer-logo{font-family:var(--font-display);letter-spacing:-.02em;color:#000;font-size:1.25rem;font-weight:700}.footer-desc{font-family:var(--font-sans);color:#0009;max-width:320px;font-size:.9rem;line-height:1.6}.footer-terminal{font-family:var(--font-mono);color:#0006;background:#00000008;border:1px solid #0000000d;border-radius:8px;align-items:center;gap:6px;width:max-content;margin-top:12px;padding:12px 16px;font-size:.8rem;display:inline-flex}.footer-terminal-prompt{color:#34c759cc}.footer-terminal-text{white-space:nowrap;border-right:2px solid #0000004d;animation:3.5s steps(30,end) infinite alternate typing,.75s step-end infinite blink;overflow:hidden}@keyframes typing{0%{width:0}30%{width:0}70%{width:100%}to{width:100%}}@keyframes blink{0%,to{border-color:#0000}50%{border-color:#0000004d}}.footer-col-title{font-family:var(--font-display);color:#000;margin-bottom:20px;font-size:.95rem;font-weight:600}.footer-links{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.footer-links a{font-family:var(--font-sans);color:#0000008c;font-size:.9rem;text-decoration:none;transition:color .2s,transform .2s cubic-bezier(.22,1,.36,1);display:inline-block}.footer-links a:hover{color:#000;transform:translate(4px)}.footer-bottom{font-family:var(--font-mono);color:#0006;border-top:1px solid #0000000f;justify-content:space-between;align-items:center;padding-top:32px;font-size:.75rem;display:flex}.footer-status{align-items:center;gap:8px;display:flex}.footer-status-dot{background:#34c759cc;border-radius:50%;width:6px;height:6px;animation:2s infinite pulse-green}@keyframes pulse-green{0%{box-shadow:0 0 #34c75966}70%{box-shadow:0 0 0 4px #34c75900}to{box-shadow:0 0 #34c75900}}@media (width<=768px){.footer-content{grid-template-columns:1fr;gap:48px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:16px}}.section{background-color:var(--background,#fff);padding:4rem 0}.section .container{max-width:1200px;margin:0 auto;padding:0 1rem}.section-title{color:var(--text-primary);text-align:center;margin-bottom:2rem;font-size:2rem}.hero{background:var(--bg);text-align:center;border-radius:45px;padding:120px 0;position:relative}.hero .eyebrow,.hero .headline,.hero .description,.hero .cta-buttons,.hero .social-icons,.hero .trust-indicators{animation:fadeUp .7s var(--spring-out) both}.hero .eyebrow{animation-delay:50ms}.hero .headline{animation-delay:.15s}.hero .description{animation-delay:.25s}.hero .cta-buttons{animation-delay:.35s}.hero .social-icons{animation-delay:.45s}.hero .trust-indicators{animation-delay:.55s}.hero .eyebrow{font-family:var(--font-mono);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px;font-size:.75rem}.hero .headline{font-family:var(--font-display);letter-spacing:-.04em;color:var(--text-primary);margin:.5rem 0;font-size:clamp(2.25rem,5vw,3.5rem);font-weight:700;line-height:1.1}.hero .description{max-width:720px;color:var(--text-secondary);margin:1rem auto 2rem;line-height:1.6}.hero .cta-buttons{justify-content:center;gap:16px;margin-bottom:24px;display:flex}.hero .social-icons{justify-content:center;gap:16px;margin-top:16px;display:flex}.hero .social-icons a{width:40px;height:40px;color:var(--text-secondary);transition:transform .3s var(--spring), color .2s ease, background .2s ease;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.hero .social-icons a:hover{color:var(--text-primary);background:var(--surface);opacity:1;transform:scale(1.2)translateY(-2px)}.hero .social-icons a:active{transition-duration:.1s;transform:scale(.9)}.hero .trust-indicators{justify-content:center;align-items:center;gap:0;margin-top:48px;display:flex}.hero .trust-item{transition:transform .3s var(--spring);flex-direction:column;align-items:center;padding:0 32px;display:flex;position:relative}.hero .trust-item:hover{transform:translateY(-3px)scale(1.05)}.hero .trust-item+.trust-item:before{content:"·";color:var(--border);font-size:1.25rem;line-height:1;position:absolute;top:50%;left:0;transform:translate(-50%)translateY(-50%)}.hero .trust-value{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.04em;font-size:1.75rem;font-weight:700;line-height:1}.hero .trust-label{font-family:var(--font-mono);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;margin-top:6px;font-size:.65rem}.arch-tabs{margin-top:24px}.arch-tab-bar{gap:4px;margin-bottom:14px;display:flex}.arch-tab-btn{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#ffffff61;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:7px;padding:7px 16px;font-size:.65rem;font-weight:600;transition:color .22s,background .22s,border-color .22s;display:inline-flex}.arch-tab-btn:hover{color:#ffffffb8;background:#ffffff0d}.arch-tab-btn.active[data-layer=data]{color:#7c6aff;background:#7c6aff1a;border-color:#7c6aff47}.arch-tab-btn.active[data-layer=domain]{color:#00c9a7;background:#00c9a71a;border-color:#00c9a747}.arch-tab-btn.active[data-layer=presentation]{color:#ff9f43;background:#ff9f431a;border-color:#ff9f4347}.arch-tab-dot{opacity:.7;background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.arch-panel{animation:.28s cubic-bezier(.22,1,.36,1) both archFadeIn}@keyframes archFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.arch-layer-desc{font-family:var(--font-mono);letter-spacing:.08em;color:#ffffff52;align-items:center;gap:6px;margin-bottom:10px;font-size:.6rem;display:flex}.arch-layer-desc:before{content:"";opacity:.5;background:currentColor;width:18px;height:1px;display:inline-block}@media (width<=768px){.arch-tab-btn{padding:6px 11px;font-size:.6rem}}.flutter-ide{font-family:var(--font-mono);opacity:0;background:#1e1e1e;border:1px solid #ffffff12;border-radius:10px;margin-top:20px;font-size:11.5px;line-height:20px;transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1),box-shadow .6s;position:relative;overflow:hidden;transform:translateY(22px)scale(.97);box-shadow:inset 0 2px #ffffff0a,0 20px 40px #00000080,0 4px 12px #00000059}.highlight-card.visible .flutter-ide{opacity:1;transition-delay:.38s;transform:translateY(0)scale(1);box-shadow:inset 0 2px #ffffff0f,0 28px 56px #0009,0 6px 18px #0006}.highlight-card:nth-child(2).visible .flutter-ide{transition-delay:.5s}.flutter-ide.ide-fading .ide-body{opacity:.08;transition:opacity .42s cubic-bezier(.22,1,.36,1)}.ide-body{transition:opacity .42s cubic-bezier(.22,1,.36,1)}.ide-bar{-webkit-user-select:none;user-select:none;background:#252526;border-bottom:1px solid #ffffff0d;align-items:center;gap:10px;padding:9px 14px;display:flex}.ide-dots{flex-shrink:0;align-items:center;gap:6px;display:flex}.ide-dot{border-radius:50%;width:11px;height:11px}.ide-red{background:#ff5f57;box-shadow:0 0 0 .5px #ff5f5766}.ide-yellow{background:#febc2e;box-shadow:0 0 0 .5px #febc2e66}.ide-green{background:#28c840;box-shadow:0 0 0 .5px #28c84066}.ide-tab{color:#fffc;letter-spacing:.02em;background:#1e1e1e;border:1px solid #ffffff0f;border-bottom:none;border-radius:4px 4px 0 0;align-items:center;gap:6px;padding:2px 12px 2px 10px;font-size:11px;display:flex}.ide-dart-icon{color:#00bcd4;flex-shrink:0;font-size:9px}.ide-filename{white-space:nowrap}.ide-bar-spacer{flex:1}.ide-lang-badge{font-family:var(--font-mono);letter-spacing:.06em;color:#ffffff40;-webkit-user-select:none;user-select:none;font-size:10px}.ide-body{padding:10px 0 12px;display:flex}.ide-gutter{text-align:right;color:#ffffff24;-webkit-user-select:none;user-select:none;border-right:1px solid #ffffff0a;flex-direction:column;min-width:40px;padding:0 12px 0 14px;font-size:11px;display:flex}.ide-ln{line-height:20px;transition:color .25s}.ide-ln-active{color:#ffffff61}.ide-code{flex:1;padding:0 18px 0 14px;position:relative;overflow:hidden}.ide-code:after{content:"";pointer-events:none;background:linear-gradient(#0000,#1e1e1ed9);height:28px;position:absolute;bottom:0;left:0;right:0}.ide-line{white-space:pre;min-height:20px;line-height:20px}.ide-cursor{vertical-align:text-bottom;background:#aeafad;border-radius:1px;width:2px;height:13px;margin-left:1px;animation:1.05s ease-in-out infinite ideBlinkCursor;display:inline-block}@keyframes ideBlinkCursor{0%,48%{opacity:1}50%,96%{opacity:0}to{opacity:1}}.ide-t-kw{color:#569cd6}.ide-t-cls{color:#4ec9b0}.ide-t-str{color:#ce9178}.ide-t-cmt{color:#6a9955;font-style:italic}.ide-t-ann{color:#c586c0}.ide-t-fn{color:#dcdcaa}.ide-t-num{color:#b5cea8}.ide-t-pl{color:#d4d4d4}@media (width<=768px){.flutter-ide{border-radius:8px;font-size:10.5px;line-height:18px}.ide-ln{line-height:18px}.ide-line{min-height:18px;line-height:18px}.ide-cursor{height:11px}}@media (width<=480px){.flutter-ide{font-size:9.5px}}.highlights{background:#0d0d0d;position:relative;overflow:hidden}.highlights:before{content:"";pointer-events:none;animation:gridFade 1.2s var(--spring-out) both;background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0}@keyframes gridFade{0%{opacity:0}to{opacity:1}}.highlights-grid{grid-template-columns:1fr;max-width:860px;min-height:440px;margin:0 auto;display:grid}.highlight-card{cursor:default;opacity:0;transition:opacity .7s var(--spring-out), transform .7s var(--spring-out), background .4s ease;border-bottom:1px solid #ffffff14;border-right:1px solid #ffffff14;padding:56px 52px 60px;position:relative;overflow:hidden;transform:translateY(32px)}.highlight-card:last-child{border-right:none}.highlight-card.visible{opacity:1;transform:translateY(0)}.highlight-card:nth-child(2).visible{transition-delay:.12s}.highlight-card:after{content:"";background:radial-gradient(600px circle at var(--mouse-x,50%) var(--mouse-y,50%), #ffffff0a, transparent 55%);opacity:0;pointer-events:none;transition:opacity .4s;position:absolute;inset:0}.highlight-card:hover:after{opacity:1}.card-eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:#7c6aff;opacity:0;transition:opacity .5s var(--spring-out), transform .5s var(--spring-out);margin-bottom:28px;font-size:.65rem;font-weight:500;display:block;transform:translateY(12px)}.highlight-card:nth-child(2) .card-eyebrow{color:#00c9a7}.highlight-card.visible .card-eyebrow{opacity:1;transition-delay:.15s;transform:translateY(0)}.highlight-card:nth-child(2).visible .card-eyebrow{transition-delay:.27s}.card-category{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#ffffff4d;opacity:0;transition:opacity .5s var(--spring-out), transform .5s var(--spring-out);margin-bottom:16px;font-size:.65rem;font-weight:500;display:block;transform:translateY(10px)}.highlight-card.visible .card-category{opacity:1;transition-delay:.2s;transform:translateY(0)}.highlight-card:nth-child(2).visible .card-category{transition-delay:.32s}.card-heading{font-family:var(--font-display);letter-spacing:-.04em;color:#fff;opacity:0;transition:opacity .6s var(--spring-out), transform .6s var(--spring-out);margin-bottom:0;font-size:clamp(1.9rem,3.5vw,3rem);font-weight:700;line-height:1.05;transform:translateY(16px)}.highlight-card.visible .card-heading{opacity:1;transition-delay:.25s;transform:translateY(0)}.highlight-card:nth-child(2).visible .card-heading{transition-delay:.37s}.card-btn{font-family:var(--font-sans);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:transform .3s var(--spring), box-shadow .3s ease;opacity:0;border:none;border-radius:6px;align-items:center;gap:10px;padding:14px 24px;font-size:.78rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative;overflow:hidden;transform:translateY(10px)scale(.96)}.highlight-card.visible .card-btn{opacity:1;transition:opacity .5s var(--spring-out), transform .5s var(--spring), box-shadow .3s ease;transition-delay:.62s;transform:translateY(0)scale(1)}.highlight-card:nth-child(2).visible .card-btn{transition-delay:.74s}.card-btn-primary{color:#fff;background:#7c6aff}.card-btn-primary:hover{opacity:1;transform:translateY(-2px)scale(1.03);box-shadow:0 8px 28px #7c6aff73}.card-btn-secondary{color:#fff;background:#ffffff14;border:1px solid #ffffff1f}.card-btn-secondary:hover{opacity:1;background:#ffffff1f;transform:translateY(-2px)scale(1.03);box-shadow:0 8px 28px #00c9a733}.card-btn:active{transition-duration:.1s!important;transform:scale(.95)!important}.card-btn-arrow{transition:transform .3s var(--spring);display:inline-flex}.card-btn:hover .card-btn-arrow{transform:translate(4px)}@media (width<=768px){.highlights-grid{grid-template-columns:1fr}.highlight-card{border-right:none;padding:44px 28px 48px}.card-heading{font-size:2rem}}.project-card{cursor:default;-webkit-tap-highlight-color:transparent;-webkit-backdrop-filter:blur(28px)saturate(1.5);will-change:transform, box-shadow;background:#ffffffd1;border:1px solid #00000014;border-radius:24px;flex-direction:column;flex-shrink:0;justify-content:space-between;width:440px;min-height:440px;transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s cubic-bezier(.22,1,.36,1),border-color .3s,background .3s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #fffc,0 4px 16px #00000008,0 16px 40px #0000000a}.project-card:hover{background:#fffffff5;border-color:#00000024;transform:translateY(-6px)scale(1.012);box-shadow:inset 0 1px #fffffff2,0 8px 24px #0000000f,0 28px 56px #00000017}.project-card:active{transition-duration:.1s;transform:scale(.98)}.pc-accent-bar{opacity:.2;background:linear-gradient(90deg,#0000000d 0%,#000c 40%,#50505099 70%,#0000000d 100%);width:100%;height:3px;transition:opacity .4s}.project-card:hover .pc-accent-bar{opacity:1}.pc-header{justify-content:space-between;align-items:center;gap:12px;padding:24px 28px 0;display:flex}.pc-index-group{align-items:center;gap:10px;display:flex}.pc-index{font-family:var(--font-mono);letter-spacing:.05em;color:#000;background:#0000000f;border:1px solid #00000014;border-radius:6px;padding:3px 8px;font-size:.72rem;font-weight:700;line-height:1}.pc-category{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#0000007a;font-size:.68rem;font-weight:600;line-height:1}.pc-status{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#00000008;border:1px solid #0000000f;border-radius:9999px;align-items:center;gap:6px;padding:4px 10px;font-size:.65rem;font-weight:600;line-height:1;display:inline-flex}.pc-status-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.pc-status--published{color:#1a9e42;background:#34c75914;border-color:#34c75933}.pc-status--published .pc-status-dot{animation:2.4s ease-in-out infinite pcPulse}@keyframes pcPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.pc-status--development{color:#d97706;background:#ff950014;border-color:#ff950033}.pc-status--soon{color:#00000059}.pc-body{flex-direction:column;flex:1;padding:18px 28px 0;display:flex}.pc-name{font-family:var(--font-display);letter-spacing:-.03em;color:#000000e6;margin-bottom:10px;font-size:1.45rem;font-weight:700;line-height:1.2;transition:color .25s}.project-card:hover .pc-name{color:#000}.pc-short{font-family:var(--font-sans);color:#00000094;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-bottom:16px;font-size:.88rem;line-height:1.6;transition:color .25s;display:-webkit-box;overflow:hidden}.project-card:hover .pc-short{color:#000000c7}.pc-meta-highlight{font-family:var(--font-mono);background:#00000008;border:1px solid #0000000f;border-radius:8px;align-items:center;gap:8px;margin-bottom:18px;padding:6px 12px;font-size:.7rem;display:flex}.pc-meta-label{text-transform:uppercase;color:#0006;letter-spacing:.08em;font-weight:700}.pc-meta-value{color:#000c;white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.pc-tech{flex-wrap:wrap;gap:7px;margin-top:auto;margin-bottom:20px;display:flex}.pc-badge{font-family:var(--font-mono);letter-spacing:.03em;color:#000000a6;background:#0000000a;border:1px solid #00000012;border-radius:6px;padding:4px 10px;font-size:.65rem;font-weight:500;transition:color .22s,background .22s,border-color .22s}.pc-badge--more{color:#00000073;background:0 0;border-style:dashed}.project-card:hover .pc-badge{color:#000000d9;background:#00000012;border-color:#0000001f}.pc-sep{background:#00000012;height:1px;margin:0 28px}.pc-footer{align-items:center;gap:10px;padding:18px 28px 22px;display:flex}.pc-cta{color:#fff;font-family:var(--font-sans);letter-spacing:.01em;cursor:pointer;background:#111;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:8px;padding:10px 20px;font-size:.8rem;font-weight:600;text-decoration:none;transition:background .25s cubic-bezier(.22,1,.36,1),box-shadow .25s cubic-bezier(.22,1,.36,1),transform .25s cubic-bezier(.34,1.56,.64,1);display:inline-flex;box-shadow:0 2px 8px #0000001f}.pc-cta:hover{opacity:1;background:#000;transform:translateY(-1px)scale(1.04);box-shadow:0 6px 18px #00000038}.pc-cta:active{transition-duration:90ms;transform:scale(.95)}.pc-cta-icon{justify-content:center;align-items:center;transition:transform .28s cubic-bezier(.34,1.56,.64,1);display:inline-flex}.pc-cta:hover .pc-cta-icon{transform:translate(4px)}.pc-gap{flex:1}.pc-link{color:#0009;background:#0000000a;border:1px solid #00000012;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;text-decoration:none;transition:background .22s cubic-bezier(.22,1,.36,1),border-color .22s,color .22s,transform .3s cubic-bezier(.34,1.56,.64,1);display:inline-flex}.pc-link:hover{color:#000;opacity:1;background:#00000014;border-color:#00000024;transform:scale(1.1)}.pc-link:active{transition-duration:90ms;transform:scale(.92)}.pc-link svg{width:17px;height:17px}@media (width<=1024px){.project-card{width:380px;min-height:420px}}@media (width<=768px){.project-card{border-radius:20px;width:calc(88vw - 32px);max-width:360px;min-height:400px}.pc-header{padding:20px 22px 0}.pc-body{padding:14px 22px 0}.pc-sep{margin:0 22px}.pc-footer{padding:16px 22px 20px}.pc-name{font-size:1.25rem}}.featured-projects-section{background:var(--bg);width:100%;min-height:100vh;position:relative}.fps-sticky-viewport{box-sizing:border-box;z-index:10;background:linear-gradient(#fafafaf2 0%,#f5f5f7fa 50%,#fafafaf2 100%);flex-direction:column;justify-content:space-between;width:100%;height:100vh;padding:80px 0 28px;display:flex;position:sticky;top:0;overflow:hidden}.fps-sticky-viewport:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#00000005 0%,#0000 70%);border-radius:50%;width:500px;height:500px;position:absolute;top:20%;right:10%}.fps-container{z-index:1;width:100%;position:relative}.fps-header{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:12px;display:flex}.fps-title-group{max-width:680px}.fps-eyebrow-wrap{align-items:center;gap:10px;margin-bottom:8px;display:flex}.fps-eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:#00000080;font-size:.72rem;font-weight:600}.fps-count-pill{font-family:var(--font-mono);letter-spacing:.05em;color:#000;background:#0000000d;border:1px solid #00000014;border-radius:9999px;padding:3px 8px;font-size:.65rem;font-weight:700}.fps-title{font-family:var(--font-display);letter-spacing:-.035em;color:var(--text-primary);margin-bottom:8px;font-size:2.35rem;font-weight:700;line-height:1.12}.fps-subtitle{font-family:var(--font-sans);color:var(--text-secondary);margin:0;font-size:.92rem;line-height:1.5}.fps-hud{-webkit-backdrop-filter:blur(16px);background:#fffc;border:1px solid #00000014;border-radius:16px;flex-shrink:0;align-items:center;gap:18px;padding:10px 18px;display:flex;box-shadow:0 4px 16px #00000008}.fps-counter{font-family:var(--font-mono);letter-spacing:.04em;align-items:center;gap:4px;font-size:.82rem;font-weight:600;display:flex}.fps-counter-current{color:#000;min-width:1.8ch;font-weight:700}.fps-counter-divider{color:#0000004d}.fps-counter-total{color:#00000073}.fps-progress-track{background:#00000014;border-radius:9999px;width:110px;height:5px;position:relative;overflow:hidden}.fps-progress-fill{background:#000;border-radius:9999px;height:100%;transition:width .12s ease-out}.fps-nav-buttons{align-items:center;gap:6px;display:flex}.fps-nav-btn{color:#0009;cursor:pointer;background:#0000000a;border:1px solid #0000000f;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:background .2s,color .2s,transform .2s cubic-bezier(.34,1.56,.64,1);display:inline-flex}.fps-nav-btn:hover:not(:disabled){color:#fff;background:#000;transform:scale(1.1)}.fps-nav-btn:active:not(:disabled){transform:scale(.92)}.fps-nav-btn:disabled{opacity:.25;cursor:not-allowed}.fps-track-viewport{z-index:1;flex:1;align-items:center;width:100%;padding:16px 0;display:flex;position:relative;overflow:hidden}.fps-track{will-change:transform;gap:28px;width:max-content;padding:0 max(24px,50vw - 526px);transition:transform 50ms linear;display:flex}.fps-footer-hint{z-index:1;justify-content:space-between;align-items:center;padding-top:4px;display:flex}.fps-hint-text{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#0006;align-items:center;gap:6px;font-size:.7rem;display:flex}.featured-projects-section.reduced-motion{height:auto!important}.featured-projects-section.reduced-motion .fps-sticky-viewport{height:auto;padding:60px 0;position:relative;overflow:visible}.featured-projects-section.reduced-motion .fps-track-viewport{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;overflow:auto hidden}.featured-projects-section.reduced-motion .fps-track{transform:none!important}.featured-projects-section.reduced-motion .project-card{scroll-snap-align:start}@media (width<=1024px){.fps-title{font-size:2rem}.fps-sticky-viewport{padding:72px 0 20px}.fps-track{gap:20px}}@media (width<=768px){.fps-sticky-viewport{padding:68px 0 16px}.fps-header{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:8px}.fps-title{font-size:1.65rem}.fps-subtitle{font-size:.82rem}.fps-hud{border-radius:12px;justify-content:space-between;width:100%;padding:8px 14px}.fps-progress-track{flex:1;max-width:160px}.fps-track{gap:16px;padding:0 18px}.fps-footer-hint{padding-top:2px}.fps-hint-text{font-size:.65rem}}@media (height<=700px){.fps-sticky-viewport{padding-top:60px}.fps-header{margin-bottom:4px}.fps-subtitle{display:none}}.sg-container{flex-direction:column;gap:12px;margin-top:40px;display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 8% 92%,#0000 100%)}.sg-marquee-row{width:100%;display:flex;overflow:hidden}.sg-marquee-track{will-change:transform;flex-shrink:0;gap:10px;animation:28s linear infinite marquee-left;display:flex}.sg-marquee-reverse .sg-marquee-track{animation:32s linear infinite marquee-right}@keyframes marquee-left{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marquee-right{0%{transform:translate(-50%)}to{transform:translate(0)}}.sg-chip{white-space:nowrap;color:#000000b8;cursor:default;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #0000001a;border-radius:100px;flex-shrink:0;align-items:center;padding:8px 20px;font-size:.82rem;font-weight:500;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.sg-chip:hover{color:#fff;background:#000;border-color:#000}.sg-marquee-row:hover .sg-marquee-track{animation-play-state:paused}.cs-container{max-width:900px;margin:0 auto;padding:120px 24px 80px;animation:.5s ease-out fadeIn}.cs-back{font-family:var(--font-sans);color:#00000080;align-items:center;gap:8px;margin-bottom:40px;font-size:.85rem;font-weight:500;text-decoration:none;transition:color .2s,transform .2s cubic-bezier(.22,1,.36,1);display:inline-flex}.cs-back:hover{color:#000;transform:translate(-4px)}.cs-header{margin-bottom:48px}.cs-meta{align-items:center;gap:12px;margin-bottom:16px;display:flex}.cs-category{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#0006;font-size:.75rem;font-weight:600}.cs-status{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:#0000000a;border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.cs-status-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.cs-status--published{color:#34c759e6}.cs-status--development{color:#ff9500e6}.cs-title{font-family:var(--font-display);letter-spacing:-.04em;color:#000;margin-bottom:24px;font-size:3.5rem;font-weight:700;line-height:1.1}.cs-subtitle{font-family:var(--font-sans);color:#0009;max-width:700px;font-size:1.25rem;line-height:1.6}.cs-actions{gap:12px;margin-top:32px;display:flex}.cs-btn-primary{color:#fff;font-family:var(--font-sans);background:#000;border-radius:12px;align-items:center;gap:8px;padding:12px 24px;font-size:.9rem;font-weight:600;text-decoration:none;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s;display:inline-flex}.cs-btn-primary:hover{transform:scale(1.02);box-shadow:0 4px 12px #00000026}.cs-btn-primary svg{fill:currentColor;width:18px;height:18px}.cs-grid{grid-template-columns:2fr 1fr;gap:64px;display:grid}@media (width<=900px){.cs-grid{grid-template-columns:1fr;gap:48px}}.cs-section{margin-bottom:48px}.cs-section-title{font-family:var(--font-display);letter-spacing:-.02em;color:#000;border-bottom:1px solid #00000014;margin-bottom:24px;padding-bottom:12px;font-size:1.5rem;font-weight:600}.cs-text{font-family:var(--font-sans);color:#000000bf;font-size:1rem;line-height:1.75}.cs-list{margin:0;padding:0;list-style:none}.cs-list li{font-family:var(--font-sans);color:#000000bf;margin-bottom:16px;padding-left:24px;font-size:1rem;line-height:1.6;position:relative}.cs-list li:before{content:"→";color:#0000004d;font-family:var(--font-mono);position:absolute;left:0}.cs-tech-grid{flex-wrap:wrap;gap:8px;display:flex}.cs-badge{font-family:var(--font-mono);color:#000000b3;background:#0000000a;border:1px solid #00000014;border-radius:8px;padding:6px 12px;font-size:.75rem;font-weight:500}.cs-challenge{background:#00000005;border:1px solid #0000000a;border-radius:16px;margin-bottom:24px;padding:24px}.cs-challenge-title{font-family:var(--font-display);color:#000;margin-bottom:8px;font-size:1.1rem;font-weight:600}.cs-challenge-desc{font-family:var(--font-sans);color:#000000a6;font-size:.95rem;line-height:1.6}
