@font-face {
  font-family: 'Foldtype Typewriter';
  src: url('images/fonts/special-elite.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Foldtype Courier';
  src: url('images/fonts/courier-prime.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/* Foldtype adaptation of the Foldleaf product-page template.
   Foldleaf's sticky bar, sections, galleries and document layouts are retained. */
:root{--paper:#f5f1e8;--ink:#292820;--muted:#6e695f;--leaf:#51473c;--line:#d9d1c4;--card:#fffdf7;--serif:Georgia,'Times New Roman',serif;--mono:'Courier New',Courier,monospace;color-scheme:light}
@media(prefers-color-scheme:dark){:root{--paper:#f5f1e8;--ink:#292820;--muted:#6e695f;--leaf:#51473c;--line:#d9d1c4;--card:#fffdf7}}
html{scroll-behavior:smooth}body{font-size:16px}.home{overflow-x:clip}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--leaf);outline-offset:5px}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:16px;padding:10px 18px;background:var(--ink);color:var(--paper);z-index:20}.skip-link:focus{top:8px}.topbar .inner{height:64px}.brand{font-family:var(--serif);font-size:24px;letter-spacing:-1px}.brand img{border-radius:6px}.brand-stop{color:var(--leaf)}.topbar nav{font-size:12px}.pill,.button{border-radius:3px;background:var(--ink);color:var(--paper)}.topbar nav a.pill{color:var(--paper)}.button{font-weight:500;padding:14px 25px;font-size:13px}.button span{margin-left:30px}.pill{font-size:11px;padding:6px 13px}.button:hover,.pill:hover{background:var(--leaf)}.more{font-family:var(--mono);font-size:11px;letter-spacing:.3px}.hero{padding-top:68px}.hero .eyebrow{margin-bottom:26px}.hero .icon{width:92px;height:92px;border-radius:20px;box-shadow:0 12px 30px -15px #29282050}.hero h1{font-family:var(--serif);font-weight:normal;font-size:clamp(68px,10vw,128px);letter-spacing:-7px;margin:22px 0 13px}.hero .tagline{font-family:var(--serif);font-size:clamp(28px,4vw,46px);font-weight:normal;line-height:1.12;letter-spacing:-1.5px;color:var(--ink)}em{font-family:var(--serif);color:var(--leaf);font-weight:normal}.hero-intro{font-size:14px;line-height:1.75;color:var(--muted);margin:22px auto 0}.eyebrow{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:2px;font-weight:normal}.head h2,.finale h2,.doc-head h1{font-family:var(--serif);font-weight:normal;letter-spacing:-2.7px}.head h2{font-size:clamp(42px,5.5vw,68px);line-height:1.08}.head p.lead{font-size:16px;line-height:1.7;max-width:520px;margin-inline:auto}.stage{margin-top:65px}.typewriter-scene{background:#e8e1d4;position:relative;overflow:hidden;padding:25px 5% 30px;border:1px solid #ded5c6;min-height:650px}.scene-label,.scene-caption,.sheet-heading,.sheet-date,.sheet-signature{font-family:var(--mono);font-size:9px}.scene-label{display:flex;justify-content:space-between;letter-spacing:1.5px;color:#706757}.sheet-stack{position:relative;width:60%;max-width:520px;margin:40px auto -5px;transform:rotate(-4deg);z-index:1}.sheet-stack::before{content:'';position:absolute;inset:7px -7px -5px 5px;transform:rotate(2deg);background:#e1dacb}.typewriter-sheet{position:relative;text-align:left;background:#fffdf7;padding:28px 35px 30px;box-shadow:0 12px 30px #29282014}.sheet-heading{display:flex;justify-content:space-between;letter-spacing:1px;padding-bottom:15px;border-bottom:1px solid #ddd4c4;color:#706757}.sheet-date{margin:22px 0 20px;color:#81796d}.typed-lines{font-family:var(--mono);font-size:clamp(19px,2.8vw,30px);line-height:1.5;letter-spacing:-1.5px;margin:0}.typed-lines em{font-family:inherit;font-style:normal}.sheet-signature{color:#81796d;margin:27px 0 0}.type-cursor{color:var(--leaf);animation:blink 1.3s steps(1) infinite}@keyframes blink{50%{opacity:0}}.typewriter-body{width:72%;max-width:650px;margin:auto;padding:0 30px 24px;position:relative;z-index:2;transform:rotate(2deg);background:linear-gradient(140deg,#454239,#23231e);border:1px solid #33332a;border-bottom:9px solid #1d1d18;border-radius:12px 12px 28px 28px;box-shadow:0 30px 35px -18px #29282066}.carriage{display:flex;align-items:center;gap:8px;transform:translateY(-4px)}.carriage span{width:16px;height:17px;background:#1b1c17;border-radius:4px}.carriage b{height:9px;background:#928b7c;box-shadow:inset 0 3px #b7ae9d;flex:1;border-radius:3px}.typewriter-name{font-family:var(--mono);font-size:8px;letter-spacing:2px;color:#bbb3a2;margin:8px 0 18px}.key-row{display:flex;justify-content:center;gap:10px;margin-top:9px}.key-row span{display:grid;place-items:center;flex:0 1 39px;min-width:0;height:32px;border-radius:50%;background:#e7e0d2;color:#454033;border:2px solid #8b8475;box-shadow:0 3px #14140f;font-family:var(--mono);font-size:11px}.key-row .space-key{flex:0 1 200px;height:19px;border-radius:4px;margin-top:6px}.scene-caption{font-size:9px;color:#706757;margin:35px 0 0}.statement{font-family:var(--serif);font-size:clamp(30px,4.5vw,54px);font-weight:normal;letter-spacing:-1.6px;line-height:1.2;max-width:1000px;padding:125px 22px}.js .statement .w{opacity:.25}.js .statement .w.lit{opacity:1}.section{padding-block:90px}.writing-showcase{margin:0;background:#443f37;padding:27px 35px 22px;color:#e8e2d6;position:relative}.desk-toolbar{display:flex;justify-content:space-between;font-family:var(--mono);font-size:9px;letter-spacing:1px}.desk-toolbar>span:last-child{opacity:.75;font-size:8px}.desk-layout{display:grid;grid-template-columns:.6fr 1fr;align-items:center;gap:45px;padding:45px 12% 30px 6%}.desk-layout aside{text-align:left;font-family:var(--mono);font-size:10px;letter-spacing:2px;line-height:1.8;display:flex;flex-direction:column;align-items:flex-start;gap:25px}.desk-letter{font-family:var(--serif);font-size:80px;letter-spacing:-5px;line-height:1}.desk-layout aside p{color:#dbd5c9;margin:0}.desk-layout aside em{color:#dbd5c9;font-size:21px;letter-spacing:0;line-height:1.3}.desk-rule{width:65px;border-top:1px solid #dad5c84d}.desk-paper{text-align:left;background:#fffdf5;color:#292820;transform:rotate(2deg);padding:40px 44px;box-shadow:9px 9px #00000012}.paper-kicker{font-family:var(--mono);font-size:9px;color:#81796d!important;margin:0 0 32px}.desk-paper h3{font-family:var(--serif);font-size:47px;font-weight:normal;line-height:1.05;letter-spacing:-2px;margin:0 0 26px}.desk-paper>p:not(.paper-kicker){font-family:var(--mono);font-size:11px;color:#484338;line-height:1.9;max-width:280px;margin-bottom:16px}.paper-signature{display:block;font-family:var(--serif);font-style:italic;font-size:17px;margin-top:32px}.writing-showcase figcaption{font-family:var(--mono);font-size:9px;text-align:center;color:#e8e2d6;margin-top:18px}.motion-section{padding-top:50px}.motion-frame{aspect-ratio:16/8;background:#4d463c;color:#f9ecda;padding:30px 35px;display:flex;flex-direction:column;overflow:hidden;position:relative}.film-header,.film-footer{font-family:var(--mono);font-size:9px;letter-spacing:1.5px;display:flex;justify-content:space-between;z-index:1}.film-footer{margin-top:auto;border-top:1px solid #f9ecda55;padding-top:17px}.film-letter{font-family:var(--serif);font-size:clamp(150px,27vw,370px);letter-spacing:-25px;position:absolute;line-height:1;left:50%;top:43%;transform:translate(-50%,-50%) rotate(-10deg);color:#f1e3cf}.band{background:#292a23;color:#f5f1e8;padding-bottom:75px}.band .eyebrow{color:#ddab8e}.band .head p.lead{color:#c3bdaf}.band h2{color:#f5f1e8}.band .gallery-intro{padding-bottom:0}.band .head{margin-bottom:40px}.gallery.wide>*{flex-basis:min(82vw,660px)}.gallery-placeholder{background:#e9e1d2;color:#292820;aspect-ratio:4/3;padding:30px 35px;display:flex;flex-direction:column}.gallery-placeholder.alternate{background:#c0b199;color:#292820}.gallery-placeholder.third{background:#615c4e;color:#f9efdf}.placeholder-index,.placeholder-foot{font-family:var(--mono);font-size:9px;letter-spacing:1px}.placeholder-foot{margin-top:auto;opacity:.85}.gallery-placeholder>p{font-family:var(--serif);font-size:clamp(32px,4.5vw,63px);letter-spacing:-2px;line-height:1.05;color:inherit;margin:40px 0}.gallery-placeholder.alternate em,.gallery-placeholder.third em{color:inherit}.gallery figcaption{color:#c7c0b0;font-family:var(--mono);font-size:10px;margin-top:18px}.gallery:focus-visible{outline-offset:-5px}.band .paddles button{width:44px;height:44px}.duo-placeholder{background:#e8e1d4;border:1px solid #ded5c6;padding:30px 35px;min-height:370px;display:flex;flex-direction:column;gap:40px}.fold-lines{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:230px}.fold-lines span{font-family:var(--serif);font-size:clamp(25px,5vw,65px);display:grid;place-items:center;letter-spacing:-2px;background:#f8f4eb;box-shadow:0 10px 20px #2928200d}.fold-lines span:first-child{border-right:1px solid #c9bfab;transform:perspective(1000px) rotateY(-7deg);transform-origin:right}.fold-lines span:last-child{color:var(--leaf);transform:perspective(1000px) rotateY(7deg);transform-origin:left}.finale{padding-top:65px;padding-bottom:110px}.finale h2{font-size:clamp(42px,5.7vw,72px);letter-spacing:-2.8px}.finale p:not(.eyebrow){font-size:15px;line-height:1.65}.finale .icon{width:72px;height:72px;border-radius:15px}.finale .eyebrow{margin-bottom:18px}.release-note{font-family:var(--mono);font-size:10px;color:var(--muted)}.home-footer{font-family:var(--mono);font-size:10px;gap:20px;padding-bottom:40px}.home-footer nav{font-size:10px;flex-wrap:wrap;gap:20px}.home-footer nav a{margin:0}.doc-head{padding-top:85px}.doc-head h1{font-size:clamp(46px,7vw,76px)}.doc-head .lede{font-family:var(--serif);font-size:24px;line-height:1.45;max-width:550px}.doc-body h2{font-family:var(--serif);font-weight:normal;font-size:30px;letter-spacing:-.8px}.doc-body p,.doc-body li{font-size:15px}.doc-body .contact{border-radius:4px;padding:30px}.doc-body .contact-label{font-family:var(--mono);font-size:10px;letter-spacing:1px;text-transform:uppercase}.doc-body .contact-address{font-family:var(--serif);font-weight:normal}.doc-body .contact p.muted{font-size:13px}.draft-notice{border-left:2px solid var(--leaf);padding:16px 20px;background:#e9e1d5;font-family:var(--mono);font-size:11px!important;line-height:1.8}.doc-body a.button{color:var(--paper)}.doc-body a.button:hover{background:var(--leaf)}.doc-body .questions{margin-top:35px}.doc-body details.q summary{font-size:15px;font-weight:500}.doc-body details.q>p{font-size:14px;color:var(--muted)}.doc-body .facts-list>div{grid-template-columns:8rem 1fr;font-size:14px}.press-logo-placeholder{display:flex;gap:28px;align-items:center;margin-top:30px}.press-logo-placeholder img{width:90px;border-radius:18px}.press-logo-placeholder p{color:var(--muted);font-size:13px}.media-image{display:block;width:100%;height:auto;max-height:900px;object-fit:contain}.media-video{width:100%;display:block;max-height:700px;background:#292820}.motion-frame.has-media,.typewriter-scene.has-media{padding:0;min-height:0;aspect-ratio:auto;background:transparent;border:0}.writing-showcase.has-media{padding:0;background:transparent}.writing-showcase.has-media figcaption{color:var(--muted)}.gallery figure.has-media img{aspect-ratio:4/3;object-fit:contain;background:#eee7db}.duo-placeholder.has-media{display:block;padding:0;background:transparent;min-height:0;border:0}
@media(prefers-color-scheme:dark){.pill,.button,.doc-body a.button,.topbar nav a.pill{color:var(--paper)}.band{background:#292a23}}
@media(max-width:780px){.hero{padding-top:45px}.hero h1{letter-spacing:-4px}.stage{padding:0;margin-top:45px}.typewriter-scene{min-height:0;padding:20px 18px 25px}.sheet-stack{width:74%;margin-top:35px}.typewriter-sheet{padding:24px}.typed-lines{font-size:22px}.typewriter-body{width:90%;padding-inline:24px}.key-row{gap:8px}.key-row span{height:30px}.statement{padding-block:80px}.section{padding-block:65px}.head{margin-bottom:35px}.desk-layout{padding:35px 2% 20px 0;gap:20px}.desk-paper{padding:35px 28px}.desk-paper h3{font-size:40px}.writing-showcase{padding:20px 24px}.desk-letter{font-size:65px}.desk-layout aside{font-size:8px;letter-spacing:1px}.desk-layout aside em{font-size:18px}.motion-frame{aspect-ratio:4/3;padding:25px}.film-letter{font-size:250px;letter-spacing:-20px}.duo-placeholder{min-height:300px;padding:24px}.fold-lines{min-height:170px}.finale{padding-bottom:85px}}
@media(max-width:480px){.brand span{display:inline}.brand{font-size:22px}.brand img{display:none}.topbar .inner{height:58px;padding-inline:18px;gap:10px}.topbar nav{gap:16px}.topbar nav a{font-size:11px}.hero .icon{width:76px;height:76px;border-radius:16px}.hero h1{font-size:77px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px}.hero .tagline{font-size:33px}.hero-intro{font-size:13px}.actions{gap:15px 22px}.sheet-stack{width:86%}.typewriter-sheet{padding:22px 20px 25px}.sheet-heading{font-size:7px}.sheet-date{font-size:8px}.typed-lines{font-size:20px;letter-spacing:-1px}.sheet-signature{font-size:8px;margin-top:22px}.typewriter-body{width:100%;padding:0 15px 18px;border-bottom-width:6px;border-radius:9px 9px 20px 20px}.key-row{gap:6px;margin-top:7px}.key-row span{height:24px;font-size:9px;flex-basis:25px}.key-row .space-key{flex-basis:140px;height:14px}.typewriter-name{font-size:6px;margin-bottom:12px}.scene-label{font-size:7px}.scene-caption{font-size:8px;max-width:240px;margin-inline:auto;line-height:1.8}.head h2{font-size:44px;letter-spacing:-2px}.head p.lead{font-size:14px}.statement{font-size:32px;letter-spacing:-1px}.desk-layout{grid-template-columns:1fr;padding:28px 0 10px}.desk-layout aside{display:none}.desk-toolbar{font-size:7px;gap:14px;letter-spacing:.5px}.desk-toolbar>span:last-child{font-size:7px;text-align:right}.writing-showcase{padding:20px 17px}.desk-paper{padding:33px 25px}.writing-showcase figcaption{font-size:8px;line-height:1.8}.motion-frame{padding:20px}.film-header,.film-footer{font-size:8px;letter-spacing:.8px}.film-letter{font-size:180px;letter-spacing:-16px}.gallery-placeholder{padding:24px;aspect-ratio:1.1}.gallery-placeholder>p{font-size:40px;margin:35px 0}.placeholder-index,.placeholder-foot{font-size:8px}.gallery figcaption{font-size:9px}.duo-placeholder{padding:22px 18px;gap:30px;min-height:280px}.fold-lines span{letter-spacing:-1px;font-size:31px}.finale h2{font-size:43px}.finale .actions{flex-direction:column}.home-footer{padding-top:23px}.doc-head .lede{font-size:22px}.doc-body{padding-top:25px}.doc-body .facts-list>div{grid-template-columns:1fr}.press-logo-placeholder{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.typewriter-scene{transform:none!important}}

/* Real brand artwork, with full-image framing and readable space around it. */
.brand-banner{display:block;width:100%;height:auto!important;border-radius:0!important;box-shadow:none!important;transform:none!important}
.hero h1{font-family:var(--mono);font-weight:700;letter-spacing:-7px}
.finale{position:relative;isolation:isolate;overflow:hidden}
.finale::before{content:'';position:absolute;inset:0 0 0 65%;z-index:-1;background:url('images/type-scatter-800.webp') center / cover no-repeat;opacity:.16;mask-image:linear-gradient(to right,transparent,#000 65%);-webkit-mask-image:linear-gradient(to right,transparent,#000 65%)}
@media(max-width:480px){.hero h1{font-size:67px;letter-spacing:-6px}.finale::before{left:50%;opacity:.09}}

/* The app's own typewriter faces, with paper grain over the existing colour. */
:root {
  --typewriter: 'Foldtype Typewriter', 'American Typewriter', 'Courier New', monospace;
  --serif: var(--typewriter);
  --mono: 'Foldtype Courier', 'Courier New', monospace;
}
body {
  font-family: var(--mono);
  background-color: var(--paper);
  background-image: url('images/paper-grain.svg'),
    repeating-linear-gradient(0deg, #68523a03 0, #68523a03 1px, transparent 1px, transparent 4px);
  background-size: 240px 240px, 100% 4px;
  background-blend-mode: soft-light, multiply;
}
.brand { font-weight: 400; }

/* Align the visible typewriter lettering with the logo, not its tall font metrics. */
.brand-group { display: flex; align-items: center; gap: 18px; min-width: 0; }
.topbar .brand { flex: 0 0 auto; height: 28px; align-items: center; line-height: 28px; gap: 10px; }
.topbar .brand img { display: block; width: 28px; height: 28px; flex: 0 0 28px; }
.topbar .brand-name { display: block; line-height: 28px; transform: translateY(.035em); }
.brand-platforms {
  display: block;
  font: 400 12px/28px var(--mono);
  letter-spacing: 0;
  color: var(--muted);
  white-space: nowrap;
  transform: translateY(.041em);
}
@media (max-width: 640px) {
  .topbar .inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: 28px 18px;
    align-content: center;
    column-gap: 12px;
    row-gap: 8px;
    height: 88px;
    padding: 12px 18px;
  }
  .brand-group { display: contents; }
  .topbar .brand { grid-column: 1; grid-row: 1; justify-self: start; font-size: 22px; gap: 8px; }
  .topbar nav { grid-column: 2; grid-row: 1; margin: 0; gap: 12px; }
  .brand-platforms { grid-column: 1 / -1; grid-row: 2; font-size: 11px; line-height: 18px; transform: none; }
  .home [id] { scroll-margin-top: 100px; }
}
@media (max-width: 360px) {
  .topbar .inner { padding-inline: 14px; column-gap: 10px; }
  .topbar nav { gap: 10px; }
  .topbar nav a { font-size: 10px; }
  .topbar nav .pill { padding-inline: 10px; }
}

/* Public support and privacy pages: readable paper surfaces in either OS appearance. */
.doc-body .summary h2 { font-size: 18px; line-height: 1.3; letter-spacing: -.02em; margin: 0 0 10px; }
.policy-date { font-family: var(--mono); font-size: 12px !important; color: var(--muted); margin-bottom: 24px; }
.policy-contents { display: flex; flex-wrap: wrap; gap: 8px 18px; padding: 16px 0; border-block: 1px solid var(--line); }
.policy-contents a { margin: 0; font-size: 12px; line-height: 2; }
.home.doc h2[id] { scroll-margin-top: 105px; }
.doc-body .contact-address { font-size: clamp(18px, 3.2vw, 27px); }
.doc-body .contact-address a { color: var(--ink); }
.home-footer { font-size: 12px; }
.home-footer nav { font-size: 12px; }
.home-footer nav a { display: inline-flex; align-items: center; min-height: 32px; }
