:root{--ink:#1d1d1f;--gray:#6e6e73;--line:#dedee1;--background:#fafafa;--sans:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:28px}
body{margin:0;background:var(--background);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{touch-action:manipulation}
a:focus-visible,button:focus-visible{outline:2px solid #0071e3;outline-offset:6px}
.download-status a,dialog p a{color:#0066cc;text-decoration:underline;text-underline-offset:3px}
.shell{width:calc(100% - 96px);max-width:1120px;margin-inline:auto}
.skip{position:fixed;top:-70px;left:20px;padding:12px;background:var(--ink);color:#fff;z-index:100}.skip:focus{top:10px}
.nav{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e9e9eb}
.brand{display:flex;flex-direction:column;gap:5px;font-size:25px;font-weight:600;letter-spacing:-1px;line-height:1}.brand small{font-size:8px;font-weight:500;letter-spacing:2.6px;color:var(--gray)}.brand-dot{margin-left:1px;color:#8e8e93}
.nav nav{display:flex;align-items:center;gap:31px;font-size:12px}.nav nav>a:first-child{color:var(--gray)}.nav nav>a:hover{color:#0071e3}
.nav-download{border:1px solid #c8c8cc;border-radius:30px;padding:8px 15px}.nav-download span{margin-left:9px}
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:600}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.8px;color:#818186;margin:0 0 22px}
.hero{padding-top:83px}.hero-copy{text-align:center}h1{font-size:clamp(72px,8.35vw,118px);line-height:.985;letter-spacing:-.065em;margin:0 auto 26px;max-width:1000px}
.hero-subtitle{font-size:21px;line-height:1.45;letter-spacing:-.5px;color:var(--gray);margin-bottom:29px}
.download-actions{display:flex;justify-content:center;align-items:center;gap:26px;scroll-margin-top:80px}
.button{border:1px solid transparent;border-radius:40px;min-height:45px;padding:13px 23px;font-size:13px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:23px;transition:background .2s,transform .2s}
.button span{font-size:17px;line-height:1}.primary{background:var(--ink);color:white}.primary:hover{background:#3b3b3d;transform:translateY(-1px)}
.secondary{font-size:13px;color:#0071e3;letter-spacing:-.1px}.secondary span{margin-left:6px}.secondary:hover,.story-link:hover{text-decoration:underline;text-underline-offset:4px}
.compatibility{font-size:10px;color:#818186;margin:18px 0 0;letter-spacing:.05px}.compatibility span{margin:0 7px}
.download-status{font-size:10px;color:#818186;margin:7px 0 0;min-height:15px}
.product-stage{margin-top:59px;max-width:1000px;padding-bottom:28px}
.app-capture{padding:12px;background:#000;border:1px solid #242426;border-radius:16px;overflow:hidden;box-shadow:0 35px 65px -33px #0007,0 7px 14px -7px #0006}
.app-capture img{width:100%;height:auto;display:block;image-rendering:pixelated}
.product-stage figcaption{text-align:center;color:#78787d;font-size:10px;line-height:1.6;margin:28px 0 0}.product-stage figcaption span{color:#9a9a9e;margin-left:5px}
.essentials{max-width:1000px;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:53px 0 62px;border-bottom:1px solid var(--line)}
.keyboard-layouts{grid-column:1/-1;font-size:12px;line-height:1.8;color:var(--gray);margin:0}.keyboard-layouts strong{font-weight:500;color:var(--ink);margin-right:8px}
.essentials h2{font-size:23px;letter-spacing:-.9px;line-height:1.15;margin-bottom:14px}.essentials p{font-size:12px;line-height:1.6;color:var(--gray);margin-bottom:0}
.idea{max-width:1000px;display:flex;align-items:center;gap:63px;padding:65px 0;border-bottom:1px solid var(--line)}
.roth-image{position:relative;width:270px;height:245px;flex-shrink:0;border-radius:7px;overflow:hidden;background:#e8e8ed;display:block}
.roth-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:77% center;filter:grayscale(1);transition:transform .6s}.roth-image:hover img{transform:scale(1.025)}
.roth-image>span{position:absolute;right:15px;bottom:12px;color:white;font-size:22px}.idea-copy{max-width:500px}.idea .eyebrow{font-size:9px;margin-bottom:17px}
.idea h2{font-size:41px;line-height:1.04;letter-spacing:-1.9px;margin-bottom:19px}.idea-copy>p:not(.eyebrow){color:var(--gray);font-size:12px;line-height:1.7;margin-bottom:17px;max-width:435px}
.story-link{color:#0071e3;font-size:11px}.story-link span{margin-left:5px}
.support{max-width:1000px;display:flex;align-items:center;justify-content:space-between;padding:64px 0 66px}.support .eyebrow{font-size:9px;margin-bottom:17px}
.support h2{font-size:37px;line-height:1.1;letter-spacing:-1.6px;margin-bottom:0}.support-action{text-align:center;margin-right:3px}.donate{background:transparent;border-color:#c7c7cc;min-width:140px;font-size:12px}.donate:hover{background:#eeeef0}.support-action p{font-size:9px;color:#8e8e93;margin:12px 0 0}
.footer{height:75px;border-top:1px solid #e4e4e7;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;color:#8e8e93}.footer>div{display:flex;align-items:center;gap:22px}.footer a:hover,.footer-link:hover{color:var(--ink)}.footer-link{border:0;background:none;padding:0;font:inherit;color:inherit}
dialog{max-width:510px;width:calc(100% - 36px);border:1px solid #e4e4e7;border-radius:22px;background:#fafafa;padding:47px 36px 32px;color:var(--ink);max-height:85vh;overflow:auto}
dialog::backdrop{background:#0007;backdrop-filter:blur(8px)}dialog h2{font-size:37px;line-height:1.1;letter-spacing:-1.8px;margin-bottom:23px}dialog h3{font-size:15px;margin:23px 0 8px}dialog>p:not(.eyebrow){font-size:13px;line-height:1.7;color:var(--gray)}dialog .button{width:100%;margin-top:16px}dialog .eyebrow{font-size:9px;margin-bottom:20px}dialog .dialog-small{font-size:11px!important}.dialog-close{position:absolute;right:16px;top:10px;border:0;background:none;font-size:24px;color:#86868b;padding:4px 8px}.noscript{font-size:12px;padding-bottom:30px;color:var(--gray)}
.credits{max-width:700px;margin:70px auto;padding:0 25px}.credits h1{font-size:60px;line-height:1.02;letter-spacing:-3px;margin:35px 0}.credits h2{font-size:25px;letter-spacing:-1px;margin:35px 0 14px}.credits p,.credits li{font-size:13px;color:var(--gray);line-height:1.8}.credits li{margin-bottom:14px}.credits a{color:#0071e3}.credits>a{font-size:12px}
@media(min-width:1500px){.hero{padding-top:102px}}
@media(max-width:1000px){h1{font-size:94px}.product-stage{width:calc(100% - 60px)}.essentials,.idea,.support{width:calc(100% - 96px)}.idea{gap:40px}.roth-image{width:240px;height:240px}}
@media(max-width:700px){.shell{width:calc(100% - 42px)}.nav{height:67px}.brand{font-size:21px}.brand small{font-size:7px;letter-spacing:2px}.nav nav{gap:20px;font-size:10px}.nav-download{padding:7px 11px}.hero{padding-top:65px}.eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:21px}h1{font-size:67px;letter-spacing:-4.2px;line-height:1.01;margin-bottom:24px}.hero-subtitle{font-size:16px;letter-spacing:-.4px;max-width:260px;margin:0 auto 25px}.download-actions{gap:20px}.button{font-size:11px;min-height:42px;padding:12px 17px;gap:13px}.secondary{font-size:11px}.compatibility{font-size:9px;margin-top:19px}.download-status{font-size:9px;margin-top:7px}.product-stage{width:calc(100% - 28px);margin-top:46px;padding-bottom:12px}.app-capture{padding:7px;border-radius:10px;box-shadow:0 25px 36px -25px #0008}.product-stage figcaption{font-size:9px;margin-top:22px}.product-stage figcaption span{display:block;margin:4px 0 0;font-size:8px}.essentials{width:calc(100% - 50px);display:flex;flex-direction:column;gap:26px;padding:39px 0 43px}.essentials>div{display:flex;align-items:flex-start;gap:22px}.essentials h2{font-size:20px;letter-spacing:-.6px;line-height:1.13;width:45%;flex-shrink:0;margin:0}.essentials p{font-size:11px;line-height:1.7;padding-top:1px}.essentials p br{display:none}.idea{width:calc(100% - 50px);gap:25px;padding:42px 0;align-items:flex-start}.roth-image{width:105px;height:143px;border-radius:5px;margin-top:28px;align-self:center}.roth-image img{object-position:78% center}.roth-image>span{font-size:18px;bottom:8px;right:8px}.idea .eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:13px}.idea h2{font-size:29px;letter-spacing:-1.4px;margin-bottom:14px}.idea-copy>p:not(.eyebrow){font-size:11px;line-height:1.7;margin-bottom:12px}.story-link{font-size:9px}.support{width:calc(100% - 50px);padding:41px 0 43px;gap:20px}.support .eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:13px}.support h2{font-size:25px;letter-spacing:-1px}.support-action{flex-shrink:0;margin:0}.donate{min-width:99px;gap:12px;font-size:10px}.support-action p{font-size:7px;max-width:105px;line-height:1.5;margin-top:9px}.footer{height:auto;min-height:96px;flex-wrap:wrap;gap:15px;font-size:8px;padding:20px 0}.footer>div{order:3;width:100%;gap:20px}.footer>span:last-child{margin-left:auto}dialog{border-radius:17px;padding:43px 25px 26px}dialog h2{font-size:33px}.credits{margin-top:35px}.credits h1{font-size:46px;letter-spacing:-2px}.credits p,.credits li{font-size:12px}}
@media(max-width:360px){.nav a[href="#idea"]{display:none}.shell{width:calc(100% - 32px)}h1{font-size:61px;letter-spacing:-4px}.hero-subtitle{font-size:15px}.nav nav{gap:15px}.download-actions{gap:15px}.secondary{font-size:10px}.essentials{gap:14px}.essentials h2{font-size:14px}.idea{gap:18px}.roth-image{width:85px}.idea h2{font-size:26px}.support h2{font-size:22px}.donate{min-width:85px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
