:root {
  font-family: Inter, 'Segoe UI', system-ui, sans-serif;
  color: #e9eef7;
  background: #08111f;
  font-synthesis: none;
  --bg: #08111f;
  --panel: rgba(18, 31, 51, 0.84);
  --panel-solid: #101d31;
  --line: rgba(255, 255, 255, 0.1);
  --muted: #9db0c8;
  --cyan: #4fe1d0;
  --blue: #6ba8ff;
  --warm: #f5b85a;
  --danger: #ff7b8f;
  --shadow: 0 25px 80px rgba(0, 0, 0, 0.28);
}

* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; min-height: 100vh; background: radial-gradient(circle at top left, #132c49 0, transparent 32%), radial-gradient(circle at top right, #0e3435 0, transparent 25%), var(--bg); }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }

.app-shell { min-height: 100vh; }
.topbar { height: 74px; display: flex; align-items: center; justify-content: space-between; padding: 0 5vw; border-bottom: 1px solid var(--line); background: rgba(8, 17, 31, 0.82); backdrop-filter: blur(18px); position: sticky; top: 0; z-index: 40; }
.brand { display: flex; align-items: center; gap: 12px; }
.brand-mark { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: linear-gradient(135deg, var(--cyan), var(--blue)); color: #06101a; font-family: 'Segoe UI'; font-weight: 800; }
.brand strong, .brand small { display: block; }
.brand small { color: var(--muted); font-size: 11px; margin-top: 2px; letter-spacing: .08em; text-transform: uppercase; }
.topbar nav { display: flex; align-items: center; gap: 24px; color: #c9d7e7; font-size: 14px; }
.topbar nav a:hover { color: white; }

.hero { padding: 88px 7vw 58px; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr); gap: 52px; align-items: center; max-width: 1480px; margin: 0 auto; }
.eyebrow { color: var(--cyan); text-transform: uppercase; letter-spacing: .17em; font-size: 12px; font-weight: 700; }
.hero h1, .landing-hero h1 { font-family: 'Segoe UI'; font-size: clamp(42px, 6vw, 86px); line-height: .98; letter-spacing: -.055em; margin: 18px 0 24px; max-width: 980px; }
.hero-copy > p { color: #b5c5d9; font-size: 19px; line-height: 1.72; max-width: 790px; }
.hero-actions, .stack-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
.primary-button, .secondary-button { border: 0; border-radius: 13px; padding: 13px 18px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }
.primary-button { background: linear-gradient(135deg, var(--cyan), #74b7ff); color: #06131c; box-shadow: 0 10px 30px rgba(79, 225, 208, .16); }
.secondary-button { background: rgba(255,255,255,.055); color: #e8eff8; border: 1px solid var(--line); }
.primary-button:hover, .secondary-button:hover { transform: translateY(-1px); }
.hero-console { border: 1px solid var(--line); background: linear-gradient(145deg, rgba(24, 46, 75, .85), rgba(11, 24, 40, .9)); border-radius: 26px; padding: 18px; box-shadow: var(--shadow); }
.hero-console div { padding: 19px 16px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; gap: 20px; }
.hero-console div:last-child { border-bottom: 0; }
.hero-console span { color: var(--muted); }
.hero-console strong { text-align: right; }

.portal-toolbar { max-width: 1320px; margin: 0 auto 22px; padding: 16px 20px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.035); display: flex; justify-content: space-between; gap: 18px; color: var(--muted); font-size: 13px; }
.status-dot { display: inline-block; width: 8px; height: 8px; background: var(--cyan); border-radius: 50%; margin-right: 8px; box-shadow: 0 0 16px var(--cyan); }
.magazine-grid { max-width: 1320px; margin: 0 auto; padding: 0 0 90px; }
.magazine-section { margin-bottom: 42px; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.section-heading h2, .section-heading h3 { font-family: 'Segoe UI'; margin: 0; text-transform: capitalize; }
.section-heading span { color: var(--muted); font-size: 12px; }
.card-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.link-card, .admin-card { border: 1px solid var(--line); background: var(--panel); border-radius: 18px; padding: 20px; backdrop-filter: blur(14px); }
.link-card { min-height: 230px; display: flex; flex-direction: column; transition: transform .2s ease, border-color .2s ease, background .2s ease; }
.link-card:hover { transform: translateY(-4px); border-color: rgba(79, 225, 208, .44); background: rgba(22, 39, 62, .96); }
.card-topline { display: flex; justify-content: space-between; gap: 15px; text-transform: uppercase; letter-spacing: .1em; color: var(--cyan); font-size: 10px; }
.card-topline small { color: var(--warm); }
.link-card h3, .admin-card h3 { font-family: 'Segoe UI'; font-size: 20px; margin: 22px 0 10px; }
.link-card p, .admin-card p { color: var(--muted); line-height: 1.55; }
.card-actions { margin-top: auto; display: flex; justify-content: space-between; gap: 12px; padding-top: 18px; color: var(--cyan); font-size: 13px; }
.card-actions span { color: var(--muted); }

.state-card { max-width: 800px; margin: 90px auto; padding: 28px; border: 1px solid var(--line); border-radius: 18px; background: var(--panel); }
.error { color: #ffd6dc !important; border-color: rgba(255, 123, 143, .4) !important; }

/* Heritage classic theme */
.compact .topbar { position: relative; }
.classic-wrap { max-width: 1020px; margin: 24px auto 70px; background: white; color: #333; border: 1px solid #9aa8b8; box-shadow: 0 30px 90px rgba(0,0,0,.45); font-family: Verdana, Arial, sans-serif; }
.classic-heritage-header { position: relative; height: 209px; overflow: hidden; background: #10284c; }
.classic-heritage-header > img:first-child { width: 100%; height: 100%; object-fit: cover; }
.classic-logo { position: absolute; left: 24px; bottom: 18px; width: 468px; max-width: calc(100% - 48px); height: auto; box-shadow: 0 3px 12px rgba(0,0,0,.4); }
.classic-toolbar { min-height: 40px; background: linear-gradient(#315f9c, #173c71); color: white; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 8px 14px; font-size: 12px; }
.classic-toolbar button { border: 1px solid #a9c9ef; background: #e9f4ff; color: #173c71; padding: 6px 9px; font-size: 11px; }
.classic-intro { padding: 18px 22px 10px; border-bottom: 1px solid #b6c3d2; }
.classic-intro h1 { color: #173c71; font-size: 22px; margin: 0 0 8px; }
.classic-intro p { color: #555; line-height: 1.5; }
.classic-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; padding: 14px; background: #e8eef4; }
.classic-panel { border: 1px solid #aebdce; background: white; min-height: 290px; }
.classic-panel h2 { color: white; background: linear-gradient(90deg, #1a4f88, #417db7); font-size: 13px; margin: 0; padding: 8px 10px; border-bottom: 1px solid #14365d; }
.classic-panel ul { margin: 0; padding: 10px 14px 12px 31px; }
.classic-panel li { list-style-image: url('/public/heritage/ulpic.png'); padding: 5px 0 8px 2px; border-bottom: 1px dotted #c4cbd2; line-height: 1.25; }
.classic-panel li:hover { list-style-image: url('/public/heritage/ulhovpic.png'); background: #eef7ff; }
.classic-panel li a { color: #164d86; display: block; }
.classic-panel li strong { font-size: 12px; display: block; }
.classic-panel li span { display: block; color: #555; font-size: 10px; margin-top: 3px; }
.classic-panel li small { color: #777; display: block; font-size: 9px; margin-top: 4px; }
.classic-footer { display: flex; align-items: center; gap: 20px; padding: 18px 24px; border-top: 1px solid #b6c3d2; color: #5c6774; font-size: 11px; }
.classic-footer img { width: 90px; }


.depth-strip.six-depth { grid-template-columns: repeat(6, 1fr); }
.funnel-progress.six-depth { grid-template-columns: repeat(6, 1fr); }
.classic-toolbar a { color: #fff; text-decoration: underline; font-size: 11px; }
.classic-selection-note { margin: 14px 0 0; padding: 10px 12px; border: 1px solid #efb94f; background: #fff8d8; color: #5c491b !important; }
.classic-panel li.selected-campaign { list-style-image: url('/public/heritage/ulhovpic.png'); background: #fff5bf; outline: 3px solid #efb94f; outline-offset: 2px; animation: selectedPulse 1.5s ease-in-out 2; }
.classic-panel li.selected-campaign a strong::after { content: '  ← selected from LinkStream'; color: #b56500; font-size: 9px; font-weight: 700; }
@keyframes selectedPulse { 0%,100% { box-shadow: 0 0 0 rgba(239,185,79,0); } 50% { box-shadow: 0 0 18px rgba(239,185,79,.8); } }

/* Landing pages */
.landing-page { max-width: 1320px; margin: 0 auto; padding: 70px 0 100px; }
.landing-hero { min-height: 560px; display: grid; grid-template-columns: 1.25fr .75fr; gap: 50px; align-items: center; border: 1px solid var(--line); border-radius: 30px; padding: 62px; background: radial-gradient(circle at 20% 20%, rgba(79,225,208,.16), transparent 38%), linear-gradient(145deg, rgba(22,42,68,.95), rgba(8,18,31,.95)); box-shadow: var(--shadow); }
.landing-hero p { color: #bac9da; font-size: 19px; line-height: 1.7; max-width: 780px; }
.landing-hero aside { padding: 28px; border-radius: 22px; border: 1px solid var(--line); background: rgba(255,255,255,.045); }
.landing-hero aside span, .landing-hero aside strong { display: block; }
.landing-hero aside span { color: var(--cyan); text-transform: uppercase; font-size: 11px; letter-spacing: .15em; }
.landing-hero aside strong { font-family: 'Segoe UI'; font-size: 30px; margin: 12px 0; }
.disclosure { color: var(--muted); display: block; margin-top: 15px; max-width: 600px; }
.landing-columns { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; margin: 22px 0; }
.landing-columns article, .benefit-grid article, .proof-faq > div, .landing-cta { border: 1px solid var(--line); background: var(--panel); border-radius: 20px; padding: 28px; }
.landing-columns article span { color: var(--cyan); text-transform: uppercase; letter-spacing: .14em; font-size: 11px; }
.landing-columns h2 { font-family: 'Segoe UI'; font-size: 28px; }
.landing-columns p, .benefit-grid p, .proof-faq p { color: var(--muted); line-height: 1.65; }
.benefit-section { margin: 52px 0; }
.benefit-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.benefit-grid b { font-size: 12px; color: var(--cyan); }
.proof-faq { display: grid; grid-template-columns: .85fr 1.15fr; gap: 18px; }
details { border-top: 1px solid var(--line); padding: 14px 0; }
summary { cursor: pointer; font-weight: 700; }
.landing-cta { margin-top: 22px; display: flex; align-items: center; justify-content: space-between; gap: 20px; background: linear-gradient(135deg, rgba(79,225,208,.13), rgba(107,168,255,.13)); }
.landing-cta h2 { font-family: 'Segoe UI'; }

/* CMS */
.admin-layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); min-height: calc(100vh - 74px); }
.admin-nav { border-right: 1px solid var(--line); background: rgba(7,15,27,.6); padding: 30px 18px; position: sticky; top: 74px; align-self: start; height: calc(100vh - 74px); }
.admin-title { padding: 0 10px 20px; }
.admin-title span { color: var(--cyan); font-size: 11px; text-transform: uppercase; letter-spacing: .14em; }
.admin-title h1 { font-family: 'Segoe UI'; font-size: 23px; margin: 5px 0; }
.admin-nav > button { width: 100%; text-align: left; border: 0; color: #aebed1; background: transparent; border-radius: 10px; padding: 11px 12px; text-transform: capitalize; margin: 2px 0; }
.admin-nav > button:hover, .admin-nav > button.active { background: rgba(255,255,255,.07); color: white; }
.admin-key { margin-top: 30px; padding: 14px 10px; border-top: 1px solid var(--line); }
.admin-key label { color: var(--muted); font-size: 11px; display: block; margin-bottom: 7px; }
.admin-key input { width: 100%; margin-bottom: 8px; }
.admin-key button { width: 100%; border: 1px solid var(--line); background: rgba(255,255,255,.06); color: white; border-radius: 8px; padding: 8px; }
.admin-content { padding: 38px 4vw 80px; overflow: hidden; }
.admin-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 24px; }
.admin-header h2 { font-family: 'Segoe UI'; font-size: 36px; text-transform: capitalize; margin: 5px 0 0; }
.metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; margin-bottom: 20px; }
.metric-grid article { border: 1px solid var(--line); background: var(--panel); border-radius: 17px; padding: 20px; }
.metric-grid span { display: block; text-transform: capitalize; color: var(--muted); font-size: 12px; }
.metric-grid strong { display: block; font-family: 'Segoe UI'; font-size: 38px; margin-top: 10px; }
.admin-two-col { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.admin-card { box-shadow: 0 12px 40px rgba(0,0,0,.09); }
.workflow-list { color: var(--muted); padding-left: 22px; line-height: 1.8; }
.event-row { display: grid; grid-template-columns: 90px 1fr auto; gap: 12px; border-top: 1px solid var(--line); padding: 11px 0; font-size: 12px; }
.event-row b { color: var(--cyan); text-transform: uppercase; }
.event-row small { color: var(--muted); }
.notice { background: rgba(79,225,208,.1); border: 1px solid rgba(79,225,208,.25); padding: 12px 15px; border-radius: 12px; margin-bottom: 15px; color: #d9fffa; }
.notice.error { background: rgba(255,123,143,.09); }
.muted { color: var(--muted); }
input, textarea, select { background: rgba(5, 13, 25, .72); color: white; border: 1px solid var(--line); border-radius: 10px; padding: 11px 12px; outline: none; }
input:focus, textarea:focus, select:focus { border-color: rgba(79,225,208,.55); }
textarea { min-height: 100px; resize: vertical; }
.inline-form { display: grid; grid-template-columns: 1fr 1fr 110px auto; gap: 10px; margin-bottom: 18px; }
.table-wrap { overflow: auto; border: 1px solid var(--line); border-radius: 16px; }
table { width: 100%; border-collapse: collapse; min-width: 870px; background: rgba(9,19,33,.66); }
th, td { text-align: left; border-bottom: 1px solid var(--line); padding: 14px; vertical-align: top; }
th { color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .1em; }
td small { display: block; color: var(--muted); margin-top: 5px; }
.rotation-chip, .tag-row span { display: inline-block; border: 1px solid var(--line); border-radius: 999px; padding: 5px 8px; font-size: 10px; color: #c9d7e7; margin: 2px 4px 2px 0; }
.campaign-form { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; margin-bottom: 18px; }
.campaign-form textarea { grid-column: 1 / 4; }
.campaign-form button { justify-self: start; }
.campaign-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.tag-row { display: flex; gap: 5px; flex-wrap: wrap; align-items: center; margin-top: 14px; }
.tag-row a { color: var(--cyan); font-size: 12px; margin-left: auto; }
.content-form { display: flex; flex-direction: column; gap: 10px; }
.content-form h3 { margin-top: 0; }
.content-form small { color: var(--muted); line-height: 1.5; }
.content-output h4 { color: var(--muted); margin: 24px 0 8px; }
.workflow-step { display: flex; justify-content: space-between; border-top: 1px solid var(--line); padding: 9px 0; font-size: 12px; }
.workflow-step span { text-transform: capitalize; }
.workflow-step b { color: var(--cyan); }
.content-output .primary-button, .content-output .secondary-button { margin-top: 18px; margin-right: 8px; }
.code-card pre { max-height: 580px; overflow: auto; white-space: pre-wrap; color: #b8f6ee; background: #06101b; border-radius: 12px; padding: 16px; font-size: 11px; line-height: 1.5; }

@media (max-width: 1100px) {
  .card-grid, .benefit-grid { grid-template-columns: repeat(2, 1fr); }
  .metric-grid { grid-template-columns: repeat(2, 1fr); }
  .campaign-list { grid-template-columns: repeat(2, 1fr); }
  .classic-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 820px) {
  .topbar { padding: 0 18px; }
  .topbar nav a:not(:last-child) { display: none; }
  .hero, .landing-hero { grid-template-columns: 1fr; padding: 48px 22px; }
  .hero { padding-top: 58px; }
  .portal-toolbar, .magazine-grid, .landing-page { margin-left: 16px; margin-right: 16px; }
  .admin-layout { grid-template-columns: 1fr; }
  .admin-nav { position: relative; top: 0; height: auto; border-right: 0; border-bottom: 1px solid var(--line); display: flex; overflow: auto; gap: 4px; padding: 14px; }
  .admin-title, .admin-key { display: none; }
  .admin-nav > button { white-space: nowrap; width: auto; }
  .admin-content { padding: 24px 16px 60px; }
  .admin-two-col, .landing-columns, .proof-faq { grid-template-columns: 1fr; }
  .inline-form, .campaign-form { grid-template-columns: 1fr; }
  .campaign-form textarea { grid-column: auto; }
}

@media (max-width: 600px) {
  .card-grid, .metric-grid, .campaign-list, .benefit-grid, .classic-grid { grid-template-columns: 1fr; }
  .hero h1, .landing-hero h1 { font-size: 42px; }
  .portal-toolbar, .landing-cta { align-items: flex-start; flex-direction: column; }
  .classic-wrap { margin: 0; border: 0; }
  .classic-logo { width: calc(100% - 48px); }
}

/* v0.2 multi-depth funnel */
.depth-strip { max-width: 1320px; margin: 0 auto 24px; display: grid; grid-template-columns: repeat(5, 1fr); border: 1px solid var(--line); border-radius: 18px; overflow: hidden; background: rgba(255,255,255,.035); }
.depth-strip article { padding: 16px 18px; border-right: 1px solid var(--line); display: flex; align-items: center; gap: 10px; }
.depth-strip article:last-child { border-right: 0; }
.depth-strip b { color: var(--cyan); font-size: 12px; }
.depth-strip span { color: #d6e1ed; text-transform: capitalize; font-size: 13px; }

.funnel-stage { max-width: 1320px; margin: 0 auto; padding: 34px 0 100px; }
.funnel-progress { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; margin-bottom: 24px; }
.funnel-progress a, .funnel-progress > span { border: 1px solid var(--line); background: rgba(255,255,255,.035); border-radius: 13px; padding: 11px 13px; display: flex; gap: 8px; align-items: center; color: var(--muted); text-transform: capitalize; font-size: 11px; }
.funnel-progress a.active { color: white; border-color: rgba(79,225,208,.5); background: rgba(79,225,208,.1); }
.funnel-progress b { color: var(--cyan); }
.funnel-disclosure { color: var(--muted); text-align: center; font-size: 12px; margin-top: 24px; }
.stage-closing { border: 1px solid var(--line); border-radius: 24px; padding: 36px; display: flex; align-items: center; justify-content: space-between; gap: 20px; background: linear-gradient(135deg, rgba(79,225,208,.12), rgba(107,168,255,.12)); margin-top: 24px; }
.stage-closing h2 { font-family: 'Segoe UI'; margin: 0; font-size: clamp(26px, 4vw, 46px); }
.text-button { border: 0; background: transparent; color: var(--cyan); padding: 9px; }
.inline-error { border: 1px solid rgba(255,123,143,.45); background: rgba(255,123,143,.1); border-radius: 10px; padding: 10px; color: #ffd6dc; }

/* Lister-inspired stage */
.lister-stage { --lister-warm: #f8c362; }
.lister-hero { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(330px, .7fr); gap: 22px; }
.lister-message, .lead-card, .lister-how, .lister-features, .testimonial-grid blockquote { border: 1px solid var(--line); border-radius: 24px; background: var(--panel); }
.lister-message { padding: 48px; background: radial-gradient(circle at top left, rgba(248,195,98,.16), transparent 35%), linear-gradient(145deg, rgba(22,42,68,.95), rgba(8,18,31,.96)); }
.lister-message h1 { font-family: 'Segoe UI'; font-size: clamp(42px, 6vw, 76px); line-height: 1; letter-spacing: -.05em; margin: 16px 0; }
.lister-message h2 { color: #c9d7e7; font-weight: 500; line-height: 1.45; }
.lister-message > p { color: var(--muted); line-height: 1.7; max-width: 800px; }
.video-placeholder { min-height: 240px; margin-top: 28px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(135deg, #102842, #07121f); display: grid; place-items: center; align-content: center; gap: 8px; color: var(--muted); overflow: hidden; }
.video-placeholder b { color: white; font-size: 20px; }
.video-placeholder iframe { width: 100%; height: 100%; min-height: 240px; border: 0; }
.lead-card { padding: 28px; display: flex; flex-direction: column; gap: 11px; position: sticky; top: 94px; align-self: start; }
.lead-card > span { color: var(--lister-warm); text-transform: uppercase; letter-spacing: .14em; font-size: 11px; }
.lead-card h3 { margin: 0; font-size: 27px; }
.lead-card p, .lead-card small { color: var(--muted); line-height: 1.5; }
.lead-card label { display: grid; gap: 6px; color: #cfdae7; font-size: 12px; }
.lead-card .consent-row { display: grid; grid-template-columns: 18px 1fr; align-items: start; line-height: 1.4; }
.lead-card .consent-row input { width: 16px; height: 16px; padding: 0; }
.lister-how { margin-top: 22px; padding: 28px; }
.how-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.how-grid article { padding: 22px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.025); }
.how-grid b { color: var(--lister-warm); text-transform: uppercase; font-size: 11px; }
.how-grid h3 { font-size: 23px; margin: 12px 0; }
.how-grid p { color: var(--muted); line-height: 1.6; }
.lister-features { margin-top: 22px; padding: 38px; display: grid; grid-template-columns: 1.3fr .7fr; gap: 30px; }
.lister-features h2 { font-family: 'Segoe UI'; font-size: 36px; margin: 12px 0; }
.lister-features p, .lister-features li { color: var(--muted); line-height: 1.65; }
.lister-features aside { min-height: 260px; border-radius: 20px; background: linear-gradient(145deg, rgba(248,195,98,.15), rgba(79,225,208,.08)); display: grid; place-items: center; align-content: center; gap: 6px; text-align: center; padding: 24px; }
.lister-features aside strong { font-size: 30px; }
.lister-features aside span { color: var(--muted); }
.lister-features aside b { color: var(--cyan); font-size: 22px; }
.testimonial-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 22px; }
.testimonial-grid blockquote { margin: 0; padding: 25px; }
.testimonial-grid blockquote p { color: #dce7f2; line-height: 1.7; min-height: 90px; }
.testimonial-grid footer { display: grid; gap: 3px; }
.testimonial-grid footer span { color: var(--muted); font-size: 12px; }

/* Ebook-inspired stage */
.ebook-stage { --book-accent: #ff8d78; }
.ebook-hero { min-height: 610px; border: 1px solid var(--line); border-radius: 30px; padding: 62px; display: grid; grid-template-columns: 1.15fr .85fr; gap: 50px; align-items: center; background: radial-gradient(circle at 20% 20%, rgba(255,141,120,.18), transparent 37%), linear-gradient(145deg, rgba(33,34,56,.98), rgba(8,18,31,.97)); }
.ebook-hero h1 { font-family: 'Segoe UI'; font-size: clamp(48px, 7vw, 88px); line-height: .96; letter-spacing: -.055em; margin: 18px 0; }
.ebook-hero p { color: #c8d2df; line-height: 1.7; font-size: 19px; max-width: 760px; }
.price-pill { display: inline-flex; border: 1px solid rgba(255,141,120,.42); color: #ffd2c9; background: rgba(255,141,120,.09); border-radius: 999px; padding: 8px 12px; margin: 8px 10px 24px 0; }
.book-cover { min-height: 470px; max-width: 360px; justify-self: center; width: 100%; border-radius: 10px 28px 28px 10px; background: linear-gradient(160deg, #ff9d89, #7d3658 55%, #1b1b39); box-shadow: -18px 18px 0 #e9d8c5, -28px 28px 70px rgba(0,0,0,.45); padding: 42px; display: flex; flex-direction: column; justify-content: space-between; transform: rotate(2deg); }
.book-cover span { font-size: 11px; text-transform: uppercase; letter-spacing: .16em; }
.book-cover h2 { font-family: Georgia, serif; font-size: 42px; line-height: 1.05; margin: 20px 0; }
.author-section { margin-top: 22px; display: grid; grid-template-columns: 180px 1fr; gap: 28px; border: 1px solid var(--line); border-radius: 24px; padding: 36px; background: var(--panel); }
.author-avatar { width: 150px; height: 150px; border-radius: 50%; display: grid; place-items: center; font-family: Georgia, serif; font-size: 72px; background: linear-gradient(135deg, var(--book-accent), #7d3658); }
.author-section h2 { font-family: Georgia, serif; font-size: 38px; margin: 8px 0 2px; }
.author-section h3 { color: var(--muted); font-weight: 500; margin-top: 0; }
.author-section blockquote { font-family: Georgia, serif; font-size: 23px; color: #ffd2c9; margin-left: 0; }
.author-section p { color: var(--muted); line-height: 1.7; }
.learning-section { margin-top: 22px; display: grid; grid-template-columns: 1.25fr .75fr; gap: 18px; }
.learning-section > div, .learning-section aside { border: 1px solid var(--line); border-radius: 24px; background: var(--panel); padding: 30px; }
.learning-section h2 { font-family: Georgia, serif; font-size: 36px; }
.learning-section article { display: grid; grid-template-columns: 44px 1fr; border-top: 1px solid var(--line); padding: 14px 0; }
.learning-section article b { color: var(--book-accent); }
.learning-section article p { margin: 0; color: var(--muted); }
.learning-section aside { display: flex; flex-direction: column; gap: 10px; }
.learning-section aside span { border: 1px solid var(--line); border-radius: 999px; padding: 10px 12px; }
.ebook-gallery { margin-top: 22px; border: 1px solid var(--line); border-radius: 24px; padding: 28px; background: var(--panel); }
.ebook-gallery > div:last-child { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.ebook-gallery article { min-height: 210px; border-radius: 18px; padding: 22px; background: linear-gradient(145deg, rgba(255,141,120,.12), rgba(107,168,255,.08)); border: 1px solid var(--line); }
.ebook-gallery article b { color: var(--book-accent); }
.ebook-gallery article h3 { margin-top: 60px; }
.ebook-gallery article p { color: var(--muted); }
.pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 22px; }
.pricing-grid article { border: 1px solid var(--line); border-radius: 22px; padding: 28px; background: var(--panel); }
.pricing-grid article.featured { border-color: rgba(255,141,120,.45); transform: translateY(-5px); }
.pricing-grid span, .pricing-grid strong { display: block; }
.pricing-grid span { color: var(--muted); text-transform: uppercase; letter-spacing: .12em; font-size: 11px; }
.pricing-grid strong { font-size: 36px; margin: 12px 0; }
.pricing-grid p { color: var(--muted); line-height: 1.6; }

/* Magazine/site-inspired stage */
.site-stage { color: #e9eef7; }
.site-header { border: 1px solid var(--line); border-radius: 18px 18px 0 0; padding: 20px 24px; display: flex; justify-content: space-between; gap: 24px; align-items: center; background: #f7f4ed; color: #1d2630; }
.site-header > div { display: grid; }
.site-header strong { font-family: Georgia, serif; font-size: 29px; }
.site-header span { color: #66717b; font-size: 12px; }
.site-header nav { display: flex; gap: 18px; font-size: 12px; font-weight: 700; text-transform: uppercase; }
.site-announcement { background: #c54239; color: white; padding: 10px 18px; text-align: center; font-size: 12px; }
.site-feature { min-height: 600px; display: grid; grid-template-columns: 1.3fr .7fr; gap: 35px; align-items: center; padding: 60px; background: #f7f4ed; color: #1c2731; border-left: 1px solid var(--line); border-right: 1px solid var(--line); }
.site-feature > div > span, .site-articles article > span { color: #c54239; text-transform: uppercase; letter-spacing: .13em; font-size: 11px; font-weight: 700; }
.site-feature h1 { font-family: Georgia, serif; font-size: clamp(48px, 7vw, 90px); line-height: .95; letter-spacing: -.045em; margin: 17px 0; }
.site-feature .dek { font-family: Georgia, serif; font-size: 24px; line-height: 1.45; }
.site-feature p { color: #5e6972; line-height: 1.75; }
.site-feature aside { min-height: 390px; border: 10px solid #1c2731; padding: 34px; background: linear-gradient(150deg, #c54239, #742d34 60%, #1c2731); color: white; display: flex; flex-direction: column; justify-content: space-between; }
.site-feature aside b { text-transform: uppercase; letter-spacing: .15em; font-size: 11px; }
.site-feature aside span { font-family: Georgia, serif; font-size: 48px; line-height: 1; }
.site-feature aside small { color: #f0c9c6; }
.site-articles, .site-services, .site-about, .site-faq, .site-contact { border: 1px solid var(--line); border-top: 0; background: #f7f4ed; color: #1c2731; padding: 42px; }
.site-articles .section-heading span, .site-faq .section-heading span { color: #68747d; }
.article-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: #c9c4b8; border: 1px solid #c9c4b8; }
.article-grid article { background: #fffdf8; padding: 25px; min-height: 250px; }
.article-grid article h3 { font-family: Georgia, serif; font-size: 24px; }
.article-grid article p { color: #68747d; line-height: 1.65; }
.article-grid article a { color: #c54239; font-weight: 700; font-size: 12px; }
.site-services { background: #1c2731; color: white; }
.site-services > div:last-child { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.site-services article { border: 1px solid rgba(255,255,255,.15); padding: 25px; }
.site-services article b { color: #f07f74; }
.site-services article p { color: #b7c2cb; line-height: 1.6; }
.site-about { display: grid; grid-template-columns: 1.3fr .7fr; gap: 30px; }
.site-about h2 { font-family: Georgia, serif; font-size: 40px; }
.site-about p { color: #68747d; line-height: 1.75; }
.site-about aside { display: flex; flex-direction: column; gap: 9px; }
.site-about aside span { border-bottom: 1px solid #d7d1c6; padding: 9px 0; }
.site-faq details { border-color: #d7d1c6; }
.site-faq details p { color: #68747d; }
.site-contact { display: flex; justify-content: space-between; align-items: center; gap: 30px; border-radius: 0 0 18px 18px; }
.site-contact h2 { font-family: Georgia, serif; font-size: 40px; margin: 8px 0; }
.site-contact p { color: #68747d; }

/* Funnel CMS */
.funnel-admin-layout { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 16px; }
.funnel-list { display: flex; flex-direction: column; gap: 8px; max-height: calc(100vh - 160px); overflow: auto; position: sticky; top: 94px; align-self: start; }
.funnel-list button { text-align: left; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.03); color: white; padding: 13px; display: grid; gap: 5px; }
.funnel-list button.active { border-color: rgba(79,225,208,.5); background: rgba(79,225,208,.09); }
.funnel-list span, .funnel-list small { color: var(--muted); font-size: 10px; line-height: 1.4; }
.funnel-settings { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.funnel-settings > div:first-child { grid-column: 1 / -1; }
.funnel-settings label { display: grid; gap: 6px; color: var(--muted); font-size: 11px; }
.funnel-settings label textarea { min-height: 80px; }
.funnel-settings .stack-actions { grid-column: 1 / -1; }
.template-editor-stack { margin-top: 16px; display: grid; gap: 12px; }
.template-editor { border: 1px solid var(--line); border-radius: 16px; background: var(--panel); padding: 0; overflow: hidden; }
.template-editor summary { padding: 18px; display: flex; justify-content: space-between; gap: 20px; align-items: center; border-top: 0; }
.template-editor summary div { display: grid; gap: 5px; }
.template-editor summary span, .template-editor summary small { color: var(--muted); font-size: 11px; }
.template-editor textarea { width: calc(100% - 36px); margin: 0 18px 18px; min-height: 520px; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 11px; line-height: 1.5; color: #b8f6ee; }
.manifest-fields { display: flex; flex-wrap: wrap; gap: 7px; padding: 0 18px 14px; }
.manifest-fields span { border: 1px solid var(--line); border-radius: 9px; padding: 7px 9px; color: var(--muted); font-size: 10px; }
.manifest-fields b { color: white; margin-right: 5px; }
.depth-preview { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 16px 0; }
.depth-preview article { border: 1px solid var(--line); border-radius: 12px; padding: 12px; display: grid; gap: 5px; }
.depth-preview b { color: var(--cyan); }
.depth-preview span { color: var(--muted); text-transform: capitalize; font-size: 11px; }
.assumption-row { border-top: 1px solid var(--line); padding: 9px 0; color: #f5d7a4; font-size: 12px; }

@media (max-width: 1100px) {
  .depth-strip, .funnel-progress { grid-template-columns: repeat(3, 1fr); }
  .lister-hero, .ebook-hero, .site-feature { grid-template-columns: 1fr; }
  .lead-card { position: relative; top: 0; }
  .ebook-gallery > div:last-child, .article-grid { grid-template-columns: repeat(2, 1fr); }
  .funnel-admin-layout { grid-template-columns: 1fr; }
  .funnel-list { position: relative; top: 0; max-height: none; display: grid; grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 820px) {
  .depth-strip, .funnel-stage { margin-left: 16px; margin-right: 16px; }
  .funnel-progress { grid-template-columns: repeat(2, 1fr); }
  .lister-message, .ebook-hero, .site-feature { padding: 32px 22px; }
  .lister-features, .learning-section, .author-section, .site-about { grid-template-columns: 1fr; }
  .how-grid, .testimonial-grid, .pricing-grid, .site-services > div:last-child { grid-template-columns: 1fr; }
  .site-header { align-items: flex-start; flex-direction: column; }
  .site-header nav { flex-wrap: wrap; }
  .site-contact, .stage-closing { align-items: flex-start; flex-direction: column; }
  .funnel-settings { grid-template-columns: 1fr; }
  .funnel-settings > div:first-child, .funnel-settings .stack-actions { grid-column: auto; }
}

@media (max-width: 600px) {
  .depth-strip, .funnel-progress, .ebook-gallery > div:last-child, .article-grid, .funnel-list, .depth-preview { grid-template-columns: 1fr; }
  .site-articles, .site-services, .site-about, .site-faq, .site-contact { padding: 26px 20px; }
  .author-section { grid-template-columns: 1fr; }
  .book-cover { min-height: 390px; }
}

/* =========================================================
   v0.7 — modern LinkStream → nthIncome → explicit Step 3 Funnel Page → template stream
   ========================================================= */
.template-page { min-height: 100vh; color: #1b2630; }
.template-rail { min-height: 54px; display: flex; align-items: center; gap: 18px; padding: 8px max(18px, 4vw); color: #d8e5f4; background: #07111d; border-bottom: 1px solid rgba(255,255,255,.11); position: relative; z-index: 20; }
.template-rail > a { font-size: 12px; font-weight: 700; white-space: nowrap; }
.template-rail > span { color: #90a5bc; font-size: 11px; white-space: nowrap; }
.template-rail .funnel-progress { flex: 1; max-width: none; margin: 0; display: flex; justify-content: flex-end; gap: 6px; padding: 0; }
.template-rail .funnel-progress a, .template-rail .funnel-progress > span { min-height: 34px; padding: 5px 9px; border: 1px solid rgba(255,255,255,.1); background: rgba(255,255,255,.035); display: flex; align-items: center; gap: 7px; }
.template-rail .funnel-progress b { font-size: 9px; color: #53e2cf; }
.template-rail .funnel-progress span { font-size: 9px; }
.template-kicker { display: block; font-size: 11px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.template-section-title { display: flex; gap: 16px; align-items: flex-start; margin-bottom: 26px; }
.template-section-title > span { width: 44px; height: 44px; flex: 0 0 44px; display: grid; place-items: center; border-radius: 50%; font-weight: 800; }
.template-section-title h2 { margin: 0 0 6px; font-size: clamp(28px, 3vw, 42px); }
.template-section-title p { margin: 0; color: #73808b; }

/* Lister source-template adaptation */
.lister-template { background: #f2f2f2; font-family: 'Trebuchet MS', 'Segoe UI', sans-serif; }
.lister-template-header { min-height: 84px; padding: 0 max(24px, 6vw); display: flex; justify-content: space-between; align-items: center; gap: 30px; background: #17191d; color: white; border-bottom: 5px solid #db432f; }
.lister-wordmark { font-size: 34px; font-weight: 200; letter-spacing: -.05em; display: flex; align-items: baseline; gap: 2px; }
.lister-wordmark > span { font-weight: 800; color: #ef5a43; }
.lister-wordmark small { margin-left: 14px; font-size: 10px; color: #9ea4aa; letter-spacing: .12em; text-transform: uppercase; }
.lister-template-header nav { display: flex; flex-wrap: wrap; gap: 2px; }
.lister-template-header nav a { padding: 30px 13px; font-size: 12px; text-transform: uppercase; color: #c9cdd2; }
.lister-template-header nav a:hover { background: #292c31; color: #ef5a43; }
.lister-template-hero { min-height: 665px; padding: 62px max(24px, 6vw); display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(310px, .65fr); gap: 52px; align-items: start; background: linear-gradient(145deg, rgba(20,22,27,.94), rgba(43,46,51,.95)), url('/public/templates/lister/screen1.jpg') center/cover; color: white; position: relative; overflow: hidden; }
.lister-template-hero::after { content: ''; position: absolute; inset: auto 0 0; height: 7px; background: linear-gradient(90deg,#dc4430 0 33%,#f3a126 33% 66%,#77a64a 66%); }
.lister-pitch { max-width: 860px; }
.lister-pitch .template-kicker { color: #ef5a43; }
.lister-pitch h1 { font-size: clamp(42px, 5vw, 76px); line-height: .98; letter-spacing: -.05em; font-weight: 200; margin: 15px 0 16px; }
.lister-pitch h2 { font-size: clamp(19px, 2vw, 27px); font-weight: 300; color: #dadde0; line-height: 1.45; margin: 0 0 16px; }
.lister-pitch > p { max-width: 760px; color: #aeb4ba; line-height: 1.65; }
.lister-media-frame { min-height: 340px; margin-top: 26px; background: #090a0c; border: 9px solid #272a2e; border-radius: 4px; overflow: hidden; position: relative; box-shadow: 0 25px 60px rgba(0,0,0,.5); }
.lister-media-frame iframe, .lister-window-image { width: 100%; height: 100%; min-height: 340px; object-fit: cover; display: block; }
.media-play { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; background: linear-gradient(transparent, rgba(0,0,0,.42)); }
.media-play > span { width: 74px; height: 74px; margin: 0 auto 12px; display: grid; place-items: center; border-radius: 50%; background: rgba(239,90,67,.92); font-size: 30px; padding-left: 4px; }
.media-play b, .media-play small { display: block; }
.media-play small { color: #bcc2c8; margin-top: 4px; }
.lister-subscribe-card { position: sticky; top: 70px; padding: 30px 26px 26px; background: #f6f6f4; color: #31353a; box-shadow: 0 18px 60px rgba(0,0,0,.42); border-radius: 3px; border-top: 6px solid #ef5a43; overflow: hidden; }
.subscribe-ribbon { margin: -30px -26px 18px; padding: 17px 20px; background: #ef5a43; color: white; font-size: 15px; font-weight: 800; text-align: center; letter-spacing: .04em; }
.lister-product-image { width: 155px; max-height: 140px; object-fit: contain; float: right; margin: -8px -8px 4px 12px; }
.lister-subscribe-card h3 { font-size: 26px; line-height: 1.1; margin: 0 0 8px; }
.lister-subscribe-card > p { color: #747b82; font-size: 13px; line-height: 1.45; }
.lister-subscribe-card label:not(.lister-consent) { display: grid; gap: 4px; margin: 9px 0; font-size: 10px; text-transform: uppercase; color: #747b82; letter-spacing: .08em; }
.lister-subscribe-card input { width: 100%; border: 1px solid #d0d3d5; background: white; padding: 12px; color: #222; }
.lister-consent { display: flex; gap: 8px; align-items: flex-start; font-size: 10px; line-height: 1.35; color: #6d747a; margin: 12px 0; }
.lister-consent input { width: auto; margin-top: 2px; }
.lister-submit, .lister-final-button { width: 100%; border: 0; background: linear-gradient(#f06d51,#d93f2b); color: white; padding: 14px 17px; font-weight: 800; text-align: center; box-shadow: inset 0 1px rgba(255,255,255,.25); }
.lister-skip { width: 100%; border: 0; background: transparent; color: #7b8288; padding: 10px; font-size: 11px; }
.lister-subscribe-card > small { display: block; color: #8d9499; line-height: 1.35; }
.lister-steps, .lister-screens { padding: 74px max(24px, 7vw); background: #fff; }
.lister-steps .template-section-title > span, .lister-screens .template-section-title > span { background: #ef5a43; color: white; }
.lister-steps > div:last-child { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.lister-steps article { padding: 25px; border-left: 1px solid #d8dbde; position: relative; }
.lister-steps article > span { display: block; width: 58px; height: 58px; border-radius: 50%; background: #272a2e; color: white; display: grid; place-items: center; font-size: 24px; margin-bottom: 18px; }
.lister-steps h3 { font-size: 22px; margin: 0 0 8px; }
.lister-steps p { color: #747b82; line-height: 1.6; }
.lister-feature-band { padding: 70px max(24px, 7vw); display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 50px; background: #272a2e; color: white; }
.lister-feature-band .template-kicker { color: #ef5a43; }
.lister-feature-band h2 { font-size: clamp(34px,4vw,58px); line-height: 1; font-weight: 300; }
.lister-feature-band p { color: #afb5bb; line-height: 1.65; }
.lister-feature-band li { padding: 8px 0; color: #d7dade; }
.lister-feature-image { width: 100%; max-height: 430px; object-fit: contain; filter: drop-shadow(0 26px 30px rgba(0,0,0,.4)); }
.lister-screen-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.lister-screen-grid figure { margin: 0; background: #292c31; overflow: hidden; box-shadow: 0 12px 25px rgba(0,0,0,.16); }
.lister-screen-grid img { width: 100%; aspect-ratio: 1.4; object-fit: cover; display: block; }
.lister-screen-grid figcaption { padding: 15px; color: white; }
.lister-screen-grid b, .lister-screen-grid span { display: block; }
.lister-screen-grid span { color: #aeb4ba; font-size: 11px; margin-top: 5px; line-height: 1.45; }
.lister-proof { padding: 62px max(24px,7vw); display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; background: #e7e7e5; }
.lister-proof blockquote { margin: 0; padding: 26px; background: white; border-bottom: 4px solid #ef5a43; }
.lister-proof blockquote > span { color: #ef5a43; font-size: 42px; line-height: .7; }
.lister-proof p { color: #596168; line-height: 1.65; }
.lister-proof footer b, .lister-proof footer small { display: block; }
.lister-proof footer small { color: #8b9297; }
.lister-final { padding: 58px max(24px,7vw); display: flex; justify-content: space-between; align-items: center; gap: 30px; background: #ef5a43; color: white; }
.lister-final h2 { margin: 0; font-size: clamp(27px,3vw,46px); font-weight: 300; }
.lister-final-button { width: auto; min-width: 250px; background: #24272b; padding: 16px 22px; }
.lister-footer { padding: 22px max(24px,7vw); display: flex; justify-content: space-between; gap: 30px; background: #17191d; color: #8d949b; font-size: 11px; }

/* Ebook source-template adaptation */
.ebook-template { background: #f3ede4; font-family: Georgia, 'Times New Roman', serif; color: #37302b; }
.ebook-template-header { min-height: 90px; padding: 0 max(24px,6vw); display: flex; justify-content: space-between; align-items: center; gap: 24px; background: rgba(255,255,255,.82); border-bottom: 1px solid #d7cabc; }
.ebook-brand { display: flex; align-items: center; gap: 12px; font: 700 22px/1 'Segoe UI', sans-serif; color: #613d2b; }
.ebook-brand img { width: 34px; height: 34px; object-fit: contain; }
.ebook-template-header nav { display: flex; flex-wrap: wrap; gap: 22px; font: 700 11px/1 'Segoe UI', sans-serif; text-transform: uppercase; color: #7d6a5d; }
.ebook-template-header nav a:hover { color: #c25c3a; }
.ebook-template-hero { min-height: 600px; padding: 70px max(24px,7vw); display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 40px; color: white; background: linear-gradient(120deg, rgba(71,42,30,.93), rgba(145,71,44,.86)), url('/public/templates/ebook/author.jpg') center/cover; }
.ebook-template-hero .template-kicker { color: #ffd0a5; }
.ebook-template-hero h1 { font-size: clamp(45px,6vw,82px); line-height: .98; font-weight: 400; margin: 14px 0 20px; letter-spacing: -.04em; }
.ebook-template-hero h2 { font: 300 clamp(17px,2vw,24px)/1.55 'Segoe UI', sans-serif; color: #f4ddd0; max-width: 750px; }
.ebook-price { display: inline-block; margin: 22px 0 18px; padding: 9px 15px; border: 1px solid rgba(255,255,255,.35); border-radius: 30px; font: 700 12px/1 'Segoe UI',sans-serif; text-transform: uppercase; letter-spacing: .12em; }
.ebook-buy-button { display: inline-block; background: #f1b24c; color: #3b261a; padding: 16px 22px; font: 800 13px/1 'Segoe UI', sans-serif; text-transform: uppercase; }
.ebook-hero-art { min-height: 420px; position: relative; display: grid; place-items: center; }
.ebook-hero-art > img { max-width: 90%; max-height: 430px; object-fit: contain; filter: drop-shadow(0 32px 30px rgba(0,0,0,.45)); }
.ebook-cover-copy { position: absolute; left: 8%; bottom: 10%; max-width: 230px; padding: 15px 18px; background: rgba(54,31,20,.86); color: white; }
.ebook-cover-copy small, .ebook-cover-copy strong { display: block; }
.ebook-cover-copy strong { font-size: 22px; line-height: 1.1; margin-top: 5px; }
.ebook-author { padding: 72px max(24px,7vw); display: grid; grid-template-columns: 280px 1fr; gap: 46px; align-items: center; background: #fffaf3; }
.ebook-author > img { width: 100%; aspect-ratio: 1/1.1; object-fit: cover; border: 10px solid white; box-shadow: 0 16px 40px rgba(78,51,34,.18); }
.ebook-author .template-kicker { color: #b45d3f; }
.ebook-author blockquote { font-size: clamp(24px,3vw,39px); line-height: 1.25; color: #6d4b3b; margin: 12px 0 22px; }
.ebook-author h2 { font-size: 32px; margin: 0; }
.ebook-author h3 { font: 700 12px/1.2 'Segoe UI',sans-serif; color: #b45d3f; text-transform: uppercase; letter-spacing: .1em; }
.ebook-author p { color: #756960; line-height: 1.75; font-family: 'Segoe UI',sans-serif; }
.ebook-learning { padding: 72px max(24px,7vw); display: grid; grid-template-columns: 1.2fr .8fr; gap: 48px; background: #4d2f25; color: white; }
.template-section-title.light > span { background: #f1b24c; color: #4d2f25; }
.template-section-title.light p { color: #d5bbb0; }
.ebook-learning article { display: grid; grid-template-columns: 52px 1fr; gap: 16px; padding: 16px 0; border-bottom: 1px solid rgba(255,255,255,.14); }
.ebook-learning article b { color: #f1b24c; font-size: 20px; }
.ebook-learning article p { margin: 0; color: #eadbd4; font-family: 'Segoe UI',sans-serif; line-height: 1.55; }
.ebook-devices { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.ebook-devices span { padding: 8px 10px; border: 1px solid rgba(255,255,255,.2); font: 700 10px/1 'Segoe UI',sans-serif; text-transform: uppercase; }
.ebook-book-description { width: 100%; max-height: 460px; object-fit: contain; filter: drop-shadow(0 25px 30px rgba(0,0,0,.4)); }
.ebook-gallery-template, .ebook-pricing-template { padding: 72px max(24px,7vw); background: #fffaf3; }
.ebook-gallery-template .template-section-title > span, .ebook-pricing-template .template-section-title > span { background: #b45d3f; color: white; }
.ebook-gallery-template > div:last-child { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.ebook-gallery-template figure { margin: 0; background: #ede2d5; overflow: hidden; }
.ebook-gallery-template figure img { width: 100%; aspect-ratio: 1.35; object-fit: contain; padding: 10px; background: #5d382a; }
.ebook-gallery-template figcaption { padding: 15px; }
.ebook-gallery-template b, .ebook-gallery-template span { display: block; }
.ebook-gallery-template span { color: #786b62; font: 12px/1.5 'Segoe UI',sans-serif; margin-top: 5px; }
.ebook-testimonials { padding: 65px max(24px,7vw); display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; background: #e8d9c7; }
.ebook-testimonials blockquote { margin: 0; background: #fffaf3; padding: 25px; border-top: 5px solid #b45d3f; }
.ebook-testimonials p { font-size: 19px; line-height: 1.5; }
.ebook-testimonials footer b, .ebook-testimonials footer span { display: block; }
.ebook-testimonials footer span { color: #8c776b; font: 11px/1.4 'Segoe UI',sans-serif; }
.ebook-pricing-template > div:last-child { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.ebook-pricing-template article { padding: 28px; border: 1px solid #d8c8b8; background: white; text-align: center; }
.ebook-pricing-template article.featured { transform: translateY(-8px); border: 4px solid #b45d3f; }
.ebook-pricing-template article > span { color: #b45d3f; font: 800 11px/1 'Segoe UI',sans-serif; text-transform: uppercase; }
.ebook-pricing-template article > strong { display: block; font-size: 42px; margin: 14px 0; }
.ebook-pricing-template article p { color: #796b62; font: 13px/1.55 'Segoe UI',sans-serif; }
.ebook-pricing-template article a { display: block; background: #4d2f25; color: white; padding: 12px; font: 800 11px/1 'Segoe UI',sans-serif; text-transform: uppercase; }
.ebook-contact-template { padding: 55px max(24px,7vw); display: flex; justify-content: space-between; align-items: center; gap: 30px; background: #b45d3f; color: white; }
.ebook-contact-template h2 { margin: 7px 0; font-size: clamp(29px,4vw,48px); }
.ebook-contact-template p { max-width: 760px; font-family: 'Segoe UI',sans-serif; color: #f5dfd4; }
.ebook-contact-template > a { background: #f1b24c; color: #4d2f25; padding: 16px 22px; font: 800 12px/1 'Segoe UI',sans-serif; text-transform: uppercase; white-space: nowrap; }
.ebook-footer { padding: 22px max(24px,7vw); display: flex; justify-content: space-between; gap: 25px; background: #3a241d; color: #cdb8ad; font: 11px/1.4 'Segoe UI',sans-serif; }

/* Full multipage site derived from the multipurpose magazine template */
.generated-site-template { padding-bottom: 70px; background: #1a2028 url('/public/templates/site/background.jpg') fixed center/cover; font-family: Arial, 'Segoe UI', sans-serif; }
.generated-site-frame { width: min(1220px, calc(100% - 34px)); margin: 26px auto 0; background: #fff; box-shadow: 0 30px 100px rgba(0,0,0,.52); }
.generated-site-announcement { padding: 9px 28px; background: #242b33; color: #cbd1d7; font-size: 11px; border-bottom: 1px solid #3e464e; }
.generated-site-header { min-height: 116px; padding: 24px 30px; display: flex; justify-content: space-between; align-items: center; gap: 30px; background: #fafafa; }
.generated-site-brand strong, .generated-site-brand span { display: block; }
.generated-site-brand strong { color: #252c33; font: 700 clamp(28px,4vw,48px)/.9 Georgia,serif; letter-spacing: -.04em; }
.generated-site-brand span { margin-top: 9px; color: #8c949b; font-size: 11px; text-transform: uppercase; letter-spacing: .12em; }
.generated-header-ad { width: min(470px,48%); min-height: 70px; padding: 13px 18px; border: 1px solid #d7dadd; background: #f2f4f5; display: grid; grid-template-columns: auto 1fr; column-gap: 13px; align-content: center; }
.generated-header-ad small { grid-row: 1/3; align-self: center; padding: 6px; background: #d84e42; color: white; writing-mode: vertical-rl; font-size: 8px; text-transform: uppercase; }
.generated-header-ad b { color: #2f3840; }
.generated-header-ad span { color: #8a9298; font-size: 10px; margin-top: 4px; }
.generated-site-nav { display: flex; flex-wrap: wrap; background: #2e3740; border-bottom: 4px solid #d84e42; }
.generated-site-nav a { padding: 15px 18px; color: #d9dde0; font-size: 11px; text-transform: uppercase; border-right: 1px solid rgba(255,255,255,.08); }
.generated-site-nav a:hover, .generated-site-nav a.active { background: #d84e42; color: white; }
.generated-site-main { color: #333b42; }
.generated-site-featured { min-height: 430px; display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 20px; padding: 46px; background: #eef1f2; overflow: hidden; }
.generated-site-featured > div > span { color: #d84e42; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .13em; }
.generated-site-featured h1 { margin: 10px 0 14px; color: #252d34; font: 700 clamp(38px,5vw,68px)/.98 Georgia,serif; letter-spacing: -.04em; }
.generated-site-featured .dek { color: #6a737a; font: 20px/1.45 Georgia,serif; }
.generated-site-featured p:not(.dek) { color: #747d84; line-height: 1.65; }
.generated-site-featured a { display: inline-block; margin-top: 10px; padding: 12px 16px; background: #d84e42; color: white; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.generated-site-featured > img { width: 100%; max-height: 365px; object-fit: contain; }
.generated-content-layout { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 26px; padding: 34px; }
.generated-home-section { margin-bottom: 34px; }
.generated-section-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; border-bottom: 3px solid #343d45; margin-bottom: 15px; }
.generated-section-heading h2 { margin: 0; padding: 9px 13px; background: #343d45; color: white; font: 700 15px/1 'Segoe UI',sans-serif; text-transform: uppercase; }
.generated-section-heading a { color: #d84e42; font-size: 11px; font-weight: 700; }
.generated-article-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.generated-article-grid.archive { grid-template-columns: repeat(3,1fr); }
.generated-article-card { min-height: 220px; padding: 19px; border: 1px solid #dde1e4; background: white; display: flex; flex-direction: column; }
.generated-article-card.large { min-height: 280px; }
.generated-article-card > span { color: #d84e42; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .13em; }
.generated-article-card h3 { margin: 12px 0 10px; color: #303840; font: 700 21px/1.15 Georgia,serif; }
.generated-article-card p { color: #778087; font-size: 12px; line-height: 1.55; }
.generated-article-card a { margin-top: auto; color: #d84e42; font-size: 11px; font-weight: 800; }
.generated-site-sidebar { display: grid; align-content: start; gap: 18px; }
.generated-site-sidebar > section { padding: 20px; border: 1px solid #dce0e3; background: #f5f6f6; }
.generated-site-sidebar h3 { margin-top: 0; font: 700 20px/1.15 Georgia,serif; }
.generated-site-sidebar p { color: #788188; font-size: 12px; line-height: 1.6; }
.generated-site-sidebar a { color: #d84e42; font-size: 11px; font-weight: 800; }
.generated-site-sidebar img { width: 100%; }
.generated-newsletter { background: #343d45 !important; color: white; }
.generated-newsletter p { color: #c1c8cd !important; }
.generated-newsletter input { width: 100%; padding: 11px; border: 0; margin: 5px 0; }
.generated-newsletter button { width: 100%; padding: 11px; border: 0; background: #d84e42; color: white; font-weight: 800; }
.generated-newsletter small { display: block; margin-top: 7px; color: #99a3aa; }
.generated-page { padding: 44px; min-height: 600px; }
.generated-page-title { padding-bottom: 24px; margin-bottom: 28px; border-bottom: 1px solid #d9dde0; }
.generated-page-title > span { color: #d84e42; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .14em; }
.generated-page-title h1 { margin: 7px 0 12px; font: 700 clamp(38px,5vw,64px)/1 Georgia,serif; color: #2d353c; }
.generated-page-title p { max-width: 760px; color: #727c83; line-height: 1.65; }
.generated-article-page { display: grid; grid-template-columns: minmax(0,1fr) 270px; gap: 40px; padding: 48px; }
.generated-article-meta { display: flex; justify-content: space-between; gap: 20px; color: #d84e42; font-size: 10px; text-transform: uppercase; }
.generated-article-page article > h1 { font: 700 clamp(40px,5vw,66px)/1.02 Georgia,serif; color: #2d353c; margin: 14px 0; }
.generated-article-page .dek { font: 20px/1.55 Georgia,serif; color: #6f787f; }
.article-banner { width: 100%; max-height: 240px; object-fit: cover; margin: 15px 0 25px; }
.generated-article-page article > p:not(.dek) { font: 16px/1.85 Georgia,serif; color: #505960; }
.generated-article-page blockquote { margin: 28px 0; padding: 24px; border-left: 5px solid #d84e42; background: #f1f3f4; color: #565f66; font: italic 21px/1.45 Georgia,serif; }
.article-actions { display: flex; justify-content: space-between; gap: 20px; padding-top: 24px; border-top: 1px solid #d8dcdf; }
.article-actions a { color: #d84e42; font-weight: 800; }
.article-actions button, .generated-footer-cta button { border: 0; background: #d84e42; color: white; padding: 12px 16px; font-weight: 800; }
.generated-article-page > aside { display: grid; align-content: start; gap: 1px; background: #d7dbde; }
.generated-article-page > aside h3 { margin: 0; padding: 16px; background: #343d45; color: white; font: 700 14px/1 'Segoe UI',sans-serif; text-transform: uppercase; }
.generated-article-page > aside a { padding: 15px; background: white; }
.generated-article-page > aside span, .generated-article-page > aside b { display: block; }
.generated-article-page > aside span { color: #d84e42; font-size: 9px; text-transform: uppercase; }
.generated-article-page > aside b { margin-top: 5px; font: 700 14px/1.25 Georgia,serif; }
.generated-resource-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 18px; }
.generated-resource-grid article { min-height: 245px; padding: 24px; border: 1px solid #dce0e3; position: relative; overflow: hidden; }
.generated-resource-grid article > span { color: #d84e42; font-size: 10px; text-transform: uppercase; font-weight: 800; }
.generated-resource-grid article > b { position: absolute; right: 18px; top: 14px; color: #edf0f1; font-size: 70px; line-height: 1; }
.generated-resource-grid h2 { position: relative; font: 700 27px/1.1 Georgia,serif; }
.generated-resource-grid p { position: relative; color: #747d84; line-height: 1.6; }
.generated-resource-grid button { position: relative; border: 0; padding: 10px 13px; background: #343d45; color: white; }
.generated-services-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.generated-services-grid article { padding: 30px; background: #343d45; color: white; min-height: 310px; }
.generated-services-grid article > span { font-size: 45px; color: #ef7b70; }
.generated-services-grid h2 { font: 700 27px/1.1 Georgia,serif; }
.generated-services-grid p { color: #bdc5ca; line-height: 1.65; }
.generated-services-grid a { color: #ef7b70; font-size: 11px; font-weight: 800; }
.generated-about-hero { display: grid; grid-template-columns: 1fr 1fr; gap: 35px; align-items: center; }
.generated-about-hero > div > span { color: #d84e42; text-transform: uppercase; font-size: 10px; font-weight: 800; }
.generated-about-hero h1 { font: 700 clamp(38px,5vw,65px)/1 Georgia,serif; }
.generated-about-hero p { color: #707a81; line-height: 1.8; }
.generated-about-hero img { width: 100%; max-height: 350px; object-fit: contain; }
.generated-proof-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin: 38px 0; }
.generated-proof-grid span { padding: 16px; border: 1px solid #d9dde0; color: #596269; }
.generated-timeline { display: grid; gap: 1px; background: #d8dcdf; }
.generated-timeline article { display: grid; grid-template-columns: 80px 1fr; gap: 22px; padding: 22px; background: white; }
.generated-timeline article > b { color: #d84e42; font-size: 25px; }
.generated-timeline h3 { margin: 0; font: 700 22px/1.1 Georgia,serif; }
.generated-timeline p { color: #737c83; }
.generated-faq-list { display: grid; gap: 9px; }
.generated-faq-list details { border: 1px solid #d9dde0; }
.generated-faq-list summary { padding: 18px; font: 700 18px/1.3 Georgia,serif; }
.generated-faq-list p { padding: 0 18px 18px; color: #707980; line-height: 1.65; }
.generated-contact-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 45px; }
.generated-contact-layout > section > span { color: #d84e42; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.generated-contact-layout h1 { font: 700 clamp(40px,5vw,66px)/1 Georgia,serif; }
.generated-contact-layout p { color: #717b82; line-height: 1.7; }
.generated-contact-details { margin-top: 30px; display: grid; gap: 8px; padding: 20px; background: #f0f2f3; }
.generated-contact-form, #generated-contact-form { padding: 25px; background: #343d45; color: white; }
#generated-contact-form label { display: grid; gap: 5px; margin-bottom: 13px; color: #bfc6cb; font-size: 10px; text-transform: uppercase; }
#generated-contact-form input, #generated-contact-form textarea { width: 100%; padding: 11px; border: 0; background: white; color: #222; }
#generated-contact-form textarea { min-height: 100px; }
#generated-contact-form .contact-consent { display: flex; grid-template-columns: auto 1fr; align-items: flex-start; text-transform: none; }
#generated-contact-form .contact-consent input { width: auto; }
#generated-contact-form button { width: 100%; border: 0; background: #d84e42; color: white; padding: 13px; font-weight: 800; }
#generated-contact-form small { display: block; margin-top: 8px; color: #9ea7ad; }
.generated-site-footer { background: #272f37; color: #b8c0c6; }
.generated-footer-grid { padding: 34px; display: grid; grid-template-columns: repeat(4,1fr); gap: 25px; }
.generated-site-footer h3 { color: white; font: 700 17px/1 Georgia,serif; }
.generated-site-footer section > span { display: block; padding: 4px 0; font-size: 11px; }
.generated-footer-cta p { color: #9fa8ae; font-size: 11px; line-height: 1.55; }
.generated-footer-bottom { padding: 15px 34px; display: flex; justify-content: space-between; gap: 25px; border-top: 1px solid #3d464e; color: #89939a; font-size: 10px; }

@media (max-width: 1100px) {
  .template-rail { align-items: flex-start; flex-wrap: wrap; }
  .template-rail .funnel-progress { width: 100%; flex: 1 0 100%; justify-content: flex-start; overflow-x: auto; }
  .lister-template-hero, .ebook-template-hero, .generated-site-featured { grid-template-columns: 1fr; }
  .lister-subscribe-card { position: relative; top: 0; }
  .lister-screen-grid, .ebook-gallery-template > div:last-child { grid-template-columns: repeat(2,1fr); }
  .generated-content-layout { grid-template-columns: 1fr; }
  .generated-site-sidebar { grid-template-columns: repeat(3,1fr); }
  .generated-article-grid, .generated-article-grid.archive { grid-template-columns: repeat(2,1fr); }
  .generated-services-grid { grid-template-columns: 1fr; }
}
@media (max-width: 780px) {
  .lister-template-header, .ebook-template-header { align-items: flex-start; flex-direction: column; padding-top: 18px; }
  .lister-template-header nav a { padding: 10px 8px 16px; }
  .lister-template-hero, .lister-feature-band, .ebook-author, .ebook-learning, .generated-about-hero, .generated-contact-layout, .generated-article-page { grid-template-columns: 1fr; }
  .lister-steps > div:last-child, .lister-proof, .ebook-testimonials, .ebook-pricing-template > div:last-child, .generated-resource-grid, .generated-proof-grid { grid-template-columns: 1fr; }
  .lister-final, .ebook-contact-template, .lister-footer, .ebook-footer, .generated-footer-bottom { align-items: flex-start; flex-direction: column; }
  .generated-header-ad { width: 100%; }
  .generated-site-header { align-items: flex-start; flex-direction: column; }
  .generated-site-sidebar, .generated-footer-grid { grid-template-columns: 1fr; }
  .generated-site-featured, .generated-page, .generated-article-page { padding: 26px 20px; }
}
@media (max-width: 560px) {
  .lister-screen-grid, .ebook-gallery-template > div:last-child, .generated-article-grid, .generated-article-grid.archive { grid-template-columns: 1fr; }
  .generated-site-frame { width: 100%; margin-top: 0; }
  .generated-site-nav { overflow-x: auto; flex-wrap: nowrap; }
  .generated-site-nav a { white-space: nowrap; }
}

/* v0.7 CMS route depth */
.generated-route-panel {
  margin-top: 1rem;
  border: 1px solid rgba(148, 163, 184, .35);
  border-radius: 14px;
  padding: 1rem;
  background: rgba(15, 23, 42, .03);
}
.generated-route-panel > div { display: flex; justify-content: space-between; gap: 1rem; align-items: baseline; margin-bottom: .75rem; }
.generated-route-panel small { color: var(--muted); }
.generated-route-panel nav { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: .5rem; }
.generated-route-panel a { display: flex; justify-content: space-between; gap: .5rem; padding: .65rem .75rem; border: 1px solid rgba(148, 163, 184, .28); border-radius: 10px; text-decoration: none; background: #fff; }
.generated-route-panel a:hover { transform: translateY(-1px); box-shadow: 0 8px 18px rgba(15, 23, 42, .08); }

/* v0.6 — modern portal → nthIncome directory → v0.1 landing → template stream */
.link-card.selected-card {
  border-color: rgba(239, 185, 79, .95);
  background: linear-gradient(160deg, rgba(53, 43, 22, .96), rgba(22, 39, 62, .98));
  box-shadow: 0 0 0 3px rgba(239, 185, 79, .22), 0 24px 60px rgba(0, 0, 0, .32);
  transform: translateY(-3px);
}
.link-card.selected-card::before {
  content: 'SELECTED FROM NTHINCOMESTREAMS';
  display: block;
  margin: -20px -20px 14px;
  padding: 8px 14px;
  border-radius: 18px 18px 0 0;
  background: linear-gradient(90deg, #efb94f, #ffd982);
  color: #2a1a00;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
}
.selected-card-notice {
  max-width: 1320px;
  margin: 0 auto 22px;
  padding: 15px 18px;
  border: 1px solid rgba(239, 185, 79, .55);
  border-radius: 14px;
  background: rgba(239, 185, 79, .09);
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  align-items: center;
}
.selected-card-notice b { color: #ffd982; }
.selected-card-notice span { color: var(--muted); }
.campaign-card-meta {
  margin-top: auto;
  padding-top: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.campaign-card-meta span {
  padding: 5px 8px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  font-size: 10px;
}


/* v0.7: six public levels plus final destination */
.depth-strip.seven-step, .funnel-progress.seven-step { grid-template-columns: repeat(7, minmax(0, 1fr)); }
.depth-strip article.active { background: rgba(79,225,208,.12); box-shadow: inset 0 -3px 0 var(--cyan); }
.landing-sequence-rail { margin: 0 0 18px; display: flex; justify-content: space-between; align-items: center; gap: 18px; border: 1px solid var(--line); background: rgba(255,255,255,.035); border-radius: 15px; padding: 13px 17px; color: var(--muted); }
.landing-sequence-rail a { color: var(--cyan); }
.landing-sequence-rail span { font-size: 11px; text-transform: uppercase; letter-spacing: .13em; }
.landing-depth-strip { margin-bottom: 28px; }
.landing-hero a.primary-button, .landing-cta a.primary-button { display: inline-flex; }
@media (max-width: 1080px) { .depth-strip.seven-step, .funnel-progress.seven-step { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 680px) { .depth-strip.seven-step, .funnel-progress.seven-step { grid-template-columns: 1fr; } .landing-sequence-rail { align-items: flex-start; flex-direction: column; } }


/* v0.7 explicit build and Step 3 checkpoint */
.build-badge { display:inline-flex; align-items:center; justify-content:center; min-width:54px; padding:6px 9px; border:1px solid rgba(255,255,255,.18); border-radius:999px; color:#ffd166; background:rgba(255,209,102,.08); font-size:11px; font-weight:800; letter-spacing:.08em; }
.classic-panel li a em { display:block; margin-top:8px; color:#f2b441; font-style:normal; font-weight:800; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.step-three-gate { margin:0 0 22px; display:grid; grid-template-columns:1fr auto; align-items:center; gap:24px; padding:24px 26px; border:2px solid #f2b441; border-radius:18px; background:linear-gradient(135deg,rgba(242,180,65,.18),rgba(255,255,255,.035)); box-shadow:0 20px 55px rgba(0,0,0,.24); }
.step-three-gate div>span { display:inline-flex; padding:6px 10px; border-radius:999px; background:#f2b441; color:#18130a; font-size:12px; font-weight:900; letter-spacing:.12em; }
.step-three-gate strong { display:block; margin-top:12px; font-size:clamp(24px,3vw,40px); line-height:1.05; }
.step-three-gate p { max-width:780px; margin:9px 0 0; color:var(--muted); line-height:1.55; }
.step-three-gate>a { display:inline-flex; align-items:center; justify-content:center; min-width:255px; padding:15px 19px; border-radius:12px; background:#f2b441; color:#18130a; font-weight:900; text-align:center; }
@media(max-width:760px){.step-three-gate{grid-template-columns:1fr}.step-three-gate>a{width:100%;min-width:0}}
