/* The signed-out home page (src/marketing/landing.mjs). Fonts and colours come from the suite. */
:root{
  --ink:#0b0f1a; --ink-2:#121828; --line:#2a3247; --fg:#eef1f8; --fg-2:#c3c9d8; --muted:#a2abc0;
  --flare:#ffb21e; --flare-2:#ffc24d; --on-flare:#1a0d00;
  --f-display:"Bricolage Grotesque","Avenir Next","Segoe UI",system-ui,sans-serif;
  --f-body:"Geist","SF Pro Text","Segoe UI",system-ui,sans-serif;
  --gutter:clamp(16px,4vw,48px);
  --ease:cubic-bezier(.22,1,.36,1);
  color-scheme:dark;
}
.ln *,.ln *::before,.ln *::after{box-sizing:border-box}
html{background:var(--ink);scroll-padding-top:16px}
body.ln{margin:0;background:var(--ink);color:var(--fg);font:400 1.0625rem/1.6 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:clip}
.ln img{display:block;width:100%;height:auto}
.ln a{color:inherit}
.ln :focus-visible{outline:2px solid var(--flare);outline-offset:3px;border-radius:4px}
.ln h1,.ln h2,.ln h3{margin:0;font-family:var(--f-display);text-wrap:balance}
.ln h1{font-size:clamp(2.5rem,6.4vw,5rem);font-weight:800;line-height:1.04;letter-spacing:-.015em;max-width:15ch}
.ln h2{font-size:clamp(1.85rem,3.6vw,2.9rem);font-weight:800;line-height:1.1;letter-spacing:-.01em;max-width:22ch}
.ln h3{font-size:1.3rem;font-weight:600;line-height:1.25}
:where(.ln) p{margin:0;text-wrap:pretty}
.ln-wrap{max-width:1180px;margin-inline:auto;padding-inline:max(var(--gutter),env(safe-area-inset-left,0px)) max(var(--gutter),env(safe-area-inset-right,0px))}
.ln-sec{padding-block:clamp(72px,10vw,136px)}
.ln-intro{margin-top:16px;max-width:60ch;color:var(--fg-2)}

.ln-skip{position:absolute;left:-999px;top:8px;z-index:90;padding:10px 16px;background:var(--flare);color:var(--on-flare);font-weight:600;border-radius:6px}
.ln-skip:focus{left:8px}
.ln .sm summary{opacity:1;filter:none}

.ln-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px var(--gutter) 10px 60px;min-height:60px}
.ln-brand{font:800 1.15rem/1 var(--f-display);text-decoration:none;white-space:nowrap}
.ln-top nav{display:flex;align-items:center;gap:clamp(12px,2.4vw,28px);font-weight:500;font-size:1rem}
.ln-top nav a{text-decoration:none;padding:8px 0}
.ln-top nav a:hover{color:var(--flare)}
.ln .ln-top .ln-signin{padding:8px 14px;border:1px solid var(--line);border-radius:8px}
.ln .ln-top .ln-signin:hover{border-color:var(--flare)}

.ln-hero{padding-top:clamp(40px,7vw,88px);overflow:clip}
.ln-lede{margin-top:24px;max-width:58ch;font-size:clamp(1.0625rem,1.5vw,1.25rem);line-height:1.55;color:var(--fg-2)}
.ln-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:32px}
.ln-btn{display:inline-flex;align-items:center;min-height:48px;padding:12px 22px;background:var(--flare);color:var(--on-flare)!important;font-weight:600;border-radius:8px;text-decoration:none;transition:background .15s var(--ease)}
.ln-btn:hover{background:var(--flare-2)}
.ln-btn-ink{background:var(--on-flare);color:#fff!important}
.ln-btn-ink:hover{background:#3a2100}
.ln-close .ln-btn-ink:focus-visible{outline-color:var(--on-flare)}
.ln-link{font-weight:500;text-underline-offset:4px}
.ln-link:hover{color:var(--flare)}

.ln-shot{border-radius:10px;overflow:hidden;background:var(--ink-2);outline:1px solid var(--line);outline-offset:-1px}
.ln-hero-shots{position:relative;max-width:1180px;margin:clamp(40px,6vw,72px) auto 0;padding-inline:var(--gutter);padding-bottom:clamp(24px,5vw,56px)}
.ln-hero-main{width:min(1000px,88%);margin-left:auto;animation:ln-rise .7s var(--ease) both}
.ln-hero-phone{position:absolute;left:var(--gutter);bottom:0;width:clamp(120px,19%,216px);border-radius:16px;animation:ln-rise .7s .08s var(--ease) both}
@keyframes ln-rise{from{transform:translateY(20px)}to{transform:none}}

.ln-door{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,88px);align-items:start;border-top:1px solid var(--line)}
.ln-door p{margin-top:16px;color:var(--fg-2);max-width:48ch}
.ln-door figure{margin:0}
.ln .ln-door figcaption{margin-top:12px;font-size:.95rem;color:var(--muted);max-width:60ch}

.ln-journey{list-style:none;margin:clamp(48px,6vw,80px) 0 0;padding:0;display:grid;gap:clamp(64px,8vw,112px)}
.ln-journey li{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(24px,5vw,72px);align-items:center}
.ln-journey li:nth-child(even){grid-template-columns:minmax(0,7fr) minmax(0,4fr)}
.ln-journey li:nth-child(even) .ln-journey-copy{order:2}
.ln-journey-phone .ln-shot{justify-self:center;width:min(280px,70%);border-radius:18px}
.ln-role{color:var(--flare);font-weight:600;font-size:1rem}
.ln-journey h3{margin-top:6px;font-size:clamp(1.4rem,2.4vw,1.85rem);font-weight:800;line-height:1.15}
.ln-journey-copy p:last-child{margin-top:12px;color:var(--fg-2);max-width:46ch}

.ln-group{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:12px clamp(24px,4vw,56px);padding-block:32px;border-top:1px solid var(--line)}
.ln-group:first-of-type{margin-top:40px}
.ln-group h3{font-size:1.1rem;line-height:1.3;color:var(--fg-2)}
.ln-group ul{list-style:none;margin:0;padding:0}
.ln-app{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,3fr) minmax(0,6fr);gap:4px 20px;padding:10px 8px;margin-inline:-8px;border-radius:6px;text-decoration:none;align-items:baseline;transition:background .15s var(--ease)}
.ln-app:hover{background:var(--ink-2)}
.ln-app-name{display:flex;align-items:center;gap:10px;font-weight:600;font-size:1.0625rem}
.ln-app-name i{flex:none;width:9px;height:9px;border-radius:2px}
.ln-app-job{color:var(--fg-2);font-size:1rem}
.ln-app-line{color:var(--muted);font-size:1rem}
.ln-next{margin-top:8px;padding-top:24px;border-top:1px solid var(--line);color:var(--fg-2)}
.ln-next a{text-underline-offset:3px}

.ln-band{background:var(--ink-2)}
.ln-table-wrap{margin-top:40px}
.ln table{width:100%;border-collapse:collapse;font-size:1rem}
.ln th,.ln td{padding:14px 16px 14px 0;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.ln thead th{font-weight:500;color:var(--muted);font-size:.95rem}
.ln tbody th{font-weight:600}
.ln td{color:var(--fg-2)}

.ln-trust dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px clamp(32px,6vw,88px);margin:48px 0 0}
.ln-trust dt{font:600 1.2rem/1.3 var(--f-display)}
.ln-trust dd{margin:8px 0 0;color:var(--fg-2);max-width:46ch}

.ln-close{background:var(--flare);color:var(--on-flare);padding-block:clamp(64px,9vw,112px)}
.ln-close p{margin-block:16px 28px;max-width:52ch;font-size:1.15rem}

.ln-foot{padding-block:32px;font-size:.95rem;color:var(--muted)}
.ln-foot .ln-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px}
.ln-foot p:first-child{display:flex;flex-wrap:wrap;gap:6px 20px}

@media (max-width:860px){
  .ln-door,.ln-journey li,.ln-journey li:nth-child(even),.ln-group,.ln-trust dl{grid-template-columns:minmax(0,1fr)}
  .ln-journey li:nth-child(even) .ln-journey-copy{order:0}
  .ln-app{grid-template-columns:minmax(0,1fr) auto}
  .ln-app-job{text-align:right}
  .ln-app-line{grid-column:1/-1}
  .ln-hero-main{width:100%}
  .ln-hero-shots{padding-bottom:0}
  .ln-hero-phone{position:relative;left:auto;width:min(190px,46%);margin:-64px 0 0 12px}
  .ln table,.ln tbody,.ln tr,.ln th,.ln td{display:block}
  .ln thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .ln tbody tr{padding-block:16px;border-bottom:1px solid var(--line)}
  .ln tbody th{padding:0 0 8px;border:0;font-size:1.05rem}
  .ln td{display:flex;justify-content:space-between;gap:16px;padding:3px 0;border:0}
  .ln td::before{content:attr(data-label);color:var(--muted)}
  .ln td{text-align:right}
}
@media (max-width:440px){
  .ln-top{padding-right:16px}
  .ln-top nav a[href="/apps"],.ln-top nav a[href="/tour"]{display:none}
}
@media (prefers-reduced-motion:reduce){
  .ln *,.ln *::before,.ln *::after{animation:none!important;transition:none!important}
}
