:root{--ink:#201638;--muted:#665c76;--paper:#faf9f6;--violet:#6545aa;--line:#ded9e6;--aqua:#c6f1ed;--lavender:#e7dff5;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.6}img{display:block;width:100%;height:auto}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--violet);outline-offset:6px}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.skip-link{position:fixed;top:8px;left:8px;z-index:100;background:white;padding:12px;transform:translateY(-160%)}.skip-link:focus{transform:none}header{position:sticky;top:0;z-index:10;background:rgba(250,249,246,.96);border-bottom:1px solid var(--line)}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:90px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:22px;font-weight:750;letter-spacing:-.8px}.brand img{width:38px;height:38px}.header nav{display:flex;gap:28px;font-size:14px}.header nav a{text-decoration:none}.install-link{font-size:14px;font-weight:700;border-bottom:1px solid var(--ink);white-space:nowrap}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center;padding-block:64px 80px}.eyebrow{font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:750;color:var(--violet);margin:0 0 24px}h1,h2,h3,p,figure{margin:0}h1{font-size:clamp(64px,7.8vw,112px);line-height:.98;letter-spacing:-6px;font-weight:720}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--violet)}.lead{font-size:20px;line-height:1.65;max-width:500px;color:var(--muted);margin:30px 0}.store-badge{display:inline-block;padding:15px;margin-left:-15px}.store-badge img{width:180px;height:auto}.caption{font-size:12px;color:var(--muted);max-width:440px;margin-top:12px}.text-link{display:inline-block;margin-top:28px;font-size:14px;font-weight:700}.hero-art{max-width:400px;justify-self:center}.hero-art img{border-radius:160px 160px 24px 24px}.hero-art figcaption{text-align:center;font-size:12px;margin-top:16px;color:var(--muted)}.ribbon{border-block:1px solid var(--line);background:var(--aqua);padding:22px 30px;text-align:center;font-size:14px;font-weight:600}.ribbon p{display:flex;justify-content:center;gap:80px}.section{padding-block:100px}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:end;margin-bottom:48px}h2{font-size:clamp(36px,4.2vw,58px);line-height:1.07;letter-spacing:-2.5px;font-weight:650}.intro>p{color:var(--muted);font-size:18px;max-width:440px}.intro small{display:block;font-size:12px;margin-top:16px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.steps article{border-top:1px solid var(--line);padding-top:24px}.number{color:var(--violet);font-size:12px;letter-spacing:1px}.steps h3{font-size:27px;letter-spacing:-1px;margin:16px 0 12px}.steps p{color:var(--muted);font-size:16px}.steps a{display:inline-block;font-size:13px;font-weight:600;margin-top:24px}.preview{background:#f0ecf5}.phone-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.phone-gallery img{border-radius:16px}.phone-gallery figcaption,.art-gallery figcaption{padding:20px 4px}.phone-gallery h3,.art-gallery h3{font-size:19px;letter-spacing:-.5px}.phone-gallery p,.art-gallery p{font-size:13px;color:var(--muted);margin-top:5px}.screen-picker{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.screen-picker button{background:transparent;border:1px solid var(--line);padding:10px 24px;border-radius:30px;color:var(--ink)}.screen-picker button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.desktop-shot img{border:1px solid var(--line);border-radius:16px}.desktop-shot figcaption{margin-top:14px;font-size:12px;color:var(--muted)}.film-section{background:var(--ink);color:var(--paper)}.film-section .eyebrow{color:var(--aqua)}.film-section .intro>p,.film-section .caption{color:#d6cfe2}.video{aspect-ratio:16/9;position:relative;background:#fff;border-radius:16px;overflow:hidden}.video button{display:block;width:100%;height:100%;border:0;padding:0;background:transparent;position:relative}.video img{width:100%;height:100%;object-fit:cover}.play-label{position:absolute;bottom:32px;left:32px;display:flex;gap:16px;align-items:center;background:var(--ink);color:#fff;border-radius:40px;padding:18px 26px;font-size:16px}.video iframe{width:100%;height:100%;border:0}.art-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.art-gallery img{border-radius:16px}.more-art{margin-top:40px;border-top:1px solid var(--line);padding-top:20px}.archive-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px}.archive-gallery img{border-radius:12px}.archive-gallery figcaption{font-size:12px;color:var(--muted);margin-top:12px}.closing{background:var(--aqua) url('/assets/img/relaunch/genjutsu-reference.webp') center/cover;text-align:center}.closing h2{font-size:clamp(50px,6vw,85px);letter-spacing:-4px}.closing p:not(.eyebrow){margin-top:24px;color:var(--muted)}.download-button{display:inline-block;background:var(--ink);color:white;border-radius:32px;padding:18px 30px;margin-top:28px;text-decoration:none;font-weight:600;font-size:14px}.from-the-blog .blog-teasers{list-style:none;padding:0;margin:0;display:grid;gap:0;max-width:850px}.from-the-blog .blog-teasers li{border-top:1px solid var(--line);padding:18px 0}.from-the-blog .blog-teasers a{font-weight:600;text-decoration:none}.from-the-blog .blog-teasers a:hover{text-decoration:underline}
.faq{max-width:850px}.faq h2{margin-bottom:40px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;font-weight:600}.faq details p{margin-top:16px;color:var(--muted)}footer{border-top:1px solid var(--line);padding-block:42px}.footer-links{display:flex;flex-wrap:wrap;gap:24px;font-size:13px;margin-top:24px}footer .caption{max-width:none;margin-top:28px}@media(max-width:900px){.wrap{width:calc(100% - 40px)}.header nav{gap:16px}.header nav a:first-child{display:none}.hero{gap:32px}h1{letter-spacing:-4px}.intro{gap:32px}.phone-gallery{grid-template-columns:repeat(2,1fr)}.steps{gap:24px}.ribbon p{gap:30px}.art-gallery{gap:20px}.section{padding-block:72px}}@media(max-width:600px){.header{min-height:76px;gap:12px}.header nav{display:none}.hero{grid-template-columns:1fr;padding-block:48px;gap:36px}.hero-copy{max-width:440px}h1{font-size:76px}.lead{font-size:18px;margin:24px 0}.hero-art{max-width:300px}.ribbon p{display:block}.ribbon span{display:block;margin-top:8px}.intro{grid-template-columns:1fr;gap:24px;margin-bottom:32px}.intro>p{font-size:16px}.steps{grid-template-columns:1fr;gap:32px}.phone-gallery{gap:16px}.phone-gallery h3{font-size:16px}.art-gallery{grid-template-columns:1fr;gap:24px}.art-gallery figure{max-width:380px;margin:auto}.archive-gallery{grid-template-columns:1fr}.play-label{left:16px;bottom:16px;padding:12px 16px;font-size:12px}.screen-picker button{padding:8px 16px;font-size:13px}.section{padding-block:60px}.closing h2{letter-spacing:-2px}.brand{font-size:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Keep the install action visible in common laptop viewports. */
@media(min-width:901px){.hero{padding-block:40px 56px}.hero-art{max-width:300px}}
.duo-section{background:var(--lavender)}
.duo-gallery{display:grid;gap:32px}
.duo-gallery img{width:100%;max-width:100%;height:auto;border-radius:16px}
.duo-gallery figcaption{margin-top:12px;font-size:13px;color:var(--muted)}
.duo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:end;justify-items:center}
.duo-pair figure{width:100%;max-width:420px}
.duo-section .caption{max-width:none;margin-top:28px}
@media(max-width:600px){
  .duo-pair{grid-template-columns:minmax(0,1fr);justify-items:center}
  .duo-pair figure{max-width:280px}
}

/* Keep Blog findable in the mobile header; Compare lives in the footer. */
@media (max-width: 600px) {
  .header nav {
    display: flex;
    gap: 14px;
  }
  .header nav a {
    display: none;
  }
  .header nav a[href="/blog/"] {
    display: inline;
  }
}
.switching-apps {
  padding-block: 56px;
  border-top: 1px solid var(--line);
}
.switching-apps .text-link {
  margin-top: 0;
}
.from-the-blog .text-link {
  margin-top: 8px;
}
