:root {
  color-scheme: dark;
  --ink: #f4f0e8;
  --muted: #9b9a95;
  --faint: #676a6d;
  --bg: #07090b;
  --panel: #0d1115;
  --panel-2: #11161b;
  --line: rgba(255,255,255,.10);
  --line-strong: rgba(255,255,255,.18);
  --brass: #f7931a;
  --brass-light: #ffad45;
  --danger: #df8c83;
  --success: #a9c4a4;
  --shadow: 0 24px 80px rgba(0,0,0,.42);
  --sans: Manrope, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --serif: "Iowan Old Style", Baskerville, "Times New Roman", serif;
}
* { box-sizing: border-box; }
html { background: var(--bg); scroll-behavior: smooth; }
body { margin: 0; min-height: 100svh; background:
  radial-gradient(circle at 50% 32%, rgba(211,161,93,.055), transparent 28rem),
  linear-gradient(180deg,#090c0f 0%,#06080a 100%); color: var(--ink); font-family: var(--sans); -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button,input,textarea { font: inherit; }
button { color: inherit; }
::selection { background: rgba(211,161,93,.28); }
.shell { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.site-header { height: 66px; display:flex; align-items:center; justify-content:space-between; }
.brand { font-family:var(--sans); letter-spacing:.24em; font-size:.74rem; font-weight:800; white-space:nowrap; }
.header-actions { display:flex; gap:28px; align-items:center; }
.header-link { color:#c8c6c1; font-size:.82rem; font-weight:600; transition:color .18s ease; }
.header-link:hover,.header-link:focus-visible { color:var(--ink); }
.header-link.primary { border:1px solid var(--line); padding:9px 15px; border-radius:999px; }
.hero { min-height: calc(100svh - 124px); display:grid; place-items:center; padding: 24px 0 28px; }
.hero-inner { width:min(900px,100%); text-align:center; }
.eyebrow { color:var(--brass-light); text-transform:uppercase; letter-spacing:.2em; font-size:.73rem; font-weight:650; margin-bottom:14px; }
h1,.display { font-family:var(--sans); font-weight:800; letter-spacing:-.065em; }
h1 { font-size:clamp(4rem,7.6vw,7.5rem); line-height:.90; margin:0; }
.accent-word { color:#f7931a; }
.subhead { max-width:620px; margin:18px auto 26px; color:#b8b7b2; font-size:clamp(.98rem,1.25vw,1.08rem); line-height:1.6; }
.word-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:10px; width:min(820px,100%); margin:0 auto 14px; }
.word-field { position:relative; }
.word-field label { position:absolute; top:9px; left:12px; font-size:.63rem; color:var(--faint); pointer-events:none; }
.word-field input { width:100%; height:64px; border:1px solid var(--line); border-radius:10px; background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018)); color:var(--ink); padding:21px 10px 7px; text-align:center; outline:none; transition:border-color .16s ease, background .16s ease, box-shadow .16s ease; min-width:0; }
.word-field input:focus { border-color:rgba(211,161,93,.72); background:rgba(211,161,93,.045); box-shadow:0 0 0 3px rgba(211,161,93,.08); }
.word-field input.invalid { border-color:rgba(223,140,131,.6); }
.cta { appearance:none; border:0; cursor:pointer; display:inline-flex; justify-content:center; align-items:center; min-height:54px; border-radius:9px; padding:0 30px; letter-spacing:.15em; text-transform:uppercase; font-size:.78rem; font-weight:700; background:linear-gradient(180deg,var(--brass-light),var(--brass)); color:#12100d; box-shadow:0 12px 34px rgba(211,161,93,.16); transition:transform .16s ease, opacity .16s ease, filter .16s ease; }
.cta:hover:not(:disabled) { transform:translateY(-1px); filter:brightness(1.04); }
.cta:disabled { opacity:.35; cursor:not-allowed; box-shadow:none; }
.cta.secondary { background:transparent; color:var(--ink); border:1px solid var(--line-strong); box-shadow:none; }
.cta.danger { background:transparent; color:var(--danger); border:1px solid rgba(223,140,131,.3); box-shadow:none; }
.open-button { width:min(360px,100%); margin-top:6px; }
.microcopy { margin:10px auto 0; color:var(--faint); font-size:.74rem; max-width:570px; line-height:1.45; }
.status { min-height:18px; margin:8px auto 0; font-size:.8rem; color:var(--muted); }
.status.error { color:var(--danger); }
.status.success { color:var(--success); }
.bottom-links { display:flex; justify-content:center; gap:28px; flex-wrap:wrap; padding:0 0 18px; color:#727578; font-size:.74rem; }
.bottom-links a:hover { color:#bbb; }
.page { padding:72px 0 100px; }
.page-head { max-width:760px; margin-bottom:54px; }
.page h1 { font-size:clamp(3rem,6vw,5rem); line-height:1; }
.page-lede { margin-top:22px; color:#b4b4b0; line-height:1.75; font-size:1.08rem; max-width:670px; }
.card { border:1px solid var(--line); border-radius:18px; background:rgba(255,255,255,.025); box-shadow:var(--shadow); }
.editor-card { max-width:900px; padding:clamp(24px,4vw,46px); }
.field-label { display:block; color:#d4d1ca; font-size:.83rem; margin-bottom:10px; font-weight:600; }
.text-input,.instructions { width:100%; border:1px solid var(--line); background:#090c0f; color:var(--ink); outline:none; border-radius:10px; transition:border-color .16s ease,box-shadow .16s ease; }
.text-input { height:52px; padding:0 15px; margin-bottom:24px; }
.instructions { min-height:340px; resize:vertical; padding:18px; line-height:1.7; }
.text-input:focus,.instructions:focus { border-color:rgba(211,161,93,.65); box-shadow:0 0 0 3px rgba(211,161,93,.07); }
.editor-meta { display:flex; justify-content:space-between; gap:20px; align-items:center; margin-top:12px; color:var(--faint); font-size:.74rem; }
.editor-actions { display:flex; justify-content:flex-end; margin-top:30px; }
.notice { border-left:2px solid var(--brass); padding:3px 0 3px 18px; color:#a9a8a3; line-height:1.65; font-size:.88rem; margin:26px 0; }
.recovery-panel { display:none; max-width:900px; }
.recovery-panel.active { display:block; }
.recovery-words { display:grid; grid-template-columns:repeat(6,1fr); gap:10px; margin:34px 0; counter-reset:words; }
.recovery-word { border:1px solid var(--line); border-radius:10px; padding:17px 10px 13px; text-align:center; background:#0a0e11; overflow:hidden; }
.recovery-word small { display:block; color:var(--faint); font-size:.62rem; margin-bottom:6px; }
.recovery-word strong { font-family:var(--serif); font-size:1.05rem; font-weight:400; }
.recovery-actions { display:flex; gap:12px; flex-wrap:wrap; }
.instructions-view { display:none; max-width:820px; margin:0 auto; padding:60px 0 90px; }
.instructions-view.active { display:block; }
.instructions-view .title { font-family:var(--serif); font-size:clamp(2.8rem,5vw,4.5rem); font-weight:400; letter-spacing:-.035em; margin:20px 0 28px; }
.instructions-body { white-space:pre-wrap; line-height:1.82; color:#dedbd4; font-size:1.03rem; overflow-wrap:anywhere; }
.instructions-meta { color:var(--faint); font-size:.72rem; margin-bottom:42px; }
.close-row { margin-top:54px; padding-top:26px; border-top:1px solid var(--line); }
.prose { max-width:760px; }
.prose h2 { font-family:var(--serif); font-weight:400; font-size:2rem; margin:48px 0 14px; }
.prose p,.prose li { color:#b6b5b0; line-height:1.8; }
.prose strong { color:#e5e1da; }
.prose a { color:var(--brass-light); text-decoration:underline; text-underline-offset:3px; }
.prose code { background:#11161a; border:1px solid var(--line); padding:2px 6px; border-radius:5px; }
.support-card { max-width:560px; margin:30px auto 0; padding:40px; text-align:center; }
.support-address { margin:28px 0 12px; padding:15px; background:#090c0f; border:1px solid var(--line); border-radius:9px; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.76rem; word-break:break-all; color:#c8c6c1; }
.print-only { display:none; }
@media (max-width:760px){
  .shell { width:min(100% - 28px,1180px); }
  .site-header { height:64px; }
  .brand { font-size:.70rem; letter-spacing:.22em; }
  .header-actions { gap:14px; }
  .header-link:not(.primary) { display:none; }
  .hero { min-height:calc(100svh - 78px); padding:30px 0 48px; }
  .hero-inner { width:100%; }
  .hero h1 { font-size:clamp(2.75rem,13vw,4.2rem); }
  .subhead { margin:22px auto 32px; font-size:.96rem; }
  .word-grid,.recovery-words { grid-template-columns:repeat(3,1fr); gap:9px; }
  .word-field input { height:64px; font-size:.88rem; }
  .recovery-word { padding:14px 8px 12px; }
  .page { padding:48px 0 74px; }
  .page-head { margin-bottom:34px; }
  .editor-card { padding:22px 18px; border-radius:14px; }
  .instructions { min-height:290px; }
  .editor-actions .cta { width:100%; }
  .recovery-actions .cta { width:100%; }
}
@media (prefers-reduced-motion: reduce){ * { scroll-behavior:auto!important; transition:none!important; } }
@media print {
  body { background:#fff!important; color:#111!important; }
  .site-header,.page-head,.editor-card,.bottom-links,.no-print { display:none!important; }
  .print-only { display:block!important; }
  .recovery-panel { display:block!important; }
  .recovery-panel .card { border:2px solid #111; box-shadow:none; background:#fff; color:#111; padding:32px; }
  .recovery-word { border:1px solid #777; background:#fff; color:#111; }
  .recovery-word small { color:#555; }
}

.instructions-eyebrow { margin-top: 60px; }
.centered-head { margin-inline: auto; text-align: center; }
.centered-lede { margin-inline: auto; }
.support-note { color: #aaa; line-height: 1.7; }
.notfound-title { margin-top: 50px; }
.print-brand { letter-spacing: .28em; font-weight: 700; margin-bottom: 28px; }
.print-title { font-family: Georgia, serif; font-weight: 400; font-size: 32px; margin: 0 0 8px; }

/* Security page — centered trust narrative */
.security-page {
  padding: 78px 0 110px;
  text-align: center;
}
.security-hero {
  max-width: 900px;
  margin: 0 auto;
}
.security-hero h1 {
  margin: 20px 0 24px;
  font-family: var(--serif);
  font-size: clamp(3.7rem, 8vw, 7.4rem);
  font-weight: 400;
  line-height: .92;
  letter-spacing: -.045em;
}
.security-hero p {
  max-width: 650px;
  margin: 0 auto;
  color: #aaa9a5;
  font-size: clamp(1rem, 1.7vw, 1.17rem);
  line-height: 1.8;
}
.security-rule {
  width: 58px;
  height: 1px;
  margin: 48px auto 0;
  background: linear-gradient(90deg, transparent, var(--brass-light), transparent);
}
.security-flow {
  max-width: 790px;
  margin: 76px auto 0;
}
.security-step {
  max-width: 720px;
  margin: 0 auto;
  padding: 8px 22px;
}
.security-number {
  margin-bottom: 19px;
  color: var(--brass-light);
  font-size: .69rem;
  font-weight: 700;
  letter-spacing: .24em;
}
.security-step h2 {
  margin: 0 auto 20px;
  font-family: var(--serif);
  font-size: clamp(2.05rem, 4.4vw, 3.55rem);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.025em;
}
.security-step p {
  max-width: 670px;
  margin: 0 auto 13px;
  color: #a9aaa7;
  font-size: 1rem;
  line-height: 1.9;
}
.security-step strong {
  color: #e5e1da;
  font-weight: 600;
}
.security-step--accent h2 {
  color: #e6bd82;
}
.security-connector {
  width: 1px;
  height: 84px;
  margin: 28px auto;
  background: linear-gradient(180deg, rgba(211,161,93,0), rgba(211,161,93,.48), rgba(211,161,93,0));
}
.security-statement {
  margin: 92px auto;
  padding: 43px 34px 46px;
  border-top: 1px solid rgba(211,161,93,.2);
  border-bottom: 1px solid rgba(211,161,93,.2);
}
.security-statement span {
  display: block;
  margin-bottom: 16px;
  color: #8a8b88;
  font-size: .69rem;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
}
.security-statement p {
  max-width: 720px;
  margin: 0 auto;
  color: #ded8cf;
  font-family: var(--serif);
  font-size: clamp(1.4rem, 3.2vw, 2.3rem);
  line-height: 1.55;
}
.security-close {
  max-width: 760px;
  margin: 96px auto 0;
}
.security-close .security-rule {
  margin-top: 0;
  margin-bottom: 42px;
}
.security-close-kicker {
  margin: 0 0 15px;
  color: #81827f;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .19em;
  text-transform: uppercase;
}
.security-close h2 {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(2.7rem, 6vw, 5.1rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -.035em;
}
.security-cta {
  margin-top: 38px;
  min-width: 250px;
  text-decoration: none;
}
@media (max-width: 700px) {
  .security-page { padding: 48px 0 78px; }
  .security-hero h1 { margin-top: 16px; }
  .security-rule { margin-top: 36px; }
  .security-flow { margin-top: 56px; }
  .security-step { padding-left: 4px; padding-right: 4px; }
  .security-step p { line-height: 1.78; }
  .security-connector { height: 60px; margin: 22px auto; }
  .security-statement { margin: 68px auto; padding: 34px 4px 37px; }
  .security-close { margin-top: 72px; }
}

/* Premium centered trust pages — Privacy and Terms */
.trust-page {
  padding: 78px 0 110px;
  text-align: center;
}
.trust-hero {
  max-width: 920px;
  margin: 0 auto;
}
.trust-hero h1 {
  margin: 20px 0 24px;
  font-family: var(--serif);
  font-size: clamp(3.7rem, 8vw, 7.25rem);
  font-weight: 400;
  line-height: .92;
  letter-spacing: -.045em;
}
.trust-hero p {
  max-width: 680px;
  margin: 0 auto;
  color: #aaa9a5;
  font-size: clamp(1rem, 1.7vw, 1.17rem);
  line-height: 1.8;
}
.trust-rule {
  width: 58px;
  height: 1px;
  margin: 48px auto 0;
  background: linear-gradient(90deg, transparent, var(--brass-light), transparent);
}
.trust-flow {
  max-width: 790px;
  margin: 76px auto 0;
}
.trust-step {
  max-width: 720px;
  margin: 0 auto;
  padding: 8px 22px;
}
.trust-number {
  margin-bottom: 19px;
  color: var(--brass-light);
  font-size: .69rem;
  font-weight: 700;
  letter-spacing: .24em;
}
.trust-step h2 {
  margin: 0 auto 20px;
  font-family: var(--serif);
  font-size: clamp(2.05rem, 4.4vw, 3.55rem);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.025em;
}
.trust-step p {
  max-width: 680px;
  margin: 0 auto;
  color: #a9aaa7;
  font-size: 1rem;
  line-height: 1.9;
}
.trust-step strong { color: #e5e1da; }
.trust-step--accent h2 { color: #e6bd82; }
.trust-connector {
  width: 1px;
  height: 84px;
  margin: 28px auto;
  background: linear-gradient(180deg, rgba(211,161,93,0), rgba(211,161,93,.48), rgba(211,161,93,0));
}
.trust-statement {
  max-width: 790px;
  margin: 92px auto;
  padding: 43px 34px 46px;
  border-top: 1px solid rgba(211,161,93,.2);
  border-bottom: 1px solid rgba(211,161,93,.2);
}
.trust-statement span {
  display: block;
  margin-bottom: 16px;
  color: #8a8b88;
  font-size: .69rem;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
}
.trust-statement p {
  max-width: 720px;
  margin: 0 auto;
  color: #ded8cf;
  font-family: var(--serif);
  font-size: clamp(1.4rem, 3.2vw, 2.3rem);
  line-height: 1.55;
}
.trust-close {
  max-width: 800px;
  margin: 96px auto 0;
}
.trust-close .trust-rule {
  margin-top: 0;
  margin-bottom: 42px;
}
.trust-close-kicker {
  margin: 0 0 15px;
  color: #81827f;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .19em;
  text-transform: uppercase;
}
.trust-close h2 {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(2.7rem, 6vw, 5.1rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -.035em;
}
.trust-cta {
  margin-top: 38px;
  min-width: 250px;
  text-decoration: none;
}

/* Create — premium private ceremony */
.create-page {
  padding: 72px 0 104px;
}
.create-compose,
.recovery-panel--premium {
  max-width: 980px;
  margin: 0 auto;
}
.create-hero {
  max-width: 850px;
  margin: 0 auto 68px;
  text-align: center;
}
.create-hero h1 {
  margin: 19px 0 24px;
  font-family: var(--serif);
  font-size: clamp(3.8rem, 8vw, 7.2rem);
  font-weight: 400;
  line-height: .91;
  letter-spacing: -.047em;
}
.create-hero p {
  max-width: 670px;
  margin: 0 auto;
  color: #aaa9a5;
  font-size: clamp(1rem, 1.65vw, 1.15rem);
  line-height: 1.8;
}
.create-editor-wrap {
  max-width: 860px;
  margin: 0 auto;
}
.create-step-label {
  margin: 0 0 16px;
  text-align: center;
  color: #8d8e8a;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .19em;
  text-transform: uppercase;
}
.editor-card--premium {
  max-width: none;
  padding: clamp(28px, 5vw, 54px);
  border-color: rgba(255,255,255,.09);
  border-radius: 22px;
  background:
    radial-gradient(circle at 50% 0%, rgba(211,161,93,.055), transparent 31%),
    linear-gradient(180deg, rgba(255,255,255,.032), rgba(255,255,255,.017));
  box-shadow: 0 34px 100px rgba(0,0,0,.34);
}
.create-field-group + .create-field-group { margin-top: 28px; }
.editor-card--premium .field-label {
  margin-bottom: 11px;
  color: #b8b6b0;
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.editor-card--premium .text-input,
.editor-card--premium .instructions {
  background: rgba(4,7,9,.72);
  border-color: rgba(255,255,255,.085);
}
.editor-card--premium .text-input {
  height: 58px;
  border-radius: 12px;
  padding: 0 18px;
  font-family: var(--serif);
  font-size: 1.18rem;
}
.editor-card--premium .instructions {
  min-height: 390px;
  border-radius: 14px;
  padding: 21px;
  font-size: 1rem;
  line-height: 1.82;
}
.editor-card--premium .editor-meta {
  color: #666966;
  font-size: .7rem;
}
.create-safety-note {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 17px;
  align-items: start;
  margin: 32px auto 0;
  padding: 24px 0 0;
  border-top: 1px solid rgba(255,255,255,.07);
  text-align: left;
}
.create-safety-mark {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(211,161,93,.34);
  border-radius: 50%;
  color: var(--brass-light);
  font-family: var(--serif);
  font-size: .95rem;
}
.create-safety-note p {
  margin: 1px 0 0;
  color: #8f908c;
  font-size: .86rem;
  line-height: 1.72;
}
.create-safety-note strong {
  color: #d5d2cb;
  font-weight: 600;
}
.editor-actions--centered {
  justify-content: center;
  margin-top: 38px;
}
.create-protect {
  min-width: min(100%, 360px);
}
.create-assurance {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  max-width: 850px;
  margin: 70px auto 0;
  border-top: 1px solid rgba(255,255,255,.07);
  border-bottom: 1px solid rgba(255,255,255,.07);
}
.create-assurance > div {
  padding: 31px 32px 33px;
  text-align: center;
}
.create-assurance > div + div {
  border-left: 1px solid rgba(255,255,255,.07);
}
.create-assurance span {
  display: block;
  margin-bottom: 13px;
  color: var(--brass-light);
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .2em;
}
.create-assurance strong {
  display: block;
  margin-bottom: 7px;
  color: #d9d6cf;
  font-family: var(--serif);
  font-size: 1.28rem;
  font-weight: 400;
}
.create-assurance p {
  margin: 0;
  color: #747773;
  font-size: .76rem;
  line-height: 1.6;
}
.recovery-panel--premium.active { display: block; }
.recovery-card-premium { max-width: 920px; margin: 0 auto; }
.recovery-words--premium {
  margin: 28px 0 34px;
  gap: 11px;
}
.recovery-words--premium .recovery-word {
  min-height: 84px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-color: rgba(255,255,255,.09);
  background: linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012));
}
.recovery-words--premium .recovery-word small { color: #5e625f; }
.recovery-words--premium .recovery-word strong { font-size: 1.08rem; }
.recovery-actions--premium {
  justify-content: center;
  margin-top: 38px;
}

@media (max-width: 700px) {
  .trust-page { padding: 48px 0 78px; }
  .trust-hero h1 { margin-top: 16px; }
  .trust-rule { margin-top: 36px; }
  .trust-flow { margin-top: 56px; }
  .trust-step { padding-left: 4px; padding-right: 4px; }
  .trust-step p { line-height: 1.78; }
  .trust-connector { height: 60px; margin: 22px auto; }
  .trust-statement { margin: 68px auto; padding: 34px 4px 37px; }
  .trust-close { margin-top: 72px; }

  .create-page { padding: 46px 0 76px; }
  .create-hero { margin-bottom: 46px; }
  .create-hero h1 { margin-top: 16px; }
  .editor-card--premium { padding: 24px 18px 26px; border-radius: 16px; }
  .editor-card--premium .instructions { min-height: 320px; }
  .create-safety-note { grid-template-columns: 36px 1fr; gap: 13px; }
  .create-safety-mark { width: 36px; height: 36px; }
  .create-assurance { grid-template-columns: 1fr; margin-top: 48px; }
  .create-assurance > div { padding: 24px 18px; }
  .create-assurance > div + div { border-left: 0; border-top: 1px solid rgba(255,255,255,.07); }
  .recovery-words--premium { grid-template-columns: repeat(2,1fr); }
  .recovery-actions--premium .cta { width: 100%; }
}

/* 2026-08 premium display system: restrained Manrope + Bitcoin orange */
:root {
  --bitcoin-orange: #f7931a;
  --bitcoin-orange-soft: #ffad45;
}

.accent-word { color: var(--bitcoin-orange) !important; }

/*
   Typography should feel architectural, not oversized.
   Manrope is preferred when installed, with privacy-safe local/system fallbacks.
*/
.hero h1,
.page h1,
.create-hero h1,
.security-hero h1,
.trust-hero h1,
.security-step h2,
.trust-step h2,
.security-close h2,
.trust-close h2,
.security-statement p,
.trust-statement p,
.instructions-view .title,
.prose h2,
.create-assurance strong,
.recovery-word strong {
  font-family: var(--sans);
}

/* Primary display scale: premium, calm, and comfortably below poster size. */
.hero h1 {
  max-width: 980px;
  margin-inline: auto;
  font-size: clamp(3.35rem, 5.25vw, 5.2rem);
  font-weight: 780;
  line-height: .95;
  letter-spacing: -.058em;
}
.hero-inner { width: min(980px, 100%); }
.subhead { max-width: 660px; }

.page h1,
.create-hero h1,
.security-hero h1,
.trust-hero h1 {
  font-size: clamp(3.1rem, 4.8vw, 4.8rem);
  font-weight: 780;
  line-height: .96;
  letter-spacing: -.056em;
}

.security-step h2,
.trust-step h2 {
  max-width: 720px;
  font-size: clamp(2rem, 3.25vw, 3.05rem);
  font-weight: 760;
  line-height: 1.02;
  letter-spacing: -.048em;
}

.security-close h2,
.trust-close h2 {
  font-size: clamp(2.65rem, 4.25vw, 4rem);
  font-weight: 780;
  line-height: .98;
  letter-spacing: -.052em;
}

.security-statement p,
.trust-statement p {
  font-size: clamp(1.35rem, 2.1vw, 1.9rem);
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: -.025em;
}

.instructions-view .title {
  font-size: clamp(2.55rem, 4.25vw, 4rem);
  font-weight: 760;
  line-height: 1;
  letter-spacing: -.05em;
}

.prose h2 {
  font-size: clamp(1.65rem, 2.5vw, 2.2rem);
  font-weight: 740;
  letter-spacing: -.035em;
}

.create-assurance strong {
  font-weight: 760;
  letter-spacing: -.025em;
}
.recovery-word strong {
  font-weight: 700;
  letter-spacing: -.015em;
}

/* Orange is a signature accent, never a wash. */
.eyebrow,
.security-number,
.trust-number,
.create-assurance span,
.create-safety-mark { color: var(--bitcoin-orange); }

.cta {
  background: var(--bitcoin-orange);
  box-shadow: 0 12px 30px rgba(247,147,26,.14);
}

.word-field input:focus,
.text-input:focus,
.instructions:focus {
  border-color: rgba(247,147,26,.66);
  box-shadow: 0 0 0 3px rgba(247,147,26,.075);
}

.security-rule,
.trust-rule {
  background: linear-gradient(90deg, transparent, var(--bitcoin-orange), transparent);
}
.security-step--accent h2,
.trust-step--accent h2 { color: var(--ink); }

/* Keep the header deliberately quiet. */
.site-header { height: 64px; }
.brand {
  font-size: .70rem;
  font-weight: 800;
  letter-spacing: .235em;
}
.header-link { font-size: .78rem; }
.header-link.primary { padding: 8px 14px; }

@media (max-width: 760px) {
  .hero h1 {
    font-size: clamp(2.65rem, 11.5vw, 3.75rem);
    line-height: .96;
    letter-spacing: -.052em;
  }

  .page h1,
  .create-hero h1,
  .security-hero h1,
  .trust-hero h1 {
    font-size: clamp(2.55rem, 11vw, 3.6rem);
    line-height: .97;
    letter-spacing: -.05em;
  }

  .security-step h2,
  .trust-step h2 {
    font-size: clamp(1.85rem, 8vw, 2.55rem);
  }

  .security-close h2,
  .trust-close h2 {
    font-size: clamp(2.25rem, 9.6vw, 3.15rem);
  }
}


/* BitTwelve wordmark — restrained title case with a subtle Bitcoin-native accent. */
.brand {
  display: inline-flex;
  align-items: baseline;
  font-family: var(--sans);
  font-size: .92rem;
  font-weight: 800;
  letter-spacing: -.025em;
  line-height: 1;
}
.brand-bit { color: var(--bitcoin-orange); }
.brand-twelve { color: var(--ink); }

@media (max-width: 760px) {
  .brand {
    font-size: .88rem;
    letter-spacing: -.025em;
  }
}

/* Explicit creation acknowledgment: concise click-through before hosted storage. */
.create-acknowledgment {
  display: grid;
  grid-template-columns: 18px minmax(0,1fr);
  gap: 12px;
  align-items: start;
  max-width: 720px;
  margin: 30px auto 0;
  padding: 18px 20px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  background: rgba(255,255,255,.018);
  color: #8f918e;
  font-size: .78rem;
  line-height: 1.65;
  cursor: pointer;
}
.create-acknowledgment input {
  width: 16px;
  height: 16px;
  margin: 3px 0 0;
  accent-color: var(--bitcoin-orange);
}
.create-acknowledgment a {
  color: #d8d5cd;
  text-decoration: underline;
  text-decoration-color: rgba(247,147,26,.55);
  text-underline-offset: 3px;
}
.legal-review-note {
  max-width: 620px;
  margin: 24px auto 0;
  color: #70736f;
  font-size: .76rem;
  line-height: 1.65;
}
@media (max-width:760px) {
  .create-acknowledgment { padding: 16px; font-size: .75rem; }
}

/* Recovery-map copy: placeholders should read as examples, never as entered data. */
.instructions::placeholder {
  color: #626662;
  opacity: 1;
  line-height: 1.82;
}
.text-input::placeholder { color: #626662; opacity: 1; }
