@font-face{font-family:Bricolage Grotesque;src:url(/fonts/bricolage-grotesque.woff2) format("woff2");font-weight:400 800;font-display:swap}@font-face{font-family:Figtree;src:url(/fonts/figtree.woff2) format("woff2");font-weight:400 800;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/geist-mono.woff2) format("woff2");font-weight:400 600;font-display:swap}@font-face{font-family:"DM Serif Display";src:url(/fonts/dm-serif-display.woff2) format("woff2");font-weight:400;font-display:swap}:root{color-scheme:light;--paper: #f3f4f8;--card: #ffffff;--ink: #0b0e2a;--ink-hover: #1c2152;--slate: #51567a;--faint: #676b89;--line: #dcdee8;--line-2: #c5c8d8;--focus: #3b3fd6;--navy: #0b0e2a;--on-navy: #eceefb;--on-navy-2: #a9adcb;--on-navy-3: #8a8fb3;--navy-line: rgba(236, 238, 251, .14);--display: "Bricolage Grotesque", "Figtree", ui-sans-serif, system-ui, sans-serif;--body: "Figtree", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--maxw: 1240px;--gutter: clamp(16px, 4vw, 40px);--section: clamp(96px, 12vw, 168px);--radius-room: clamp(24px, 3vw, 40px);--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-spring: cubic-bezier(.34, 1.5, .64, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;min-height:100svh;display:flex;flex-direction:column}main{flex:1}img,video,svg,picture{display:block;max-width:100%}h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit}button{font:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:6px}.wrap{width:100%;max-width:calc(var(--maxw) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip{position:absolute;left:var(--gutter);top:-100px;z-index:100;background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:999px;font-weight:600;text-decoration:none}.skip:focus{top:12px}.spark{width:1em;height:1em;fill:currentColor;flex:none}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:12.5px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--slate)}.eyebrow .spark{width:13px;height:13px;color:var(--ink)}.lede{font-size:clamp(18px,1.6vw,21px);line-height:1.5;color:var(--slate);max-width:38ch;text-wrap:pretty}.btn{display:inline-flex;align-items:center;gap:10px;height:52px;padding-inline:26px;border-radius:999px;font-weight:600;font-size:16px;text-decoration:none;transition:transform .2s var(--ease-out),background-color .2s}.btn-ink{background:var(--ink);color:var(--paper)}.btn-ink:hover{background:var(--ink-hover);transform:translateY(-1px)}.btn .arrow{transition:transform .25s var(--ease-out)}.btn:hover .arrow{transform:translateY(3px)}.text-link{font-weight:600;text-decoration:none;padding-bottom:3px;background:linear-gradient(currentColor,currentColor) 0 100% / 100% 1.5px no-repeat;transition:background-size .3s var(--ease-out)}.text-link:hover{background-size:35% 1.5px}.btn-store{display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 22px 0 18px;border-radius:14px;background:var(--store-bg, var(--ink));color:var(--store-fg, var(--paper));text-decoration:none;transition:transform .2s var(--ease-out),box-shadow .2s}.btn-store:hover{transform:translateY(-2px);box-shadow:0 14px 28px -14px var(--store-glow, rgba(0, 0, 0, .5))}.as-apple{width:21px;height:25px;margin-top:-3px}.as-tx{display:grid;line-height:1.05}.as-sm{font-size:11px;font-weight:500;letter-spacing:.01em}.as-lg{font-size:19px;font-weight:700;letter-spacing:-.01em}.nav{position:sticky;top:0;z-index:50;background:#f3f4f8d6;-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color .25s}.nav.is-scrolled{border-bottom-color:var(--line)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;height:68px}.wordmark{font-family:var(--body);font-weight:700;font-size:17px;letter-spacing:.34em;margin-right:-.34em;text-decoration:none;line-height:1}.nav-links{display:flex;gap:clamp(18px,3vw,36px);font-size:15px;font-weight:500}.nav-links a{text-decoration:none;color:var(--slate);transition:color .2s}.nav-links a:hover{color:var(--ink)}.hero{padding-block:clamp(56px,9vw,128px) clamp(72px,9vw,128px)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(48px,5vw,80px);align-items:end}.hero-copy{display:grid;gap:28px;justify-items:start}.hero h1,.page h1{font-family:var(--display);font-optical-sizing:auto;font-weight:700;font-size:clamp(50px,8vw,112px);line-height:.92;letter-spacing:-.045em;text-wrap:balance}.hero-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:4px}.glint{animation:glint 1.1s var(--ease-spring) .9s backwards}@keyframes glint{0%{transform:scale(.2) rotate(-90deg);opacity:0}60%{transform:scale(1.5) rotate(8deg);opacity:1}to{transform:none}}.shelf{--size: min(25vw, 150px);position:relative;padding-bottom:40px}.shelf:before{content:"";position:absolute;left:-12px;right:-12px;bottom:36px;height:1px;background:var(--line-2)}.shelf-row{position:relative;display:flex;align-items:flex-end;gap:clamp(10px,1.4vw,18px)}.shelf-item{display:block;width:var(--size);height:var(--size);transform:rotate(var(--r, 0deg));transition:transform .4s var(--ease-spring);animation:drop .95s var(--ease-spring) var(--d, 0ms) backwards}.shelf-item img{width:100%;height:100%;border-radius:22.4%;box-shadow:0 24px 34px -20px #0b0e2a8c,0 3px 8px #0b0e2a1f}a.shelf-item:hover{transform:rotate(var(--r, 0deg)) translateY(-10px)}a.shelf-item:focus-visible{border-radius:22.4%;outline-offset:6px}.shelf-slot{border:2px dashed var(--line-2);border-radius:22.4%;display:grid;place-items:center;font-family:var(--mono);font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--faint)}.shelf-caption{position:absolute;right:0;bottom:0;font-family:var(--mono);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--faint)}@keyframes drop{0%{transform:translateY(-90px) rotate(0);opacity:0}45%{opacity:1}to{transform:rotate(var(--r, 0deg))}}.sec-head{display:grid;gap:18px;justify-items:start;max-width:820px;margin-bottom:clamp(36px,5vw,60px)}.sec-head h2,.studio-head h2{font-family:var(--display);font-optical-sizing:auto;font-weight:700;font-size:clamp(40px,5.4vw,72px);line-height:.96;letter-spacing:-.04em;text-wrap:balance}.apps{padding-bottom:var(--section)}.rooms{display:grid;gap:clamp(16px,2vw,24px)}.room{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:clamp(600px,54vw,700px);border-radius:var(--radius-room);background:var(--room-bg);color:var(--room-fg)}.room:nth-child(2n) .room-copy{order:2}.room-copy{position:relative;z-index:4;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:22px;padding:clamp(32px,5.4vw,80px)}.room-meta{display:flex;flex-wrap:wrap;gap:6px 0;font-family:var(--mono);font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--room-muted)}.room-meta li{display:inline-flex;align-items:center;gap:7px}.room-meta li+li:before{content:"";width:3px;height:3px;border-radius:50%;background:currentColor;margin-inline:12px;opacity:.7}.room-meta .spark{width:11px;height:11px;color:var(--room-accent)}.room-name{line-height:0;margin-top:6px}.room-name img{height:var(--wm-h);width:auto}.room-promise{font-size:clamp(28px,3.2vw,42px);line-height:1.06;text-wrap:balance;max-width:17ch}.room-body{color:var(--room-muted);max-width:44ch}.room-traits{display:flex;flex-wrap:wrap;gap:8px}.room-traits li{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;border:1px solid var(--room-line);font-size:14px;font-weight:500}.room-traits .spark{width:10px;height:10px;color:var(--room-accent)}.room-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:10px}.room-site{display:inline-flex;gap:6px;font-weight:600;text-decoration:none;padding-bottom:3px;border-bottom:1.5px solid var(--room-line);transition:border-color .2s}.room-site:hover{border-bottom-color:currentColor}.room-stage{position:relative;z-index:1;min-height:100%;--w: clamp(220px, 21vw, 280px)}.phone{position:absolute;left:50%;top:clamp(64px,8vw,96px);width:var(--w);aspect-ratio:9 / 19.5;padding:calc(var(--w) * .034);border-radius:calc(var(--w) * .16);background:#101014;box-shadow:inset 0 0 0 1.5px #ffffff24,0 50px 90px -34px #000000b3,0 14px 32px -14px #00000080;transition:transform .6s var(--ease-out)}.phone picture,.phone img,.phone video{width:100%;height:100%;object-fit:cover;object-position:top center;border-radius:calc(var(--w) * .128);background:#000}.phone-front{z-index:3;transform:translate(-50%)}.phone-left,.phone-right{top:calc(clamp(64px,8vw,96px) + 56px);filter:brightness(.72) saturate(.92)}.phone-left{z-index:1;transform:translate(-114%) rotate(-7deg) scale(.86)}.phone-right{z-index:2;transform:translate(14%) rotate(7deg) scale(.86)}.room:hover .phone-left{transform:translate(-120%) rotate(-9deg) scale(.86)}.room:hover .phone-right{transform:translate(20%) rotate(9deg) scale(.86)}.room-solr{--room-bg: radial-gradient(65% 60% at 88% 4%, rgba(167, 139, 250, .42), transparent 62%), radial-gradient(55% 55% at 94% 100%, rgba(251, 113, 133, .32), transparent 66%), radial-gradient(45% 45% at 2% 100%, rgba(249, 115, 22, .13), transparent 70%), #07071c;--room-fg: #f4f4f8;--room-muted: #b0b0c8;--room-accent: #c4b5fd;--room-line: rgba(244, 244, 248, .2);--store-bg: #f4f4f8;--store-fg: #07071c;--store-glow: rgba(167, 139, 250, .7)}.room-solr .room-promise{font-weight:800;letter-spacing:-.03em}.room-whipp{--room-bg: radial-gradient(60% 60% at 12% 0%, rgba(221, 252, 92, .1), transparent 60%), radial-gradient(75% 75% at 0% 100%, #1e4429, transparent 72%), #14301e;--room-fg: #f7f6f1;--room-muted: rgba(247, 246, 241, .74);--room-accent: #ddfc5c;--room-line: rgba(247, 246, 241, .22);--store-bg: #ddfc5c;--store-fg: #14301e;--store-glow: rgba(221, 252, 92, .55)}.room-whipp .room-promise{font-family:"DM Serif Display",Georgia,serif;font-weight:400;letter-spacing:-.01em;line-height:1.08}.studio{padding-bottom:clamp(96px,10vw,144px)}.studio-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,6vw,104px);align-items:start}.studio-head{display:grid;gap:22px;justify-items:start;position:sticky;top:110px}.principles li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px 16px;padding-block:30px;border-top:1px solid var(--line)}.principles li:last-child{border-bottom:1px solid var(--line)}.principles .spark{width:15px;height:15px;margin-top:9px}.principles h3{font-family:var(--display);font-weight:600;font-size:clamp(22px,2.2vw,28px);line-height:1.15;letter-spacing:-.02em}.principles p{grid-column:2;color:var(--slate);max-width:52ch}.spec{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:clamp(64px,8vw,112px);border-top:1.5px solid var(--ink)}.spec>div{display:grid;gap:6px;align-content:start;padding:18px 16px 0 0}.spec dt{font-family:var(--mono);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--faint)}.spec dd{font-weight:600;font-size:16px;font-variant-numeric:tabular-nums}.spec dd a{text-underline-offset:3px}.contact,.contact-card{--c-fg: var(--ink);--c-muted: var(--slate);--c-line: var(--line)}.contact{--c-fg: var(--on-navy);--c-muted: var(--on-navy-2);--c-line: var(--navy-line);background:var(--navy);color:var(--c-fg);padding-block:clamp(80px,9vw,128px) clamp(48px,5vw,64px);border-radius:var(--radius-room) var(--radius-room) 0 0}.contact .eyebrow{color:var(--c-muted)}.contact .eyebrow .spark{color:var(--c-fg)}.contact-main{display:grid;gap:28px;justify-items:start;margin-top:26px}.contact-email{font-family:var(--display);font-optical-sizing:auto;font-weight:700;font-size:clamp(30px,8.2vw,116px);line-height:1;letter-spacing:-.045em;color:var(--c-fg);text-decoration:none;overflow-wrap:anywhere;padding-bottom:.08em;background:linear-gradient(currentColor,currentColor) 0 100% / 0 3px no-repeat;transition:background-size .45s var(--ease-out)}.contact-email:hover{background-size:100% 3px}.contact-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}.copy-btn{display:inline-flex;align-items:center;gap:9px;height:46px;padding-inline:18px;border-radius:999px;border:1px solid var(--c-line);background:transparent;color:var(--c-fg);font-weight:600;font-size:15px;cursor:pointer;transition:border-color .2s}.copy-btn:hover{border-color:var(--c-fg)}.copy-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}.contact-note{color:var(--c-muted)}.routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(64px,8vw,96px);border-top:1px solid var(--c-line)}.route{display:grid;gap:10px;align-content:start;padding:26px 28px 0 0}.route h2,.route h3{font-family:var(--display);font-weight:600;font-size:21px;letter-spacing:-.015em;line-height:1.2}.route p{color:var(--c-muted);font-size:15.5px;max-width:34ch}.route a{justify-self:start;font-weight:600;font-size:15.5px;text-decoration:none;border-bottom:1.5px solid var(--c-line);padding-bottom:2px;transition:border-color .2s}.route a:hover{border-bottom-color:currentColor}.footer{background:var(--navy);color:var(--on-navy-2);padding-block:8px 40px;font-size:14.5px}.footer.is-standalone{margin-top:var(--section);padding-top:64px;border-radius:var(--radius-room) var(--radius-room) 0 0}.footer-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:40px 64px;padding-block:48px;border-top:1px solid var(--navy-line);border-bottom:1px solid var(--navy-line)}.footer.is-standalone .footer-top{border-top:0;padding-top:0}.footer-brand{display:grid;gap:14px;align-content:start}.footer-brand .wordmark{color:var(--on-navy);font-size:19px}.footer-brand p{display:flex;align-items:center;gap:9px;color:var(--on-navy-2)}.footer-brand .spark{width:12px;height:12px;color:var(--on-navy)}.footer-cols{display:grid;grid-template-columns:repeat(3,auto);gap:32px clamp(40px,6vw,88px)}.footer-cols h2{font-family:var(--mono);font-size:11.5px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--on-navy);margin-bottom:14px}.footer-cols li+li{margin-top:7px}.footer a{text-decoration:none;color:var(--on-navy-2);transition:color .2s}.footer a:hover{color:var(--on-navy)}.legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 32px;padding-top:28px;font-size:13px;color:var(--on-navy-3)}.page{padding-top:clamp(56px,8vw,112px)}.page h1{font-size:clamp(46px,7vw,96px)}.page-head{display:grid;gap:24px;justify-items:start;max-width:900px;margin-bottom:clamp(44px,6vw,72px)}.contact-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-room);padding:clamp(28px,5vw,64px)}.contact-card .contact-main{margin-top:0}.contact-card .contact-email{font-size:clamp(28px,6.4vw,88px)}.contact-card .routes{margin-top:clamp(48px,6vw,72px)}.company{margin-top:clamp(64px,8vw,104px)}.company h2{font-family:var(--display);font-weight:700;font-size:clamp(28px,3vw,36px);letter-spacing:-.03em}.company .spec{margin-top:22px;grid-template-columns:repeat(3,minmax(0,1fr));row-gap:26px}.company .span-2{grid-column:span 2}.prose{max-width:680px}.prose h2{font-family:var(--display);font-weight:600;font-size:25px;letter-spacing:-.02em;line-height:1.2;margin:48px 0 12px}.prose h2:first-child{margin-top:0}.prose p,.prose ul{color:var(--slate);margin-bottom:14px}.prose ul{list-style:disc;padding-left:1.2em}.prose li+li{margin-top:4px}.prose a{color:var(--ink);font-weight:600;text-underline-offset:3px;text-decoration-thickness:1.5px}.not-found .page-head{min-height:42vh;align-content:center}@media(min-width:901px){.shelf{--size: min(12vw, 160px)}}@media(max-width:900px){.hero-grid{grid-template-columns:minmax(0,1fr)}.shelf{margin-top:8px}.room{grid-template-columns:minmax(0,1fr);min-height:0}.room:nth-child(2n) .room-copy{order:0}.room-copy{padding-bottom:8px}.room-stage{--w: min(54vw, 250px);height:calc(var(--w) * 1.72);min-height:0}.phone{top:28px}.phone-left,.phone-right{top:64px}.studio-grid{grid-template-columns:minmax(0,1fr)}.studio-head{position:static}.spec{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:24px}.routes{grid-template-columns:minmax(0,1fr)}.route{padding:24px 0;border-bottom:1px solid var(--c-line)}.route:last-child{border-bottom:0;padding-bottom:0}.footer-cols{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}}@media(max-width:560px){body{font-size:16px}.nav-links{gap:18px;font-size:14.5px}.wordmark{font-size:16px}.spec,.company .spec{grid-template-columns:repeat(2,minmax(0,1fr))}.company .span-2{grid-column:span 2}.footer-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.legal{flex-direction:column}.room-meta{font-size:11px;gap:6px 16px}.room-meta li+li:before{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
