.hub-hero{padding:140px 0 56px;background:var(--hull-deep);text-align:center}
.hub-hero h1{margin:14px auto 18px;max-width:760px}
.hub-hero p{font-size:17px;color:var(--w50);max-width:580px;margin:0 auto;line-height:1.7}
.hub-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:36px}
.hub-card{background:var(--hull-mid);border:1px solid var(--bd);border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;gap:10px;transition:border-color .2s}
.hub-card:hover{border-color:rgba(201,149,68,.32)}
.hub-card .hc-tag{font-family:var(--fm);font-size:10.5px;letter-spacing:.14em;color:var(--brass);text-transform:uppercase}
.hub-card h3{font-family:var(--fd);font-size:22px;font-weight:600;color:var(--w);line-height:1.2}
.hub-card p{font-size:14.5px;color:var(--w80);line-height:1.65}
.hub-card .hc-stat{font-family:var(--fm);font-size:13px;color:var(--brass);letter-spacing:.06em;margin-top:4px}
.hub-card a.hc-link{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--brass);font-weight:600;font-family:var(--fb);transition:gap .2s}
.hub-card a.hc-link:hover{gap:10px}

.about-hero{padding:140px 0 56px;background:linear-gradient(135deg,#081928 0%,var(--hull) 55%,#0A2A45 100%);text-align:center}
.about-hero h1{margin:14px auto 12px;max-width:680px}
.about-hero .ah-sub{font-family:var(--fm);font-size:11px;letter-spacing:.14em;color:var(--gr);text-transform:uppercase}
.about-body{padding:80px 0;background:var(--hull-deep)}
.about-body .wrap{max-width:760px}
.about-body .story-block p{font-family:var(--fd);font-style:italic;font-size:18px;line-height:1.85;color:var(--w80);margin-bottom:18px}
.mission{margin:48px 0;background:var(--hull-mid);border:1px solid var(--brass);border-radius:var(--radius-lg);padding:28px 32px;border-left-width:3px}
.mission p{font-family:var(--fd);font-size:19px;line-height:1.5;color:var(--w);font-style:italic;margin:0}
.about-stamp{font-family:var(--fm);font-size:11px;letter-spacing:.14em;color:var(--brass);text-transform:uppercase;margin-top:32px;text-align:center;border-top:1px solid var(--bd);padding-top:24px}
.cmp-wide{max-width:920px;margin:0 auto;background:var(--hull-deep);border:1px solid var(--bd);border-radius:var(--radius);overflow:hidden}
.cmp-wide table{width:100%;border-collapse:collapse;font-family:var(--fb);font-size:14.5px}
.cmp-wide th,.cmp-wide td{padding:13px 18px;text-align:left;border-bottom:1px solid var(--bd)}
.cmp-wide th{font-family:var(--fm);font-size:11px;letter-spacing:.1em;color:var(--gr);text-transform:uppercase;font-weight:500;background:rgba(255,255,255,.02)}
.cmp-wide td:not(:first-child){text-align:center;width:140px}
.cmp-wide td.good{color:var(--green);font-weight:600}
.cmp-wide td.no{color:var(--gr2)}
.cmp-wide .ds-col{background:rgba(201,149,68,.05)}
@media(max-width:768px){.hub-grid{grid-template-columns:1fr}.cmp-wide{font-size:12.5px}.cmp-wide th,.cmp-wide td{padding:9px 12px}}

/* Feature deep-dive pages */
.fp-hero{padding:140px 0 56px;background:var(--hull-deep);position:relative;overflow:hidden}
.fp-hero .wrap{position:relative;z-index:2}
.fp-hero h1{margin:14px 0 20px;max-width:680px}
.fp-hero p.fp-lead{font-size:17px;color:var(--w80);max-width:580px;line-height:1.7;margin-bottom:18px}
.fp-pro-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--fm);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);background:rgba(201,149,68,.12);border:1px solid rgba(201,149,68,.32);padding:5px 11px;border-radius:6px;margin-bottom:14px}
.fp-block{padding:80px 0}
.fp-block h2{margin-bottom:14px}
.fp-block .fp-sub{font-size:16.5px;color:var(--w80);max-width:680px;line-height:1.75;margin-bottom:20px}
.fp-step{display:grid;grid-template-columns:60px 1fr;gap:18px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--bd)}
.fp-step:last-of-type{border:none}
.fp-step-n{font-family:var(--fm);font-size:14px;color:var(--brass);background:rgba(201,149,68,.08);border:1px solid rgba(201,149,68,.3);border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-weight:600}
.fp-step-c h3{font-family:var(--fd);font-size:18px;font-weight:600;color:var(--w);margin-bottom:6px}
.fp-step-c p{font-size:14.5px;color:var(--w80);line-height:1.7}
.fp-spec{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--bd);border:1px solid var(--bd);border-radius:var(--radius);overflow:hidden;margin-top:24px}
.fp-spec-cell{background:var(--hull-deep);padding:18px 22px}
.fp-spec-k{font-family:var(--fm);font-size:11px;letter-spacing:.12em;color:var(--gr);text-transform:uppercase;margin-bottom:6px}
.fp-spec-v{font-size:14.5px;color:var(--w);line-height:1.55}
.fp-usecase{background:rgba(201,149,68,.06);border:1px solid rgba(201,149,68,.24);border-left:3px solid var(--brass);border-radius:var(--radius);padding:24px 28px;margin-top:24px}
.fp-usecase .fp-uc-tag{font-family:var(--fm);font-size:10.5px;letter-spacing:.14em;color:var(--brass);text-transform:uppercase;margin-bottom:8px}
.fp-usecase p{font-size:15.5px;color:var(--w);line-height:1.7}
@media(max-width:768px){.fp-spec{grid-template-columns:1fr}.fp-hero{padding:120px 0 48px}}

/* Blog hub */
.bg-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:36px}
.bg-card{background:var(--hull-mid);border:1px solid var(--bd);border-radius:var(--radius);padding:26px;display:flex;flex-direction:column;gap:10px;transition:border-color .2s}
.bg-card:hover{border-color:rgba(201,149,68,.32)}
.bg-cat{font-family:var(--fm);font-size:10.5px;letter-spacing:.14em;color:var(--brass);text-transform:uppercase}
.bg-title{font-family:var(--fd);font-size:21px;font-weight:600;color:var(--w);line-height:1.2}
.bg-card p{font-size:14.5px;color:var(--w80);line-height:1.65}
.bg-meta{font-family:var(--fm);font-size:11px;color:var(--gr2);letter-spacing:.06em;margin-top:auto}
.bg-link{font-family:var(--fb);font-size:13px;color:var(--brass);font-weight:600;display:inline-flex;align-items:center;gap:6px;transition:gap .2s}
.bg-link:hover{gap:10px}
.bg-card.bg-feat{grid-column:1/-1;background:var(--hull-mid);border-color:rgba(201,149,68,.3)}
@media(max-width:768px){.bg-grid{grid-template-columns:1fr}}

/* Changelog */
.cl-hero{padding:140px 0 56px;background:var(--hull-deep);text-align:center}
.cl-hero h1{margin:14px auto 18px;max-width:680px}
.cl-hero p{font-size:17px;color:var(--w50);max-width:560px;margin:0 auto;line-height:1.7}
.cl-feed{padding:80px 0;background:var(--hull-mid)}
.cl-feed .wrap{max-width:780px}
.cl-entry{display:grid;grid-template-columns:140px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid var(--bd)}
.cl-entry:last-of-type{border:none}
.cl-date{font-family:var(--fm);font-size:11px;letter-spacing:.14em;color:var(--gr);text-transform:uppercase;padding-top:4px}
.cl-content h3{font-family:var(--fd);font-size:18px;font-weight:600;color:var(--w);margin-bottom:6px;display:inline-flex;align-items:baseline;gap:10px}
.cl-content h3 .cl-tag{display:inline-block;font-family:var(--fm);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;padding:3px 8px;border-radius:4px;font-weight:500}
.cl-tag-new{color:var(--green);background:rgba(46,194,122,.12);border:1px solid rgba(46,194,122,.3)}
.cl-tag-imp{color:var(--brass);background:rgba(201,149,68,.12);border:1px solid rgba(201,149,68,.3)}
.cl-tag-fix{color:var(--aqua);background:rgba(16,180,174,.12);border:1px solid rgba(16,180,174,.3)}
.cl-content p{font-size:14.5px;color:var(--w80);line-height:1.7}
@media(max-width:768px){.cl-entry{grid-template-columns:1fr;gap:8px}}

/* Sales pitch — slide-deck style */
.deck{max-width:980px;margin:0 auto;padding:48px 0}
.slide{background:var(--hull-mid);border:1px solid var(--bd);border-radius:var(--radius-lg);padding:48px 56px;margin-bottom:24px;position:relative;overflow:hidden}
.slide.dark{background:linear-gradient(155deg,var(--hull-deep) 0%,var(--hull) 100%)}
.slide.lt{background:var(--lts);color:var(--ltd);border-color:rgba(12,34,56,.1)}
.slide.lt h2,.slide.lt h3{color:var(--ltd)}
.slide.lt p{color:#374559}
.slide-n{font-family:var(--fm);font-size:11px;letter-spacing:.18em;color:var(--brass);text-transform:uppercase;margin-bottom:14px;font-weight:600}
.slide h2{font-family:var(--fd);font-size:clamp(28px,3vw,42px);font-weight:600;line-height:1.1;margin-bottom:18px;letter-spacing:-.015em}
.slide p.slide-p{font-size:17px;color:var(--w80);line-height:1.7;max-width:720px;margin-bottom:14px}
.slide.lt p.slide-p{color:#374559}
.slide-cta{margin-top:24px;display:flex;gap:12px;flex-wrap:wrap}
@media(max-width:768px){.slide{padding:32px 28px}}

/* ─── About page (clean, conservative restyle) ─── */

/* HERO */
.about-hero-v2 { padding: 140px 0 80px; background: var(--hull-deep); border-bottom: 1px solid var(--bd); }
.about-hero-v2 .wrap { max-width: 820px; margin: 0 auto; text-align: center; }
.about-hero-v2 h1 { margin: 16px auto 24px; max-width: 720px; font-size: clamp(36px, 5vw, 60px); line-height: 1.1; letter-spacing: -0.02em; }
.about-hero-v2 p.lead { font-size: 18px; color: var(--w80); line-height: 1.65; max-width: 660px; margin: 0 auto 32px; }
.about-hero-v2 .cta-row { display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; }

/* SECTION 1 — PROBLEM */
.problem-narrative { padding: 96px 0; background: var(--lt); color: var(--ltd); }
.problem-narrative .wrap { max-width: 820px; }
.problem-narrative h2 { margin-bottom: 24px; color: var(--ltd); font-size: clamp(28px, 3.6vw, 42px); line-height: 1.15; letter-spacing: -0.015em; }
.problem-narrative .scene { font-size: 17px; line-height: 1.85; color: #2A3C50; margin-bottom: 32px; }
.problem-narrative .pivot { font-family: var(--fd); font-size: 22px; font-weight: 600; color: var(--ltd); line-height: 1.4; margin: 32px 0; padding: 24px 28px; border-left: 3px solid var(--brass); background: #FFFFFF; }
.problem-narrative .layer-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 40px; }
.problem-narrative .layer { background: #FFFFFF; border: 1px solid rgba(12, 34, 56, 0.08); border-radius: 8px; padding: 24px 26px; }
.problem-narrative .layer .layer-tag { font-family: var(--fm); font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--brass); font-weight: 600; margin-bottom: 8px; }
.problem-narrative .layer h3 { font-family: var(--fd); font-size: 18px; font-weight: 600; color: var(--ltd); margin-bottom: 8px; line-height: 1.3; }
.problem-narrative .layer p { font-size: 14.5px; line-height: 1.65; color: #4A5C70; }

/* SECTION 2 — GUIDE */
.guide-section { padding: 96px 0; background: var(--hull-mid); }
.guide-section .wrap { max-width: 820px; }
.guide-section h2 { margin-bottom: 28px; font-size: clamp(28px, 3.6vw, 42px); line-height: 1.15; letter-spacing: -0.015em; }
.guide-section .body p { font-size: 17px; line-height: 1.8; color: var(--w80); margin-bottom: 18px; }
.guide-section .body p strong { color: var(--w); font-weight: 600; }
.guide-section .body .breakaway { font-family: var(--fd); font-size: 19px; font-weight: 500; line-height: 1.4; color: var(--w); padding: 20px 26px; border-left: 3px solid var(--brass); background: rgba(201,149,68,0.06); margin: 28px 0; font-style: italic; border-radius: 4px; }
.guide-section .ea-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 36px; }
.guide-section .ea-card { background: var(--hull-deep); border: 1px solid var(--bd); border-radius: 8px; padding: 24px 26px; }
.guide-section .ea-card .ea-tag { font-family: var(--fm); font-size: 10.5px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--brass); font-weight: 600; margin-bottom: 10px; }
.guide-section .ea-card p { font-size: 15.5px; line-height: 1.7; color: var(--w); margin: 0; }

/* SECTION 3 — PROOF */
.proof-section { padding: 96px 0; background: var(--hull-deep); }
.proof-section .wrap { max-width: 820px; }
.proof-section h2 { margin-bottom: 16px; font-size: clamp(28px, 3.6vw, 42px); line-height: 1.15; letter-spacing: -0.015em; }
.proof-section .lead-line { font-size: 16px; color: var(--w80); line-height: 1.7; margin-bottom: 32px; }
.proof-zero-banner { background: var(--hull-mid); border: 1px solid rgba(201, 149, 68, 0.24); border-left: 4px solid var(--brass); border-radius: 8px; padding: 28px 32px; display: flex; align-items: center; gap: 28px; margin-bottom: 24px; }
.proof-zero-banner .zero-num { font-family: var(--fd); font-size: 72px; font-weight: 600; color: var(--brass); line-height: 1; flex-shrink: 0; }
.proof-zero-banner .zero-text { flex: 1; }
.proof-zero-banner .zero-label { font-family: var(--fm); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--brass); font-weight: 600; margin-bottom: 6px; }
.proof-zero-banner .zero-sub { font-size: 15px; line-height: 1.55; color: var(--w80); }
.proof-table { width: 100%; border-collapse: collapse; background: var(--hull-mid); border: 1px solid var(--bd); border-radius: 8px; overflow: hidden; }
.proof-table th, .proof-table td { padding: 14px 22px; text-align: left; border-bottom: 1px solid var(--bd); font-family: var(--fb); }
.proof-table th { font-family: var(--fm); font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--gr); font-weight: 500; background: rgba(255, 255, 255, 0.02); }
.proof-table td { color: var(--w); font-size: 15.5px; }
.proof-table td:last-child { text-align: right; font-weight: 600; color: var(--brass); }
.proof-table tr:last-child td { border-bottom: none; }
.proof-section .closer { font-style: italic; font-family: var(--fd); font-size: 17px; color: var(--w80); line-height: 1.7; margin-top: 28px; }

/* SECTION 4 — PLAN */
.plan-section { padding: 96px 0; background: var(--hull-mid); }
.plan-section .wrap { max-width: 980px; }
.plan-section .plan-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 40px 0 28px; }
.plan-section .plan-card { background: var(--hull-deep); border: 1px solid var(--bd); border-radius: 8px; padding: 28px; }
.plan-section .plan-card .step-num { font-family: var(--fd); font-size: 56px; font-weight: 600; color: var(--brass); line-height: 1; margin-bottom: 16px; }
.plan-section .plan-card h3 { font-family: var(--fd); font-size: 19px; font-weight: 600; color: var(--w); margin-bottom: 10px; line-height: 1.3; }
.plan-section .plan-card p { font-size: 14.5px; line-height: 1.65; color: var(--w80); }
.plan-section .plan-closer { font-size: 16px; color: var(--w80); line-height: 1.7; max-width: 660px; margin: 0 auto; text-align: center; padding-top: 8px; }

/* SECTION 5 — STAKES */
.stakes-section { padding: 96px 0; background: var(--lt); color: var(--ltd); }
.stakes-section .wrap { max-width: 980px; }
.stakes-section h2 { margin-bottom: 36px; color: var(--ltd); text-align: center; font-size: clamp(28px, 3.6vw, 42px); line-height: 1.15; letter-spacing: -0.015em; }
.stakes-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.stakes-card { background: #FFFFFF; border: 1px solid rgba(12, 34, 56, 0.08); border-radius: 8px; padding: 28px 32px; }
.stakes-card.fail { border-top: 3px solid #D4495A; }
.stakes-card.win { border-top: 3px solid var(--brass); }
.stakes-card .stakes-tag { font-family: var(--fm); font-size: 10.5px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 600; margin-bottom: 12px; }
.stakes-card.fail .stakes-tag { color: #B43E4E; }
.stakes-card.win .stakes-tag { color: #8B6914; }
.stakes-card h3 { font-family: var(--fd); font-size: 21px; font-weight: 600; color: var(--ltd); margin-bottom: 14px; line-height: 1.3; }
.stakes-card p { font-size: 15.5px; line-height: 1.75; color: #2A3C50; }

/* SECTION 6 — MANIFESTO */
.manifesto-section { padding: 96px 0; background: var(--hull-deep); }
.manifesto-section .wrap { max-width: 760px; text-align: center; }
.manifesto-section .mf-eyebrow { font-family: var(--fm); font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--brass); font-weight: 600; margin-bottom: 22px; display: inline-block; padding: 4px 12px; border: 1px solid rgba(201, 149, 68, 0.32); border-radius: 4px; }
.manifesto-section h2 { font-family: var(--fd); font-size: clamp(30px, 4.4vw, 48px); font-weight: 600; line-height: 1.2; color: var(--w); margin-bottom: 32px; letter-spacing: -0.02em; }
.manifesto-section .credo-list { font-family: var(--fd); font-size: 19px; line-height: 1.85; color: var(--w); margin-bottom: 32px; }
.manifesto-section .credo-list .line { display: block; font-style: italic; color: var(--w80); }
.manifesto-section .credo-list .line strong { color: var(--w); font-style: normal; font-weight: 600; }
.manifesto-section .closer { font-size: 16px; line-height: 1.7; color: var(--w80); max-width: 600px; margin: 0 auto; padding-top: 28px; border-top: 1px solid var(--bd); }

/* FINAL CTA */
.final-cta-block { padding: 96px 0; background: var(--hull-mid); text-align: center; border-top: 1px solid var(--bd); }
.final-cta-block .wrap { max-width: 720px; }
.final-cta-block h2 { margin-bottom: 18px; font-size: clamp(28px, 3.6vw, 42px); line-height: 1.15; letter-spacing: -0.015em; }
.final-cta-block p { font-size: 16px; color: var(--w80); margin-bottom: 28px; line-height: 1.7; }
.final-cta-block .cta-row { display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; margin-bottom: 28px; }
.final-cta-block .footer-line { font-family: var(--fm); font-size: 11px; letter-spacing: 0.14em; color: var(--gr); text-transform: uppercase; padding-top: 22px; border-top: 1px solid var(--bd); }

@media (max-width: 768px) {
  .problem-narrative .layer-grid, .stakes-grid, .guide-section .ea-pair, .plan-section .plan-grid { grid-template-columns: 1fr; }
  .proof-zero-banner { flex-direction: column; align-items: flex-start; gap: 14px; }
  .proof-zero-banner .zero-num { font-size: 56px; }
  .about-hero-v2, .problem-narrative, .guide-section, .proof-section, .plan-section, .stakes-section, .manifesto-section, .final-cta-block { padding: 64px 0; }
}
