body { margin:0; }
.n-root { font-size:1rem; }
a { color:var(--n-brand); text-underline-offset:4px; }
button,input,textarea,select { font:inherit; }
button,a.button { cursor:pointer; }
[hidden] { display:none !important; }
.shell { max-width:1160px; margin:auto; padding:0 var(--n-6); }
.topbar { display:flex; align-items:center; justify-content:space-between; gap:var(--n-5); min-height:100px; border-bottom:1px solid var(--n-rule); }
.logo { color:var(--n-ink); display:inline-flex; align-items:center; text-decoration:none; }
.logo svg { width:142px; height:auto; }
nav { display:flex; align-items:center; gap:var(--n-6); flex-wrap:wrap; }
nav a { text-decoration:none; font-size:.9rem; }
.theme { border:0; background:var(--n-sunk); color:var(--n-ink-2); padding:8px 12px; border-radius:var(--n-radius); font-size:.875rem; }
.hero { display:grid; grid-template-columns:1.2fr 1fr; gap:var(--n-10); padding:var(--n-12) 0 var(--n-10); align-items:center; }
.eyebrow { font-family:var(--n-mono); font-size:.875rem; color:var(--n-brand); letter-spacing:.09em; text-transform:uppercase; }
h1,h2,h3 { line-height:1.15; letter-spacing:-.025em; }
h1 { font-size:clamp(2.7rem,6vw,4.8rem); font-weight:650; margin:var(--n-4) 0 var(--n-6); }
h2 { font-size:clamp(1.7rem,3vw,2.35rem); font-weight:630; }
h3 { font-size:1.2rem; }
p { margin:0 0 var(--n-4); }
.lede { font-size:1.2rem; color:var(--n-ink-2); max-width:56ch; }
.actions { display:flex; flex-wrap:wrap; align-items:center; gap:var(--n-4); margin:var(--n-6) 0; }
.button,button.primary { display:inline-flex; justify-content:center; align-items:center; min-height:46px; padding:11px 20px; border:1px solid var(--n-brand); border-radius:var(--n-radius); background:var(--n-brand); color:var(--n-card); text-decoration:none; font-weight:600; }
.button.secondary,button.secondary { background:var(--n-card); color:var(--n-brand); border:1px solid var(--n-rule-strong); border-radius:var(--n-radius); padding:11px 18px; min-height:46px; }
button:hover,.button:hover { filter:brightness(.96); }
button:disabled { cursor:not-allowed; opacity:.6; }
button[aria-busy="true"] { cursor:wait; }
.note,small { font-size:.875rem; color:var(--n-ink-2); }
.dossier { padding:var(--n-6); border-top:3px solid var(--n-brand); }
.dossier-top { display:flex; justify-content:space-between; align-items:baseline; border-bottom:1px solid var(--n-rule); padding-bottom:var(--n-4); gap:var(--n-4); }
.dossier h2 { margin:0; font-size:1.6rem; }
.dossier dl { margin:0; }
.dossier dl div { display:grid; grid-template-columns:100px 1fr; gap:var(--n-4); padding:var(--n-5) 0; border-bottom:1px solid var(--n-rule); }
dt { color:var(--n-ink-2); font-size:.875rem; }
dd { margin:0; }
.quote { font-size:1.3rem; line-height:1.4; margin:var(--n-6) 0 var(--n-2); }
.section { border-top:1px solid var(--n-rule); padding:var(--n-10) 0; }
.section-head { display:grid; grid-template-columns:1fr 1fr; gap:var(--n-8); margin-bottom:var(--n-6); }
.section-head h2 { margin:0; }
.columns { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--n-6); }
.step { border-top:2px solid var(--n-rule-strong); padding-top:var(--n-5); }
.step p { color:var(--n-ink-2); }
.step .eyebrow { margin-bottom:var(--n-5); }
footer { border-top:1px solid var(--n-rule); display:flex; flex-wrap:wrap; justify-content:space-between; gap:var(--n-4); padding:var(--n-6) 0; color:var(--n-ink-2); font-size:.875rem; }
.page-head { padding:var(--n-10) 0 var(--n-6); max-width:800px; }
.page-head h1 { font-size:clamp(2.4rem,5vw,3.6rem); }
.capability { display:grid; grid-template-columns:210px 1fr; gap:var(--n-6); padding:var(--n-6) 0; border-top:1px solid var(--n-rule); }
.capability h2 { margin:0; font-size:1.3rem; }
.capability h3 { margin:0 0 var(--n-3); }
.capability p { max-width:72ch; }
.badge { display:inline-block; font-family:var(--n-mono); font-size:.875rem; padding:4px 8px; border:1px solid var(--n-rule-strong); border-radius:var(--n-radius-sm); color:var(--n-ink-2); margin:0 0 var(--n-4); }
.interview-grid { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:var(--n-6); align-items:start; margin-bottom:var(--n-10); }
.interview-head { padding:var(--n-8) 0 var(--n-5); }
.interview-head h1 { font-size:2.5rem; margin:var(--n-3) 0; }
.consent { padding:var(--n-6); }
.consent h2 { margin-top:0; }
.check { display:flex; align-items:flex-start; gap:var(--n-3); margin:var(--n-5) 0; }
.check input { margin-top:7px; width:18px; height:18px; flex:none; accent-color:var(--n-brand); }
#transcript { min-height:260px; max-height:60vh; overflow:auto; padding:var(--n-6); scroll-behavior:smooth; }
.turn { margin:0 0 var(--n-6); white-space:pre-wrap; overflow-wrap:anywhere; max-width:65ch; }
.turn-label { font-family:var(--n-mono); color:var(--n-brand); font-size:.875rem; display:block; margin-bottom:var(--n-2); }
.turn.prospect { border-left:3px solid var(--n-rule-strong); padding-left:var(--n-4); color:var(--n-ink-2); }
.composer { padding:var(--n-5); border-top:1px solid var(--n-rule); }
.composer label { display:block; font-weight:600; margin-bottom:var(--n-2); }
textarea { display:block; resize:vertical; width:100%; min-height:100px; border:1px solid var(--n-rule-strong); background:var(--n-paper); color:var(--n-ink); padding:var(--n-3); border-radius:var(--n-radius); }
.compose-actions { display:flex; justify-content:space-between; align-items:center; gap:var(--n-3); margin-top:var(--n-3); }
.sidebar { padding:var(--n-5); }
.sidebar h2 { font-size:1.1rem; margin:0 0 var(--n-4); }
.sidebar ul { padding-left:20px; color:var(--n-ink-2); }
.sidebar li { margin-bottom:var(--n-3); }
.starter { display:block; text-align:left; width:100%; border:0; border-bottom:1px solid var(--n-rule); background:none; color:var(--n-brand); padding:var(--n-3) 0; }
#feedback { color:var(--n-ink); background:var(--n-brand-soft); padding:var(--n-3) var(--n-4); border-left:3px solid var(--n-brand); margin-bottom:var(--n-4); }
.summary { padding:var(--n-6); }
.summary h2 { margin-top:0; }
.summary-section { border-top:1px solid var(--n-rule); padding-top:var(--n-4); margin-top:var(--n-5); }
.summary-section h3 { margin:0 0 var(--n-3); }
.summary-section li { margin-bottom:var(--n-2); }
#privacy-mode { margin-bottom:var(--n-4); }
.skip { position:absolute; top:-100px; }
.skip:focus { top:8px; background:var(--n-card); padding:var(--n-3); z-index:2; }
@media(max-width:850px) {
 .hero { gap:var(--n-6); padding-top:var(--n-10); }
 .interview-grid { grid-template-columns:1fr; }
 .sidebar { order:2; }
}
@media(max-width:640px) {
 .shell { padding:0 var(--n-4); }
 .topbar { min-height:90px; flex-wrap:wrap; padding:var(--n-5) 0; }
 nav { gap:var(--n-4); }
 .hero,.section-head,.columns,.capability { grid-template-columns:1fr; }
 .hero { padding:var(--n-8) 0; }
 .dossier { padding:var(--n-5); }
 .capability { gap:var(--n-3); }
 .compose-actions { flex-wrap:wrap; }
 .section { padding:var(--n-8) 0; }
 #transcript { padding:var(--n-4); }
}
@media(prefers-reduced-motion:reduce) { #transcript { scroll-behavior:auto; } }

/* The brand signature always uses the original SVG, including inline mentions. */
.brand-wordmark { display:inline-block; width:3.6em; height:.83em; vertical-align:-.04em; line-height:1; white-space:nowrap; color:inherit; }
.brand-wordmark svg { display:block; width:100%; height:100%; }
.button .brand-wordmark { margin-left:.35em; }
.button .brand-wordmark svg rect { fill:currentColor; }
.hero h1 .brand-wordmark { width:3.15em; height:.73em; }
.resume-page { padding:var(--n-8) 0 var(--n-6); }
.resume-toolbar { display:flex; align-items:center; justify-content:space-between; gap:var(--n-5); margin-bottom:var(--n-6); }
.resume-toolbar p { margin:0; }
.resume-tools { display:flex; gap:var(--n-3); align-items:center; }
.resume-document { background:var(--n-card); border:1px solid var(--n-rule); border-top:5px solid var(--n-brand); box-shadow:var(--n-lift); padding:54px 58px 0; }
.resume-masthead { display:flex; justify-content:space-between; align-items:flex-start; gap:var(--n-6); padding-bottom:var(--n-8); border-bottom:1px solid var(--n-rule-strong); }
h1.resume-name { margin:0 0 var(--n-5); line-height:1; }
.resume-name svg { display:block; width:clamp(200px,27vw,320px); max-width:100%; height:auto; color:var(--n-ink); }
.resume-role { font-size:1.5rem; font-weight:600; letter-spacing:-.02em; margin:0 0 var(--n-2); }
.resume-specialty { color:var(--n-ink-2); font-size:.9375rem; max-width:42ch; margin:0; }
.resume-identity { text-align:right; padding-top:var(--n-3); font-size:.875rem; flex-shrink:0; }
.resume-identity p { color:var(--n-ink-2); margin:var(--n-2) 0; }
.resume-identity .eyebrow { font-size:.8125rem; }
.resume-document h2 { font-family:var(--n-mono); font-size:.875rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--n-brand); margin:0 0 var(--n-5); }
.resume-profile { display:grid; grid-template-columns:205px 1fr; gap:var(--n-8); padding:var(--n-6) 0; border-bottom:1px solid var(--n-rule); }
.resume-profile h2 { margin:4px 0 0; }
.resume-profile p { margin:0; line-height:1.75; }
.resume-layout { display:grid; grid-template-columns:205px minmax(0,1fr); gap:var(--n-8); padding-top:var(--n-8); }
.resume-sidebar { border-right:1px solid var(--n-rule); padding-right:var(--n-5); }
.resume-sidebar section { margin-bottom:var(--n-8); }
.resume-sidebar p { color:var(--n-ink-2); font-size:.9375rem; line-height:1.9; }
.resume-skills { list-style:none; padding:0; margin:0; }
.resume-skills li { font-size:.9375rem; padding:0 0 var(--n-3); }
.resume-systems { margin:0; }
.resume-systems div { margin:0 0 var(--n-5); }
.resume-systems dt { font-family:var(--n-mono); font-size:.8125rem; margin-bottom:var(--n-1); }
.resume-systems dd { font-size:.9375rem; line-height:1.55; }
.resume-section-heading { display:flex; flex-wrap:wrap; justify-content:space-between; gap:var(--n-3); align-items:baseline; }
.resume-section-heading span { color:var(--n-ink-2); font-size:.875rem; }
.resume-position { margin:0 0 var(--n-6); }
.resume-position h3 { margin:0 0 var(--n-1); font-size:1.25rem; font-weight:650; }
.resume-position p { color:var(--n-ink-2); font-size:.9375rem; margin:0; }
.resume-work-group { margin-bottom:var(--n-6); break-inside:avoid; }
.resume-work-group h3 { margin:0 0 var(--n-3); font-size:1rem; font-weight:650; color:var(--n-brand); }
.resume-work-group ul { padding-left:18px; margin:0; }
.resume-work-group li { padding-left:3px; margin-bottom:var(--n-3); line-height:1.65; font-size:.9375rem; }
.resume-work-group li::marker { color:var(--n-rule-strong); }
.resume-work-group strong { font-weight:600; }
.resume-document-footer { margin-top:var(--n-4); padding:var(--n-5) 0; font-size:.8125rem; }
.resume-closing { display:flex; flex-wrap:wrap; gap:var(--n-4); justify-content:space-between; padding:var(--n-6) 0 var(--n-3); color:var(--n-ink-2); }
.resume-closing p { margin:0; }
@media(max-width:850px) {
 .resume-document { padding:var(--n-6) var(--n-6) 0; }
 .resume-profile,.resume-layout { grid-template-columns:175px minmax(0,1fr); gap:var(--n-6); }
 .resume-masthead { flex-wrap:wrap; }
 .resume-identity { text-align:left; }
}
@media(max-width:640px) {
 .resume-toolbar { align-items:flex-start; flex-direction:column; }
 .resume-tools { flex-wrap:wrap; }
 .resume-document { padding:var(--n-6) var(--n-5) 0; }
 .resume-profile,.resume-layout { grid-template-columns:1fr; gap:var(--n-5); }
 .resume-profile { padding:var(--n-6) 0; }
 .resume-sidebar { border-right:0; padding-right:0; }
 .resume-sidebar section { margin-bottom:var(--n-6); }
 .resume-skills { display:grid; grid-template-columns:1fr 1fr; column-gap:var(--n-3); }
 .resume-experience { border-top:1px solid var(--n-rule); padding-top:var(--n-6); }
}
@media print {
 @page { size:A4; margin:14mm; }
 body.n-root { background:var(--n-card); color:var(--n-ink); }
 .topbar,.resume-toolbar,.resume-closing,.shell > footer,.skip { display:none !important; }
 .shell { max-width:none; padding:0; }
 .resume-page { padding:0; }
 .resume-document { border:0; border-top:3px solid var(--n-brand); box-shadow:none; padding:7mm 0 0; }
 .resume-masthead { padding-bottom:5mm; }
 .resume-name svg { width:62mm; }
 .resume-role { font-size:15pt; }
 .resume-specialty,.resume-profile p,.resume-work-group li { font-size:9.5pt; }
 .resume-profile { padding:5mm 0; grid-template-columns:42mm 1fr; gap:6mm; }
 .resume-layout { grid-template-columns:42mm 1fr; gap:6mm; padding-top:6mm; }
 .resume-sidebar section { margin-bottom:6mm; }
 .resume-document h2 { font-size:8.5pt; margin-bottom:3mm; }
 .resume-skills li,.resume-systems dd,.resume-sidebar p { font-size:9pt; }
 .resume-skills li { padding-bottom:2mm; }
 .resume-position { margin-bottom:4mm; }
 .resume-work-group { margin-bottom:4mm; }
 .resume-work-group li { margin-bottom:2mm; line-height:1.45; }
 .resume-identity a { display:none; }
 .resume-document-footer { font-size:8pt; padding:4mm 0 0; }
}
