@font-face{font-family:Barlow;font-weight:400;src:url(/assets/Barlow-Regular.woff2) format("woff2")}
@font-face{font-family:Barlow;font-weight:500;src:url(/assets/Barlow-Medium.woff2) format("woff2")}
@font-face{font-family:Barlow;font-weight:600;src:url(/assets/Barlow-SemiBold.woff2) format("woff2")}
:root{
  --navy:#0A1534; --panel:#0b1838; --gold:#FFC72C; --paper:#F4F1E6;
  --text:#F4F1E6; --muted:#b9bfd0; --line:rgba(244,241,230,.14);
}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--navy)}
body{
  font-family:Barlow,system-ui,sans-serif;color:var(--text);line-height:1.5;font-size:18px;
  background:radial-gradient(ellipse 120% 80% at 70% 0%,#1b3170 0%,#0f1f48 45%,#0a1534 100%) no-repeat,var(--navy);
  min-height:100vh;-webkit-font-smoothing:antialiased;
}
.wrap{max-width:1120px;margin:0 auto;padding:0 32px}
header{padding:28px 0}
header img{height:36px;width:auto;display:block}
.hero{display:grid;grid-template-columns:1fr 1.15fr;gap:56px;align-items:center;padding:56px 0 88px}
h1{font-weight:600;font-size:56px;line-height:1.06;letter-spacing:-.01em;max-width:11ch}
.lede{margin-top:24px;font-size:20px;color:var(--muted);max-width:34ch}
.cta{display:inline-block;margin-top:32px;background:var(--gold);color:#141210;font-weight:600;
  font-size:17px;padding:14px 24px;border-radius:10px;text-decoration:none}
.bezel{position:relative;border-radius:20px;padding:12px;background:#04060d;
  box-shadow:0 0 0 1px rgba(244,241,230,.28),0 0 0 6px rgba(244,241,230,.05),0 30px 70px -20px rgba(0,0,0,.7),0 0 90px -10px rgba(80,120,255,.35)}
.bezel img{display:block;width:100%;height:auto;border-radius:8px}
.caption{margin-top:14px;font-size:13px;color:var(--muted);text-align:center}
.points{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:72px 0;border-top:1px solid var(--line)}
.points h2{font-size:22px;font-weight:600;margin-bottom:10px}
.points p{color:var(--muted);font-size:17px}
.mark{width:28px;height:3px;background:var(--gold);margin-bottom:18px;border-radius:2px}
.join{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:56px;margin-bottom:72px;text-align:center}
.join h2{font-size:36px;font-weight:600}
form{display:flex;gap:12px;max-width:520px;margin:28px auto 0}
input{flex:1;font:inherit;font-size:17px;padding:14px 16px;border-radius:10px;border:1px solid rgba(244,241,230,.35);
  background:#07102a;color:var(--text);min-width:0}
input::placeholder{color:#8f97ad}
input:focus{outline:2px solid var(--gold);outline-offset:2px}
button{font:inherit;font-weight:600;font-size:17px;background:var(--gold);color:#141210;border:0;border-radius:10px;padding:14px 22px;cursor:pointer;white-space:nowrap}
.fine{max-width:520px;margin:18px auto 0;font-size:14px;color:var(--muted)}
.fine a,footer a{color:var(--text)}
.done{display:none;margin-top:28px;font-size:19px}
.join.sent form,.join.sent .fine{display:none}.join.sent .done{display:block}
footer{display:flex;flex-wrap:wrap;border-top:1px solid var(--line);padding:28px 0 40px;font-size:14px;color:var(--muted)}
footer span{margin:0 8px}
@media (max-width:820px){
  body{font-size:17px}
  .wrap{padding:0 20px}
  header{padding:20px 0}header img{height:32px}
  .hero{grid-template-columns:1fr;gap:36px;padding:24px 0 56px}
  h1{font-size:40px}
  .lede{font-size:18px}
  .unit{padding:10px 10px 20px;border-radius:14px}
  .points{grid-template-columns:1fr;gap:36px;padding:48px 0}
  .join{padding:36px 20px;border-radius:16px;margin-bottom:48px}
  .join h2{font-size:28px}
  form{flex-direction:column}
  footer{flex-direction:column}footer span{display:none}footer div{margin:4px 0}
}
/* hero with the desk photo */
body.home{background:radial-gradient(ellipse 70% 900px at 75% 1700px,#132a63 0%,rgba(10,21,52,0) 70%) no-repeat,var(--navy)}
.hero2{position:relative;min-height:min(86vh,820px);display:flex;overflow:hidden;background:#05070d;padding:0}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:68% 60%}
.hero-shade{position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(10,21,52,.96) 0%,rgba(10,21,52,.82) 28%,rgba(10,21,52,.25) 52%,rgba(10,21,52,0) 66%),
  linear-gradient(180deg,rgba(10,21,52,.55) 0%,rgba(10,21,52,0) 18%,rgba(10,21,52,0) 70%,#0a1534 100%)}
.hero-inner{position:relative;z-index:1;width:100%;display:flex;flex-direction:column;padding-top:32px;padding-bottom:96px}
.hero2 .logo img{height:44px;width:auto;display:block}
.hero-copy{margin-top:auto;max-width:520px;padding-top:48px}
.hero2 h1{font-size:60px;max-width:11ch;text-shadow:0 2px 24px rgba(0,0,0,.5)}
.hero2 .lede{color:#d5d9e4;max-width:36ch}
.hero-note{position:absolute;z-index:1;right:24px;bottom:18px;font-size:12px;color:rgba(244,241,230,.6)}
/* pillars + features */
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding:40px 0 64px}
.pillars div{border-left:3px solid var(--gold);padding-left:16px}
.pillars b{display:block;font-weight:600;font-size:19px}
.pillars span{display:block;color:var(--muted);font-size:16px;margin-top:2px}
.feature{display:grid;grid-template-columns:1fr 1.5fr;gap:56px;align-items:center;padding:56px 0}
.feature.flip{grid-template-columns:1.5fr 1fr}
.feature.flip .ftext{order:2}
.feature.wide{grid-template-columns:1fr;gap:32px;text-align:center}
.feature.wide .ftext{max-width:720px;margin:0 auto}
.kicker{color:var(--gold);font-weight:600;font-size:14px;letter-spacing:.12em;text-transform:uppercase}
.feature h2{font-size:34px;font-weight:600;line-height:1.15;margin-top:8px}
.ftext p:not(.kicker){color:var(--muted);margin-top:14px;font-size:18px}
.shot{display:block;width:100%;height:auto;border-radius:12px;box-shadow:0 0 0 1px rgba(244,241,230,.16),0 24px 50px -20px rgba(0,0,0,.7)}
.fpics.two{display:grid;gap:20px}
.grid.three{grid-template-columns:repeat(3,1fr);gap:28px}
.grid.three figure:last-child{grid-column:auto}
.note{margin-top:32px;font-size:14px}
/* screens */
.screens{padding:72px 0;border-top:1px solid var(--line)}
.screens h2{font-size:36px;font-weight:600;line-height:1.15}
.screens .sub{color:var(--muted);margin-top:8px;font-size:16px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:36px 32px;margin-top:36px}
.grid figure:last-child{grid-column:1/-1}
.grid img{display:block;width:100%;height:auto;border-radius:10px;border:1px solid var(--line);box-shadow:0 18px 40px -18px rgba(0,0,0,.6)}
.grid figcaption{margin-top:14px;color:var(--muted);font-size:16px}
.grid figcaption b{display:block;color:var(--text);font-weight:600;font-size:18px;margin-bottom:2px}
/* inner pages */
.page{max-width:720px;padding:40px 0 80px}
.page h1{max-width:none;font-size:44px}
.page h2{font-size:20px;font-weight:600;margin:32px 0 6px}
.page p{color:var(--muted);margin-top:10px}
.page p strong{color:var(--text);font-weight:600}
.eff{font-size:15px}
.center{text-align:center;max-width:560px;margin:0 auto;padding:96px 0 120px}
.center h1{margin:0 auto;max-width:none}
.center .lede{margin:20px auto 0}
.back{color:var(--text);display:inline-block;margin-top:28px}
.todo{background:rgba(255,199,44,.18);color:var(--gold);padding:0 4px;border-radius:4px}
@media (max-width:820px){.page h1{font-size:34px}.center{padding:56px 0 80px}}
@media (max-width:820px){.screens{padding:48px 0}.screens h2{font-size:28px}.grid{grid-template-columns:1fr;gap:28px}}
@media (max-width:820px){.pillars{grid-template-columns:1fr 1fr;gap:22px;padding:28px 0 40px}
.feature,.feature.flip{grid-template-columns:1fr;gap:22px;padding:36px 0}.feature.wide{text-align:left}.feature.flip .ftext{order:0}.feature h2{font-size:27px}
.grid.three{grid-template-columns:1fr}.bezel{padding:7px;border-radius:14px}}
@media (max-width:820px){
.hero2{display:block;min-height:0;background:#0a1534;padding:0}
.hero-bg{position:relative;inset:auto;display:block;height:auto;aspect-ratio:5/4;object-position:67% 62%;-webkit-mask-image:linear-gradient(180deg,#000 78%,transparent 100%);mask-image:linear-gradient(180deg,#000 78%,transparent 100%)}
.hero-shade{display:none}
.hero-inner{position:static;padding:0 20px}
.hero2 .logo{position:absolute;top:18px;left:20px;z-index:2}
.hero2 .logo img{height:32px}
.hero-copy{position:relative;margin-top:8px;padding:0 0 8px;max-width:none}
.hero2 h1{font-size:40px}
.hero-note{position:static;padding:12px 20px 0;text-align:left}
}

/* hero v7 (22 Oct): Apple-style, copy on top, big product below; the screen is a real capture drawn by the browser */
.hero3{display:block;min-height:0;background:#05070d;padding:0 0 8px}
.hero3 .hero-inner{display:block;position:relative;z-index:2;pointer-events:none;padding-top:28px;padding-bottom:0;text-align:center}
.hero3 .logo,.hero3 .cta,.hero3 .more,.hero3 .hero-copy p{pointer-events:auto}
.hero3 .logo{display:inline-block;position:absolute;left:24px;top:28px}
.hero3 .hero-copy{max-width:820px;margin:84px auto 0;padding-top:0}
.hero3 h1{font-size:62px;max-width:none;margin:0 auto;line-height:1.08}
.hero3 .lede{max-width:56ch;margin:16px auto 22px}
.hero-art{position:relative;max-width:1240px;margin:-28px auto 0;aspect-ratio:1900/1280;z-index:1}
.hero-photo{display:block;width:100%;height:100%;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 16%,#000 84%,transparent 100%),linear-gradient(90deg,transparent 0,#000 12%,#000 88%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(180deg,transparent 0,#000 16%,#000 84%,transparent 100%),linear-gradient(90deg,transparent 0,#000 12%,#000 88%,transparent 100%);mask-composite:intersect}
.hero-screen{position:absolute;left:16.32%;top:18.36%;width:63.1%;height:60.23%;border-radius:4px;filter:brightness(.94);box-shadow:0 0 70px 6px rgba(50,80,190,.32);image-rendering:auto}
@media (max-width:820px){
  .hero3 .logo{position:static;display:block;text-align:left}
  .hero3 .logo img{height:32px}
  .hero3 .hero-copy{margin-top:28px;text-align:left}
  .hero-photo{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 14%,#000 86%,transparent 100%)}
  .hero3 h1{font-size:40px}
  .hero3 .lede{margin:14px 0 22px}
  .hero-art{margin-top:-8px}
  .hero3 h1 br{display:none}
  .hero-screen{border-radius:2px;box-shadow:0 0 30px 3px rgba(50,80,190,.3)}
}

/* 22 Oct 19:55: one logo position on every page (matches privacy/confirmed/unsubscribed/404) */
.hero3 .hero-inner .logo{left:32px;top:28px}
.hero3 .hero-inner .logo img{height:36px}
@media (max-width:820px){.hero3 .hero-inner{padding-top:20px}.hero3 .hero-inner .logo img{height:32px}}
/* 22 Oct 20:00: same layout width on long and short pages (always reserve the scrollbar) */
html{scrollbar-gutter:stable}
@supports not (scrollbar-gutter:stable){html{overflow-y:scroll}}
