/* Loomem — shared style for the trial pages. Lifted from the landing design
   system (loomem/docs/index.html) so the trial matches the brand 1:1. */
:root{
  --lm-gold-100:#FDEAC4;--lm-gold-200:#FBD68A;--lm-gold-300:#F9C254;--lm-gold-400:#F4AC2E;
  --lm-gold-500:#EE9913;--lm-gold-600:#CE7D08;--lm-gold-700:#A2610B;--lm-gold-800:#7C4B0F;--lm-gold-900:#5E3A11;
  --lm-blue-100:#CBE6FB;--lm-blue-300:#63B5F0;--lm-blue-400:#339BE8;--lm-blue-500:#1684DC;
  --lm-blue-600:#0F69B8;--lm-blue-700:#0F5491;
  --lm-ink-900:#1F1B16;--lm-ink-800:#2E2820;--lm-ink-700:#423B31;--lm-ink-600:#564D40;
  --lm-ink-500:#6B6256;--lm-ink-400:#8E8474;--lm-ink-300:#B7AE9E;--lm-ink-200:#DED7C8;--lm-ink-100:#EFE9DD;
  --lm-canvas:#FBF8F1;--lm-surface:#FFFFFF;--lm-surface-sunk:#F4EFE4;--lm-surface-warm:#FDF1DA;--lm-surface-cool:#EEF6FD;
  --lm-success:#2E9E6B;--lm-success-bg:#E4F4EC;--lm-error:#D2553B;--lm-error-bg:#FBE9E3;
  --lm-brand:#1684DC;--lm-brand-hover:#0F69B8;--lm-accent:#EE9913;--lm-focus-ring:rgba(22,132,220,0.42);
  --lm-weave-vivid:linear-gradient(120deg,#EE9913 0%,#1684DC 100%);
  --lm-weave-radial:radial-gradient(120% 120% at 0% 0%,#FDEAC4 0%,#FBF8F1 38%,#E9F4FD 100%);
  --lm-weave-text:linear-gradient(100deg,#CE7D08 0%,#EE9913 30%,#1684DC 78%);
  --lm-font-display:"Fraunces","Iowan Old Style",Georgia,serif;
  --lm-font-sans:"Inter",-apple-system,"Segoe UI",system-ui,sans-serif;
  --lm-font-mono:"JetBrains Mono","SF Mono",ui-monospace,monospace;
  --lm-radius-md:10px;--lm-radius-lg:16px;--lm-radius-xl:24px;--lm-radius-pill:999px;
  --lm-shadow-xs:0 1px 2px rgba(31,27,22,0.06);--lm-shadow-sm:0 2px 6px rgba(31,27,22,0.07);
  --lm-shadow-md:0 8px 24px rgba(31,27,22,0.09);--lm-shadow-blue:0 10px 30px rgba(15,105,184,0.18);
  --lm-dur:200ms;--lm-ease:cubic-bezier(0.16,1,0.3,1);--lm-container:920px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--lm-font-sans);background:var(--lm-canvas);color:var(--lm-ink-900);line-height:1.6;-webkit-font-smoothing:antialiased;font-size:16px}
::selection{background:var(--lm-gold-200);color:var(--lm-ink-900)}
a{color:var(--lm-brand);text-decoration:none}
a:hover{color:var(--lm-brand-hover)}
.wrap{max-width:var(--lm-container);margin:0 auto;padding:0 clamp(20px,5vw,36px)}
code,.mono{font-family:var(--lm-font-mono)}

/* top bar */
.topbar{position:sticky;top:0;z-index:40;backdrop-filter:blur(12px);background:rgba(251,248,241,0.82);border-bottom:1px solid var(--lm-ink-200)}
.topbar .inner{display:flex;align-items:center;justify-content:space-between;height:74px}
.brand{display:flex;align-items:center;gap:11px;font-family:var(--lm-font-display);font-weight:600;font-size:26px;letter-spacing:-0.02em;color:var(--lm-ink-900)}
.brand svg{width:44px;height:44px;flex:none}
.topbar .gh{font-size:14px;font-weight:500;color:var(--lm-ink-600)}

/* buttons */
.btn{font-family:var(--lm-font-sans);font-size:16px;font-weight:600;border:none;cursor:pointer;padding:13px 26px;border-radius:var(--lm-radius-pill);transition:all var(--lm-dur) var(--lm-ease);display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.btn:focus-visible{outline:3px solid var(--lm-focus-ring);outline-offset:2px}
.btn-weave{background:var(--lm-weave-vivid);color:#fff;box-shadow:var(--lm-shadow-blue)}
.btn-weave:hover{filter:brightness(1.05);transform:translateY(-1px);color:#fff}
.btn-secondary{background:var(--lm-surface);color:var(--lm-ink-900);border:1.5px solid var(--lm-ink-300)}
.btn-secondary:hover{border-color:var(--lm-ink-900);background:var(--lm-surface-sunk);color:var(--lm-ink-900)}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}

/* hero */
.hero{position:relative;overflow:hidden;background:var(--lm-weave-radial);border-bottom:1px solid var(--lm-ink-200)}
.hero-inner{position:relative;z-index:1;padding:clamp(48px,8vw,88px) clamp(20px,5vw,36px);text-align:center;max-width:720px;margin:0 auto}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:16px;background:var(--lm-weave-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero h1{font-family:var(--lm-font-display);font-size:clamp(2.3rem,5vw,3.4rem);font-weight:500;line-height:1.06;letter-spacing:-0.03em;margin-bottom:18px}
.hero h1 em{font-style:italic;background:var(--lm-weave-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero p.lead{font-size:1.15rem;color:var(--lm-ink-600);max-width:52ch;margin:0 auto 28px;line-height:1.6}

/* sections + cards */
section{padding:clamp(48px,8vw,84px) 0}
.sec-head{max-width:60ch;margin:0 auto 40px;text-align:center}
h2.sec{font-family:var(--lm-font-display);font-size:clamp(1.7rem,3.4vw,2.3rem);font-weight:600;letter-spacing:-0.02em;line-height:1.15;margin-bottom:10px}
.sec-lead{color:var(--lm-ink-500);font-size:1.05rem;line-height:1.6}
.alt{background:var(--lm-surface)}

/* steps */
.steps{display:grid;gap:18px;max-width:680px;margin:0 auto}
.step{display:grid;grid-template-columns:46px 1fr;gap:18px;align-items:start;background:var(--lm-surface);border:1px solid var(--lm-ink-200);border-radius:var(--lm-radius-lg);padding:24px;box-shadow:var(--lm-shadow-xs)}
.step .num{width:40px;height:40px;border-radius:var(--lm-radius-pill);background:var(--lm-weave-vivid);color:#fff;font-family:var(--lm-font-display);font-weight:600;font-size:18px;display:flex;align-items:center;justify-content:center}
.step .body{min-width:0}
.step h4{font-size:1.15rem;font-weight:600;margin-bottom:6px}
.step p{font-size:15px;color:var(--lm-ink-600);margin-bottom:12px;line-height:1.6}
.step p:last-child{margin-bottom:0}

/* copy box (URL / key) */
.copy{display:flex;align-items:center;gap:10px;background:var(--lm-ink-900);border-radius:var(--lm-radius-md);padding:12px 14px;margin:8px 0}
.copy code{color:#EFE9DD;font-size:13.5px;word-break:break-all;flex:1}
.copy button{background:var(--lm-gold-400);color:var(--lm-ink-900);border:none;border-radius:8px;padding:8px 14px;font-weight:600;font-size:13px;cursor:pointer;font-family:var(--lm-font-sans);flex:none}
.copy button:hover{background:var(--lm-gold-300)}

/* callout */
.callout{display:flex;gap:14px;padding:18px 20px;border-radius:var(--lm-radius-lg);background:var(--lm-surface-warm);border:1px solid var(--lm-gold-200);max-width:680px;margin:24px auto 0}
.callout .bar{width:4px;border-radius:4px;background:var(--lm-accent);flex:none}
.callout h4{font-size:15px;font-weight:600;margin-bottom:4px;color:var(--lm-gold-900)}
.callout p{font-size:14px;color:var(--lm-ink-600);line-height:1.55}

/* form */
.signup{max-width:480px;margin:0 auto}
.signup .row{display:flex;gap:10px;flex-wrap:wrap}
.signup input[type=email]{flex:1;min-width:220px;font-family:var(--lm-font-sans);font-size:16px;padding:13px 16px;border:1.5px solid var(--lm-ink-300);border-radius:var(--lm-radius-pill);background:var(--lm-surface);color:var(--lm-ink-900)}
.signup input[type=email]:focus{outline:none;border-color:var(--lm-brand);box-shadow:0 0 0 3px var(--lm-focus-ring)}
.signup .note{font-size:13px;color:var(--lm-ink-400);margin-top:12px;line-height:1.5}
.msg{margin-top:16px;padding:14px 18px;border-radius:var(--lm-radius-md);font-size:15px;display:none}
.msg.ok{display:block;background:var(--lm-success-bg);color:#1B6E48;border:1px solid #BBE3CD}
.msg.err{display:block;background:var(--lm-error-bg);color:var(--lm-error);border:1px solid #F1C9BE}
.slots{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:var(--lm-gold-800);background:var(--lm-gold-100);border-radius:var(--lm-radius-pill);padding:6px 14px;margin-bottom:22px}
.slots .dot{width:7px;height:7px;border-radius:50%;background:var(--lm-success)}

/* status page (confirm/success/error) */
.status{max-width:520px;margin:14vh auto;text-align:center;padding:0 24px}
.status .mark{width:64px;height:64px;margin:0 auto 22px}
.status h1{font-family:var(--lm-font-display);font-size:1.9rem;font-weight:600;margin-bottom:12px;letter-spacing:-0.02em}
.status p{font-size:1.05rem;color:var(--lm-ink-600);line-height:1.6}

/* footer */
footer{border-top:1px solid var(--lm-ink-200);background:var(--lm-surface);padding:34px 0;text-align:center;font-size:13.5px;color:var(--lm-ink-400)}
footer a{color:var(--lm-ink-600)}

/* ambient blobs */
.bg-fx{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.bg-fx .blob{position:absolute;border-radius:50%;filter:blur(85px);opacity:.6}
.bg-fx .b1{width:46vw;height:46vw;left:-10vw;top:-8vw;background:radial-gradient(circle,#FBD68A,rgba(251,214,138,0) 70%)}
.bg-fx .b2{width:42vw;height:42vw;right:-12vw;bottom:-10vw;background:radial-gradient(circle,#9CD0F7,rgba(156,208,247,0) 70%)}
@media(max-width:560px){.signup .row{flex-direction:column}.signup .btn{width:100%;justify-content:center}}
