:root{--reveal-y:20px;--r:14px}.nav{z-index:50;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:16px 36px;transition:all .35s;display:flex;position:fixed;top:0;left:0;right:0}.nav.scrolled{backdrop-filter:blur(18px);border-bottom:1px solid var(--line);background:#13100bd9}.logo{align-items:center;gap:9px;display:flex}.logo-img{width:auto;height:28px;display:block}.logo b{font-family:var(--serif);font-size:22px;font-weight:500}.logo .ver{font-family:var(--mono);color:var(--ink3);border:1px solid var(--line-bright);border-radius:5px;margin-left:4px;padding:2px 6px;font-size:10px}.nav-mid{gap:30px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.nav-mid a{color:var(--ink2);font-size:14px;transition:color .2s}.nav-mid a:hover{color:var(--ink)}.nav-cta{color:var(--bg);background:var(--ink);border-radius:9px;padding:9px 16px;font-size:13.5px;font-weight:600;transition:all .2s}.nav-cta:hover{background:var(--accent);color:var(--bg)}main{z-index:2;position:relative}section{padding:110px 36px;position:relative}.wrap{max-width:1180px;margin:0 auto}em{color:var(--accent);font-style:italic}.eyebrow.bar{align-items:center;gap:8px;display:inline-flex}.eyebrow.bar:before{content:"";background:var(--accent);width:18px;height:1px}.hero{padding-top:150px;overflow:hidden}.hero .bloom{opacity:.7;width:800px;height:800px;top:-200px;right:-200px}.hero-grid{z-index:2;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px;max-width:1180px;margin:0 auto;display:grid;position:relative}.hero-copy .eyebrow{margin-bottom:26px}.hero-copy h1{font-family:var(--serif);letter-spacing:-.03em;margin:0 0 26px;font-size:clamp(40px,5vw,66px);font-weight:400;line-height:1.1}.hero-copy p{color:var(--ink2);max-width:500px;margin:0 0 34px;font-size:18px;line-height:1.6}.hero-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.hero-stats{border-top:1px solid var(--line);gap:40px;margin-top:44px;padding-top:28px;display:flex}.hero-stats .s b{font-family:var(--serif);letter-spacing:-.02em;font-size:28px;display:block}.hero-stats .s span{color:var(--ink3);font-size:12.5px;font-family:var(--mono);letter-spacing:.04em}.hero-media{justify-content:center;display:flex;position:relative}.hero-media .device{width:280px;height:580px}.hero-media .device .screen .ph{border:none;border-radius:0;width:100%;height:100%}.chip{backdrop-filter:blur(10px);border:1px solid var(--line-bright);background:#221d16d9;border-radius:12px;align-items:center;gap:10px;padding:12px 14px;display:flex;position:absolute;box-shadow:0 12px 30px #0006}.chip .ic{background:var(--bg);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;padding:5px;display:flex;overflow:hidden}.chip .ic img{object-fit:contain;width:100%;height:100%;display:block}.chip b{font-size:12.5px;display:block}.chip span{color:var(--ink3);font-size:11px}.chip.c1{top:80px;left:-30px}.chip.c2{bottom:110px;right:-36px}.skills-sec{padding:0 36px 80px}.skill-cards{flex-direction:row;gap:14px;display:flex}.skill-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);cursor:default;will-change:transform;transform-style:preserve-3d;flex:1;padding:20px 22px;transition:border-color .25s;position:relative;overflow:hidden}.skill-card:hover{border-color:var(--line-bright)}.skill-card-cat{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);margin-bottom:8px;font-size:9.5px}.skill-card h4{font-family:var(--serif);letter-spacing:-.01em;color:var(--ink);margin:0 0 6px;font-size:15px;font-weight:400;line-height:1.2}.skill-card p{color:var(--ink3);margin:0;font-size:12px;line-height:1.55}.skill-card-glare{pointer-events:none;opacity:1;border-radius:inherit;position:absolute;inset:0}.showcase-sec{background:var(--bg-alt)}.showcase-grid{grid-template-columns:1fr 1.15fr;align-items:center;gap:72px;max-width:1060px;margin:0 auto;display:grid}.showcase-phone{justify-content:center;display:flex}.showcase-phone .device{width:248px;height:516px}.showcase-phone .device .screen{position:relative}.sc-screen{opacity:0;border:none;border-radius:0;width:100%;height:100%;transition:opacity .4s;position:absolute;inset:0}.sc-screen.active{opacity:1}.sc-tabs{gap:6px;margin:22px 0 30px;display:flex}.sc-tab{letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);color:var(--ink3);cursor:pointer;font-size:10.5px;font-family:var(--sans);background:0 0;border-radius:8px;padding:7px 15px;transition:all .2s}.sc-tab:hover{border-color:var(--line-bright);color:var(--ink)}.sc-tab.active{border-color:var(--accent);color:var(--accent);background:#e8a24a12}.sc-panel{display:none}.sc-panel.active{animation:.35s fade;display:block}.sc-panel h2{font-family:var(--serif);letter-spacing:-.02em;margin:0 0 16px;font-size:clamp(26px,3vw,40px);font-weight:400;line-height:1.1}.sc-panel p{color:var(--ink2);max-width:440px;margin:0 0 28px;font-size:16.5px;line-height:1.65}.sc-cta{color:var(--accent);border-bottom:1px solid #e8a24a59;align-items:center;gap:7px;padding-bottom:2px;font-size:13.5px;font-weight:600;transition:border-color .2s,gap .2s;display:inline-flex}.sc-cta:hover{border-color:var(--accent);gap:10px}.sc-cta svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.sec-head{max-width:720px;margin:0 auto 56px}.sec-head.center{text-align:center}.sec-head .eyebrow{margin-bottom:18px;display:inline-flex}.sec-head h2{font-family:var(--serif);letter-spacing:-.02em;margin:0;font-size:clamp(30px,3.8vw,46px);font-weight:400;line-height:1.12}.sec-head p{color:var(--ink2);margin:16px auto 0;font-size:16.5px;line-height:1.6}.sec-head.center p{max-width:520px}.bento{grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(208px,auto);gap:16px;display:grid}.bcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;padding:26px;transition:border-color .25s,background .25s;display:flex;position:relative;overflow:hidden}.bcard .bcat{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;font-size:10.5px}.bcard h3{font-family:var(--serif);letter-spacing:-.01em;margin:0 0 10px;font-size:21px;font-weight:400;line-height:1.2}.bcard p{color:var(--ink2);margin:0;font-size:14px;line-height:1.58}.bcard.big{grid-area:span 2/span 2;padding:30px}.bcard.big h3{font-size:30px}.bcard.big p{font-size:16px}.bcard.big .ph{border-radius:12px;width:100%;height:200px}.bcard-dots{pointer-events:none;border-radius:inherit;position:absolute;inset:40% 0 0;overflow:hidden;mask-image:linear-gradient(#0000,#000 40%)}.bcard-dots canvas{position:absolute;inset:0;width:100%!important;height:100%!important}@keyframes fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.wave-outer{flex-direction:column;align-items:flex-end;width:70vw;margin:0 auto;display:flex}.wave-wrap{width:100%;height:1px;margin-bottom:52px;position:relative}.wave-hitbox{z-index:10;cursor:crosshair;height:40px;transition:top .3s,height .3s;position:absolute;top:-20px;left:0;right:0}.wave-hitbox:hover{height:300px;top:-150px}.wave-svg{pointer-events:none;width:100%;height:300px;position:absolute;top:-100px;left:0}.wave-text-row{text-align:center;flex-direction:column;align-items:center;gap:20px;width:100%;display:flex}.wave-copy{flex-direction:column;align-items:center;gap:20px;display:flex}.wave-h2{font-family:var(--serif);letter-spacing:-.02em;margin:0;font-size:clamp(32px,4.5vw,58px);font-weight:400}.wave-p{color:var(--ink2);max-width:560px;margin:0;font-size:16.5px;line-height:1.65}.faq-wrap{max-width:900px;margin:0 auto}.faq-wrap-header{margin-bottom:28px}.faq-wrap-header h2{font-family:var(--serif);letter-spacing:-.02em;margin:0 0 12px;font-size:clamp(28px,3.5vw,38px);font-weight:400}.faq-wrap-header p{color:var(--ink2);max-width:640px;margin:0;font-size:16px;line-height:1.6}.faq-list{width:100%}.faq-item{border-left:1px solid var(--line);border-right:1px solid var(--line);background:var(--surface);z-index:0;margin-top:-1px;transition:border-color .25s,background .25s;position:relative}.faq-item:first-child{border-top:1px solid var(--line);border-radius:10px 10px 0 0;margin-top:0}.faq-item:last-child{border-bottom:1px solid var(--line);border-radius:0 0 10px 10px}.faq-item.open{border-color:var(--line-bright);z-index:1}.faq-q{cursor:pointer;color:var(--ink);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;font-size:15px;font-weight:500;display:flex}.faq-chevron{flex-shrink:0;width:16px;height:16px;transition:transform .2s}.faq-chevron svg{width:16px;height:16px;stroke:var(--ink3);fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;display:block}.faq-item.open .faq-chevron{transform:rotate(180deg)}.faq-a{max-height:0;transition:max-height .35s cubic-bezier(.2,.7,.2,1);overflow:hidden}.faq-item.open .faq-a{max-height:260px}.faq-a p{color:var(--ink2);margin:0;padding:0 20px 18px;font-size:14px;line-height:1.6}.faq-footer-note{color:var(--ink3);margin-top:26px;font-size:14px}.faq-footer-note a{color:var(--ink2);border-bottom:1px solid var(--line);padding-bottom:1px;transition:color .2s,border-color .2s}.faq-footer-note a:hover{color:var(--ink);border-color:var(--line-bright)}.closer{text-align:center;background:var(--bg-alt);overflow:hidden}.closer .bloom{width:800px;height:600px;top:-10%;left:50%;transform:translate(-50%)}.closer-card{z-index:2;background:var(--surface-2);border:1px solid var(--line);border-radius:20px;flex-direction:column;align-items:center;gap:0;max-width:1180px;margin:0 auto;padding:72px 48px;display:flex;position:relative;overflow:hidden}.closer-card .bloom{opacity:.5;width:700px;height:600px;top:-60%;left:50%;transform:translate(-50%)}.closer-badge{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);border:1px solid #e8a24a59;border-radius:999px;align-items:center;margin-bottom:28px;padding:5px 14px;font-size:10.5px;display:inline-flex}.closer h2{font-family:var(--serif);letter-spacing:-.02em;max-width:620px;margin:0 auto 14px;font-size:clamp(32px,4.6vw,56px);font-weight:400;line-height:1.08}.closer p{color:var(--ink2);margin:0 auto 32px;font-size:17px}.closer .hero-actions{justify-content:center}@media (width<=880px){.closer-card{padding:48px 24px}}footer{z-index:2;border-top:1px solid var(--line);background:var(--bg-alt);padding:56px 36px 44px;position:relative}.foot-top{grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;gap:32px;max-width:1180px;margin:0 auto 44px;display:grid}.foot-brand b{font-family:var(--serif);font-size:22px}.foot-tag{color:var(--ink2);font-style:italic;font-family:var(--serif);max-width:240px;margin-top:12px;font-size:16px}.foot-col h4{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin:0 0 14px;font-size:10.5px}.foot-col a{color:var(--ink2);margin-bottom:10px;font-size:14px;transition:color .2s;display:block}.foot-col a:hover{color:var(--ink)}.foot-bottom{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;max-width:1180px;margin:0 auto;padding-top:26px;display:flex}.foot-bottom .meta{color:var(--ink3);max-width:600px;font-size:12.5px;line-height:1.7}@media (width<=880px){.nav{padding:13px 18px}.nav-mid{display:none}section{padding:72px 18px}.hero{padding-top:120px}.hero-grid{grid-template-columns:1fr;gap:56px}.hero-media{order:-1}.skills-sec{padding:0 18px 60px}.skill-cards{flex-direction:column}.showcase-grid{grid-template-columns:1fr;gap:48px}.showcase-phone{display:none}.sc-tabs{flex-wrap:wrap}.bento{grid-template-columns:1fr;grid-auto-rows:auto}.bcard.big{grid-area:span 1/span 1}.bcard.big .ph{height:160px}.faq-wrap-header p{max-width:100%}.wave-outer{width:100%}.foot-top{grid-template-columns:1fr 1fr;gap:28px}}
