.rhero{padding:64px 0 8px}
.rhero .wrap{max-width:960px}
.rhero h1{font-family:var(--display);font-weight:780;font-size:clamp(2.5rem,5.4vw,3.9rem);line-height:.99;letter-spacing:-.025em;margin:16px 0 0}
.rhero h1 .it{color:var(--clay)}
.rhero .sub{font-size:1.22rem;color:var(--ink-soft);max-width:58ch;margin-top:22px;line-height:1.55}
.soon{display:inline-flex;align-items:center;gap:8px;margin-top:26px;font-family:var(--mono);font-size:12.5px;
  letter-spacing:.08em;text-transform:uppercase;color:var(--clay-deep);background:var(--wash-clay);
  border:1px solid var(--clay-soft);border-radius:999px;padding:8px 16px}
.soon::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--clay);animation:pulse 1.8s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
@media (prefers-reduced-motion: reduce){.soon::before{animation:none}}

section{padding:72px 0;position:relative}
.head{max-width:860px;margin:0 auto;text-align:center}
.head h2{font-family:var(--display);font-weight:740;font-size:clamp(2rem,4.2vw,3.2rem);line-height:1.02;letter-spacing:-.022em}
.head h2 .it{color:var(--clay)}
.head .lead{font-size:1.15rem;color:var(--ink-soft);margin:18px auto 0;max-width:56ch;line-height:1.55}
.band-blue{background:var(--wash-blue)}

/* plugin list */
.pluglist{list-style:none;margin:0;padding:0}
.pluglist li{font-size:16.5px;color:var(--ink-soft);line-height:1.6;padding:14px 2px;border-bottom:1px solid var(--edge)}
.pluglist li:last-child{border-bottom:none}
.pluglist strong{color:var(--ink);font-weight:640;font-family:var(--display)}

.doc{max-width:780px;margin:0 auto;padding:0 28px}
.doc p{font-size:16.5px;color:var(--ink-soft);margin:12px 0;line-height:1.66;max-width:64ch}
.doc p strong{color:var(--ink);font-weight:600}
.doc a{color:var(--clay-deep);text-decoration:underline;text-decoration-color:var(--clay-soft);text-underline-offset:2px}
.callout{border-radius:var(--r);padding:20px 24px;margin:24px 0 0;font-size:15.5px;line-height:1.62;
  background:var(--wash-clay);border:1px solid var(--clay-soft)}
.callout strong{color:var(--ink)}

.rise{transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.js-reveal .rise{opacity:0;transform:translateY(22px)}
.js-reveal .rise.in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.rise,.js-reveal .rise{opacity:1;transform:none;transition:none}}
footer{margin-top:30px}
@media(max-width:880px){section{padding:56px 0}.rhero{padding:40px 0 4px}}

/* formerly inline */
.wrap.wrap-narrow{max-width:820px}
