@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-cyrillic-wght-normal.Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-greek-wght-normal.DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-vietnamese-wght-normal.usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-ext-wght-normal.Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-wght-normal.DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font: "Manrope Variable", "Helvetica Neue", "Hanken Grotesk", Arial, sans-serif;--gap: 14px;--pad: clamp(16px, 2vw, 32px);--radius: 14px;--status: #34c759;--pink: #e0408f;--ease: cubic-bezier(.2, .7, .2, 1);--bg: #f3f3f1;--tile: #ffffff;--tile-low: #f7f7f5;--ring: 0 0 0 1px rgba(17, 17, 17, .045);--sh1: 0 1px 2px rgba(17, 17, 17, .05), 0 8px 24px rgba(17, 17, 17, .08);--sh2: 0 1px 2px rgba(17, 17, 17, .05), 0 3px 10px rgba(17, 17, 17, .05);--sh-hover: 0 1px 2px rgba(17, 17, 17, .04), 0 6px 18px rgba(17, 17, 17, .07);--art-mix: 16%;--chip-low: #ffffff;--ink: #111111;--muted: #6a6a6a;--chip: #f3f3f1;--chip-ink: #111111;--name-chip: #111111;--name-chip-ink: #ffffff;--photo: #8c8c8c;--photo-ink: #ffffff;--accent: #111111;--on-accent: #ffffff;--curl-a: #7a756e;--curl-b: #34322f}[data-side=back]{--bg: #171716;--tile: #2a2825;--tile-low: #1f1d1b;--ring: none;--sh1: none;--sh2: none;--sh-hover: none;--art-mix: 100%;--chip-low: #33302c;--ink: #f2f2f2;--muted: #a8a39b;--chip: #33302c;--chip-ink: #f2f2f2;--name-chip: #f2f2f2;--name-chip-ink: #111111;--photo: #5a5650;--photo-ink: #f2f2f2;--accent: #f2f2f2;--on-accent: #111111;--curl-a: #ffffff;--curl-b: #c6c5c1}*{box-sizing:border-box}html{background:var(--bg);overflow-x:clip}body{margin:0;overflow-x:clip;background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1,h2,p,ul{margin:0}ul{padding:0;list-style:none}.sheet{padding:var(--pad);display:grid;gap:var(--gap);grid-template-columns:1fr}.tile{position:relative;border-radius:var(--radius);background:var(--tile);min-height:0;transition:transform .45s var(--ease),box-shadow .45s var(--ease);will-change:transform}a.tile:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.photo{background:var(--tile);color:var(--photo-ink);padding:20px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;aspect-ratio:4 / 5}.photo>.ph{position:absolute;inset:10px;border-radius:10px;overflow:hidden;background:var(--photo)}.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 30%;transform:scale(1.16)}.photo.has-img{color:#111}.photo.has-img .name{align-self:flex-start;background:#ffffffeb;border-radius:12px;padding:9px 12px 8px;font-size:22px;white-space:nowrap}.photo>*{position:relative}.photo .chips{display:flex;flex-wrap:wrap;gap:6px}.pill{border-radius:999px;padding:6px 12px 6px 10px;font-size:13.5px;letter-spacing:-.01em;font-weight:400;display:inline-flex;align-items:center;gap:6px}.pill.light{background:#f7f7f5f0;color:#111}.pill.dark{background:#111;color:#fff}.pill .dot{width:8px;height:8px;border-radius:50%;background:var(--status)}.name{font-size:40px;font-weight:500;line-height:.92;letter-spacing:-.03em}.tag{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;background:#fff;box-shadow:0 1px 2px #1111110d,0 3px 10px #1111110f;border-radius:999px;padding:6px 13px 6px 11px;font-size:13.5px;font-weight:400;letter-spacing:-.02em;color:var(--ink);line-height:1;margin:0}.tag:before{content:"";width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--pink) 78%,#fff);flex:none}.pill svg{color:var(--pink);flex:none}.pitch{box-shadow:var(--sh2);padding:20px 24px;display:flex;flex-direction:column;justify-content:space-between;gap:16px}.pitch .role{font-size:clamp(26px,2.6vw,40px);font-weight:700;line-height:1.08;letter-spacing:-.035em;max-width:80%;text-wrap:balance}.pitch .motto{font-size:clamp(15px,1.2vw,18px);font-weight:500;letter-spacing:-.015em;line-height:1.2;color:var(--muted);margin-top:14px}.pitch .role{color:var(--ink)}.pitch .role b{font-weight:inherit}.pitch .sub{font-size:15px;letter-spacing:-.01em;line-height:1.35;color:var(--muted);margin-top:12px;max-width:560px}.socials{display:flex;gap:8px}.ico{display:inline-flex;width:44px;height:44px;border-radius:23%;background:#fff;overflow:hidden;box-shadow:0 0 0 1px #1111110f,0 1px 2px #1111111f,0 4px 10px #1111111a;transition:transform .4s var(--ease),box-shadow .4s var(--ease)}.ico>svg{width:100%;height:100%;display:block}@media(hover:hover)and (prefers-reduced-motion:no-preference){.ico:hover{transform:translateY(-3px)}}.pill .dot{animation:blink 1.8s ease-in-out infinite}@keyframes blink{50%{opacity:.25}}@keyframes orbit{to{transform:translate(-24px)}}@media(prefers-reduced-motion:no-preference){.ic-world .orbit{animation:orbit 6s linear infinite}}@media(prefers-reduced-motion:reduce){.pill .dot{animation:none}}.skills{background:var(--tile-low);box-shadow:var(--ring);padding:22px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;aspect-ratio:1 / 1}.skills h2{font-size:26px;font-weight:500;line-height:.95;letter-spacing:-.025em}.skills ul{display:flex;flex-wrap:wrap;gap:6px;font-size:12px}.skills li{transition:transform .35s cubic-bezier(.23,1,.32,1),background-color .3s ease-out;background:var(--chip-low);box-shadow:var(--ring);color:var(--chip-ink);border-radius:999px;padding:5px 10px;display:inline-flex;align-items:center;gap:6px}.skills svg{flex:none}.process{--row: 25px;--open: 160px;background:var(--tile);box-shadow:var(--ring);padding:16px 14px 14px;display:flex;flex-direction:column;justify-content:space-between;gap:8px;overflow:hidden}.steps{list-style:none;margin:0;padding:0;position:relative;height:calc(var(--row) * 4 + var(--open));flex:none}.steps>li{position:absolute;left:0;right:0;height:var(--row);display:flex;align-items:center;padding:0 12px;outline:none;transition:transform .5s var(--ease)}.steps>li:nth-of-type(1){--sc: #22a55e;top:var(--open)}.steps>li:nth-of-type(2){--sc: #5b6ef0;top:calc(var(--open) + var(--row))}.steps>li:nth-of-type(3){--sc: #e0408f;top:calc(var(--open) + var(--row) * 2)}.steps>li:nth-of-type(4){--sc: #e58a1f;top:calc(var(--open) + var(--row) * 3)}.steps>li:after{content:"";position:absolute;left:0;right:0;top:100%;height:var(--open)}.steps>li>svg{position:relative;z-index:1;flex:none;width:23px;height:23px;padding:5px;box-sizing:border-box;border-radius:50%;background:#f7f7f5;margin-right:9px;color:#b9b9b6;transition:color .3s ease,background-color .3s ease}.steps>li>b{position:relative;z-index:1;font-size:20px;font-weight:400;letter-spacing:-.02em;color:#a3a3a0;transition:color .3s ease}.steps>li>p{position:absolute;z-index:1;left:45px;right:12px;top:calc(var(--row) + 3px);margin:0;font-size:14px;line-height:1.28;color:var(--muted);opacity:0;transition:opacity .12s ease;pointer-events:none}.steps>li>ul{position:absolute;z-index:1;left:12px;right:12px;bottom:calc(var(--open) * -1 + 22px);margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:4px;opacity:0;transition:opacity .12s ease;pointer-events:none}.steps>li>ul li{background:color-mix(in srgb,var(--sc) 9%,#fff);color:var(--ink);border-radius:999px;padding:3px 9px;font-size:13.5px;letter-spacing:-.01em}.pframe{position:absolute;left:0;right:0;top:0;height:calc(var(--row) + var(--open));border-radius:14px;background:var(--tile);box-shadow:var(--sh2);opacity:0;transform-origin:50% 100%;transform:translateY(calc(var(--row) * 3)) scaleY(.35);transition:transform .5s var(--ease),opacity .3s ease;pointer-events:none}.steps:has(>li:nth-of-type(1):is(:hover,:focus-within)) .pframe{opacity:1;transform:translateY(calc(var(--row) * 0)) scaleY(1)}.steps:has(>li:nth-of-type(1):is(:hover,:focus-within))>li:nth-of-type(1)>b{color:var(--ink)}.steps:has(>li:nth-of-type(1):is(:hover,:focus-within))>li:nth-of-type(1)>svg{color:var(--sc);background:color-mix(in srgb,var(--sc) 13%,#fff)}[data-side=back] .steps:has(>li:nth-of-type(1):is(:hover,:focus-within))>li:nth-of-type(1)>svg{background:color-mix(in srgb,var(--sc) 22%,#232220)}.steps:has(>li:nth-of-type(1):is(:hover,:focus-within))>li:nth-of-type(1)>p,.steps:has(>li:nth-of-type(1):is(:hover,:focus-within))>li:nth-of-type(1)>ul{opacity:1;transition:opacity .3s ease .22s}.steps:has(>li:nth-of-type(1):is(:hover,:focus-within))>li:nth-of-type(1){transform:translateY(calc(var(--open) * -1 + 10px))}.steps:has(>li:nth-of-type(2):is(:hover,:focus-within)) .pframe{opacity:1;transform:translateY(calc(var(--row) * 1)) scaleY(1)}.steps:has(>li:nth-of-type(2):is(:hover,:focus-within))>li:nth-of-type(2)>b{color:var(--ink)}.steps:has(>li:nth-of-type(2):is(:hover,:focus-within))>li:nth-of-type(2)>svg{color:var(--sc);background:color-mix(in srgb,var(--sc) 13%,#fff)}[data-side=back] .steps:has(>li:nth-of-type(2):is(:hover,:focus-within))>li:nth-of-type(2)>svg{background:color-mix(in srgb,var(--sc) 22%,#232220)}.steps:has(>li:nth-of-type(2):is(:hover,:focus-within))>li:nth-of-type(2)>p,.steps:has(>li:nth-of-type(2):is(:hover,:focus-within))>li:nth-of-type(2)>ul{opacity:1;transition:opacity .3s ease .22s}.steps:has(>li:nth-of-type(2):is(:hover,:focus-within))>li:nth-of-type(1){transform:translateY(calc(var(--open) * -1))}.steps:has(>li:nth-of-type(2):is(:hover,:focus-within))>li:nth-of-type(2){transform:translateY(calc(var(--open) * -1 + 10px))}.steps:has(>li:nth-of-type(3):is(:hover,:focus-within)) .pframe{opacity:1;transform:translateY(calc(var(--row) * 2)) scaleY(1)}.steps:has(>li:nth-of-type(3):is(:hover,:focus-within))>li:nth-of-type(3)>b{color:var(--ink)}.steps:has(>li:nth-of-type(3):is(:hover,:focus-within))>li:nth-of-type(3)>svg{color:var(--sc);background:color-mix(in srgb,var(--sc) 13%,#fff)}[data-side=back] .steps:has(>li:nth-of-type(3):is(:hover,:focus-within))>li:nth-of-type(3)>svg{background:color-mix(in srgb,var(--sc) 22%,#232220)}.steps:has(>li:nth-of-type(3):is(:hover,:focus-within))>li:nth-of-type(3)>p,.steps:has(>li:nth-of-type(3):is(:hover,:focus-within))>li:nth-of-type(3)>ul{opacity:1;transition:opacity .3s ease .22s}.steps:has(>li:nth-of-type(3):is(:hover,:focus-within))>li:nth-of-type(1),.steps:has(>li:nth-of-type(3):is(:hover,:focus-within))>li:nth-of-type(2){transform:translateY(calc(var(--open) * -1))}.steps:has(>li:nth-of-type(3):is(:hover,:focus-within))>li:nth-of-type(3){transform:translateY(calc(var(--open) * -1 + 10px))}.steps:has(>li:nth-of-type(4):is(:hover,:focus-within)) .pframe{opacity:1;transform:translateY(calc(var(--row) * 3)) scaleY(1)}.steps:has(>li:nth-of-type(4):is(:hover,:focus-within))>li:nth-of-type(4)>b{color:var(--ink)}.steps:has(>li:nth-of-type(4):is(:hover,:focus-within))>li:nth-of-type(4)>svg{color:var(--sc);background:color-mix(in srgb,var(--sc) 13%,#fff)}[data-side=back] .steps:has(>li:nth-of-type(4):is(:hover,:focus-within))>li:nth-of-type(4)>svg{background:color-mix(in srgb,var(--sc) 22%,#232220)}.steps:has(>li:nth-of-type(4):is(:hover,:focus-within))>li:nth-of-type(4)>p,.steps:has(>li:nth-of-type(4):is(:hover,:focus-within))>li:nth-of-type(4)>ul{opacity:1;transition:opacity .3s ease .22s}.steps:has(>li:nth-of-type(4):is(:hover,:focus-within))>li:nth-of-type(1),.steps:has(>li:nth-of-type(4):is(:hover,:focus-within))>li:nth-of-type(2),.steps:has(>li:nth-of-type(4):is(:hover,:focus-within))>li:nth-of-type(3){transform:translateY(calc(var(--open) * -1))}.steps:has(>li:nth-of-type(4):is(:hover,:focus-within))>li:nth-of-type(4){transform:translateY(calc(var(--open) * -1 + 10px))}@media(prefers-reduced-motion:reduce){.steps>li,.pframe,.steps>li>p,.steps>li>ul{transition:none}}.case{padding:10px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--sh1)}.case .art{position:relative;flex:none;aspect-ratio:4 / 3;border-radius:10px;overflow:hidden;background:color-mix(in srgb,var(--c) var(--art-mix),#fff)}.case .art>img{width:100%;height:100%;object-fit:cover;display:block}.case .meta{display:flex;flex-direction:column;gap:6px;padding:0 6px 2px}.tags{display:flex;flex-wrap:wrap;gap:6px}.tags span{background:color-mix(in srgb,var(--c) 22%,#fff);color:#111;border-radius:999px;padding:4px 10px;font-size:12px}.tags span:first-child{background:color-mix(in srgb,var(--c) 55%,#fff);color:#111;font-weight:400}.case .tags{position:absolute;top:10px;left:10px;right:10px;z-index:1;gap:5px}.case .tags span,.case .tags span:first-child{background:#ffffffa8;color:#111;padding:6px 12px;font-size:13px;font-weight:500;letter-spacing:-.01em;backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);box-shadow:inset 0 0 0 1px #ffffff8c,0 1px 8px #0000001a}.case:not(.big) .tags{gap:4px}.case:not(.big) .tags span,.case:not(.big) .tags span:first-child{font-size:clamp(10px,3.15cqw,13px);padding:.46em .8em}.case h2{font-size:18px;font-weight:500;line-height:1.08;letter-spacing:-.015em}.case.big .art{aspect-ratio:4 / 3}.case.big .art>img{object-position:50% 0}.case.big .meta{padding:0 14px 8px;gap:10px}.case.big h2{font-size:28px;line-height:1;letter-spacing:-.025em}.turn{--curl: 58px;background:var(--accent);color:var(--on-accent);border-radius:var(--radius);-webkit-mask:linear-gradient(315deg,transparent calc(var(--curl) * .7071),#000 calc(var(--curl) * .7071 + .5px));mask:linear-gradient(315deg,transparent calc(var(--curl) * .7071),#000 calc(var(--curl) * .7071 + .5px));transition:--curl .25s var(--ease),transform .45s var(--ease),box-shadow .45s var(--ease);padding:24px 28px;display:flex;flex-direction:column;justify-content:space-between;gap:40px;overflow:hidden;min-height:180px}.turn small{font-size:15px;opacity:.8}.turn h2{font-size:34px;font-weight:500;line-height:.95;letter-spacing:-.025em;padding-right:92px}.turn .curl{position:absolute;right:0;bottom:0;width:var(--curl);height:var(--curl);border-top-left-radius:45%;background:linear-gradient(135deg,var(--curl-a) 0%,var(--curl-b) 50%,transparent 50%);filter:drop-shadow(-4px -4px 6px rgba(0,0,0,.28));pointer-events:none}@property --curl{syntax: "<length>"; inherits: true; initial-value: 58px;}@media(hover:hover)and (prefers-reduced-motion:no-preference){.tile{--tilt: .8deg}.tile.case-1{--tilt: .5deg}a.tile:hover{transform:translateY(-3px) perspective(1400px) rotateX(calc(var(--tilt) * .6)) rotateY(calc(var(--tilt) * -1));box-shadow:var(--sh-hover);z-index:1}[data-side=back] a.tile:hover{transform:translateY(-3px) perspective(1400px) rotateX(calc(var(--tilt) * .6)) rotateY(var(--tilt))}.photo img{transform:translate(calc(var(--px, 0) * -18px),calc(var(--py, 0) * -14px)) scale(1.18);transition:transform .5s var(--ease)}.case .art>img{transform:translate(calc(var(--px, 0) * -16px),calc(var(--py, 0) * -12px)) scale(1.13);transition:transform .5s var(--ease)}a.tile.case:hover{transform:none}}@media(hover:none){a.tile:active{transform:scale(.985)}}@media(min-width:900px)and (min-height:600px){.sheet{height:100vh;height:100dvh;min-height:780px;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:minmax(0,1.32fr) minmax(0,1fr) minmax(0,1fr)}.photo{aspect-ratio:auto;grid-area:1 / 1}.pitch{grid-area:1 / 2 / 2 / 4}.process,.skills{grid-area:1 / 4;aspect-ratio:auto}.case.big{grid-area:2 / 1 / 4 / 3;gap:14px}.case{overflow:hidden}.case .art{flex:1;aspect-ratio:auto;min-height:0}.case.big h2{font-size:clamp(28px,2.8vw,40px)}.case-2{grid-area:2 / 3}.case-3{grid-area:2 / 4}.case-4{grid-area:3 / 3}.turn{grid-area:3 / 4;min-height:0}}@media(max-width:899px){.sheet{grid-template-columns:1fr 1fr}.photo{aspect-ratio:4 / 5}.process,.skills,.case.big{grid-column:1 / -1}.skills{aspect-ratio:auto}.case.big h2{font-size:26px}.turn{padding-right:72px;min-height:180px}.turn h2{font-size:30px}}@media(max-width:599px){.sheet{grid-template-columns:1fr}.photo,.pitch,.case,.turn{grid-column:1 / -1}}@media(max-width:899px){.process{gap:18px}.steps{height:auto;display:grid;gap:18px}.steps>li{position:static;height:auto;padding:0;display:grid;grid-template-columns:23px 1fr;column-gap:10px;row-gap:6px;align-items:center;transform:none!important}.steps>li:after,.pframe{display:none}.steps>li>svg{margin:0;color:var(--sc);background:color-mix(in srgb,var(--sc) 13%,#fff)}.steps>li>b{color:var(--ink);font-size:19px}.steps>li>p,.steps>li>ul{position:static;grid-column:2;width:auto;opacity:1!important;transition:none}.steps>li>ul li{font-size:13px}[data-side=back] .steps>li>svg{background:color-mix(in srgb,var(--sc) 22%,#232220)}}@media(max-width:520px){.name{font-size:36px}.pitch p{font-size:26px}.case h2{font-size:17px}.case.big h2{font-size:26px}}@media(prefers-reduced-motion:reduce){.tile,.turn{transition:none}a.tile:hover{transform:none}}[data-side=back] .tags span{background:color-mix(in srgb,var(--c) 22%,#232220);color:#f2f2f2}[data-side=back] .tags span:first-child{background:color-mix(in srgb,var(--c) 42%,#232220);color:#fff}@media(hover:hover)and (prefers-reduced-motion:no-preference){[data-side=back] .skills li:hover{background:color-mix(in srgb,var(--h) 30%,#2a2825);color:#fff}}[data-side=back] .case .tags span,[data-side=back] .case .tags span:first-child{background:#1111108c;color:#f2f2f2;box-shadow:inset 0 0 0 1px #ffffff14}[data-side=back] .tag{background:#1111108c;box-shadow:inset 0 0 0 1px #ffffff0f;color:var(--ink)}[data-side=back] .pill.light{background:#11111099;color:#f2f2f2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}[data-side=back] .pframe{background:#32302d;box-shadow:none}[data-side=back] .steps>li>svg{background:#2e2d2b;color:#77736c}[data-side=back] .steps>li>ul li{background:color-mix(in srgb,var(--sc) 20%,#232220)}[data-side=back] .steps>li>b{color:#77736c}@media(max-height:840px)and (min-width:900px){.process{--row: 24px;--open: 126px}.steps>li>b{font-size:18px}.steps>li>p{font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.steps>li>ul li{font-size:12.5px;padding:3px 9px}.sheet{grid-template-rows:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr)}}.earth{display:inline-block;width:18px;height:18px;border-radius:50%;overflow:hidden;flex:none}.earth>span{display:block;width:864px;height:18px;background:url(/images/earth-sprite.webp) 0 0 / 864px 18px no-repeat}@keyframes earth{to{transform:translate(-864px)}}@media(prefers-reduced-motion:no-preference){.earth>span{animation:earth 8s steps(48) infinite}}.case .art:has(.stage){container-type:size}.stage:not(.ready) .phone{transition:none!important}.stage{position:absolute;inset:0;z-index:0;background:color-mix(in srgb,var(--c) 16%,#fff);overflow:hidden}.stage{--spread: 42cqh;--tilt: 7deg;--drop: 2cqh}.stage.desk{--drop: 3cqh}.stage .phone{position:absolute;left:50%;top:calc(var(--tags, 48px) + 5px);height:104cqh;width:auto;filter:drop-shadow(0 18px 28px rgba(40,10,40,.22));transition:transform .7s var(--ease)}.stage .phone-1{transform:translate(calc(-50% - var(--spread) + var(--px, 0) * -12px),calc(var(--drop) + 6cqh + var(--py, 0) * -6px)) rotate(calc(var(--tilt) * -1))}.stage .phone-2{z-index:2;transform:translate(calc(-50% + var(--px, 0) * -20px),calc(var(--drop) + var(--py, 0) * -10px))}.stage .phone-3{transform:translate(calc(-50% + var(--spread) + var(--px, 0) * -12px),calc(var(--drop) + 6cqh + var(--py, 0) * -6px)) rotate(var(--tilt))}.stage.n2 .phone-1{transform:translate(calc(-50% - var(--spread) * .5 + var(--px, 0) * -14px),calc(var(--drop) + 4cqh + var(--py, 0) * -6px)) rotate(calc(var(--tilt) * -.6))}.stage.n2 .phone-2{transform:translate(calc(-50% + var(--spread) * .5 + var(--px, 0) * -20px),calc(var(--drop) + var(--py, 0) * -10px)) rotate(calc(var(--tilt) * .6))}.stage.first .phone-1{z-index:3}.stage.desk .phone-1{height:104cqh;transform:translate(calc(-61% + var(--px, 0) * -8px),calc(var(--drop) * 2 + var(--py, 0) * -5px))}.stage.desk .phone-2{top:auto;bottom:-20cqh;left:auto;right:2cqw;height:73cqh;z-index:2;transform:translate(calc(var(--px, 0) * -14px),calc(var(--drop) * 2.6 + var(--py, 0) * -8px))}@media(hover:hover)and (prefers-reduced-motion:no-preference){.case:hover .stage{--spread: 50cqh;--tilt: 10deg;--drop: -3cqh}}@media(prefers-reduced-motion:reduce){.stage .phone{transition:none}}.tag.side{margin-left:6px}.tags-row{display:flex;gap:6px}p,li,dd,dt,blockquote,figcaption,h3,.lede{text-wrap:pretty}@media(min-width:900px)and (max-width:1239px){.turn{padding:20px 22px}.turn h2{font-size:clamp(20px,2.3vw,34px);padding-right:44px}}
