:root{--bg: #f6f7f9;--bg-2: #eceef2;--ink: #0f1320;--ink-2: #5b6370;--ink-3: #9aa2ae;--line: rgba(15, 19, 32, .12);--accent: #0a8f82;--accent-soft: rgba(10, 143, 130, .12);--accent-ink: #ffffff;--field: 15, 19, 32;--font: "Geist", "Inter", "Segoe UI", system-ui, sans-serif;--ease: cubic-bezier(.2, .7, .2, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--gutter: clamp(20px, 4vw, 64px);--max: 1360px;--radius: 14px;color-scheme:light}:root[data-theme=dark]{--bg: #0b0e14;--bg-2: #12161f;--ink: #e9edf3;--ink-2: #8d95a3;--ink-3: #5a6270;--line: rgba(233, 237, 243, .12);--accent: #2fd9c5;--accent-soft: rgba(47, 217, 197, .12);--accent-ink: #0b0e14;--field: 233, 237, 243;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:clamp(1rem,1.05vw,1.125rem);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;transition:background-color .5s var(--ease),color .5s var(--ease);overflow-x:clip}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}h1,h2,h3,p{margin:0}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.wrap{width:min(100% - 2 * var(--gutter),var(--max));margin-inline:auto}.small{font-size:.9rem;color:var(--ink-2)}.small,.chip,.status,.step .num,.facts span,.service .tag,.footer{letter-spacing:.01em}.header{position:fixed;inset:0 0 auto;z-index:50;padding-block:20px;transition:transform .6s var(--ease)}.header.hide{transform:translateY(-110%)}.header:before{content:"";position:absolute;inset:0 0 -12px;z-index:-1;background:color-mix(in oklab,var(--bg) 72%,transparent);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);mask-image:linear-gradient(#000 calc(100% - 12px),transparent);opacity:0;transition:opacity .4s var(--ease)}.header.compact:before{opacity:1}.header.compact .chip:not(.solid),.header.compact .theme-btn{background:transparent;backdrop-filter:none}.header .wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}.brand{font-weight:600;letter-spacing:-.02em;font-size:1.05rem;display:inline-flex;align-items:center;gap:10px;justify-self:start}.brand-name{display:inline-block;max-width:200px;overflow:hidden;white-space:nowrap;opacity:1;transition:max-width .6s var(--ease),opacity .4s var(--ease)}.header.compact .brand-name{max-width:0;opacity:0}.mark{flex:none;color:var(--ink)}.mark .acc{color:var(--accent)}.mark g{transform-box:fill-box;transform-origin:center;transition:transform .7s var(--ease)}.brand:hover .mark .acc{transform:rotate(-90deg)}.brand:hover .mark .m1,.brand:hover .mark .m9{transform:rotate(35deg)}.brand:hover .mark .m3,.brand:hover .mark .m7{transform:rotate(-35deg)}.mark.faint{color:var(--ink-3);opacity:.5}.nav{display:flex;gap:28px;font-size:.95rem;color:var(--ink-2)}.nav a{transition:color .3s var(--ease)}.nav a:hover{color:var(--ink)}.tools{display:flex;justify-content:flex-end;align-items:center;gap:10px}.chip{font-size:.85rem;font-weight:500;border:1px solid var(--line);border-radius:999px;padding:9px 14px;line-height:1;display:inline-flex;align-items:center;gap:8px;background:color-mix(in oklab,var(--bg) 80%,transparent);backdrop-filter:blur(10px);transition:border-color .3s var(--ease),background-color .3s var(--ease),transform .1s ease-out}.chip:hover{border-color:var(--ink)}.chip.solid{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chip.solid:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.theme-btn{width:34px;height:34px;border-radius:999px;border:1px solid var(--line);display:grid;place-items:center;background:color-mix(in oklab,var(--bg) 80%,transparent);backdrop-filter:blur(10px);transition:border-color .3s var(--ease),background-color .3s var(--ease),transform .1s ease-out}.theme-btn svg{width:15px;height:15px}.theme-btn .moon{display:none}:root[data-theme=dark] .theme-btn .sun{display:none}:root[data-theme=dark] .theme-btn .moon{display:block}@media(max-width:800px){.nav{display:none}.header .wrap{grid-template-columns:1fr auto}}@media(max-width:440px){.header .wrap{gap:12px}.tools{gap:8px}}.hero{position:relative;min-height:100svh;display:grid;align-content:end;padding-block:160px 56px}.field{position:absolute;inset:0;z-index:0;width:100%;height:100%;display:block;pointer-events:none}.hero>.wrap{position:relative;z-index:1}.hero h1{font-size:clamp(2.6rem,7.2vw,7.4rem);line-height:1;letter-spacing:-.04em;font-weight:600;max-width:17ch}.hero h1 .line{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}.hero h1 .line>span{display:block;transform:translateY(105%);transition:transform 1.1s var(--ease-out)}.hero h1 .line:nth-child(2)>span{transition-delay:.1s}.hero h1 .line:nth-child(3)>span{transition-delay:.2s;color:var(--accent)}.loaded .hero h1 .line>span{transform:translateY(0)}.hero-foot{margin-top:40px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px 48px;opacity:0;transform:translateY(12px);transition:opacity .9s var(--ease) .55s,transform .9s var(--ease) .55s}.loaded .hero-foot{opacity:1;transform:none}.hero-foot p{max-width:46ch;font-size:1.1rem;color:var(--ink-2);text-wrap:pretty}.hero-cta{display:flex;align-items:center;gap:20px}.status{display:inline-flex;align-items:center;gap:10px;font-size:.9rem;color:var(--ink-2)}.status i{width:8px;height:8px;border-radius:999px;background:var(--accent);animation:pulse 2.4s var(--ease) infinite}@keyframes pulse{0%{box-shadow:0 0 color-mix(in oklab,var(--accent) 50%,transparent)}70%{box-shadow:0 0 0 10px transparent}to{box-shadow:0 0 0 0 transparent}}.hint{position:absolute;right:var(--gutter);top:50%;z-index:1;font-size:.85rem;color:var(--ink-3);writing-mode:vertical-rl;transform:translateY(-50%);opacity:0;transition:opacity 1s var(--ease) 1.2s}.loaded .hint{opacity:1}@media(max-width:800px){.hero{padding-top:120px}.hint{display:none}}.btn{position:relative;display:inline-flex;align-items:center;gap:12px;padding:16px 24px;border-radius:999px;background:var(--ink);color:var(--bg);font-weight:500;letter-spacing:-.01em;overflow:hidden;isolation:isolate;transition:color .45s var(--ease),transform .1s ease-out}.btn:before{content:"";position:absolute;inset:0;z-index:-1;background:var(--accent);transform:translateY(101%);transition:transform .55s var(--ease)}@media(hover:hover){.btn:hover{color:var(--accent-ink)}.btn:hover:before{transform:translateY(0)}}.btn:active,.chip:active,.theme-btn:active,.social-btn:active{transform:scale(.97)}.btn svg{width:16px;height:16px}.btn.big{font-size:clamp(1.3rem,3vw,2.2rem);padding:.75em 1.1em;gap:.6em}.btn.big svg{width:.8em;height:.8em}.section{padding-block:clamp(80px,10vw,150px)}.section+.section{border-top:1px solid var(--line)}.section h1,.section h2{font-size:clamp(2rem,4.2vw,3.8rem);line-height:1.02;letter-spacing:-.035em;font-weight:600;margin-bottom:clamp(36px,5vw,64px);max-width:20ch;text-wrap:balance}.about-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}.portrait{position:relative;margin:0;aspect-ratio:4 / 5;background:var(--bg-2);overflow:hidden;border-radius:var(--radius)}.portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.portrait .ph{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:12px;color:var(--ink-3);font-size:.85rem}.about-text{display:flex;flex-direction:column;gap:22px}.about-text p{font-size:clamp(1.1rem,1.6vw,1.45rem);line-height:1.4;letter-spacing:-.01em;text-wrap:pretty;max-width:38ch;color:var(--ink-2)}.about-text p.lead{font-size:clamp(1.4rem,2.4vw,2.1rem);line-height:1.2;letter-spacing:-.025em;color:var(--ink)}.facts{margin-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.facts div{padding:16px 18px;border-radius:10px;background:var(--bg-2);display:flex;flex-direction:column;gap:4px}.facts span{font-size:.85rem;color:var(--ink-2)}.facts strong{font-weight:500;font-size:.98rem}@media(max-width:800px){.about-grid{grid-template-columns:1fr}.portrait{max-width:420px}}.section.page{padding-top:clamp(130px,14vw,200px)}.nav a[aria-current=page]{color:var(--ink)}.studio-card{margin:0;aspect-ratio:1;border-radius:var(--radius);background:var(--bg-2);display:grid;place-items:center;position:relative;overflow:hidden}.studio-card .mark{width:clamp(120px,15vw,210px);height:auto}.studio-card figcaption{position:absolute;left:clamp(20px,2.4vw,32px);bottom:clamp(18px,2.2vw,28px);font-size:clamp(1.05rem,1.5vw,1.3rem);font-weight:500;letter-spacing:-.015em;color:var(--ink-2)}@media(max-width:800px){.studio-card{aspect-ratio:16 / 10;max-width:520px}.studio-card .mark{width:110px}}.section.who-section{padding-block:clamp(64px,8vw,110px)}.who{display:flex;align-items:center;gap:clamp(24px,4vw,56px)}.who img{flex:none;width:clamp(104px,12vw,168px);aspect-ratio:1;border-radius:50%;object-fit:cover;background:var(--bg-2)}.who h2{font-size:clamp(1.6rem,2.6vw,2.4rem);margin-bottom:14px}.who p{font-size:clamp(1.05rem,1.4vw,1.3rem);line-height:1.45;color:var(--ink-2);max-width:52ch;text-wrap:pretty;margin-bottom:16px}@media(max-width:600px){.who{flex-direction:column;align-items:flex-start}}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;position:relative}.steps:before{content:"";position:absolute;left:0;right:0;top:11px;height:1px;background:var(--line)}.step{display:flex;flex-direction:column;gap:14px;padding-top:32px;position:relative}.steps{--p: 0}.steps .fill{position:absolute;left:0;top:11px;height:1px;width:calc(100% - 17px);background:var(--accent);transform:scaleX(var(--p));transform-origin:left}.steps-end{position:absolute;right:0;top:11px;transform:translateY(-50%);width:34px;height:34px;display:grid;place-items:center;background:var(--bg);border-radius:999px;z-index:1}.steps-end .mark g{transform:scale(0);transition:transform .45s var(--ease-out)}.steps.done .steps-end .mark g{transform:scale(1)}.steps.done .steps-end .m1{transition-delay:0s}.steps.done .steps-end .m2{transition-delay:.05s}.steps.done .steps-end .m3{transition-delay:.1s}.steps.done .steps-end .m4{transition-delay:.15s}.steps.done .steps-end .m6{transition-delay:.2s}.steps.done .steps-end .m7{transition-delay:.25s}.steps.done .steps-end .m8{transition-delay:.3s}.steps.done .steps-end .m9{transition-delay:.35s}.steps.done .steps-end .m5{transition-delay:.55s}.steps.done .step:last-child:before{animation:ring 1.1s var(--ease-out) 1}.steps.done .step:last-child h3{color:var(--accent);transition:color .5s var(--ease)}@keyframes ring{0%{box-shadow:0 0 color-mix(in oklab,var(--accent) 60%,transparent)}to{box-shadow:0 0 0 28px transparent}}.step:before{content:"";position:absolute;left:0;top:0;width:23px;height:23px;border-radius:999px;background:var(--bg);border:1px solid var(--line);transition:background-color .4s var(--ease),border-color .4s var(--ease),transform .4s var(--ease)}.step.on:before{background:var(--accent);border-color:var(--accent);transform:scale(1.15)}.step.on .num{color:var(--accent)}.step .num{font-size:.85rem;color:var(--ink-2)}.step h3{font-size:1.35rem;font-weight:600;letter-spacing:-.02em}.step p{color:var(--ink-2);font-size:.98rem;text-wrap:pretty}@media(max-width:1000px){.steps{grid-template-columns:1fr;gap:36px;padding-left:44px}.steps:before{inset:0 auto 0 11px;width:1px;height:auto}.steps .fill{left:11px;top:0;width:1px;height:calc(100% + 6px);transform:scaleY(var(--p));transform-origin:top}.steps-end{inset:auto auto -6px 11px;transform:translate(-50%,50%)}.step{padding-top:0}.step:before{left:-44px;top:2px}.step h3{font-size:1.25rem}}.services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service{padding:28px;border-radius:var(--radius);background:var(--bg-2);display:flex;flex-direction:column;gap:12px;min-height:200px;transition:background-color .4s var(--ease)}@media(hover:hover){.service:hover{background:var(--accent-soft)}}.sicon{color:var(--ink);margin-bottom:8px}.sicon .acc{color:var(--accent)}.sicon g{transform-box:fill-box;transform-origin:center;transition:transform .6s var(--ease)}@media(hover:hover){.service:hover .sicon g{transform:rotate(-24deg)}.service:hover .sicon .acc{transform:rotate(66deg)}}.service h3{font-size:clamp(1.3rem,2vw,1.7rem);font-weight:600;letter-spacing:-.025em;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.service .tag{font-size:.78rem;font-weight:500;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:4px 10px;line-height:1.2}.service p{color:var(--ink-2);text-wrap:pretty;max-width:44ch}.service .link{margin-top:auto;padding-top:12px;font-size:.92rem;font-weight:500;color:var(--accent)}@media(max-width:700px){.services{grid-template-columns:1fr}.service{min-height:0}}.faq-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,6vw,96px);align-items:start}.faq-side{position:sticky;top:120px}.faq-side h2{margin-bottom:20px}.faq-side .small{margin-bottom:6px}.faq-link,.text-link{font-weight:500;color:var(--accent);border-bottom:1px solid currentColor}.faq{border-top:1px solid var(--line)}@media(max-width:800px){.faq-grid{grid-template-columns:1fr}.faq-side{position:static}}.faq details{border-bottom:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;padding:22px 0;display:grid;grid-template-columns:1fr 24px;align-items:center;gap:16px;font-size:clamp(1.1rem,1.7vw,1.4rem);font-weight:500;letter-spacing:-.02em}.faq summary::-webkit-details-marker{display:none}.faq summary .plus{position:relative;width:18px;height:18px}.faq summary .plus:before,.faq summary .plus:after{content:"";position:absolute;inset:50% auto auto 50%;width:18px;height:1.5px;background:currentColor;transform:translate(-50%,-50%);transition:transform .45s var(--ease)}.faq summary .plus:after{transform:translate(-50%,-50%) rotate(90deg)}.faq details[open]:not(.shut) summary .plus:after{transform:translate(-50%,-50%) rotate(0)}.faq .answer{display:grid;grid-template-rows:1fr;transition:grid-template-rows .5s var(--ease)}.faq details.shut .answer{grid-template-rows:0fr}.faq .answer>div{overflow:hidden}.faq .answer p{padding:0 0 26px;color:var(--ink-2);max-width:62ch;text-wrap:pretty}.contact{position:relative;border-radius:calc(var(--radius) * 1.6);background:var(--ink);color:var(--bg);padding:clamp(40px,6vw,88px);display:grid;gap:36px;overflow:hidden}.contact .mark.big{position:absolute;right:clamp(24px,6vw,88px);top:50%;transform:translateY(-50%);color:var(--bg);opacity:.9;width:clamp(140px,18vw,260px);height:auto;pointer-events:none}.contact .mark.big g{transition:none;will-change:transform}@media(max-width:900px){.contact .mark.big{position:static;transform:none;width:96px;margin-bottom:-8px}}.contact h2{margin-bottom:0}.contact p.lead{font-size:clamp(1.15rem,1.9vw,1.6rem);line-height:1.35;letter-spacing:-.015em;max-width:42ch;opacity:.8;text-wrap:pretty}.contact .cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:24px 40px}.contact .btn{background:var(--bg);color:var(--ink)}.contact .email{display:inline-flex;flex-direction:column;gap:4px}.contact .email span{font-size:.88rem;opacity:.6}.contact .email a{font-size:1.05rem;border-bottom:1px solid currentColor;transition:color .3s var(--ease)}.contact .email a:hover{color:var(--accent)}.social-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}.social-btn{display:inline-flex;align-items:center;gap:10px;padding:11px 16px;border-radius:999px;border:1px solid var(--line);font-size:.95rem;font-weight:500;transition:border-color .3s var(--ease),color .3s var(--ease),background-color .3s var(--ease),transform .1s ease-out}.social-btn svg{width:18px;height:18px}.social-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.foot-links{display:inline-flex;gap:22px}.footer{padding-block:32px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;font-size:.88rem;color:var(--ink-2)}.footer a:hover{color:var(--ink)}.foot-brand{display:inline-flex;align-items:center;gap:10px}.foot-brand .mark{color:var(--ink-2)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-property:opacity,color,background-color,border-color!important;transition-duration:.2s!important;animation:none!important}.hero h1 .line>span,.hero-foot{transform:none;opacity:0}.loaded .hero h1 .line>span,.loaded .hero-foot{opacity:1}.header.hide{transform:none;opacity:0;pointer-events:none}}@media(prefers-reduced-transparency:reduce){.header:before{background:var(--bg);backdrop-filter:none;-webkit-backdrop-filter:none;mask-image:none}.chip,.theme-btn{background:var(--bg);backdrop-filter:none}}@media(prefers-contrast:more){.header:before{background:var(--bg);backdrop-filter:none;mask-image:none;border-bottom:1px solid var(--ink)}:root{--line: color-mix(in oklab, var(--ink) 45%, transparent)}}@media(max-width:560px){.hero-cta{flex-direction:column-reverse;align-items:flex-start;gap:14px;width:100%}.hero-cta .btn{white-space:nowrap}}
