:root{--brand-ink:#0d0b15;--brand-pink:#e886a6;--brand-coral:#f48973;--brand-ember:#dc6544;--brand-dusk:#3a2633;--brand-mauve:#5a3b4d;--brand-plum:#7a3452;--brand-plum-deep:#3d1b2c;--brand-mist:#d6b6c8;--brand-mint:#4aeadc;--brand-paper:#f8f0f3;--gradient-brand:linear-gradient(90deg, var(--brand-pink), var(--brand-coral));--brand-primary:var(--brand-pink);--brand-secondary:var(--brand-ember);--brand-accent:var(--brand-mint);--pink-100:#fde9f0;--pink-200:#f6c3d5;--pink-300:#eb9bbc;--pink-600:#d4648f;--surface-dark:var(--brand-ink);--surface-raised:#100c16;--surface-elevated:#161019;--surface-overlay:#1e1520;--surface-light:var(--brand-paper);--text-primary:#fcf7fa;--text-secondary:#b3a9b3;--text-tertiary:#85818d;--text-on-paper:#1f121b;--text-on-paper-secondary:#5c4a56;--text-on-primary:var(--brand-ink);--border-subtle:#d6b6c821;--border-default:#d6b6c838;--border-strong:#d6b6c866;--border-paper:#1f121b24;--glow-primary:#e886a66b;--glow-soft:#e886a624;--glow-ember:#dc654459;--font-sans:var(--font-geist), "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:var(--font-geist-mono), "Geist Mono", ui-monospace, "SFMono-Regular", monospace;--fs-micro:.75rem;--fs-small:.875rem;--fs-body:1.0625rem;--fs-lead:clamp(1.1875rem, 1.05rem + .45vw, 1.4375rem);--fs-h4:clamp(1.1875rem, 1.1rem + .35vw, 1.375rem);--fs-h3:clamp(1.5rem, 1.25rem + .9vw, 2.125rem);--fs-h2:clamp(2.25rem, 1.35rem + 3.1vw, 4.5rem);--fs-h1:clamp(2.75rem, 1.4rem + 4.8vw, 6.75rem);--fs-display:clamp(3.1rem, .9rem + 8.2vw, 9.375rem);--fs-mega:clamp(4.5rem, .5rem + 15vw, 17rem);--lh-tight:.92;--lh-heading:1.02;--lh-snug:1.2;--lh-body:1.6;--track-display:-.045em;--track-heading:-.03em;--track-body:-.004em;--track-data:.01em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--space-10:8rem;--section-y:clamp(5rem, 3rem + 6.5vw, 9.5rem);--section-y-calm:clamp(4rem, 2.75rem + 4vw, 7rem);--container-max:1440px;--container-text:68ch;--margin:clamp(1.25rem, .5rem + 4vw, 5rem);--gutter:clamp(1rem, .6rem + 1.2vw, 1.75rem);--nav-h:4.5rem;--radius-paper:3px;--radius-chip:6px;--radius-field:10px;--radius-panel:18px;--radius-device:40px;--radius-pill:999px;--shadow-panel:0 1px 0 #ffffff0d inset, 0 40px 80px -32px #000000d9;--shadow-float:0 60px 120px -40px #000000e6, 0 0 0 1px var(--border-subtle);--shadow-paper:0 2px 3px #00000059, 0 30px 60px -24px #000000bf;--shadow-glow:0 0 0 1px #e886a680, 0 10px 40px -8px var(--glow-primary);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-out-quart:cubic-bezier(.25, 1, .5, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:linear(0, .009, .035 2.1%, .141 4.4%, .723 12.9%, .938 16.7%, 1.017 19.4%, 1.067, 1.099 24.3%, 1.108 26%, 1.1 28.1%, 1.049 33.5%, 1.012 38.7%, .997 43.6%, .991 49%, 1.001 62.3%, 1);--duration-micro:.22s;--duration-standard:.56s;--duration-cinematic:1.1s;--z-base:1;--z-raised:10;--z-sticky:50;--z-nav:100;--z-overlay:200;--z-cursor:1000;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--nav-h) + 1rem)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--surface-dark);min-height:100vh;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--track-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-weight:400;overflow-x:clip}body:after{content:"";z-index:var(--z-overlay);pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}img,svg,video,canvas{max-width:100%;display:block}h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd{margin:0}ul[role=list],ol[role=list]{padding:0;list-style:none}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer}::selection{background:var(--brand-pink);color:var(--brand-ink)}:focus-visible{outline:2px solid var(--pink-200);outline-offset:3px;border-radius:4px}.t-display,.t-h1,.t-h2,.t-h3,.t-h4{text-wrap:balance;font-weight:400}.t-display{font-size:var(--fs-display);font-weight:300;line-height:var(--lh-tight);letter-spacing:var(--track-display)}.t-h1{font-size:var(--fs-h1);font-weight:300;line-height:var(--lh-tight);letter-spacing:var(--track-display)}.t-h2{font-size:var(--fs-h2);font-weight:350;line-height:var(--lh-heading);letter-spacing:var(--track-heading)}.t-h3{font-size:var(--fs-h3);font-weight:450;line-height:var(--lh-snug);letter-spacing:-.02em}.t-h4{font-size:var(--fs-h4);letter-spacing:-.01em;font-weight:560;line-height:1.3}.t-lead{font-size:var(--fs-lead);color:var(--text-secondary);text-wrap:pretty;max-width:38em;line-height:1.5}.t-body{color:var(--text-secondary);text-wrap:pretty;max-width:36em}.t-small{font-size:var(--fs-small);color:var(--text-secondary);line-height:1.55}.t-data{font-size:var(--fs-small);letter-spacing:var(--track-data);font-variant-numeric:tabular-nums;font-weight:560;line-height:1.3}.t-tabular{font-variant-numeric:tabular-nums}.container{width:100%;max-width:var(--container-max);padding-inline:var(--margin);margin-inline:auto}.grid{column-gap:var(--gutter);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (min-width:768px){.grid{grid-template-columns:repeat(8,minmax(0,1fr))}}@media (min-width:1024px){.grid{grid-template-columns:repeat(12,minmax(0,1fr))}}.section{padding-block:var(--section-y);position:relative}.section-calm{padding-block:var(--section-y-calm);position:relative}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{top:var(--space-3);left:var(--space-3);z-index:calc(var(--z-cursor) + 1);padding:var(--space-3) var(--space-4);background:var(--brand-pink);color:var(--brand-ink);border-radius:var(--radius-chip);transition:transform var(--duration-micro) var(--ease-out-expo);font-weight:600;position:fixed;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.text-link{color:var(--pink-200);transition:background-size var(--duration-micro) var(--ease-out-expo), color var(--duration-micro);background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat}.text-link:hover{color:var(--text-primary);background-position:100% 100%;background-size:0% 1px}.text-shade{isolation:isolate;position:relative}.text-shade:before{content:"";z-index:-1;pointer-events:none;background:#0d0b15b8;position:absolute;inset:-6rem -7rem;-webkit-mask-image:linear-gradient(90deg,#0000,#0003 2rem,#000000a6 4.5rem,#000 7rem calc(100% - 7rem),#000000a6 calc(100% - 4.5rem),#0003 calc(100% - 2rem),#0000),linear-gradient(#0000,#0003 2rem,#000000a6 4rem,#000 6rem calc(100% - 6rem),#000000a6 calc(100% - 4rem),#0003 calc(100% - 2rem),#0000);mask-image:linear-gradient(90deg,#0000,#0003 2rem,#000000a6 4.5rem,#000 7rem calc(100% - 7rem),#000000a6 calc(100% - 4.5rem),#0003 calc(100% - 2rem),#0000),linear-gradient(#0000,#0003 2rem,#000000a6 4rem,#000 6rem calc(100% - 6rem),#000000a6 calc(100% - 4rem),#0003 calc(100% - 2rem),#0000);-webkit-mask-composite:source-in;mask-composite:intersect}::view-transition{pointer-events:none}::view-transition-group(site-header){z-index:100;animation:none}::view-transition-old(site-header){display:none}::view-transition-new(site-header){animation:none}::view-transition-old(.page){animation:.2s var(--ease-in-out) both page-out}::view-transition-new(.page){animation:.42s var(--ease-out-expo) .12s both page-in}@keyframes page-out{to{opacity:0;filter:blur(6px);transform:translateY(-12px)}}@keyframes page-in{0%{opacity:0;filter:blur(6px);transform:translateY(18px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}::view-transition-old(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-new(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-group(*){animation-duration:0s!important;animation-delay:0s!important}}.cv{content-visibility:auto;contain-intrinsic-size:auto var(--cv-h,1000px)}
.field-ink,.field-plum,.field-paper{background:var(--bg);color:var(--fg);position:relative}.field-ink{--bg:var(--brand-ink);--fg:var(--text-primary);--fg-2:var(--text-secondary);--fg-3:var(--text-tertiary);--line:var(--border-subtle);--line-strong:var(--border-default);--card:var(--surface-raised);--card-line:var(--border-subtle);--accent:var(--brand-pink);--accent-text:var(--pink-300)}.field-plum{--bg:#1f1220;--fg:var(--text-primary);--fg-2:#c9b9c4;--fg-3:#9d8f99;--line:#e886a629;--line-strong:#e886a64d;--card:#2a1828;--card-line:#e886a62e;--accent:var(--brand-pink);--accent-text:var(--pink-300);background:radial-gradient(60% 50% at 85% 0%, #e886a624, transparent 70%), radial-gradient(50% 45% at 10% 100%, #f4897314, transparent 70%), var(--bg)}.field-paper{--bg:var(--brand-paper);--fg:var(--text-on-paper);--fg-2:var(--text-on-paper-secondary);--fg-3:#6b5a65;--line:#1f121b1f;--line-strong:#1f121b38;--card:#fffafc;--card-line:#1f121b1a;--accent:#a63d63;--accent-text:#a63d63;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.fg-2{color:var(--fg-2)}.fg-3{color:var(--fg-3)}.t-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2,var(--text-secondary));align-items:center;gap:.6em;font-size:.8125rem;font-weight:500;line-height:1.3;display:inline-flex}.t-label[data-dot]:before{content:"";background:var(--brand-pink);border-radius:50%;flex:none;width:.5rem;height:.5rem;box-shadow:0 0 0 4px #e886a62e}.head{gap:var(--space-4);max-width:46rem;display:grid}.head>p:not(.t-label){color:var(--fg-2);font-size:var(--fs-lead);text-wrap:pretty;line-height:1.5}.head-center{text-align:center;justify-items:center;margin-inline:auto}.t-section{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(2.25rem,1.6rem + 2.2vw,3.5rem);font-weight:350;line-height:1.04}.t-hero{letter-spacing:-.045em;text-wrap:balance;font-size:clamp(2.75rem,1.5rem + 4.4vw,6rem);font-weight:300;line-height:.98}.t-card{letter-spacing:-.02em;font-size:clamp(1.25rem,1.15rem + .35vw,1.5rem);font-weight:500;line-height:1.2}.t-body-lg{color:var(--fg-2);text-wrap:pretty;font-size:1.125rem;line-height:1.6}.t-note{font-size:var(--fs-small);color:var(--fg-3);font-style:italic}.shape-phone{aspect-ratio:9/16;border-radius:28px}.shape-wide{aspect-ratio:16/9;border-radius:18px}.shape-classic{aspect-ratio:3/2;border-radius:18px}.shape-portrait{aspect-ratio:4/5;border-radius:18px}.shape-square{aspect-ratio:1;border-radius:12px}.card{background:var(--card);border:1px solid var(--card-line);border-radius:var(--radius-panel)}
[data-motion]{--stagger:90ms;--delay:calc(var(--i,0) * var(--stagger))}[data-motion=cards]{--stagger:.12s}html.js [data-motion=fade-up],html.js [data-motion=cards]{opacity:0;transition:opacity .56s var(--ease-out-quart) var(--delay), transform .56s var(--ease-out-quart) var(--delay);transform:translateY(24px)}html.js [data-motion=fade-up][data-in],html.js [data-motion=cards][data-in]{opacity:1;transform:none}html.js [data-motion=reveal-mask]:before{content:"";z-index:3;background:var(--bg,var(--brand-ink));transform-origin:50% 0;transition:transform .9s var(--ease-out-expo) var(--delay);pointer-events:none;position:absolute;inset:0}html.js [data-motion=reveal-mask][data-in]:before{transform:scaleY(0)}html.js [data-motion=pop]{opacity:0;transition:opacity .3s var(--ease-out-quart) var(--delay), scale .3s var(--ease-spring) var(--delay);scale:.6}html.js [data-motion=pop][data-in]{opacity:1;scale:1}html.js [data-motion=draw] :is(path,line,polyline,circle){stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset var(--draw-ms,.25s) var(--ease-out-quart) var(--delay)}html.js [data-motion=draw][data-in] :is(path,line,polyline,circle){stroke-dashoffset:0}.strike{color:var(--fg-3);position:relative}.strike:after{content:"";background:var(--accent);transform-origin:0;height:2px;position:absolute;top:55%;left:-2%;right:-2%}html.js [data-motion=strike] .strike:after{transition:transform .5s var(--ease-in-out) var(--delay);transform:scaleX(0)}html.js [data-motion=strike][data-in] .strike:after{transform:scaleX(1)}.kenburns{animation:14s ease-in-out infinite alternate ken-burns}.kb-scope .kenburns-hover{transition:scale 1.4s var(--ease-out-quart)}.kb-scope:hover .kenburns-hover{scale:1.08}@keyframes ken-burns{0%{scale:1}to{scale:1.08}}.float{animation:float 3s ease-in-out var(--float-delay,0s) infinite alternate}@keyframes float{0%{translate:0 -6px}to{translate:0 6px}}.xfade{position:absolute;inset:0;overflow:hidden}.xfade>*{opacity:0;animation:18s linear infinite xfade;position:absolute;inset:0}.xfade>:first-child{animation-delay:-1.2s}.xfade>:nth-child(2){animation-delay:4.8s}.xfade>:nth-child(3){animation-delay:10.8s}@keyframes xfade{0%{opacity:0}6.667%{opacity:1}33.333%{opacity:1}40%{opacity:0}to{opacity:0}}html.js [data-slide] .slide-caption{opacity:0;transition:opacity .56s var(--ease-out-quart) .2s, transform .56s var(--ease-out-quart) .2s;transform:translateY(24px)}html.js [data-slide][data-active] .slide-caption{opacity:1;transform:none}[data-slide][data-active] .slide-kenburns{animation:14s ease-in-out infinite alternate ken-burns}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.parallax>*{animation:linear both parallax;animation-timeline:view();animation-range:cover}.scroll-tilt{transform-origin:50% 100%;animation:linear both scroll-tilt;animation-timeline:view();animation-range:entry cover 45%}.phone-scroll{animation:linear both phone-scroll;animation-timeline:view();animation-range:cover}.scroll-draw{stroke-dasharray:1;animation:linear both scroll-draw;animation-timeline:view();animation-range:entry 20% cover 60%}}}@keyframes parallax{0%{translate:0 calc((var(--speed,1) - 1) * -240px);rotate:calc(var(--rot,0deg) * -1)}to{translate:0 calc((var(--speed,1) - 1) * 240px);rotate:var(--rot,0deg)}}@keyframes scroll-tilt{0%{transform:perspective(1400px)rotateX(12deg)}to{transform:perspective(1400px)rotateX(0)}}@keyframes phone-scroll{0%{translate:0}to{translate:0 var(--phone-travel,-40%)}}@keyframes scroll-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){html.js [data-motion]{opacity:1!important;transform:scale(1)!important}html.js [data-motion=reveal-mask]:before{display:none}html.js [data-motion=draw] :is(path,line,polyline,circle),html.js [data-motion=strike] .strike:after{stroke-dashoffset:0!important;transform:none!important}.kenburns,.float,[data-slide] .slide-kenburns{animation:none}html.js [data-slide] .slide-caption{opacity:1;transform:none}.xfade>*{animation:none}.xfade>:first-child{opacity:1}}
