:root{--bg:#fbfbfd;--bg-2:#fff;--bg-elev:#ffffffb8;--bg-section:#fff;--bg-card:#fff;--ink:#1d1d1f;--ink-2:#424245;--ink-3:#6e6e73;--ink-4:#86868b;--line:#0000001a;--line-2:#0000000f;--accent:#06c;--accent-2:#0071e3;--accent-ink:#fff;--tint-warm:#ff9500;--tint-green:#34c759;--tint-pink:#ff375f;--tint-indigo:#5856d6;--success:#34c759;--warning:#ff9500;--danger:#ff3b30;--info:#06c;--focus-ring:#0066cc59;--hover-tint:#0000000a;--press-tint:#00000014;--shadow-1:0 1px 2px #0000000a, 0 4px 16px #0000000f;--shadow-2:0 1px 2px #0000000d, 0 24px 48px -16px #00000024;--glass-bg:#fbfbfdb8;--glass-stroke:#ffffff80;--r-sm:10px;--r-md:16px;--r-lg:22px;--r-xl:28px;--r-2xl:36px;--f-display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--f-text:-apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--f-serif:ui-serif, "New York", "Times New Roman", Georgia, serif;--f-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--ease:cubic-bezier(.22,.61,.36,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);--maxw:1280px}[data-theme=dark]{--bg:#000;--bg-2:#1d1d1f;--bg-elev:#1d1d1fb8;--bg-section:#1d1d1f;--bg-card:#1d1d1f;--ink:#f5f5f7;--ink-2:#a1a1a6;--ink-3:#86868b;--ink-4:#6e6e73;--line:#ffffff26;--line-2:#ffffff14;--accent:#2997ff;--accent-2:#5ac8fa;--accent-ink:#000;--tint-warm:#ff9f0a;--tint-green:#30d158;--tint-pink:#ff453a;--tint-indigo:#7d7aff;--success:#30d158;--warning:#ff9f0a;--danger:#ff453a;--info:#2997ff;--focus-ring:#2997ff73;--hover-tint:#ffffff0d;--press-tint:#ffffff1a;--shadow-1:0 1px 2px #00000080, 0 8px 24px #0000008c;--shadow-2:0 1px 2px #00000080, 0 24px 48px -16px #000000b3;--glass-bg:#1d1d1fb8;--glass-stroke:#ffffff14}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}body{background:var(--bg);color:var(--ink);font-family:var(--f-text);letter-spacing:-.022em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .4s var(--ease), color .4s var(--ease);margin:0;font-size:17px;line-height:1.47;overflow-x:hidden}img,svg,video{max-width:100%;display:block}img{height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}::selection{background:var(--accent);color:var(--accent-ink)}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;box-shadow:0 0 0 4px var(--focus-ring)}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 4px var(--focus-ring)}.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:22px}@media (min-width:768px){.wrap{padding-inline:44px}}@media (min-width:1200px){.wrap{padding-inline:64px}}section{padding:96px 0}@media (min-width:768px){section{padding:140px 0}}h1,h2,h3,h4{font-family:var(--f-display);letter-spacing:-.04em;color:var(--ink);margin:0;font-weight:600;line-height:1.05}h1{letter-spacing:-.045em;text-wrap:balance;font-size:clamp(48px,9vw,112px);font-weight:700;line-height:1}h2{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(36px,5.6vw,72px);font-weight:600}h3{letter-spacing:-.025em;text-wrap:balance;font-size:clamp(24px,2.4vw,32px);font-weight:600}h4{letter-spacing:-.015em;font-size:18px;font-weight:600}p{text-wrap:pretty;margin:0 0 1em}.lede{color:var(--ink-2);max-width:60ch;font-size:clamp(19px,1.7vw,24px);font-weight:400;line-height:1.4}.eyebrow{color:var(--accent);letter-spacing:-.01em;margin-bottom:14px;font-size:14px;font-weight:600;display:inline-block}.section-title{font-family:var(--f-display);letter-spacing:-.03em;color:var(--ink);margin:0 0 40px;font-size:clamp(28px,3.5vw,48px);font-weight:700;line-height:1.1}.wip-banner{background:color-mix(in oklab, var(--accent) 12%, var(--bg-2));border-bottom:1px solid color-mix(in oklab, var(--accent) 25%, var(--line));color:var(--ink);text-align:center;z-index:89;justify-content:center;align-items:center;gap:16px;padding:14px 24px;font-size:15px;font-weight:700;display:flex;position:fixed;top:68px;left:0;right:0}.wip-banner__close{cursor:pointer;color:var(--ink-4);transition:color .2s var(--ease);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:14px;line-height:1}.wip-banner__close:hover{color:var(--ink)}.nav{z-index:90;background:var(--glass-bg);-webkit-backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid var(--line);height:68px;transition:background .3s var(--ease);justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.nav__inner{justify-content:space-between;align-items:center;gap:14px;width:100%;max-width:1180px;padding:0 22px;display:flex}@media (min-width:768px){.nav__inner{padding:0 44px}}.nav__brand{letter-spacing:-.015em;color:var(--ink);align-items:center;gap:10px;font-size:17px;font-weight:600;display:inline-flex}.nav__brand .dot{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;border-radius:7px;place-items:center;width:24px;height:24px;font-size:13px;font-weight:700;display:inline-grid}.nav__links{align-items:center;gap:28px;display:none}@media (min-width:900px){.nav__links{display:flex}}.nav__links a{color:var(--ink-2);transition:background .18s var(--ease), color .18s var(--ease);border-radius:8px;padding:8px 13px;font-size:15px;font-weight:400}.nav__links a:hover{background:color-mix(in oklab, var(--ink) 8%, transparent);color:var(--ink)}.nav__links a:active{background:color-mix(in oklab, var(--ink) 14%, transparent)}.nav__links a.is-active{color:var(--accent);font-size:22.5px;font-weight:700}.nav__actions{align-items:center;gap:6px;display:flex}.pill{height:30px;color:var(--ink-2);border:1px solid var(--line);transition:background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);background:0 0;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:500;display:inline-flex}.pill:hover{background:var(--line-2);color:var(--ink)}.pill svg{width:14px;height:14px}.pill[aria-pressed=true]{background:var(--ink);color:var(--bg-2);border-color:var(--ink)}.nav__360{letter-spacing:-.01em;border-right:1px solid var(--line);border-top:none;border-bottom:none;border-left:none;border-radius:0;margin-right:4px;padding-right:14px;font-weight:600;text-decoration:none;background:0 0!important}.nav__360:hover{color:var(--accent)!important;background:0 0!important}.lang-pill b{color:var(--ink);font-weight:600}.lang-pill i{color:var(--ink-4);margin:0 4px;font-style:normal}.hero{text-align:center;padding:0;position:relative;overflow:hidden}.hero__band{background:radial-gradient(120% 80% at 30% 0%, color-mix(in oklab, var(--accent) 12%, transparent), transparent 60%), radial-gradient(80% 60% at 80% 100%, color-mix(in oklab, var(--accent-2) 38%, transparent), transparent 60%), linear-gradient(180deg, var(--bg-2), color-mix(in oklab, var(--bg-2) 92%, var(--accent) 8%));flex-direction:column;width:100%;min-height:480px;display:flex;position:relative;overflow:hidden}@media (min-width:900px){.hero__band{flex-direction:row;align-items:stretch;min-height:600px}}.hero__band-text{text-align:left;z-index:1;flex-direction:column;flex:1;justify-content:center;padding:112px 22px 56px 62px;display:flex;position:relative}@media (min-width:768px){.hero__band-text{padding:140px 44px 64px 150px}}@media (min-width:1200px){.hero__band-text{padding:168px 64px 80px 210px}}.hero__band-photo{flex:0 0 44%;align-self:stretch;position:relative;overflow:hidden}@media (max-width:899px){.hero__band-photo{flex:none;width:100%;height:420px}}.hero__eyebrow{color:var(--ink-3);align-items:center;gap:8px;margin-bottom:20px;font-size:15px;font-weight:500;display:inline-flex}.status-dot{background:var(--tint-green);width:8px;height:8px;box-shadow:0 0 0 0 color-mix(in oklab, var(--tint-green) 70%, transparent);border-radius:50%;animation:2.2s ease-out infinite pulse}@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in oklab, var(--tint-green) 70%, transparent)}70%{box-shadow:0 0 0 12px #0000}to{box-shadow:0 0 #0000}}.hero__name{letter-spacing:-.055em;color:var(--ink);-webkit-text-fill-color:currentColor;margin:0;font-size:clamp(56px,8vw,120px);font-weight:700;line-height:.9}.hero__tag{font-family:var(--f-display);letter-spacing:-.03em;color:var(--ink);max-width:22ch;margin:24px 0 0;font-size:clamp(22px,3vw,42px);font-weight:600;line-height:1.1}.hero__tag em{background:linear-gradient(180deg, color-mix(in oklab, var(--ink) 70%, var(--accent) 30%) 10%, color-mix(in oklab, var(--ink) 30%, var(--accent) 70%) 90%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:normal}.hero__sub{max-width:52ch;color:var(--ink-2);letter-spacing:-.012em;margin:20px 0 0;font-size:clamp(16px,1.4vw,19px);font-weight:400;line-height:1.5}.hero__sub b{color:var(--accent);font-weight:500}.hero__sub em{color:var(--ink);background:linear-gradient(90deg, var(--accent), var(--accent-2));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:normal;font-weight:600}.hero__cta{flex-wrap:wrap;justify-content:flex-start;gap:12px;margin-top:32px;display:flex}.btn{letter-spacing:-.01em;background:var(--accent);color:#fff;height:46px;transition:transform .25s var(--ease-spring), background .25s var(--ease), opacity .25s var(--ease);border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:0 24px;font-size:15px;font-weight:500;display:inline-flex}.btn:hover{background:color-mix(in oklab, var(--accent) 88%, #000);transform:scale(1.03)}.btn:active{transform:scale(.98)}.btn--ghost{color:var(--ink);border-color:var(--line);background:0 0}.btn--ghost:hover{background:var(--line-2);border-color:var(--ink)}.btn--red{background:var(--accent-2);color:var(--accent-ink);border:1px solid #0000}.btn--red:hover{background:color-mix(in oklab, var(--accent-2) 88%, #000);transform:scale(1.03)}.btn svg{width:14px;height:14px}.hero__band-photo img{object-fit:contain;object-position:center calc(50% + 30px);filter:drop-shadow(0 20px 40px #0f0f121f);width:100%;height:100%;position:absolute;inset:0}.hero__tags{flex-wrap:wrap;justify-content:center;gap:8px;padding:0 20px;display:flex;position:absolute;inset:auto 0 20px}.tag-chip{background:var(--glass-bg);-webkit-backdrop-filter:saturate(180%)blur(14px);border:1px solid var(--glass-stroke);color:var(--ink);letter-spacing:-.005em;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;display:inline-flex}.tag-chip i{background:var(--accent);border-radius:50%;width:6px;height:6px}.tag-chip:nth-child(2) i{background:var(--tint-warm)}.tag-chip:nth-child(3) i{background:var(--tint-green)}.tag-chip:nth-child(4) i{background:var(--accent-2)}.ticker{width:100vw;margin-top:80px;margin-left:calc(50% - 50vw);padding:18px 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.ticker__track{white-space:nowrap;width:max-content;color:var(--ink-3);letter-spacing:-.01em;will-change:transform;backface-visibility:hidden;gap:48px;font-size:15px;font-weight:500;animation:70s linear infinite scroll;display:flex;transform:translate(0,0)}.ticker__track span{align-items:center;gap:48px;display:inline-flex}.ticker__track span:after{content:"·";color:var(--ink-4);font-size:18px}@keyframes scroll{0%{transform:translate(0,0)}to{transform:translate(-50%)}}.section-head{text-align:center;max-width:880px;margin:0 auto 64px}.section-head.left{text-align:left;margin-inline:0}.section-head h2{margin-bottom:18px}.section-head p{color:var(--ink-3);max-width:60ch;margin-inline:auto;font-size:clamp(17px,1.5vw,21px)}.about__grid{grid-template-columns:1fr;align-items:center;gap:48px;display:grid}@media (min-width:900px){.about__grid{grid-template-columns:1.4fr 1fr;gap:56px}}.about__photo{aspect-ratio:1/1.1;border-radius:var(--r-2xl);background:linear-gradient(160deg, color-mix(in oklab, var(--accent) 14%, var(--bg-2)), var(--bg-2));border:1px solid var(--line);box-shadow:var(--shadow-1);overflow:hidden}.about__photo img{object-fit:cover;object-position:center top;width:100%;height:100%}.about__body p{color:var(--ink);letter-spacing:-.025em;margin-bottom:.7em;font-size:clamp(22px,2.2vw,30px);font-weight:500;line-height:1.36}.about__body p+p{color:var(--ink-3);letter-spacing:-.015em;font-size:clamp(17px,1.4vw,20px);font-weight:400;line-height:1.5}.about__facts{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:20px;margin-top:36px;padding-top:32px;display:grid}.about__facts dt{color:var(--ink-4);letter-spacing:.02em;text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:500}.about__facts dd{color:var(--ink);margin:0;font-size:15px;font-weight:500}.about__globe{flex-direction:column;justify-content:flex-end;align-items:center;gap:0;min-height:540px;padding-bottom:16px;display:flex;position:relative}@media (max-width:899px){.about__globe{min-height:360px}}.about__globe-hint{z-index:10;white-space:nowrap;color:var(--accent);letter-spacing:-.01em;background:color-mix(in oklab, var(--accent) 10%, transparent);border:1px solid color-mix(in oklab, var(--accent) 25%, transparent);border-radius:999px;padding:8px 18px;font-size:14px;font-weight:600;display:inline-block;position:absolute;top:6px;left:50%;transform:translate(-50%)}.atlas{margin-top:64px}.atlas__h{font-family:var(--f-display);letter-spacing:-.025em;color:var(--ink);margin:0 0 24px;font-size:clamp(22px,2.4vw,30px);font-weight:600}.atlas__places{grid-template-columns:1fr;gap:10px;margin:0;padding:0;list-style:none;display:grid}.atlas__places li{margin:0;padding:0;list-style:none}@media (min-width:640px){.atlas__places{grid-template-columns:repeat(2,1fr);gap:12px}}@media (min-width:1000px){.atlas__places{grid-template-columns:repeat(3,1fr)}}.atlas .globe-card__langs{margin-top:28px}.projects{grid-template-columns:1fr;gap:18px;display:grid}@media (min-width:760px){.projects{grid-template-columns:repeat(2,1fr);gap:22px}}@media (min-width:1100px){.projects{grid-template-columns:repeat(3,1fr)}}.card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-2xl);cursor:pointer;box-shadow:var(--shadow-1);flex-direction:column;transition:transform,box-shadow;display:flex;position:relative;overflow:hidden}.card:hover{box-shadow:var(--shadow-2);transform:translateY(-4px)}.card.is-in{transition:transform,box-shadow}.card:active{transition-duration:.16s;transform:translateY(-2px)scale(.99)}.card:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.card:after{content:"";z-index:3;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(440px circle at var(--mx,50%) var(--my,50%), color-mix(in oklab, var(--accent) 14%, transparent), transparent 62%);transition:opacity;position:absolute;inset:0}@media (hover:hover) and (pointer:fine){.card:hover:after{opacity:1}}@media (prefers-reduced-motion:reduce){.card:after{transition:none}}.card__media{aspect-ratio:16/10;background:linear-gradient(135deg, var(--c1,#f0d9c8), var(--c2,#e57d4d) 60%, var(--c3,#a93516));display:none;position:relative;overflow:hidden}.card__media img{object-fit:cover;width:100%;height:100%;transition:transform}.card:hover .card__media img{transform:scale(1.03)}.card__media .icon{object-fit:cover;border-radius:22px;width:96px;height:96px;box-shadow:0 16px 40px #00000040}.card__badge{z-index:2;letter-spacing:.02em;background:var(--accent-2);color:var(--accent-ink);text-transform:uppercase;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:600;position:absolute;top:14px;left:14px}.card__body{flex-direction:column;flex:auto;padding:22px 24px 26px;display:flex}.card__body h3{margin-bottom:6px;font-size:22px}.card__role{flex-wrap:wrap;gap:6px;margin:8px 0 14px;display:flex}.card__role span{color:var(--ink-3);background:var(--line-2);letter-spacing:.005em;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:500}.card__lines{color:var(--ink-3);margin:0;font-size:15px;line-height:1.5}.card__lines b{color:var(--ink);font-weight:600}.card__cta{color:var(--accent);align-items:center;gap:6px;margin-top:auto;padding-top:18px;font-size:14px;font-weight:500;display:inline-flex}.card__cta svg{width:14px;height:14px;transition:transform}.card--ploppy .card__media{background:radial-gradient(circle at 30% 30%,#1a2010,#050802 70%)}.card--urban .card__media{background:linear-gradient(135deg,#2c5670,#0c1d2b)}.card--openCloset .card__media{background:linear-gradient(135deg,#ffb199,#ff4e50)}.card--hangry .card__media{background:linear-gradient(135deg,#ffd93d,#ff6b6b)}.card--safe .card__media{background:linear-gradient(160deg,#0a3055 0%,#0a6abd 65%,#40aef0 100%)}.card--linefly .card__media{background:linear-gradient(135deg,#1a0b2e 0%,#6b21a8 45%,#ec4899 100%)}.card--mexico .card__media,.card--mozambique .card__media{background:#222}.modal{z-index:120;-webkit-backdrop-filter:blur(20px);opacity:0;pointer-events:none;transition:opacity .35s var(--ease);background:#0000008c;padding:24px 12px;position:fixed;inset:0;overflow-y:auto}.modal.is-open{opacity:1;pointer-events:auto}.modal__panel{background:var(--bg-2);color:var(--ink);border-radius:var(--r-2xl);border:1px solid var(--line);transform-origin:50%;max-width:1040px;transition:transform .4s var(--ease-spring);margin:0 auto;position:relative;overflow:hidden;transform:scale(.96)translateY(12px);box-shadow:0 30px 100px #00000080}.modal.is-open .modal__panel{transform:none}.modal__head{aspect-ratio:21/9;background:linear-gradient(135deg, var(--c1,#f0d9c8), var(--c2,#e57d4d) 60%, var(--c3,#a93516));position:relative;overflow:hidden}.modal__head img{object-fit:cover;width:100%;height:100%}.modal__close{z-index:3;color:#fff;-webkit-backdrop-filter:blur(14px);width:36px;height:36px;transition:background .2s var(--ease), transform .2s var(--ease-spring);background:#0000008c;border-radius:50%;place-items:center;display:grid;position:absolute;top:16px;right:16px}.modal__close:hover{background:#000c;transform:scale(1.06)}.modal__body{padding:36px 28px 44px}@media (min-width:768px){.modal__body{padding:56px 64px 64px}}.modal__body h3{letter-spacing:-.035em;margin-bottom:8px;font-size:clamp(30px,4.4vw,48px)}.modal__kicker{color:var(--accent);letter-spacing:-.005em;margin-bottom:14px;font-size:13px;font-weight:600}.modal__title-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.modal__title-row h3{flex:1;min-width:0}.modal__appstore-btn{background:var(--accent);color:#fff;white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;height:34px;padding:0 14px;font-size:12px;font-weight:500;transition:opacity .15s;display:inline-flex}.modal__appstore-btn:hover{opacity:.85}.modal__meta{flex-wrap:wrap;gap:6px;margin:14px 0 32px;display:flex}.modal__meta span{color:var(--ink-3);background:var(--line-2);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:500}.modal__section{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.modal__section h4{color:var(--ink-3);letter-spacing:-.005em;text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;font-size:13px;font-weight:600}.modal__section p{color:var(--ink-2);font-size:16px;line-height:1.55}.modal__rich p{color:var(--ink-2);margin-bottom:12px;font-size:16px;line-height:1.55}.modal__rich p:last-child{margin-bottom:0}.modal__rich strong{color:var(--ink);font-weight:600}.modal__gallery{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:14px;display:grid}@media (min-width:600px){.modal__gallery{grid-template-columns:repeat(6,1fr)}}.modal__gallery .shot{border-radius:var(--r-sm);background:var(--line-2);border:1px solid var(--line);cursor:zoom-in;padding:0;transition:opacity .15s;overflow:hidden}.modal__gallery .shot:hover{opacity:.8}.modal__gallery .shot img{width:100%;height:auto;display:block}.lightbox{z-index:300;touch-action:pan-y;background:#000000eb;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.lightbox__close{color:#fff;background:#ffffff1f;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s;display:flex;position:absolute;top:20px;right:20px}.lightbox__close:hover{background:#ffffff38}.lightbox__track{justify-content:center;align-items:center;gap:16px;width:min(100%,980px);display:flex}.lightbox__main img{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border-radius:12px;width:auto;max-width:min(56vw,560px);height:auto;max-height:78vh;display:block}.lightbox__side{opacity:.9;cursor:pointer;background:0 0;flex-shrink:0;padding:0;transition:opacity .2s}.lightbox__side:hover{opacity:1}.lightbox__side img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border-radius:8px;width:auto;max-width:14vw;height:auto;max-height:52vh;display:block}.lightbox__side--empty{flex-shrink:0;width:14vw;max-width:14vw}.lightbox__counter{color:#ffffff73;pointer-events:none;font-size:13px;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.modal__links{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.modal__links a{background:var(--accent);color:#fff;border-radius:999px;align-items:center;gap:6px;height:36px;padding:0 16px;font-size:13px;font-weight:500;display:inline-flex}.modal__links a.alt{color:var(--ink);border:1px solid var(--line);background:0 0}.modal__links svg{width:13px;height:13px}.process{grid-template-columns:1fr;gap:14px;display:grid}@media (min-width:760px){.process{grid-template-columns:repeat(5,1fr)}}.step{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-xl);transition:transform .4s var(--ease), border-color .3s var(--ease);box-shadow:var(--shadow-1);padding:28px 24px}.step:hover{transform:translateY(-3px)}.step__n{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;border-radius:50%;place-items:center;width:32px;height:32px;margin-bottom:18px;font-size:13px;font-weight:600;display:grid}.step h3{letter-spacing:-.02em;margin-bottom:8px;font-size:19px}.step p{color:var(--ink-3);margin:0;font-size:14px;line-height:1.5}.stack{border-top:1px solid var(--line);margin-top:80px;padding-top:56px}.stack__h{font-family:var(--f-display);letter-spacing:-.03em;color:var(--ink);max-width:24ch;margin:0 0 18px;font-size:clamp(28px,3vw,40px);font-weight:600;line-height:1.1}.stack__intro{color:var(--ink-2);letter-spacing:-.01em;max-width:62ch;margin:0 0 48px;font-size:clamp(17px,1.45vw,20px);line-height:1.55}.stack__intro b{color:var(--ink);font-weight:600}.stack__groups{grid-template-columns:1fr;gap:36px 48px;display:grid}@media (min-width:720px){.stack__groups{grid-template-columns:repeat(2,1fr)}}@media (min-width:1100px){.stack__groups{grid-template-columns:repeat(3,1fr);gap:40px 36px}}.stack__group{flex-direction:column;gap:14px;display:flex}.stack__kicker{font-family:var(--f-mono);color:var(--accent);letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--line);margin:0;padding-bottom:14px;font-size:11px;font-weight:600}.stack__pills{flex-flow:wrap;gap:8px 16px;margin:0;padding:0;list-style:none;display:flex}.stack__pill{color:var(--ink-2);letter-spacing:-.01em;transition:color .2s var(--ease);font-size:15px;font-weight:400;line-height:1.25}.stack__group:hover .stack__pill{color:var(--ink)}.timeline{grid-template-columns:1fr;gap:14px;display:grid}@media (min-width:760px){.timeline{grid-template-columns:repeat(2,1fr)}}@media (min-width:1100px){.timeline{grid-template-columns:repeat(3,1fr)}}.tl-card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-1);transition:transform .35s var(--ease);padding:26px 24px}.tl-card:hover{transform:translateY(-3px)}.tl-card .yr{color:var(--accent);letter-spacing:.02em;margin-bottom:8px;font-size:12px;font-weight:600}.tl-card h3{letter-spacing:-.02em;margin-bottom:6px;font-size:20px}.tl-card p{color:var(--ink-3);margin:0;font-size:14.5px;line-height:1.5}.tl-card .loc{color:var(--ink-4);text-transform:uppercase;letter-spacing:.06em;margin-top:14px;font-size:11px;font-weight:500}.contact{text-align:center;z-index:0;background:linear-gradient(180deg, transparent 0%, transparent 250px, var(--bg) 330px, color-mix(in oklab, var(--bg) 92%, var(--accent) 8%) 100%);flex-direction:column;justify-content:center;min-height:100vh;margin-top:-250px;padding:320px 0 0;display:flex;position:relative}.contact h2{background:linear-gradient(180deg, var(--ink), color-mix(in oklab, var(--ink) 50%, var(--accent)));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:108px}.contact .lede{text-align:center;margin:0 auto 48px}.contact__lines{grid-template-columns:repeat(2,500px);justify-content:center;gap:68px;display:grid}@media (max-width:880px){.contact__lines{grid-template-columns:1fr}}.contact__line{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-xl);text-align:left;height:250px;min-height:unset;transition:transform .3s var(--ease), background .3s var(--ease), border-color .3s var(--ease), box-shadow .3s var(--ease);box-shadow:var(--shadow-1);flex-direction:column;align-items:flex-start;gap:20px;padding:28px 24px 24px;display:flex;position:relative;overflow:visible}.contact__char{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;transform-origin:100% 100%;width:auto;height:300px;transition:transform .4s var(--ease);position:absolute;bottom:0;right:-10px}.contact__line:hover .contact__char{transform:scale(1.07)}.contact__line:hover{border-color:var(--accent);box-shadow:var(--shadow-2);transform:translateY(-3px)}.contact__line:active{transition-duration:.14s;transform:translateY(-1px)scale(.985)}.contact__line .ico{width:88px;height:88px;color:var(--accent);background:color-mix(in oklab, var(--accent) 10%, transparent);transition:background .3s var(--ease), transform .4s var(--ease);border-radius:18px;flex-shrink:0;place-items:center;display:grid}.contact__line.l2 .ico{color:#0a66c2;background:#0a66c21f;background:lab(42.5561% 3.77455 -55.9166/.12)}.contact__line.l3 .ico{color:#e11d74;background:#e11d741f;background:lab(50.3248% 73.4929 4.58996/.12)}.contact__line.l4 .ico{color:#1769ff;background:#1769ff1f;background:lab(47.4686% 22.9972 -82.39/.12)}.contact__line .ico svg{width:56px;height:56px;overflow:visible}.contact__line:hover .ico{background:color-mix(in oklab, currentColor 16%, transparent)}.contact__line .text{z-index:1;flex-direction:column;gap:4px;display:flex;position:absolute;top:24px;left:24px}.contact__line .label{color:var(--accent);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.contact__line .val{color:var(--ink);letter-spacing:-.012em;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500;overflow:hidden}.contact__line .arrow{color:var(--ink-3);transition:transform .3s var(--ease), color .3s var(--ease);position:absolute;top:24px;right:22px}.contact__line:hover .arrow{color:var(--accent);transform:translate(3px,-3px)}.otc-cta{z-index:1;margin-top:120px;background:radial-gradient(120% 100% at 100% 0%, color-mix(in oklab, var(--accent) 14%, transparent) 0%, transparent 60%), linear-gradient(135deg, color-mix(in oklab, var(--accent) 8%, var(--bg-card)) 0%, var(--bg-card) 100%);border:1px solid color-mix(in oklab, var(--accent) 25%, var(--line));border-radius:var(--r-2xl);max-width:540px;box-shadow:var(--shadow-1);transition:transform .3s var(--ease), border-color .3s var(--ease), box-shadow .3s var(--ease);justify-content:space-between;align-items:center;gap:24px;margin-inline:auto;padding:28px 44px;text-decoration:none;display:flex;position:relative;overflow:visible}.otc-cta:hover{border-color:var(--accent);box-shadow:var(--shadow-2);transform:translateY(-3px)}.otc-cta__text{z-index:1;flex-direction:column;gap:6px;min-width:0;max-width:52%;display:flex;position:relative}.otc-cta__kicker{font-family:var(--f-mono);color:var(--accent);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:600}.otc-cta__title{font-family:var(--f-display);letter-spacing:-.025em;color:var(--ink);font-size:clamp(22px,2.4vw,30px);font-weight:600;line-height:1.15}.otc-cta__sub{color:var(--ink-2);letter-spacing:-.01em;font-size:15px}.otc-cta__arrow{z-index:2;background:var(--bg-2);width:40px;height:40px;color:var(--ink-3);border:1px solid var(--line);transition:transform .3s var(--ease-spring), color .3s var(--ease), border-color .3s var(--ease);border-radius:999px;place-items:center;display:grid;position:absolute;top:50%;right:40px;transform:translateY(-50%)}.otc-cta:hover .otc-cta__arrow{color:var(--accent);border-color:var(--accent);transform:translateY(-50%)translate(4px)scale(1.06)}.otc-cta__arrow svg{width:14px;height:14px}.otc-cta__illustration{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0;width:auto;height:270px;transition:opacity .4s var(--ease);position:absolute;bottom:0;right:0}.otc-cta__illustration--base{opacity:1}.otc-cta__illustration--hover,.otc-cta:hover .otc-cta__illustration--base{opacity:0}.otc-cta:hover .otc-cta__illustration--hover{opacity:1}.otc-hero{text-align:center;flex-direction:column;align-items:center;padding:120px 0 64px;display:flex}.otc-breadcrumb{align-self:flex-start;align-items:center;gap:8px;margin-bottom:44px;display:inline-flex}.otc-breadcrumb__sep{color:var(--line);-webkit-user-select:none;user-select:none;font-size:13px}.otc-breadcrumb__current{color:var(--ink-3);letter-spacing:.01em;font-size:13px;font-weight:600}.otc-back{border:1px solid var(--line);background:var(--bg-2);color:var(--ink-2);letter-spacing:.01em;transition:color .2s var(--ease), border-color .2s var(--ease), background .2s var(--ease), box-shadow .2s var(--ease);border-radius:999px;align-items:center;gap:5px;padding:7px 14px 7px 10px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.otc-back__chevron{transition:transform .2s var(--ease);flex-shrink:0}.otc-back:hover{color:var(--accent);border-color:var(--accent);background:color-mix(in oklab, var(--accent) 6%, var(--bg-2));box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 12%, transparent)}.otc-back:hover .otc-back__chevron{transform:translate(-3px)}.otc-hero h1{letter-spacing:-.035em;margin:8px 0 20px;font-size:clamp(32px,5vw,56px)}.otc-intro{color:var(--ink-3);max-width:480px;margin:0 auto;font-size:18px;line-height:1.5}.otc-body{color:var(--ink-3);max-width:600px;margin:24px auto 0;font-size:16px;line-height:1.7}.otc-section{padding:0 0 120px}.otc-cards{grid-template-columns:1fr;grid-auto-rows:1fr;gap:56px 16px;display:grid;overflow:visible}@media (min-width:600px){.otc-cards{grid-template-columns:repeat(2,1fr)}}@media (min-width:1100px){.otc-cards{grid-template-columns:repeat(3,400px)}}@media (min-width:1200px){.otc-section .wrap{max-width:1360px}}.otc-card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-1);text-align:left;cursor:pointer;font:inherit;color:inherit;width:100%;min-height:200px;transition:transform .3s var(--ease), border-color .3s var(--ease), box-shadow .3s var(--ease);flex-direction:column;align-items:flex-start;padding:28px;display:flex;position:relative;overflow:visible}.otc-card:before{content:"";border-radius:inherit;background:linear-gradient(to right, var(--bg-card) 55%, transparent 85%);z-index:0;pointer-events:none;position:absolute;inset:0}.otc-card:hover{border-color:var(--accent);box-shadow:var(--shadow-2);transform:translateY(-3px)}.otc-card__illustration{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:1;z-index:0;transform-origin:100% 100%;width:auto;height:242px;transition:transform .4s var(--ease);position:absolute;bottom:4px;right:-24px}.otc-card:hover .otc-card__illustration{transform:scale(1.07)}.otc-card[data-key=travel] .otc-card__illustration{right:-44px}.otc-card[data-key=events] .otc-card__illustration{right:-12px}.otc-card__year,.otc-card__h,.otc-card__voice,.otc-card__where{z-index:1;text-shadow:0 0 8px var(--bg-card), 0 0 16px var(--bg-card), -1px 0 0 var(--bg-card), 1px 0 0 var(--bg-card);position:relative}.otc-card__year{font-family:var(--f-mono);color:var(--accent);letter-spacing:.06em;margin-bottom:14px;font-size:11px;font-weight:600;display:block}.otc-card__h{letter-spacing:-.025em;color:var(--ink);white-space:pre-line;margin:0 0 10px;font-size:28px;font-weight:600}.otc-card__voice{color:var(--ink-3);white-space:pre-line;margin:0 0 auto;font-size:14.5px;font-style:italic;line-height:1.6}.otc-card__where{font-family:var(--f-mono);color:var(--ink-3);letter-spacing:.04em;margin-top:20px;font-size:11px;font-weight:600;display:block}.otc-card__more{width:38px;height:38px;color:var(--ink-3);background:var(--bg-2);border:1px solid var(--line);z-index:2;transition:transform .3s var(--ease-spring), color .3s var(--ease), background .3s var(--ease), border-color .3s var(--ease);border-radius:999px;place-items:center;display:grid;position:absolute;bottom:22px;right:24px}.otc-card:hover .otc-card__more{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);transform:translate(3px)}.otc-modal__panel{max-width:680px}.otc-modal__head{width:100%;height:280px;overflow:hidden}.otc-modal__head img{object-fit:cover;object-position:center;width:100%;height:100%}.otc-modal__body{padding:32px 32px 36px}.otc-modal__role{font-family:var(--f-mono);color:var(--accent);letter-spacing:.06em;margin:8px 0 22px;font-size:12px;font-weight:600}.otc-modal__body-text{color:var(--ink-2);letter-spacing:-.005em;text-align:left;margin:0 0 24px;font-size:16px;line-height:1.7}.otc-modal__body-text br+br{display:none}.otc-modal__body-text p{margin:0 0 16px}.otc-modal__body-text p:last-child{margin-bottom:0}.otc-modal__meta{border-top:1px solid var(--line);grid-template-columns:1fr;gap:14px 24px;margin:0;padding-top:20px;display:grid}@media (min-width:520px){.otc-modal__meta{grid-template-columns:repeat(2,1fr)}}.otc-modal__meta dt{font-family:var(--f-mono);color:var(--ink-4);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:600}.otc-modal__meta dd{color:var(--ink);letter-spacing:-.01em;margin:0;font-size:14px;font-weight:500}footer{border-top:1px solid var(--line);color:var(--ink-4);padding:32px 0;font-size:12px}footer .row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}footer a{color:var(--ink-3);transition:color .2s var(--ease)}footer a:hover{color:var(--accent)}.footer__legal{color:var(--ink-4);align-items:center;gap:8px;display:inline-flex}.footer__legal a{font-weight:500}.reveal{opacity:0;transition:opacity .9s var(--ease), transform .9s var(--ease);transform:translateY(24px)}.reveal.is-in{opacity:1;transform:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ambient{pointer-events:none;z-index:0;aspect-ratio:1;background:radial-gradient(closest-side, color-mix(in oklab, var(--accent) 30%, transparent), transparent 70%);filter:blur(60px);opacity:.7;border-radius:50%;width:60vw;max-width:720px;position:absolute;inset:auto}.ambient.a1{top:-15%;left:-10%}.ambient.a2{background:radial-gradient(closest-side, color-mix(in oklab, var(--accent-2) 28%, transparent), transparent 70%);top:10%;right:-10%}.hero,.about,.work,.process-sec,.background-sec,.contact{position:relative}.eyebrow--num{font-family:var(--f-mono);color:var(--ink-3);letter-spacing:.02em;text-transform:uppercase;background:0 0;align-items:center;gap:10px;font-size:12px;font-weight:500;display:inline-flex}.eyebrow--num .num{color:var(--accent);background:color-mix(in oklab, var(--accent) 12%, transparent);border:1px solid color-mix(in oklab, var(--accent) 25%, transparent);letter-spacing:.04em;border-radius:999px;padding:3px 8px;font-weight:600}.eyebrow--num .lbl{letter-spacing:.12em}.hero__grid{z-index:0;pointer-events:none;background-image:linear-gradient(to right, var(--line) 1px, transparent 1px), linear-gradient(to bottom, var(--line) 1px, transparent 1px);opacity:.5;background-size:80px 80px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at top,#000 0%,#0000 70%);mask-image:radial-gradient(at top,#000 0%,#0000 70%)}.hero__h1,.hero__h1>span{display:inline-block;position:relative}.hero__h1>span:after{content:"";background:linear-gradient(90deg, var(--accent), var(--accent-2), var(--tint-pink));width:0;height:.14em;animation:underlineDraw 1.4s var(--ease) .35s forwards;border-radius:999px;position:absolute;bottom:-.05em;left:0;right:auto}@keyframes underlineDraw{to{width:62%}}.h1-cursor{vertical-align:baseline;background:linear-gradient(180deg, var(--accent), var(--accent-2));border-radius:2px;width:.06em;height:.78em;margin-left:.08em;animation:1s step-end infinite caret;display:inline-block}@keyframes caret{50%{opacity:0}}.hero__sub em{background:linear-gradient(90deg, var(--accent), var(--accent-2), var(--tint-pink));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:normal;font-weight:600}.status-board{flex-wrap:wrap;justify-content:center;gap:8px;max-width:780px;margin:28px auto 0;display:flex}.sb-chip{background:var(--glass-bg);-webkit-backdrop-filter:saturate(180%)blur(14px);border:1px solid var(--glass-stroke);letter-spacing:-.005em;border-radius:999px;align-items:center;gap:10px;padding:8px 14px;font-size:13px;display:inline-flex}.sb-k{font-family:var(--f-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-4);font-size:10.5px;font-weight:600}.sb-v{color:var(--ink);align-items:center;gap:6px;font-weight:500;display:inline-flex}.sb-dot{background:var(--tint-green);border-radius:50%;width:7px;height:7px}.sb-dot--live{box-shadow:0 0 0 0 color-mix(in oklab, var(--tint-green) 70%, transparent);animation:2.2s ease-out infinite pulse}.hero__spec{font-family:var(--f-mono);letter-spacing:.02em;color:var(--ink-4);text-align:center;margin:20px 0 0;font-size:11.5px}.hero__spec:before{content:"→ ";color:var(--accent);margin-right:2px}.hero__media{overflow:visible}.crop-mark{border-color:var(--accent);z-index:2;pointer-events:none;border-style:solid;border-width:0;width:18px;height:18px;position:absolute}.cm-tl{border-top-width:2px;border-left-width:2px;top:-10px;left:-10px}.cm-tr{border-top-width:2px;border-right-width:2px;top:-10px;right:-10px}.cm-bl{border-bottom-width:2px;border-left-width:2px;bottom:-10px;left:-10px}.cm-br{border-bottom-width:2px;border-right-width:2px;bottom:-10px;right:-10px}.dim{font-family:var(--f-mono);color:var(--ink-4);letter-spacing:.06em;z-index:2;white-space:nowrap;font-size:10.5px;position:absolute;top:-26px;left:50%;transform:translate(-50%)}.dim:before{content:"⟵ ";color:var(--accent)}.dim:after{content:" ⟶";color:var(--accent)}.ticker--reverse{margin-top:-1px}.ticker--reverse .ticker__track{animation-duration:85s;animation-direction:reverse}.ticker--bold .ticker__track{letter-spacing:-.02em;color:var(--ink);font-size:clamp(22px,3.4vw,36px);font-weight:600;font-family:var(--f-display);text-transform:uppercase}.ticker--bold .ticker__track span:after{content:"●";color:var(--accent);vertical-align:middle;margin:0 0 0 4px;font-size:.4em}.card{transition:transform,box-shadow,border-color}.card:before{content:"";border-radius:inherit;background:linear-gradient(135deg, var(--accent), var(--accent-2), var(--tint-pink));-webkit-mask-composite:xor;opacity:0;pointer-events:none;z-index:3;padding:1px;transition:opacity;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.card:hover{transform:translateY(-6px)}.card:hover:before{opacity:1}.card:hover .card__cta svg{transform:translate(6px)}.card__num{z-index:2;font-family:var(--f-mono);color:#fff;letter-spacing:.04em;-webkit-backdrop-filter:blur(8px);background:#00000080;border-radius:8px;padding:5px 9px;font-size:11px;font-weight:600;position:absolute;top:14px;right:14px}.card__cta{font-weight:600}.process{position:relative}@media (min-width:760px){.process:before{content:"";background:linear-gradient(90deg, transparent, var(--line) 12%, var(--line) 88%, transparent);z-index:0;height:1px;position:absolute;top:48px;left:8%;right:8%}}.step{z-index:1;position:relative}.step__n{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;width:48px;height:48px;font-family:var(--f-display);letter-spacing:-.02em;box-shadow:0 8px 22px -8px color-mix(in oklab, var(--accent) 60%, transparent);border-radius:14px;place-items:center;margin-bottom:20px;font-size:20px;font-weight:700;display:grid}.step:nth-child(2) .step__n{background:linear-gradient(135deg, var(--accent-2), var(--tint-pink))}.step:nth-child(3) .step__n{background:linear-gradient(135deg, var(--tint-pink), var(--tint-warm))}.step:nth-child(4) .step__n{background:linear-gradient(135deg, var(--tint-warm), var(--tint-green))}.step:nth-child(5) .step__n{background:linear-gradient(135deg, var(--tint-green), var(--accent))}.strip-marquee{background:linear-gradient(90deg, color-mix(in oklab, var(--accent) 6%, transparent), color-mix(in oklab, var(--accent-2) 6%, transparent), color-mix(in oklab, var(--tint-pink) 6%, transparent));margin:0 0 60px;padding:18px 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.strip-marquee__track{width:max-content;font-family:var(--f-display);letter-spacing:-.03em;text-transform:uppercase;color:var(--ink);white-space:nowrap;gap:48px;font-size:clamp(28px,4.6vw,56px);font-weight:700;animation:32s linear infinite scroll;display:flex}.strip-marquee__row{align-items:center;gap:32px;display:inline-flex}.strip-marquee em{color:var(--accent);align-items:center;font-size:.55em;font-style:normal;display:inline-flex}.footer__sign{font-family:var(--f-mono);color:var(--ink-4);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.nav__brand .dot{box-shadow:0 0 0 0 color-mix(in oklab, var(--accent) 60%, transparent);animation:3.4s ease-in-out infinite brandPulse}@keyframes brandPulse{50%{box-shadow:0 0 0 6px #0000}}@media (max-width:600px){.status-board{gap:6px}.sb-chip{padding:6px 11px;font-size:12px}.dim{display:none}}.globe-card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-2xl);box-shadow:var(--shadow-1);margin:0 0 64px;padding:36px 28px 28px;position:relative;overflow:hidden}@media (min-width:768px){.globe-card{padding:48px 44px 36px}}.globe-card__head{text-align:left;max-width:760px;margin-bottom:32px}.globe-card__h{font-family:var(--f-display);letter-spacing:-.025em;color:var(--ink);margin:0 0 12px;font-size:clamp(26px,2.6vw,36px);font-weight:600;line-height:1.15}.globe-card__sub{color:var(--ink-3);max-width:60ch;margin:0;font-size:clamp(15px,1.3vw,17px);line-height:1.55}.globe-card__body{grid-template-columns:1fr;align-items:stretch;gap:28px;display:grid}@media (min-width:980px){.globe-card__body{grid-template-columns:1.4fr 1fr;gap:36px}}.globe-card__globe{position:relative}.globe-card__places{flex-direction:column;align-self:stretch;gap:10px;margin:0;padding:0;list-style:none;display:flex}.globe-card__places li{margin:0;padding:0;list-style:none}.globe-card__place{border:1px solid var(--line);border-radius:var(--r-md);background:color-mix(in oklab, var(--bg-2) 60%, transparent);text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;transition:transform .3s var(--ease), border-color .3s var(--ease), background .3s var(--ease), box-shadow .3s var(--ease);align-items:center;gap:14px;padding:14px 16px;display:flex}.globe-card__place:hover{border-color:color-mix(in oklab, var(--accent) 40%, var(--line));background:var(--bg-2);box-shadow:var(--shadow-1);transform:translate(3px)}.globe-card__place:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.globe-card__place.is-home{border-color:color-mix(in oklab, var(--accent) 35%, var(--line));background:color-mix(in oklab, var(--accent) 6%, var(--bg-2))}.globe-card__arrow{color:var(--ink-3);transition:transform .3s var(--ease), color .3s var(--ease);align-items:center;margin-left:auto;display:inline-flex}.globe-card__place:hover .globe-card__arrow{color:var(--accent);transform:translate(3px)}.globe-card__flag{filter:drop-shadow(0 2px 4px #0000001f);flex-shrink:0;font-size:26px;line-height:1}.globe-card__place>div{flex-direction:column;gap:2px;min-width:0;display:flex}.globe-card__city{color:var(--ink);letter-spacing:-.015em;font-size:15px;font-weight:600}.globe-card__role{font-family:var(--f-mono);color:var(--ink-4);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.globe-card__langs{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.globe-card__langs-h{font-family:var(--f-mono);color:var(--ink-4);letter-spacing:.08em;text-transform:uppercase;margin:0 0 14px;font-size:11px;font-weight:600}.globe-card__langs-row{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:10px;display:grid}.globe-card__langs-row span{background:var(--bg-2);border:1px solid color-mix(in oklab, var(--accent) 35%, var(--line));transition:background .4s var(--ease), border-color .4s var(--ease);border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;display:flex}.globe-card__langs-row span:first-child:hover{background:linear-gradient(105deg,#00924680,#ffffff2e 50%,#ce2b3780);border-color:#0000}.globe-card__langs-row span:nth-child(2):hover{background:linear-gradient(#c60b1e80,#ffc4008c 50%,#c60b1e80);border-color:#0000}.globe-card__langs-row span:nth-child(3):hover{background:linear-gradient(115deg,#01216980,#fff3 50%,#c8102e80);border-color:#0000}.globe-card__langs-row span:nth-child(4):hover{background:linear-gradient(100deg,#0023958c,#fff3 50%,#ed29398c);border-color:#0000}.globe-card__langs-row span:nth-child(5):hover{background:linear-gradient(105deg,#0066008c,#ff000080);border-color:#0000}.globe-card__langs-row b{font-family:var(--f-display);color:var(--ink);letter-spacing:-.015em;font-size:17px;font-weight:600}.manifesto{text-align:center;padding:80px 0;position:relative}@media (min-width:768px){.manifesto{padding:120px 0}}.manifesto__kicker{font-family:var(--f-mono);color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin:0 0 24px;font-size:11px;font-weight:600}.manifesto__line{font-family:var(--f-display);letter-spacing:-.045em;color:var(--ink);margin:0;font-size:clamp(40px,7.4vw,104px);font-weight:700;line-height:1}.manifesto__line em{font-style:italic;font-family:var(--f-serif);background:linear-gradient(180deg, color-mix(in oklab, var(--ink) 70%, var(--accent) 30%), color-mix(in oklab, var(--ink) 30%, var(--accent) 70%));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:500}.services-compact{margin-top:64px}.services-compact__h{letter-spacing:-.02em;color:var(--ink-2);margin:0 0 24px;font-size:18px;font-weight:600}.services-list{border-bottom:1px solid var(--line);grid-template-columns:1fr;margin:0;padding:0;list-style:none;display:grid}@media (min-width:600px){.services-list{grid-template-columns:repeat(2,1fr)}}.services-list li{border-top:1px solid var(--line);letter-spacing:-.01em;align-items:baseline;gap:12px;padding:14px 0;font-size:16px;font-weight:500;display:flex}@media (min-width:600px){.services-list li:nth-child(odd){padding-right:24px}.services-list li:nth-child(2n){border-left:1px solid var(--line);padding-left:24px}}.services-list__n{font-family:var(--f-mono);color:var(--accent);flex-shrink:0;font-size:11px;font-weight:600}.globe{position:relative}.globe-wrap{cursor:grab;justify-content:center;align-items:center;width:100%;min-height:380px;margin-top:8px;display:flex;position:relative;overflow:hidden}.globe-wrap:active{cursor:grabbing}.globe-wrap:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle at 50% 47%, color-mix(in oklab, var(--accent) 22%, transparent) 0%, color-mix(in oklab, var(--accent) 8%, transparent) 30%, transparent 60%);position:absolute;inset:-8%}.globe-wrap canvas{z-index:1;max-width:100%;display:block;position:relative}.globe-fallback{z-index:1;aspect-ratio:1;width:min(86%,420px);color:var(--accent);place-items:center;display:grid;position:relative}.globe-fallback svg{width:100%;height:100%;overflow:visible}.globe-fallback__spin{transform-origin:50%;animation:26s linear infinite globeSpin}@keyframes globeSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.globe-fallback__spin{animation:none}}.globe-skeleton{border-radius:var(--r-xl);background:radial-gradient(circle at 50% 50%, color-mix(in oklab, var(--accent) 18%, transparent) 0%, color-mix(in oklab, var(--accent) 6%, transparent) 35%, transparent 65%);width:100%;height:520px;animation:2.4s ease-in-out infinite globePulse}@keyframes globePulse{50%{opacity:.55}}.globe-legend{font-family:var(--f-text);color:var(--ink-2);letter-spacing:-.005em;flex-wrap:wrap;justify-content:center;gap:10px 20px;margin-top:12px;padding:14px 16px 8px;font-size:13px;font-weight:500;display:flex}.globe-legend span{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.globe-legend .lg{background:color-mix(in oklab, var(--ink-3) 70%, transparent);border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.globe-legend .lg--home{background:var(--tint-pink);box-shadow:0 0 0 3px color-mix(in oklab, var(--tint-pink) 22%, transparent)}.globe-legend .lg--case{background:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 22%, transparent)}.g-marker{cursor:pointer;pointer-events:auto;background:0 0;border:0;width:14px;height:14px;margin:0;padding:0;position:relative;transform:translate(-50%,-50%)}.g-marker__dot{background:var(--accent);width:14px;height:14px;transition:transform .25s var(--ease), background .2s var(--ease);border:2px solid #fff;border-radius:50%;position:absolute;inset:0;box-shadow:0 2px 6px #0006}.g-marker__pulse{background:var(--accent);opacity:.55;border-radius:50%;width:14px;height:14px;animation:2s ease-out infinite markerPulse;position:absolute;inset:0}@keyframes markerPulse{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(2.8)}}.g-marker__label{font-family:var(--f-display);white-space:nowrap;color:#fff;letter-spacing:-.005em;opacity:0;pointer-events:none;transition:opacity .2s var(--ease), transform .2s var(--ease);background:#000000c7;border-radius:8px;padding:5px 9px;font-size:11.5px;font-weight:600;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%)}.g-marker:hover .g-marker__dot{background:var(--accent-2);transform:scale(1.18)}.g-marker:hover .g-marker__label{opacity:1;transform:translate(-50%)translateY(-2px)}.g-marker:focus-visible{outline:none}.g-marker:focus-visible .g-marker__dot{box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 50%, transparent)}.g-marker--home .g-marker__dot,.g-marker--home .g-marker__pulse{background:var(--tint-pink);width:18px;height:18px}.g-marker--case .g-marker__dot:after{content:"";border:2px solid color-mix(in oklab, var(--accent) 60%, #fff);border-radius:50%;position:absolute;inset:0;transform:scale(1.55)}.place-modal__panel{max-width:680px}.place-modal__head{aspect-ratio:16/9}.place-modal__body{padding:32px 28px 36px}@media (min-width:768px){.place-modal__body{padding:44px 48px 48px}}.place-modal__body h3{letter-spacing:-.03em;margin-bottom:8px;font-size:clamp(26px,3.4vw,38px)}.place-modal__meta{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:18px;margin:18px 0 22px;padding:18px 0;display:grid}.place-modal__meta dt{font-family:var(--f-mono);color:var(--ink-4);letter-spacing:.06em;text-transform:uppercase;margin:0 0 4px;font-size:10.5px;font-weight:600}.place-modal__meta dd{color:var(--ink);letter-spacing:-.005em;margin:0;font-size:15px;font-weight:500}.place-modal__body-text{color:var(--ink-2);margin:0 0 22px;font-size:16px;line-height:1.55}.place-modal__case-link{background:var(--accent);color:#fff;letter-spacing:-.005em;height:42px;transition:transform .25s var(--ease-spring), background .25s var(--ease);cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:500;display:inline-flex}.place-modal__case-link:hover{background:color-mix(in oklab, var(--accent) 88%, #000);transform:scale(1.03)}.place-modal__case-link svg{width:14px;height:14px}.asp-sec{padding:96px 0 120px;position:relative}.asp-sec .section-head{max-width:760px}.asp-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;display:grid}.asp-card{text-align:center;flex-direction:column;align-items:center;gap:18px;display:flex}.asp-mockup{aspect-ratio:852/1742;width:100%;max-width:172px;box-shadow:0 24px 60px -20px color-mix(in oklab, var(--asp-accent,var(--accent)) 30%, #0f0f1266);transition:transform .35s var(--ease-spring), box-shadow .35s var(--ease);position:relative}.asp-card:hover .asp-mockup{box-shadow:0 32px 80px -20px color-mix(in oklab, var(--asp-accent,var(--accent)) 45%, #0f0f1280);transform:translateY(-6px)rotate(-1deg)}.asp-mockup__bezel{object-fit:cover;object-position:top;cursor:zoom-in;touch-action:manipulation;background:0 0;border:none;border-radius:30px;width:100%;height:100%;padding:0;display:block;overflow:hidden}.asp-mockup__bezel img{object-fit:contain;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.asp-card__name{font-family:var(--f-display);letter-spacing:-.015em;color:var(--ink);margin:0;font-size:17px;font-weight:600}.asp-card__role{font-family:var(--f-mono);color:var(--ink-4);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:11px}.asp-services{gap:24px;margin-top:52px;display:grid}.asp-service{--service-accent:var(--accent);background:radial-gradient(120% 120% at 100% 0%, color-mix(in oklab, var(--service-accent) 13%, transparent) 0%, transparent 60%), linear-gradient(145deg, color-mix(in oklab, var(--service-accent) 7%, var(--bg-card)) 0%, var(--bg-card) 100%);border:1px solid color-mix(in oklab, var(--service-accent) 24%, var(--line));border-radius:var(--r-xl);box-shadow:var(--shadow-1);grid-template-columns:minmax(280px,.86fr) minmax(0,1.14fr);align-items:center;gap:36px;padding:42px 44px;display:grid}.asp-service--web{--service-accent:var(--tint-indigo)}.asp-service--seo{--service-accent:var(--accent)}.asp-service__copy{max-width:56ch}.asp-service__kicker{font-family:var(--f-mono);color:var(--service-accent);text-transform:uppercase;letter-spacing:.09em;background:color-mix(in oklab, var(--service-accent) 12%, transparent);border:1px solid color-mix(in oklab, var(--service-accent) 28%, transparent);border-radius:999px;margin:0 0 14px;padding:5px 14px;font-size:13px;font-weight:700;display:inline-block}.asp-service__h{font-family:var(--f-display);letter-spacing:-.025em;color:var(--ink);margin:0 0 12px;font-size:clamp(26px,3vw,38px);font-weight:600;line-height:1.2}.asp-service__sub{color:var(--ink-2);max-width:60ch;margin:0 0 22px;font-size:16px;line-height:1.55}.asp-service__list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.asp-service__list li{color:var(--ink-2);padding-left:20px;font-size:14px;line-height:1.5;position:relative}.asp-service__list li:before{content:"";background:var(--service-accent);width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in oklab, var(--service-accent) 18%, transparent);border-radius:50%;position:absolute;top:9px;left:0}.asp-service__cta{background:var(--service-accent);height:50px;color:var(--accent-ink);letter-spacing:-.01em;width:max-content;transition:transform .25s var(--ease-spring), background .25s var(--ease);border-radius:999px;flex-shrink:0;align-items:center;gap:8px;margin-top:22px;padding:0 24px;font-size:15px;font-weight:500;display:inline-flex}.asp-service__cta:hover{background:color-mix(in oklab, var(--accent) 88%, #000);transform:scale(1.04)}.asp-service__cta svg{width:14px;height:14px}.asp-service--web .asp-service__cta{color:#fff;background:var(--tint-indigo)}.asp-service--web .asp-service__cta:hover{background:color-mix(in oklab, var(--tint-indigo) 82%, #000)}.asp-web{justify-self:stretch}.asp-web__example{border:1px solid color-mix(in oklab, var(--service-accent) 24%, var(--line));border-radius:var(--r-lg);background:var(--bg-2);box-shadow:0 24px 60px -34px color-mix(in oklab, var(--service-accent) 38%, #000);transition:transform .28s var(--ease), box-shadow .28s var(--ease);display:block;overflow:hidden}.asp-web__example:hover{box-shadow:0 30px 70px -34px color-mix(in oklab, var(--service-accent) 48%, #000);transform:translateY(-3px)}.asp-web__chrome{border-bottom:1px solid var(--line-2);background:color-mix(in oklab, var(--service-accent) 7%, var(--bg-card));gap:6px;padding:14px 16px;display:flex}.asp-web__chrome span{background:color-mix(in oklab, var(--service-accent) 40%, var(--line));border-radius:50%;width:8px;height:8px}.asp-web__body{gap:12px;padding:28px;display:grid}.asp-web__example-label{font-family:var(--f-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-4);font-size:11px;font-weight:600}.asp-web__example-url{font-family:var(--f-display);letter-spacing:-.025em;color:var(--ink);align-items:center;gap:8px;font-size:clamp(20px,2.2vw,28px);font-weight:600;display:flex}.asp-web__example-url svg{width:16px;height:16px;color:var(--service-accent)}.asp-web__preview{object-fit:cover;object-position:top;border:1px solid color-mix(in oklab, var(--line) 60%, transparent);border-radius:6px;width:100%;max-height:160px;margin-top:12px;display:block}.asp-service--seo .asp-grid{place-items:end center}.asp-service--seo .asp-service__cta{grid-column:2}@media (max-width:900px){.asp-service{grid-template-columns:1fr;padding:32px 26px}.asp-service--seo .asp-service__cta{grid-column:auto}.asp-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}@media (max-width:620px){.asp-grid{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;grid-template-columns:repeat(3,132px);padding-bottom:10px;overflow-x:auto}.asp-grid::-webkit-scrollbar{display:none}.asp-card{scroll-snap-align:start}.asp-mockup{border-radius:24px;max-width:132px}.asp-mockup__bezel{border-radius:24px}.asp-web__body{padding:22px}.lightbox{padding:18px 12px}.lightbox__track{gap:8px;width:100%}.lightbox__main img{max-width:78vw;max-height:76vh}.lightbox__side{display:none}}.manifesto{background:linear-gradient(to bottom, color-mix(in oklab, var(--accent-2) 12%, var(--bg)), var(--bg) 220px);border-top:none;border-bottom:none}.work{background:var(--bg-2)}.asp-sec{background:var(--bg)}.process-sec{background:var(--bg-2)}.about{background:var(--bg)}.background-sec{background:var(--bg-2)}.contact{background:var(--bg)}[data-theme=dark] .work{background:linear-gradient(180deg, var(--bg) 0%, color-mix(in oklab, var(--bg) 88%, var(--accent-2) 12%) 100%)}[data-theme=dark] .process-sec{background:linear-gradient(180deg, color-mix(in oklab, var(--bg) 88%, var(--accent-2) 12%) 0%, color-mix(in oklab, var(--bg) 90%, var(--tint-warm) 10%) 100%)}[data-theme=dark] .about{background:linear-gradient(180deg, color-mix(in oklab, var(--bg) 90%, var(--tint-warm) 10%) 0%, color-mix(in oklab, var(--bg) 90%, var(--tint-green) 10%) 100%)}[data-theme=dark] .background-sec{background:linear-gradient(180deg, color-mix(in oklab, var(--bg) 90%, var(--tint-green) 10%) 0%, color-mix(in oklab, var(--bg) 85%, var(--accent) 15%) 100%)}[data-theme=dark] .contact{background:linear-gradient(180deg, color-mix(in oklab, var(--bg) 85%, var(--accent) 15%) 0%, color-mix(in oklab, var(--bg) 80%, var(--tint-pink) 20%) 100%)}.articles-groups{flex-direction:column;gap:3.5rem;margin-top:2.5rem;display:flex}.articles-group__label{text-transform:uppercase;letter-spacing:.12em;opacity:.35;margin-bottom:1rem;font-size:.7rem;display:block}.article-row{border-bottom:1px solid color-mix(in oklab,var(--fg) 8%,transparent);color:inherit;justify-content:space-between;align-items:flex-start;gap:1.5rem;padding:1.25rem 0;text-decoration:none;transition:opacity .2s;display:flex}.articles-group .article-row:first-of-type{border-top:1px solid color-mix(in oklab,var(--fg) 8%,transparent)}.article-row:hover{opacity:.6}.article-row__body{flex-direction:column;gap:.3rem;display:flex}.article-row__meta{opacity:.4;font-size:.72rem}.article-row__title{font-size:.95rem;font-weight:500;line-height:1.4}.article-row__desc{opacity:.5;max-width:55ch;margin-top:.1rem;font-size:.82rem;line-height:1.55}.article-row__icon{opacity:.35;flex-shrink:0;margin-top:.15rem}
