:root{color-scheme:dark;--bg:#07131e;--surface:#0c1c29;--surface2:#102534;--stroke:#274354;--text:#e9f3f8;--muted:#a8becd;--teal:#65e7cb;--blue:#72b9ef;--purple:#b8a4ff;--container:1130px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:inherit}
a:focus-visible{outline:3px solid var(--teal);outline-offset:4px;border-radius:3px}
img{max-width:100%}
.container{width:min(calc(100% - 42px),var(--container));margin:auto}
.skip-link{position:absolute;top:-90px;left:20px;padding:8px 16px;background:var(--teal);color:#061b23;z-index:20}
.skip-link:focus{top:10px}
.topbar{position:sticky;top:0;z-index:10;background:rgba(7,19,30,.94);border-bottom:1px solid rgba(95,139,160,.22);backdrop-filter:blur(10px)}
.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{text-decoration:none;white-space:nowrap;font-size:.91rem;font-weight:800;letter-spacing:.12em}
.dot{color:var(--teal)}
nav{display:flex;flex-wrap:wrap;align-items:center;gap:23px}
nav a{font-size:.88rem;text-decoration:none;color:var(--muted)}
nav a:hover,.text-link:hover,.back:hover{color:var(--teal)}
.hero{padding:100px 0 88px;position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;inset:-40% -30% auto auto;width:800px;height:800px;border-radius:50%;background:radial-gradient(circle,rgba(42,133,141,.14),transparent 65%);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}
.eyebrow{font-size:.73rem;letter-spacing:.17em;color:var(--teal);font-weight:800;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(2.65rem,5.4vw,5rem);line-height:1.1;letter-spacing:-.048em;margin:24px 0}
h2{font-size:clamp(2rem,3.3vw,3rem);line-height:1.15;letter-spacing:-.035em;margin:18px 0 25px}
h3{font-size:1.23rem;line-height:1.35}
.gradient-text{color:var(--teal);background:linear-gradient(90deg,#70e4c6,#8cc9ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero-lead{max-width:590px;font-size:1.12rem;color:var(--muted);line-height:1.85}
.hero-lead strong{color:var(--text)}
.actions{display:flex;flex-wrap:wrap;gap:13px;margin:30px 0}
.button{min-height:47px;padding:10px 22px;border-radius:9px;border:1px solid var(--stroke);display:inline-flex;justify-content:center;align-items:center;gap:14px;font-weight:750;font-size:.9rem;text-decoration:none;transition:transform .2s,background .2s}
.button:hover{transform:translateY(-2px)}
.button.primary{background:var(--teal);color:#05252a;border-color:var(--teal)}
.button.secondary{background:#122735;color:var(--text)}
.pills,.pill-group{display:flex;gap:9px;flex-wrap:wrap}
.pill{padding:4px 11px;border:1px solid var(--stroke);border-radius:20px;font-size:.74rem;color:#b4cddd;background:#0d202e}
.terminal{border:1px solid #325469;border-radius:14px;background:#0a1925;box-shadow:0 25px 70px rgba(0,0,0,.32);transform:rotate(1deg);overflow:hidden}
.lights i:nth-child(2){background:#e3bb6b}
.lights i:nth-child(3){background:#69c5b5}
.ln{min-width:20px;color:#698297}
.terminal-result{margin:20px 0 0;padding:12px 14px;color:#aee9d8;border:1px solid #236453;background:#102c30;border-radius:8px}
.result-mark{color:var(--teal)}
.muted{color:#88a7b4}
.section{padding:92px 0;scroll-margin-top:74px}
.section.alternate{background:#0a1b27}
.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:27px}
.section-head p{max-width:355px;color:var(--muted)}
.state{font-size:.61rem;letter-spacing:.09em;line-height:1.3;font-weight:800;color:#b4cddd}
.state.verified{color:var(--teal)}
.number{font:13px ui-monospace,monospace;color:#6c92a1}
.text-link{display:inline-block;color:var(--teal);text-underline-offset:5px;font-weight:800;font-size:.91rem;margin-top:auto}
.note,.small{color:#9db5c5;font-size:.81rem}
.note{margin-top:20px}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:35px}
.principle{padding-left:21px;border-left:1px solid #285667}
.principle h3{margin:13px 0}
.principle p,.section-description{color:var(--muted)}
.split{display:grid;grid-template-columns:.87fr 1.13fr;gap:70px}
.contact{text-align:center}
.contact p{max-width:660px;color:var(--muted);margin:auto}
.contact .actions{justify-content:center}
.article-main{padding:65px 0 100px;min-height:75vh}
.back{text-decoration:none;color:var(--muted);display:inline-block;margin-bottom:42px}
.article-title{max-width:930px}
.article-deck{max-width:810px;color:var(--muted);font-size:1.18rem}
.pill-group{margin:24px 0 45px}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:55px;align-items:start}
.prose{min-width:0}
.prose h2{font-size:1.65rem;margin:38px 0 12px}
.prose h2:first-child{margin-top:0}
.prose h3{margin:28px 0 10px}
.prose p,.prose li{color:#bcceda}
.prose ul,.prose ol{padding-left:24px}
.prose li{margin:8px 0}
.prose a{color:var(--teal)}
.prose pre{background:#05111b;border:1px solid var(--stroke);border-radius:10px;padding:20px;white-space:pre;overflow-x:auto;color:#cee6ed;font-size:.83rem;line-height:1.65}
.prose blockquote{margin:28px 0;border-left:3px solid var(--teal);padding:9px 20px;background:#0d2430;color:var(--muted)}
.aside-card{border:1px solid var(--stroke);border-radius:13px;background:#102533;padding:24px;position:sticky;top:104px}
.aside-card h2{font-size:1.25rem;margin:12px 0}
.aside-card p{color:var(--muted);font-size:.91rem}
.aside-card hr{border:none;border-top:1px solid var(--stroke);margin:24px 0}
.aside-card .text-link{margin-top:20px}
footer{border-top:1px solid var(--stroke)}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;color:var(--muted);font-size:.78rem;padding:28px 0}
.footer-inner a{color:var(--teal);text-decoration:none}
@media(max-width:960px){.hero-grid{grid-template-columns:1fr}.terminal{max-width:650px;transform:none}.split{grid-template-columns:1fr;gap:20px}.article-layout{grid-template-columns:1fr}.aside-card{position:static}.section-head{display:block}.principles{gap:15px}}
@media(max-width:650px){.container{width:min(calc(100% - 30px),var(--container))}.nav{padding:13px 0;align-items:flex-start;flex-direction:column;gap:11px}.nav nav{gap:12px}nav a{font-size:.77rem}.principles{grid-template-columns:1fr}.section{padding:65px 0}.article-main{padding:36px 0 75px}.hero-lead{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
/* Keyboard-accessible, scrollable evidence table. */
.evidence-scroll{overflow-x:auto;border:1px solid var(--stroke);border-radius:12px;background:var(--surface)}
.evidence-table{border-collapse:collapse;width:100%;min-width:650px;text-align:left}
.evidence-table th,.evidence-table td{padding:17px 20px;border-bottom:1px solid var(--stroke);vertical-align:top}
.evidence-table th{color:var(--teal);font-size:.76rem;letter-spacing:.06em;text-transform:uppercase}
.evidence-table td{color:var(--muted);font-size:.9rem}
.evidence-table tbody tr:last-child td{border-bottom:none}
.evidence-table a{color:var(--text);text-underline-offset:4px;font-weight:650}
.evidence-table a:hover{color:var(--teal)}
/* Issuer-agnostic credential cards, supported responsive layout and triage ladder. */
.credential-foot{font-size:.74rem;color:#adc4cf}
/* Synthetic packet-evidence visual gallery. Vector images are from reproducible offline observations. */
.network-evidence-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 12px}
.evidence-visual{display:block;overflow:hidden;border:1px solid var(--stroke);border-radius:14px;background:#102535;color:var(--text);text-decoration:none;transition:border-color .2s,transform .2s}
.evidence-visual:hover{border-color:var(--teal);transform:translateY(-3px)}
.evidence-visual img{display:block;width:100%;height:auto;aspect-ratio:12 / 7;object-fit:cover;border-bottom:1px solid var(--stroke)}
.evidence-visual span{display:block;padding:13px 15px 15px}
.evidence-visual strong{display:block;font-size:.88rem}
.evidence-visual small{display:block;font-size:.74rem;line-height:1.5;color:var(--muted);margin-top:4px}
.visual-disclaimer{font-size:.79rem;color:var(--muted);margin:5px 0 43px;max-width:860px}
@media(max-width:850px){.network-evidence-gallery{grid-template-columns:1fr}.evidence-visual img{max-height:300px;object-fit:contain;background:#071522}}
/* Explicitly labeled synthetic before/after vulnerability rule evidence. */
/* Native, keyboard-operable compact navigation. No JavaScript or external dependencies.
   Desktop links remain visible until the layout would otherwise wrap. */
.mobile-nav{display:none;position:relative;flex-shrink:0}
.mobile-nav summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:44px;padding:9px 14px;border:1px solid var(--stroke);border-radius:9px;background:var(--surface2);color:var(--text);font-size:.9rem;font-weight:700;cursor:pointer}
.mobile-nav summary::-webkit-details-marker{display:none}
.mobile-nav summary::after{content:"+";color:var(--teal);font-weight:800;font-size:1.3rem;line-height:1}
.mobile-nav[open] summary::after{content:"−"}
.mobile-nav summary:focus-visible,.mobile-nav nav a:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.mobile-nav nav{position:absolute;top:calc(100% + 10px);right:0;display:flex;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:0;min-width:min(285px,calc(100vw - 30px));max-height:calc(100vh - 105px);overflow-y:auto;padding:8px;background:#112938;border:1px solid #416879;border-radius:13px;box-shadow:0 14px 35px rgba(0,0,0,.42);z-index:15}
.mobile-nav nav a{display:block;padding:11px 15px;min-height:44px;line-height:1.45;color:var(--text);border-radius:8px;white-space:normal}
.mobile-nav nav a:hover,.mobile-nav nav a:focus-visible{background:#1b4350;color:var(--teal)}
section[id]{scroll-margin-top:100px}
.evidence-scroll:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
@media(max-width:800px){
 .nav{min-height:68px;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:nowrap;padding:8px 0;gap:12px}
 .nav>.logo{flex-shrink:0;font-size:.88rem}
 .nav>nav{display:none}
 .nav>.mobile-nav{display:block}
 .topbar{position:sticky;top:0}
}
@media(max-width:365px){
 .nav>.logo{font-size:.78rem;letter-spacing:.07em}
 .mobile-nav summary{padding:8px 10px}
}
@media(prefers-reduced-motion:reduce){
 .evidence-visual{transition:none}
 .button:hover{transform:none}

}
/* Screenshot review 2026-10-22: prevent the synthetic detector status from
   clipping at desktop size; keep all explanatory language visible. */
.terminal-result{white-space:normal;overflow-wrap:anywhere;word-break:normal;line-height:1.65}
.terminal-result .muted{white-space:normal}
@media(max-width:650px){
 .hero{padding:44px 0 62px}
 .hero h1{font-size:clamp(2.2rem,10.6vw,2.65rem);line-height:1.08;margin:18px 0 20px;letter-spacing:-.04em}
 .hero-lead{line-height:1.65}
 .hero .actions{margin:24px 0}
}
@media(max-width:370px){
 .hero{padding-top:38px}

 .hero .button{min-height:44px}
}
/* Compact, semantic analyst briefs for network and vulnerability case studies. */
.case-brief{margin:30px 0 24px;padding:25px;border:1px solid #385d69;background:linear-gradient(130deg,#112d38,#0b202d);border-radius:16px}
.case-brief-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.case-brief-head h2{font-size:clamp(1.18rem,2.2vw,1.45rem);line-height:1.3;margin:5px 0 0;max-width:580px}
@media(max-width:700px){.case-brief{padding:18px;margin-top:22px}.case-brief-head{flex-direction:column;gap:9px}}
/* Recruiter-first evidence path. Supports home and dedicated SOC case index. */
.analyst-evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.soc-proof-card,.analyst-evidence-card{border:1px solid #365a68;background:#102532;border-radius:14px;padding:22px;min-width:0;overflow-wrap:anywhere}
.analyst-card-meta{display:flex;gap:15px;align-items:center;justify-content:space-between;color:#86b8cb;text-transform:uppercase;letter-spacing:.06em;font-size:.71rem;font-weight:800}
.analyst-card-meta span:last-child{color:var(--teal);white-space:nowrap}
.soc-proof-card h3,.analyst-evidence-card h3{font-size:1.22rem;line-height:1.3;margin:15px 0 8px}
.soc-proof-card p,.analyst-evidence-card p{color:#bbcfda;font-size:.88rem;margin:0 0 14px;line-height:1.7}
.soc-proof-card>a,.analyst-link-row a,.analyst-resources a{color:var(--teal);font-weight:700;text-underline-offset:4px;font-size:.83rem}
.analyst-verification-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:19px 0 0}
.analyst-verification-panel{border:1px solid #304d5c;border-radius:12px;background:#0b202c;padding:18px 22px;min-width:0}
.analyst-verification-panel h3{font-size:.95rem;color:#e0f1f2;margin:0 0 9px}
.analyst-review-section{margin:38px 0 48px}
.analyst-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:19px}
.analyst-section-head h2{font-size:clamp(1.4rem,2.35vw,1.95rem);line-height:1.3;margin:8px 0}
.analyst-section-head>p{max-width:390px;color:#b2c9d6;font-size:.89rem;margin:0;line-height:1.75}
.analyst-evidence-card{padding:24px}
.analyst-evidence-card p.analyst-outcome{color:#d8e9ea;background:#123139;border-left:3px solid #69cdbd;border-radius:2px;padding:10px 13px;margin:13px 0 17px}
.analyst-link-row{display:flex;flex-wrap:wrap;gap:8px 17px}
.analyst-verification-panel ul{margin:12px 0 0;padding-left:20px;color:#b8d0dc;font-size:.87rem;line-height:1.75}
.analyst-verification-panel li+li{margin-top:8px}
.analyst-resources{display:flex;flex-wrap:wrap;gap:11px 20px;margin-top:22px}
@media(max-width:800px){.analyst-section-head{display:block}.analyst-section-head>p{max-width:unset;margin-top:10px}}
@media(max-width:650px){.analyst-evidence-grid,.analyst-verification-grid{grid-template-columns:1fr}.soc-proof-card,.analyst-evidence-card{padding:18px}.analyst-review-section{margin:30px 0 35px}}
/* Transparent source-derived SOC demo. Not styled or described as Splunk output. */
.sim-main{padding-bottom:80px}
.sim-banner{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 14px;padding:12px 17px;margin:24px 0 28px;border:1px solid #365565;background:#102633;color:#bdd3df;border-radius:10px;line-height:1.55}
.sim-banner strong{font-size:.79rem;letter-spacing:.035em;color:#a3e8dd}
.sim-banner span{font-size:.81rem}
.sim-banner a{color:#a2e5dc;text-underline-offset:3px}
.sim-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:26px 0}
.sim-stat{background:#132b38;border:1px solid #355867;border-radius:14px;padding:17px}
.sim-stat strong{display:block;font-size:clamp(1.5rem,3vw,2.2rem);color:#7de1d1;line-height:1.25}
.sim-stat span{color:#bbd0dd;font-size:.78rem}
.sim-panel{padding:24px;margin:19px 0;border:1px solid #385a67;background:#0d2230;border-radius:16px}
.sim-panel h2{font-size:1.18rem;margin:4px 0 0}
.sim-panel>p{color:#c3d5de;font-size:.87rem;line-height:1.7}
.sim-panel a{color:#78e6d3;text-underline-offset:3px}
.sim-panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.sim-panel-head .eyebrow{font-size:.65rem}
.sim-legend{display:flex;gap:17px;font-size:.79rem}
.sim-legend span:before{content:"";display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:7px}
.sim-key-f:before{background:#71bce9}
.sim-key-s:before{background:#77dec1}
.sim-chart{margin-top:22px;display:flex;flex-direction:column;gap:12px}
.sim-chart-row{display:grid;grid-template-columns:130px minmax(0,1fr) 64px;gap:13px;align-items:center}
.sim-chart-label{font-size:.81rem;font-weight:650;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.sim-chart-bars{display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:28px}
.sim-bar{display:block;height:9px;min-width:0;border-radius:2px}
.sim-bar-f{background:#71bce9}
.sim-bar-s{background:#77dec1}
.sim-chart-total{font:600 .8rem/1.4 ui-monospace,monospace;text-align:right;font-variant-numeric:tabular-nums}
.sim-data{margin-top:19px;border-top:1px solid #315062;padding-top:12px}
.sim-data summary{cursor:pointer;color:#8ff0d9;font-weight:650;font-size:.84rem;min-height:44px;display:flex;align-items:center}
.sim-data .evidence-scroll{margin:14px 0 0;overflow-x:auto}
.sim-pill{font-size:.71rem;border:1px solid #4c6976;color:#bddae3;border-radius:40px;padding:5px 12px;font-weight:700}
.sim-alert{display:grid;grid-template-columns:minmax(200px, .8fr) minmax(0,1.3fr);gap:22px;margin:19px 0;padding:20px;border:1px solid #536b76;border-radius:12px;background:#142d3b}
.sim-alert strong{color:#f3f7fc}
.sim-alert p{color:#c2d5e1;font-size:.82rem}
.sim-alert dl{margin:0}
.sim-alert dl>div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #2a4957;padding:7px 0;font-size:.83rem}
.sim-alert dt{color:#a3c4d1}
.sim-alert dd{margin:0;text-align:right;font-weight:600;overflow-wrap:anywhere}
@media(max-width:760px){.sim-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.sim-alert{grid-template-columns:1fr}.sim-panel{padding:17px}.sim-chart-row{grid-template-columns:90px minmax(0,1fr) 50px;gap:8px}.sim-chart-label{font-size:.74rem}.sim-chart-total{font-size:.72rem}}
@media(max-width:370px){.sim-stat{padding:12px}.sim-chart-row{grid-template-columns:75px minmax(0,1fr) 47px}}
/* V4: recruiter-first verified Splunk investigation.
   Screenshot-review table is deliberately not represented as a live widget. */
.splunk-feature{background:linear-gradient(145deg,#0b2631,#0a1722 78%);border-bottom:1px solid var(--stroke);scroll-margin-top:85px}
.splunk-feature .section-head p{max-width:490px}
.splunk-feature-grid{display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:25px;align-items:stretch}
.splunk-feature-copy{min-width:0}
.splunk-statusline{display:flex;align-items:center;gap:9px;color:#a0e6d9;text-transform:uppercase;font-size:.71rem;font-weight:800;letter-spacing:.065em}
.splunk-status-dot{width:8px;height:8px;border-radius:50%;background:#72d6bc;box-shadow:0 0 0 4px #184439}
.splunk-feature-copy h3{font-size:clamp(1.35rem,2.55vw,1.8rem);line-height:1.22;margin:18px 0 12px}
.splunk-feature-copy>p{color:#bdd1dc;font-size:.91rem;line-height:1.75}
.splunk-progress{display:flex;align-items:center;gap:15px;margin:23px 0}
.splunk-progress>div:not(.splunk-progress-arrow){flex:1;border:1px solid #355a68;background:#112a36;border-radius:12px;padding:13px;min-width:0}
.splunk-progress span,.splunk-progress small{display:block;color:#a8c5d0;font-size:.75rem}
.splunk-progress strong{display:block;font-size:1.55rem;color:#e3faf4;font-variant-numeric:tabular-nums;margin:4px 0}
.splunk-progress-arrow{font-size:1.5rem;color:var(--teal);flex:none}
.splunk-feature-links{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:19px}
.splunk-feature-links .button{font-size:.82rem}
.splunk-feature-copy .splunk-scope{font-size:.79rem;margin-top:19px;color:#9db9c7}
.splunk-evidence-preview{border:1px solid #356072;border-radius:16px;background:#0b1923;overflow:hidden;min-width:0;align-self:start}
.splunk-evidence-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:9px;padding:17px 17px;background:#13303e;color:#d7e9ef;font-size:.77rem}
.splunk-evidence-heading span:last-child{color:#83d9c8}
.splunk-evidence-preview .evidence-scroll{overflow-x:auto}
.splunk-evidence-table{border-collapse:collapse;min-width:470px;width:100%;font-size:.78rem;color:#d5e8ec}
.splunk-evidence-table th{font-size:.7rem;color:#a3c0d0;text-transform:uppercase;letter-spacing:.02em;text-align:left;padding:13px 11px;border-bottom:1px solid #385362}
.splunk-evidence-table td{padding:13px 11px;border-bottom:1px solid #263f4c;white-space:nowrap}
.splunk-evidence-table code{color:#b8f0e2;font-size:.77rem}
.splunk-evidence-table .splunk-boundary-row{background:#14343c}
.splunk-evidence-preview .splunk-table-note{font-size:.76rem;color:#aec6d2;line-height:1.6;margin:16px}
.splunk-evidence-preview .splunk-table-note a{color:var(--teal);text-underline-offset:3px}
@media(max-width:950px){.splunk-feature-grid{grid-template-columns:1fr}.splunk-evidence-preview{max-width:780px}.splunk-feature .section-head{display:block}}
@media(max-width:480px){.splunk-progress{gap:8px}.splunk-progress>div:not(.splunk-progress-arrow){padding:10px}.splunk-progress-arrow{font-size:1.15rem}.splunk-feature-copy .button{width:100%;text-align:center}.splunk-evidence-heading{padding:13px 14px}}
/* Maintain first project CTA inside Chrome's actual 320px-wide content viewport. */
@media(max-width:370px){.hero h1{font-size:2.06rem;margin:14px 0 12px;line-height:1.06}.hero-lead{font-size:.86rem;line-height:1.52}.hero{padding:30px 0 40px}.hero .actions{margin:17px 0}}
/* Recruiter-ready one-page profile. Print output remains plain and source-linked. */
.recruiter-main{max-width:980px;padding-top:30px;padding-bottom:60px}
.recruiter-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-bottom:23px}
.recruiter-actions .back{margin:0}
.recruiter-print{cursor:pointer;font-family:inherit}
.recruiter-sheet{border:1px solid #416676;background:linear-gradient(150deg,#112938,#0c1a27);padding:34px 42px;border-radius:17px;box-shadow:0 18px 80px rgba(0,0,0,.2)}
.recruiter-sheet-head h1{font-size:clamp(2.4rem,5vw,3.6rem);letter-spacing:-.035em;margin:10px 0 2px}
.recruiter-position{font-size:1.06rem;color:#8ce8d7;font-weight:700;margin-bottom:12px}
.recruiter-intro{max-width:820px;color:#c8dce5;font-size:.91rem;line-height:1.7;margin-bottom:12px}
.recruiter-links{display:flex;flex-wrap:wrap;gap:11px 21px;font-size:.82rem}
.recruiter-links a,.recruiter-evidence-links a,.recruiter-project-grid a,.recruiter-after a{color:#91ebda;text-underline-offset:3px}
.recruiter-credential-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}
.recruiter-credential-row>div{background:#142f3e;border:1px solid #3c5c6a;padding:13px 16px;border-radius:10px}
.recruiter-credential-row strong,.recruiter-credential-row span,.recruiter-credential-row small{display:block}
.recruiter-credential-row strong{font-size:.67rem;text-transform:uppercase;letter-spacing:.075em;color:#86d5cb}
.recruiter-credential-row span{font-size:.85rem;font-weight:650;margin-top:5px;line-height:1.45}
.recruiter-credential-row small{font-size:.67rem;color:#aec6d2;line-height:1.4;margin-top:3px}
.recruiter-block{padding:17px 0 11px;border-top:1px solid #385665}
.recruiter-section-title{display:flex;align-items:baseline;gap:13px}
.recruiter-section-title>span{font:700 .74rem ui-monospace,monospace;color:#70d6c8}
.recruiter-section-title h2{font-size:1.24rem;letter-spacing:-.015em;line-height:1.3;margin:0 0 12px}
.recruiter-detail{color:#cfdee7;font-size:.86rem;line-height:1.66;margin-bottom:14px}
.recruiter-comparison{display:flex;align-items:center;gap:11px;margin-bottom:11px}
.recruiter-comparison>div:not(.recruiter-arrow){min-width:0;flex:1;border:1px solid #355568;border-radius:8px;background:#142b3a;padding:11px 14px}
.recruiter-comparison small,.recruiter-comparison span{display:block;color:#bdd0da;font-size:.71rem}
.recruiter-comparison strong{font-size:1.43rem;display:block;color:#a1ecd8;margin:3px 0;font-variant-numeric:tabular-nums}
.recruiter-arrow{font-size:1.2rem;color:#a0e3d7}
.recruiter-evidence-links{font-size:.79rem;line-height:1.75;margin:0 0 2px}
.recruiter-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.recruiter-project-grid>div{min-width:0}
.recruiter-project-grid h3,.recruiter-skill-columns h3{font-size:.88rem;margin:0 0 6px}
.recruiter-project-grid p,.recruiter-skill-columns p{color:#c1d3dd;font-size:.8rem;line-height:1.6;margin:0}
.recruiter-skill-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.recruiter-qualification{font-size:.75rem;line-height:1.58;color:#acbfcc;border-top:1px solid #385665;padding-top:16px;margin:15px 0 0}
.recruiter-after{color:#afc6d0;margin:16px 0;font-size:.83rem}
@media(max-width:700px){.recruiter-sheet{padding:22px 19px}.recruiter-credential-row{grid-template-columns:1fr}.recruiter-project-grid{grid-template-columns:1fr;gap:14px}.recruiter-skill-columns{grid-template-columns:1fr;gap:14px}.recruiter-comparison{gap:6px}.recruiter-comparison>div:not(.recruiter-arrow){padding:10px}.recruiter-links{gap:6px 15px}}
@media print{
 @page{size:letter;margin:0.43in 0.52in}
 html{scroll-behavior:auto}body{background:#fff!important;color:#161d27!important;font:9.3pt/1.32 Arial,Helvetica,sans-serif}
 .recruiter-chrome,.recruiter-screen-only,.skip-link{display:none!important}
 .recruiter-main{width:100%;max-width:none;padding:0;margin:0}
 .recruiter-sheet{border:0;border-radius:0;box-shadow:none;background:white!important;padding:0}
 .recruiter-sheet .eyebrow{font-size:7.8pt;color:#22546a!important}
 .recruiter-sheet-head h1{font-size:27pt;color:#0d1a27!important;margin:5pt 0 0}
 .recruiter-position{font-size:10.2pt;color:#24566a!important;margin:0 0 6pt}
 .recruiter-intro{font-size:8.2pt;line-height:1.3;color:#283745!important;margin:0 0 5pt}
 .recruiter-links{margin:0}
 .recruiter-links a,.recruiter-evidence-links a,.recruiter-project-grid a{color:#154b67!important}
 .recruiter-credential-row{grid-template-columns:repeat(3,1fr);gap:8pt;margin:10pt 0 8pt}
 .recruiter-credential-row>div{border:1px solid #d8e0e8;background:#f3f7f9!important;padding:6pt 8pt;border-radius:3pt}
 .recruiter-credential-row strong{color:#295a69!important;font-size:6.6pt}
 .recruiter-credential-row span{color:#202e39!important;margin-top:2pt}
 .recruiter-credential-row small{color:#475e6c!important}
 .recruiter-block{border-top:1px solid #b9c9d0}
 .recruiter-section-title{gap:7pt}.recruiter-section-title span{color:#24566a!important;font-size:7pt}
 .recruiter-section-title h2{color:#142c3c!important;margin:0 0 5pt}
 .recruiter-detail{color:#233743!important;margin:0 0 7pt}
 .recruiter-comparison{gap:8pt;margin:4pt 0}
 .recruiter-comparison>div:not(.recruiter-arrow){background:#f2f7f8!important;border:1px solid #d1dee2;border-radius:3pt;padding:4pt 9pt}
 .recruiter-comparison small,.recruiter-comparison span{font-size:6.8pt;color:#425c67!important}
 .recruiter-comparison strong{font-size:13pt;color:#1b5663!important;margin:0}
 .recruiter-arrow{color:#24566a!important}
 .recruiter-evidence-links{margin:3pt 0}
 .recruiter-project-grid{grid-template-columns:repeat(3,1fr);gap:13pt}
 .recruiter-project-grid h3,.recruiter-skill-columns h3{color:#263d4c!important;margin:0 0 3pt}
 .recruiter-project-grid p,.recruiter-skill-columns p{color:#394b59!important}
 .recruiter-skill-columns{grid-template-columns:1fr 1fr;gap:15pt}
 .recruiter-qualification{color:#4a5e69!important;border-top:1px solid #cad6de;margin:7pt 0 0;padding-top:6pt}
 .recruiter-sheet a{text-decoration:underline;word-wrap:break-word}
}
/* Real screenshot is a cropped operator capture. SVG workflow diagrams are illustrations. */
.splunk-real-proof,.proof-media,.analyst-illustration{margin:22px 0 26px;border:1px solid #375969;border-radius:12px;overflow:hidden;background:#101d29}
.splunk-real-proof{border:0;border-radius:0;margin:0;background:#19252e}
.splunk-real-proof img,.proof-media img,.analyst-illustration img{display:block;width:100%;height:auto;object-fit:contain}
.splunk-real-proof a,.proof-media>a{display:block}
.splunk-real-proof figcaption,.proof-media figcaption,.analyst-illustration figcaption{padding:11px 15px;margin:0;font-size:.77rem;color:#b9d0da;line-height:1.55}
.splunk-real-proof a,.proof-media figcaption a{color:#9aebd8;text-underline-offset:3px}
.analyst-illustration img{max-height:260px}
.proof-illustration img{width:100%}
.recruiter-evidence-img{margin:14px 0;border:1px solid #365968;border-radius:11px;overflow:hidden;background:#142b38}
.recruiter-evidence-img img{width:100%;height:auto;display:block}
.recruiter-evidence-img figcaption{font-size:.72rem;color:#bfdae3;padding:8px 12px}
@media print{.recruiter-evidence-img{display:none!important}}
/* Application readiness: role-selective ATS text, not an employment claim. */
.application-page{max-width:1120px;padding-top:32px;padding-bottom:75px}
.application-page h1{font-size:clamp(2rem,4vw,3.2rem);line-height:1.1;letter-spacing:-.03em;max-width:760px;margin:10px 0 15px}
.application-lead{max-width:770px;color:#c6d9e4;font-size:1.04rem;line-height:1.72}
.application-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:30px 0 39px}
.application-stats>div{padding:18px;border:1px solid #355866;border-radius:11px;background:#112a38}
.application-stats strong{display:block;font-size:1.65rem;color:#a2f0da;line-height:1.25}
.application-stats span{display:block;color:#b9d1dd;font-size:.8rem;line-height:1.45}
.application-section{margin:38px 0}
.application-section-heading h2{font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.22;margin:5px 0 9px}
.application-section-heading p{color:#bbd0da;margin:0 0 20px}
.application-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.application-role-card{background:linear-gradient(140deg,#153443,#101f2d);border:1px solid #467181;border-radius:15px;padding:24px;min-width:0;display:flex;flex-direction:column}
.application-role-header>span{display:block;font-size:.72rem;letter-spacing:.055em;font-weight:750;color:#92ddcf}
.application-role-header h3{font-size:1.4rem;margin:7px 0}
.application-role-header p{font-size:.87rem;color:#bed2dc;line-height:1.6}
.application-role-card ul{padding-left:20px;margin:14px 0 25px;color:#e0edf1;font-size:.86rem;line-height:1.65}
.application-role-card li{margin:7px 0}
.application-role-actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.application-role-actions .button{font-size:.83rem}
.application-role-actions .text-link{font-size:.81rem}
.application-proof-list{border:1px solid #3f6473;border-radius:13px;overflow:hidden;margin-top:17px}
.application-proof-list a{display:grid;grid-template-columns: minmax(170px,.72fr) minmax(0,1.3fr) 18px;gap:15px;align-items:center;padding:17px 20px;border-bottom:1px solid #305363;text-decoration:none;background:#102736}
.application-proof-list a:last-child{border-bottom:0}
.application-proof-list a:hover,.application-proof-list a:focus-visible{background:#194052}
.application-proof-list a strong{font-size:.9rem;color:#e7f7f8}
.application-proof-list a span{font-size:.82rem;color:#b7d2dc}
.application-proof-list a span:last-child{font-size:1.1rem;color:#77e8ce}
.application-questions{display:grid;gap:10px;margin-top:19px}
.application-questions details{padding:14px 19px;background:#112d3c;border:1px solid #375d6d;border-radius:10px}
.application-questions summary{cursor:pointer;list-style:revert;font-size:.91rem;font-weight:650;min-height:40px;display:list-item}
.application-questions p{color:#c3d6e1;font-size:.85rem;line-height:1.75;margin:12px 0 5px}
.application-questions a,.application-further a{color:#89e9d5;text-underline-offset:3px}
.application-further{font-size:.86rem;margin:17px 0 0}
.application-disclosure{border-top:1px solid #355b67;margin:48px 0 0;padding:23px 0;color:#bdd2df}
.application-disclosure strong{color:#90e8d4;font-size:.9rem}
.application-disclosure p{font-size:.85rem;max-width:900px;line-height:1.7}
@media(max-width:820px){.application-role-grid{grid-template-columns:1fr}.application-proof-list a{grid-template-columns:1fr 20px;gap:4px}.application-proof-list a strong{grid-column:1}.application-proof-list a span:nth-child(2){grid-column:1}.application-proof-list a span:last-child{grid-row:1 / span 2;grid-column:2;text-align:right}}
@media(max-width:500px){.application-stats{grid-template-columns:1fr;gap:9px;margin:23px 0}.application-stats>div{display:flex;gap:14px;align-items:center;padding:12px 15px}.application-stats strong{font-size:1.4rem;min-width:40px}.application-role-card{padding:18px}.application-role-actions .button{width:100%;text-align:center}.application-page{padding-top:22px}}
.application-recruiter-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
@media(max-width:500px){.application-recruiter-actions{width:100%}.application-recruiter-actions .button{flex:1;text-align:center}}
/* Transparent but concise public/private submission readiness workflow. */
.application-finalize{scroll-margin-top:88px}
.application-finalize-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}
.application-finalize-grid article{border:1px solid #345967;border-radius:13px;background:#102938;padding:19px;min-width:0}
.application-finalize-kicker{color:#8dd6ca;display:block;font-size:.7rem;line-height:1.4;font-weight:750;letter-spacing:.06em}
.application-finalize-grid h3{font-size:1.04rem;margin:9px 0}
.application-finalize-grid p{font-size:.83rem;color:#bfd2dd;line-height:1.68;margin:0}
.application-finalize-grid a{color:#97e9d6;text-underline-offset:3px}
@media(max-width:800px){.application-finalize-grid{grid-template-columns:1fr}}
/* Homepage: one recruiter path, visual case studies, existing static stack. */
.portfolio-home{--bg:#0b1014;--surface:#11191f;--surface2:#17232b;--stroke:#30434c;--text:#edf2ef;--muted:#adbec3;--teal:#bcf778;--blue:#a0c9e5;background:var(--bg)}
.portfolio-home .topbar{background:rgba(11,16,20,.96)}
.portfolio-home .nav{min-height:82px}
.portfolio-home nav{gap:29px}
.portfolio-home nav a{color:#c2ced0;font-size:.83rem}
.portfolio-home .nav-contact{border:1px solid #4f6345;padding:7px 14px;border-radius:5px;color:var(--teal)}
.portfolio-home .logo{font-size:.86rem;letter-spacing:.06em}
.brand-symbol{color:var(--teal);font-weight:500}
.brand-discipline{color:#98a9b1;font-size:.63rem;letter-spacing:.1em;margin-left:8px}
.portfolio-home .hero::before{display:none}
.portfolio-home .hero-grid{align-items:center}
.portfolio-home .hero h1{line-height:1.08;letter-spacing:-.055em}
.portfolio-home .gradient-text{background:none;-webkit-text-fill-color:currentColor;color:var(--teal)}
.portfolio-home .hero-kicker{font:700 .68rem/1.6 ui-monospace,Consolas,monospace;letter-spacing:.1em}
.portfolio-home .actions{gap:10px}
.portfolio-home .button{border-radius:5px;font-size:.84rem;min-height:48px;padding:11px 21px}
.portfolio-home .button.primary{color:#17230d}
.portfolio-home .button.secondary{background:transparent;border-color:#49606a}
.portfolio-home .signal-panel{background:#121c22;transform:none;border:1px solid #3a4e56;border-radius:10px;box-shadow:12px 14px 0 #0e171b;min-width:0}
.signal-panel-head{display:flex;align-items:center;gap:9px;border-bottom:1px solid #30434c;padding:14px 18px;font:600 .61rem/1.5 ui-monospace,Consolas,monospace;letter-spacing:.045em;color:#b2c5ca}
.signal-square{width:7px;height:7px;background:var(--teal)}
.signal-ref{margin-left:auto;color:#a4b3bb}
.signal-panel-body{padding:25px 26px}
.preview-label,.preview-foot{font:600 .61rem/1.6 ui-monospace,Consolas,monospace;letter-spacing:.07em;color:#b9cbd0}
.signal-panel h2{font-size:1.75rem;line-height:1.2;letter-spacing:-.025em;margin:27px 0 11px}
.signal-panel p{font-size:.8rem;line-height:1.8;color:#b4c5ca;margin:0}
.portfolio-home .terminal-result{display:grid;grid-template-columns:15px 1fr;column-gap:9px;padding:13px 0;margin:21px 0 14px;border:0;border-block:1px solid #344b40;background:transparent;border-radius:0;color:var(--teal);font-size:1rem}
.terminal-result>span:last-child{grid-column:2;color:#b4c6bd;font-size:.68rem}
.signal-link{display:flex;justify-content:space-between;color:#d8ebcb;text-decoration:none;font-size:.74rem;font-weight:700}
.signal-panel-foot{border-top:1px solid #30434c;padding:12px 18px;color:#9dafb6;font:500 .58rem/1.5 ui-monospace,Consolas,monospace}
.portfolio-home .section{padding:76px 0}
.portfolio-home .eyebrow{font-size:.65rem;letter-spacing:.13em}
.portfolio-home h2{font-size:clamp(1.9rem,3vw,2.65rem);line-height:1.15}
.portfolio-home .section-head{margin-bottom:29px;gap:48px}
.portfolio-home .section-head h2{margin-bottom:0}
.portfolio-home .section-head>p{max-width:390px;font-size:.88rem;line-height:1.8;margin:0}
.portfolio-home .splunk-feature{background:#0b1014}
.portfolio-home .splunk-feature-grid{gap:38px;grid-template-columns:1fr 1.1fr}
.portfolio-home .splunk-feature-copy h3{font-size:1.35rem}
.portfolio-home .splunk-statusline{font-size:.66rem;color:#c1d5b4}
.portfolio-home .splunk-status-dot{background:var(--teal)}
.portfolio-home .splunk-progress>div:not(.splunk-progress-arrow){background:#17221f;border-color:#3e5546;border-radius:6px}
.portfolio-home .splunk-progress strong{color:var(--teal)}
.portfolio-home .splunk-evidence-preview{border-radius:9px;border-color:#3f555b;margin-top:18px;background:#111c22}
.portfolio-home .splunk-real-proof{background:#19252e}
.portfolio-home .splunk-real-proof figcaption{font-size:.7rem}
.portfolio-home .splunk-real-proof figcaption a{display:inline;color:var(--teal)}
.result-details summary{list-style:none;display:flex;justify-content:space-between;padding:15px 18px;cursor:pointer;color:#d4e3cd;font-size:.75rem;border-top:1px solid #3f555b}
.result-details summary::-webkit-details-marker,.evidence-details summary::-webkit-details-marker{display:none}
.result-details[open] summary>span,.evidence-details[open] summary>span:last-child{transform:rotate(45deg)}
.portfolio-home summary:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.portfolio-home .splunk-evidence-heading{background:#182b2b}
.portfolio-home .splunk-evidence-table code{color:#d3eac1}
.work-section{background:#10181e;border-block:1px solid #2b3a42}
.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.identity-preview{background:radial-gradient(ellipse at 75% 50%,#2e4332,#14201e 80%)}
.identity-visual{display:flex;align-items:center;justify-content:center;gap:35px;color:#acb8a3;font:500 3.9rem/1 ui-monospace,Consolas,monospace}
.identity-visual>span,.identity-visual>strong{white-space:nowrap}
.identity-visual strong{color:var(--teal);font-weight:500}
.identity-visual span span,.identity-visual strong span{font-size:1.5rem;color:#9daf9e}
.identity-visual i{font-style:normal;font-size:2rem;color:#809879}
.identity-preview .preview-foot{color:#bcd6aa}
.endpoint-preview{background:linear-gradient(120deg,#13232c,#1d303e)}
.process-tree{font:500 .83rem/2.4 ui-monospace,Consolas,monospace;color:#b8cbd5}
.process-tree>span{color:#b6d8ef}
.process-tree>div{padding-left:8px;white-space:nowrap}
.process-tree strong{font-weight:500;color:#d9e5ec}
.process-tree em{font-style:normal;color:#f3bf94;font-size:.74rem}
.process-branch{padding-right:12px;color:#7b9aa6}
.network-preview img{height:100%;width:100%;object-fit:contain}
.hardening-preview{background:linear-gradient(115deg,#292b23,#172d28)}
.hardening-visual{display:flex;justify-content:center;align-items:center;gap:50px}
.hardening-visual>div{display:flex;flex-direction:column;gap:7px;align-items:center}
.hardening-visual strong{font:500 3.6rem/1 ui-monospace,Consolas,monospace;color:#f0b394}
.hardening-visual>div:last-child strong{color:var(--teal)}
.hardening-visual span{font:500 .58rem/1.5 ui-monospace,Consolas,monospace;letter-spacing:.15em;color:#c1cdc4}
.hardening-visual i{color:#9bac9e;font-size:1.7rem;font-style:normal}
.preview-foot{font-size:.56rem;color:#a6bfc4}
/* Project cards: title, decision, evidence, then source actions.
   One component definition; retain readable proof at every viewport. */
.work-card{min-width:0;padding:0;border:1px solid #3c5157;border-radius:9px;overflow:hidden;background:var(--surface);display:flex;flex-direction:column;transition:border-color .18s}
.work-card:hover,.work-card:focus-within{border-color:#8cb69b}
.work-preview{height:190px;display:flex;flex-direction:column;justify-content:space-between;padding:22px 25px;text-decoration:none;background:#182a30;border-bottom:1px solid #344b55;overflow:hidden}
.work-content{padding:25px;display:flex;flex-direction:column;flex:1}
.work-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font:500 .69rem/1.6 ui-monospace,Consolas,monospace;letter-spacing:.04em}
.work-meta>span:last-child{white-space:nowrap}
.work-content h3{font-size:1.4rem;line-height:1.3;letter-spacing:-.025em;margin:15px 0 12px}
.work-content h3 a{text-decoration:none}
.work-content h3 a:hover{color:var(--teal)}
.work-content p{font-size:.93rem;line-height:1.75;color:var(--muted);margin:0 0 20px}
.work-proofline{display:grid;gap:12px;margin:0 0 21px;padding:17px 0;border-block:1px solid var(--stroke)}
.work-proofline>div{display:grid;grid-template-columns:80px minmax(0,1fr);gap:12px;align-items:baseline}
.work-proofline dt{white-space:nowrap;font-size:.68rem;font-weight:650;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.work-proofline dd{margin:0;font-size:.875rem;line-height:1.6;color:var(--text)}
.work-proofline>div:first-child dd{color:#d0edbc;font-weight:650}
.work-footer{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:auto}
.work-footer>span{flex-basis:100%;color:var(--muted);font-size:.73rem}
.work-footer>a{display:inline-flex;align-items:center;min-height:44px;font-size:.81rem;font-weight:650;color:var(--teal);text-underline-offset:4px}
.work-footer>a:last-child{justify-content:space-between;gap:18px;margin-left:auto;padding:9px 13px;border:1px solid #4a6655;border-radius:5px;text-decoration:none;background:#21362b;color:#e1eed9}
.work-footer>a:hover{color:var(--text)}
@media(max-width:800px){.work-content{padding:21px}.work-content h3{font-size:1.25rem}.work-preview{height:180px;padding:21px}.work-proofline>div{grid-template-columns:1fr;gap:3px}.work-footer>a{font-size:.77rem}}
@media(prefers-reduced-motion:reduce){.work-card{transition:none}}
.network-preview{padding:0;background:#0a1a28}
.work-context{display:flex;justify-content:space-between;gap:20px;margin:19px 0 0;font-size:.72rem;color:#a9bbc3}
.work-context p{margin:0;max-width:620px}
.work-context>a{white-space:nowrap;color:var(--teal);text-underline-offset:4px}
.engineering-section{padding-top:55px;scroll-margin-top:100px}
.engineering-heading h3{font-size:1.3rem;margin:10px 0 6px}
.engineering-heading p{color:#acbdc5;font-size:.78rem}
.portfolio-home #evidence{padding:25px 0;background:#0b1014;border-bottom:1px solid #2a3d47}
.evidence-details>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:9px 0;gap:20px}
.evidence-details summary .eyebrow{display:block;margin:0 0 6px}
.evidence-details summary strong{font-size:1rem;font-weight:550}
.evidence-details summary>span:last-child{font-size:1.6rem;color:var(--teal)}
.evidence-details>.section-description{margin-top:22px;font-size:.85rem}
.portfolio-home .evidence-table th{color:var(--teal)}
.portfolio-home .evidence-table td{font-size:.8rem}
.portfolio-home .section.method-section{padding-bottom:65px}
.method-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin:35px 0 0}
.method-grid>li{border-top:1px solid #41564e;padding:18px 0 0}
.method-grid>li>span{font:500 .7rem ui-monospace,Consolas,monospace;color:var(--teal)}
.method-grid h3{font-size:1rem;margin:14px 0 8px}
.method-grid p{color:#adbec6;font-size:.8rem;line-height:1.8;margin:0}
.portfolio-home .section-head>.text-link{font-size:.75rem;font-weight:550;white-space:nowrap;margin-bottom:5px}
.about-section{border-top:1px solid #2d3f48}
.about-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:90px}
.about-grid .section-description{font-size:.89rem;line-height:1.85}
.about-grid>.text-link{font-size:.8rem}
.background-panel{padding:25px 28px;background:#132027;border:1px solid #3d515c;border-radius:8px}
.qualification{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 0;border-bottom:1px solid #344b55}
.qualification strong{font-size:.85rem;font-weight:600}
.qualification>span{font-size:.69rem;color:#adbec8;text-align:right}
.background-panel .credential-foot{font-size:.65rem;margin:15px 0 22px;color:#acc0c7}
.background-panel .credential-foot a{color:var(--teal)}
.background-skills{border-top:1px solid #344b55;padding-top:20px}
.background-skills p{font-size:.77rem;line-height:1.9;color:#c5d2d8;margin:13px 0 0}
.portfolio-home .contact{background:radial-gradient(ellipse at 50% 100%,#243221,#101817 70%);border-top:1px solid #354b39}
.portfolio-home .contact h2{font-size:clamp(2.5rem,5vw,4rem);margin:15px 0}
.portfolio-home .contact p{font-size:.95rem;line-height:1.8}
.contact-links{display:flex;flex-wrap:wrap;gap:13px;justify-content:center;font-size:.73rem;color:#c1cfbf;overflow-wrap:anywhere}
.contact-links>a{text-underline-offset:4px}
.contact-links>span{color:#718877}
.portfolio-home .footer-inner{padding:24px 0;font-size:.69rem}
.portfolio-home .footer-inner>span:nth-child(2){color:#a6b99e}
.portfolio-home .mobile-nav nav{background:#18252c}
.portfolio-home .mobile-nav nav a:hover{background:#2c3f32}
.portfolio-home .mobile-nav summary{background:#17232b}
@media(max-width:1050px){.portfolio-home .hero-grid{gap:35px}
.portfolio-home .hero h1{font-size:3.35rem}
.portfolio-home .brand-discipline{display:none}
.portfolio-home nav{gap:20px}

.portfolio-home .splunk-feature-grid{grid-template-columns:1fr 1fr}
.about-grid{gap:40px}

}
@media(max-width:950px){

.portfolio-home .splunk-feature-grid{grid-template-columns:1fr}
.signal-panel-body{padding:22px}

.signal-panel h2{font-size:1.6rem}

.portfolio-home .hero-lead{font-size:.92rem}
.portfolio-home .splunk-evidence-preview{max-width:none}

.identity-visual{gap:22px}
.method-grid{gap:18px}
}
@media(max-width:800px){.portfolio-home .nav{min-height:68px}

.portfolio-home .signal-panel{max-width:550px;width:100%;box-shadow:none}
.signal-panel-body{padding:25px}

.portfolio-home .signal-panel h2{font-size:1.8rem}

.portfolio-home .section{padding:54px 0}
.portfolio-home .section-head{gap:22px}
.portfolio-home .section-head>p{max-width:600px;margin-top:20px}

.preview-label{font-size:.54rem}
.preview-foot{font-size:.49rem}
.identity-visual{font-size:3.3rem;gap:15px}
.process-tree{font-size:.7rem}
.process-tree em{font-size:.6rem}
.hardening-visual{gap:30px}
.hardening-visual strong{font-size:3.1rem}

.work-context{display:block}
.work-context>a{display:inline-block;margin-top:10px}

.about-grid{grid-template-columns:1fr;gap:30px}
.background-panel{max-width:650px}
.method-grid{grid-template-columns:1fr 1fr;gap:25px}
.portfolio-home .section-head>.text-link{margin-top:19px}
}
@media(max-width:540px){.portfolio-home .hero h1{font-size:clamp(2.3rem,8.9vw,3rem);margin:18px 0}
.portfolio-home .hero-kicker{font-size:.58rem}
.portfolio-home .hero-lead{font-size:.9rem;line-height:1.75}
.portfolio-home .hero{padding:33px 0 40px}
.portfolio-home .hero .actions{margin:23px 0}

.portfolio-home .button{padding:10px 17px;font-size:.8rem}
.signal-panel-head{font-size:.56rem;padding:12px 15px}
.signal-panel-body{padding:23px 20px}

.signal-panel-foot{font-size:.54rem;padding:12px 15px}

.work-grid{grid-template-columns:1fr;gap:22px}

.network-preview{padding:0}
.preview-label{font-size:.6rem}
.preview-foot{font-size:.51rem}

.identity-visual{font-size:2.6rem;gap:14px}
.process-tree{font-size:.78rem}
.process-tree em{font-size:.65rem}
.hardening-visual{gap:45px}
.hardening-visual strong{font-size:3.5rem}
.portfolio-home h2{font-size:2rem}
.engineering-section{padding-top:38px}
.method-grid{gap:20px}
.method-grid p{font-size:.77rem}
.portfolio-home .contact-links{font-size:.67rem;gap:10px}
.contact-links>a:first-child{flex-basis:100%;margin-bottom:3px}
.contact-links>span:first-of-type{display:none}
.portfolio-home .contact .actions{margin:25px 0}
.portfolio-home .footer-inner{gap:12px}
.portfolio-home .footer-inner>span:nth-child(2){display:none}
}
@media(max-width:370px){.portfolio-home .hero h1{font-size:2.2rem}
.portfolio-home .hero-lead{font-size:.83rem;line-height:1.65}
.portfolio-home .hero .actions{gap:8px;margin:18px 0}
.portfolio-home .hero .button{font-size:.73rem;padding:9px 13px;min-height:44px}

.signal-ref{display:none}
.preview-foot{font-size:.46rem}

.background-panel{padding:22px}
.qualification strong{font-size:.75rem}
.qualification>span{font-size:.62rem}
}
@media(prefers-reduced-motion:reduce){.portfolio-home *{scroll-behavior:auto;transition:none}
}
/* Retained deep links target inner containers as well as sections. */
.portfolio-home #soc-evidence,.portfolio-home #certifications,.portfolio-home #skills{scroll-margin-top:100px}
/* Shared portfolio identity and reading experience across the full site. */
.portfolio-shell{--bg:#0b1014;--surface:#11191f;--surface2:#17232b;--stroke:#30434c;--text:#edf2ef;--muted:#adbec3;--teal:#bcf778;--blue:#a0c9e5;background:var(--bg);color:var(--text)}
.portfolio-shell .topbar{background:rgba(11,16,20,.97);border-color:#2a3d45}
.portfolio-shell .nav{min-height:82px;gap:20px}
.portfolio-shell .nav>.logo{font-size:.86rem;letter-spacing:.06em}
.portfolio-shell .nav>nav{gap:29px}
.portfolio-shell .nav nav a{color:#c2ced0;font-size:.83rem}
.portfolio-shell .nav nav a:hover,.portfolio-shell .nav nav a[aria-current]{color:var(--teal)}
.portfolio-shell .nav nav .nav-contact{border:1px solid #4f6345;padding:7px 14px;border-radius:5px;color:var(--teal)}
.portfolio-shell .mobile-nav nav{background:#18252c}
.portfolio-shell .mobile-nav nav a:hover{background:#2c3f32}
.portfolio-shell .mobile-nav summary{background:#17232b}
.portfolio-shell .button{border-radius:5px}
.portfolio-shell .button.primary{color:#17230d}
.portfolio-shell .button.secondary{background:transparent;border-color:#49606a}
.portfolio-inner .article-main{padding-top:35px}
.portfolio-inner .back{font-size:.76rem;margin-bottom:32px;color:#bdccd0;text-underline-offset:4px}
.portfolio-inner .eyebrow{font:600 .65rem/1.7 ui-monospace,Consolas,monospace;letter-spacing:.12em}
.portfolio-inner .article-title{font-size:clamp(2.15rem,4.4vw,4rem);max-width:900px;line-height:1.12;letter-spacing:-.045em;margin:17px 0 20px}
.portfolio-inner .article-deck{font-size:1.08rem;line-height:1.8;max-width:790px;color:#b9cbd1}
.portfolio-inner .pill-group{gap:8px;margin:24px 0 35px}
.portfolio-inner .pill{border-color:#3b515a;background:#142128;color:#c8d5d6;font-size:.7rem;border-radius:4px}
.case-masthead{border-bottom:1px solid #34464f;margin-bottom:29px}
.case-snapshot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid #3c505a;border-radius:8px;overflow:hidden;background:#3c505a;margin:0 0 52px}
.case-snapshot>div{background:#142128;padding:23px 25px;min-width:0}
.case-snapshot>div>span{display:block;color:#acc3cb;font:500 .65rem/1.5 ui-monospace,Consolas,monospace;text-transform:uppercase;letter-spacing:.07em}
.case-snapshot strong{display:block;font-size:1.58rem;font-weight:550;letter-spacing:-.03em;line-height:1.3;margin:9px 0 6px;color:var(--teal);overflow-wrap:anywhere}
.case-snapshot p{font-size:.76rem;line-height:1.6;margin:0;color:#b5c7ce}
.portfolio-inner .article-layout{grid-template-columns:minmax(0,1fr) 250px;gap:65px}
.portfolio-inner .prose{font-size:.96rem;line-height:1.9}
.portfolio-inner .prose h2{font-size:1.6rem;line-height:1.25;letter-spacing:-.025em;margin:47px 0 17px;scroll-margin-top:108px}
.portfolio-inner .prose h2:first-child{margin-top:0}
.portfolio-inner .prose h3{font-size:1.1rem;margin:28px 0 10px;scroll-margin-top:108px}
.portfolio-inner .prose p,.portfolio-inner .prose li{color:#c0cfd5}
.portfolio-inner .prose strong{color:#e2ebea;font-weight:650}
.portfolio-inner .prose a{color:var(--teal);text-underline-offset:4px;text-decoration-thickness:1px}
.portfolio-inner .prose li{margin:12px 0;padding-left:4px}
.portfolio-inner .prose p code,.portfolio-inner .prose li code{font-size:.84em;border:1px solid #344952;border-radius:3px;background:#14232a;padding:2px 5px;overflow-wrap:anywhere}
.portfolio-inner .prose pre{margin:23px 0;padding:22px;background:#0c161c;border-color:#3a505b;line-height:1.85;border-radius:6px;font-size:.76rem;max-width:100%;tab-size:2}
.case-sidebar{position:sticky;top:111px;border-left:1px solid #3a4e57;padding-left:23px;max-height:calc(100vh - 140px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#4c635a #11191f}
.case-sidebar nav{display:flex;flex-direction:column;align-items:stretch;gap:0}
.case-sidebar nav>.eyebrow{margin:0 0 17px;color:var(--teal)}
.case-sidebar nav>a{display:block;color:#beced0;font-size:.76rem;line-height:1.6;padding:8px 0;text-decoration:none}
.case-sidebar nav>a:hover{color:var(--teal)}
.case-sidebar-scope{margin-top:22px;padding-top:20px;border-top:1px solid #354950}
.case-sidebar-scope p{font-size:.72rem;line-height:1.8;color:#afc3cb;margin:11px 0 17px}
.case-sidebar-scope>a{font-size:.73rem;color:var(--teal);text-underline-offset:4px}
.case-takeaway{border-left:3px solid var(--teal);padding:21px 25px;background:#14231e;border-radius:0 7px 7px 0;margin:24px 0}
.case-takeaway>.eyebrow{display:block;margin-bottom:11px}
.case-takeaway p{margin:0;font-size:.95rem;line-height:1.85}
.case-table{margin:24px 0;background:#111f27;border-radius:6px;scroll-margin-top:105px}
.case-table table{border-collapse:collapse;width:100%;min-width:570px;font-size:.77rem;line-height:1.7}
.case-table th{font-size:.65rem;letter-spacing:.06em;text-transform:uppercase;color:var(--teal);text-align:left;background:#172a2c}
.case-table td,.case-table th{border-bottom:1px solid #344952;padding:14px 16px;vertical-align:top}
.case-table tbody tr:last-child td{border-bottom:0}
.case-table td{color:#c3d3d8}
.case-table td:first-child{font-weight:650;color:#e3ebe8}
.case-table code{font-size:.76rem;overflow-wrap:anywhere}
.portfolio-inner .prose .proof-media{border-color:#3d565d;border-radius:7px;margin:25px 0}
.portfolio-inner .prose .proof-media figcaption{font-size:.72rem;line-height:1.8;padding:15px 17px;color:#afc4cc;background:#14232b}
.case-extra{border:1px solid #3b515a;background:#132027;border-radius:6px;margin:25px 0;padding:0 20px}
.case-extra summary{cursor:pointer;color:#d4e9c6;font-weight:600;font-size:.85rem;padding:16px 0}
.case-extra summary:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.case-extra p{font-size:.86rem}
.case-next{margin-top:60px;border-block:1px solid #3b5057;padding:25px 0;display:flex;align-items:center;justify-content:space-between;gap:28px}
.case-next .eyebrow{display:block;margin-bottom:9px}
.case-next>div>a{font-size:1.3rem;font-weight:550;text-decoration:none;color:#ecf2e8;line-height:1.5;display:block}
.case-next>div>a span{color:var(--teal);margin-left:15px}
.case-next>div>a:hover{color:var(--teal)}
.case-next-home{color:#b8cfc5;font-size:.75rem;white-space:nowrap;text-underline-offset:4px}
.site-footer .footer-inner{font-size:.7rem}
.site-footer .footer-inner>div{display:flex;gap:24px;flex-wrap:wrap}
.portfolio-inner .aside-card{background:#142128;border-color:#3a5059;border-radius:8px}
.portfolio-inner .aside-card h2{font-size:1.2rem}
.portfolio-inner .network-evidence-gallery{grid-template-columns:1fr;margin-top:25px}
.portfolio-inner .network-evidence-gallery .evidence-visual{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#14232b;border-color:#3c535b;border-radius:6px}
.portfolio-inner .network-evidence-gallery .evidence-visual img{height:auto;border:0;object-fit:contain}
.portfolio-inner .network-evidence-gallery .evidence-visual>span{padding:20px}
.portfolio-inner .evidence-visual strong{font-size:.8rem;line-height:1.5}
.portfolio-inner .evidence-visual small{font-size:.68rem;line-height:1.7}
.portfolio-inner .application-role-card,.portfolio-inner .analyst-evidence-card,.portfolio-inner .analyst-verification-panel{background:#14232b;border-color:#3e5661;border-radius:8px}
.portfolio-inner .application-stats>div{background:#14232b;border-color:#3e5661;border-radius:6px}
.portfolio-inner .application-stats strong,.portfolio-inner .application-role-header>span,.portfolio-inner .analyst-card-meta span:last-child,.portfolio-inner .analyst-link-row a,.portfolio-inner .analyst-resources a{color:var(--teal)}
.portfolio-inner .application-page{padding-top:35px}
.portfolio-inner .application-page h1{font-size:clamp(2.1rem,4.4vw,3.6rem);max-width:850px;margin:17px 0 20px;letter-spacing:-.04em}
.portfolio-inner .application-lead{font-size:1rem;color:#bacecf}
.portfolio-inner .application-section-heading h2{font-size:1.8rem;letter-spacing:-.025em}
.portfolio-inner .application-proof-list a{background:#14232b}
.portfolio-inner .application-proof-list a:hover{background:#203a36}
.portfolio-inner .application-questions details{background:#14232b;border-color:#3e5661;border-radius:6px}
.portfolio-inner .application-questions summary:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.portfolio-inner .application-finalize-grid article{background:#14232b;border-color:#3e5661;border-radius:6px}
.portfolio-inner .recruiter-sheet{background:#142128;border-color:#3e5661;border-radius:8px}
.portfolio-inner .recruiter-position,.portfolio-inner .recruiter-comparison strong{color:var(--teal)}
@media(max-width:1050px){.portfolio-shell .brand-discipline{display:none}.portfolio-shell .nav>nav{gap:20px}.portfolio-inner .article-layout{gap:35px;grid-template-columns:minmax(0,1fr) 220px}.case-snapshot>div{padding:20px}.case-snapshot strong{font-size:1.35rem}}
@media(max-width:960px){.portfolio-inner .article-layout{grid-template-columns:1fr}.case-sidebar{position:static;max-height:none;overflow:visible;border:1px solid #3c535b;border-radius:7px;padding:22px;margin-bottom:32px;grid-row:1}.case-sidebar nav{display:grid;grid-template-columns:1fr 1fr;gap:2px 23px}.case-sidebar nav>.eyebrow{grid-column:1 / -1;margin-bottom:7px}.case-sidebar-scope{margin-top:13px;padding-top:15px}.case-sidebar-scope p{margin:7px 0 11px}.case-snapshot{margin-bottom:30px}.portfolio-inner .article-layout{gap:0}}
@media(max-width:800px){.portfolio-shell .nav{min-height:68px}.portfolio-shell .nav>nav{display:none}.portfolio-shell .mobile-nav nav{display:flex}.portfolio-shell .mobile-nav nav .nav-contact{border:0;padding:11px 15px}.portfolio-inner .article-main{padding-top:27px}.portfolio-inner .article-deck{font-size:1rem}.case-next>div>a{font-size:1.1rem}.case-next{margin-top:45px}.portfolio-inner .prose h2{font-size:1.4rem}.portfolio-inner .prose{font-size:.9rem}}
@media(max-width:600px){.case-snapshot{grid-template-columns:1fr}.case-snapshot>div{display:grid;grid-template-columns:.8fr 1fr;gap:4px 15px;padding:16px 19px}.case-snapshot>div>span{grid-column:1;align-self:center;font-size:.57rem}.case-snapshot strong{grid-column:2;grid-row:1;margin:0;font-size:1.25rem}.case-snapshot p{grid-column:2;font-size:.67rem;line-height:1.6}.portfolio-inner .article-title{font-size:2.25rem;overflow-wrap:break-word}.portfolio-inner .pill{font-size:.62rem}.portfolio-inner .pill-group{margin:20px 0 25px}.case-sidebar nav{grid-template-columns:1fr 1fr;column-gap:14px}.case-sidebar nav>a{font-size:.7rem;line-height:1.5;padding:8px 0}.case-sidebar{padding:19px}.portfolio-inner .prose pre{padding:17px;font-size:.67rem}.case-takeaway{padding:17px 19px}.case-takeaway p{font-size:.86rem}.case-next{display:block}.case-next-home{display:inline-block;margin-top:18px}.site-footer .footer-inner{align-items:flex-start;flex-direction:column;gap:15px}.site-footer .footer-inner>div{gap:18px}.portfolio-inner .network-evidence-gallery .evidence-visual{display:block}.portfolio-inner .network-evidence-gallery .evidence-visual>span{padding:13px 17px}.portfolio-inner .network-evidence-gallery .evidence-visual img{max-height:none;width:100%}}
@media print{.portfolio-inner .recruiter-sheet{background:#fff!important;border-color:#b9c9d0!important}.portfolio-inner .recruiter-position,.portfolio-inner .recruiter-comparison strong{color:#24566a!important}.portfolio-shell .site-footer.recruiter-chrome{display:none!important}}
/* Contents precede the article in both keyboard and mobile reading order. */
.case-page .article-layout>.prose{grid-column:1;grid-row:1}
.case-page .case-sidebar{grid-column:2;grid-row:1}
@media(max-width:960px){.case-page .case-sidebar{grid-column:1;grid-row:1}.case-page .article-layout>.prose{grid-column:1;grid-row:2}}
/* Hiring-team routes, project discovery and inspectable browser engines. */
.hiring-start{padding:30px 0 8px;background:#0b1014}
.hiring-start-head{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:17px}
.hiring-start-head h2{font-size:1.05rem!important;margin:0!important;letter-spacing:0}
.hiring-start-head p{margin:0;font-size:.73rem;color:#aebfc5}
.hiring-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.hiring-route{display:block;border:1px solid #3b5158;border-radius:6px;padding:19px 20px;text-decoration:none;background:#132027}
.hiring-route span{display:block;color:#acc5ce;font:500 .57rem/1.6 ui-monospace,Consolas,monospace;letter-spacing:.08em;margin-bottom:7px}
.hiring-route strong{font-size:.9rem;font-weight:600;color:#e4eedc}
.hiring-route:hover{border-color:var(--teal)}
.engineering-showcase{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:23px}
.engineering-showcase article{padding:26px;border:1px solid #445b57;border-radius:8px;background:linear-gradient(130deg,#1b2a27,#132027)}
.engineering-showcase h3{font-size:1.4rem;margin:12px 0}
.engineering-showcase p{color:#b9cdd0;font-size:.85rem;line-height:1.8}
.engineering-showcase .engineering-tags{font:500 .66rem/1.8 ui-monospace,Consolas,monospace;color:#c4daa9;margin:19px 0}
.engineering-showcase a{color:var(--teal);font-weight:600;font-size:.8rem;text-underline-offset:4px}
.engineering-workbench-link{margin-top:20px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px 24px;border:1px solid #3a5159;border-radius:6px;background:#14222a}
.engineering-workbench-link p{font-size:.82rem;color:#b9ccd2;margin:0}
.engineering-workbench-link a{font-size:.8rem;color:var(--teal);white-space:nowrap;font-weight:600;text-underline-offset:4px}
.architecture-strip{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin:22px 0}
.architecture-strip>div{padding:17px;background:#16282d;border:1px solid #3c535b;border-radius:6px}
.architecture-strip span{display:block;font:500 .6rem ui-monospace,Consolas,monospace;color:var(--teal);margin-bottom:9px}
.architecture-strip strong{font-size:.85rem;line-height:1.5}
.explorer-quick{display:flex;flex-wrap:wrap;gap:12px 25px;font-size:.76rem;margin:26px 0 35px;color:var(--teal)}
.explorer-quick a{text-underline-offset:4px}
.filter-panel{background:#14232a;border:1px solid #40585f;border-radius:8px;padding:23px}
.filter-panel fieldset{border:0;padding:0;margin:0;min-width:0}
.filter-panel legend{font-size:.85rem;font-weight:600;margin-bottom:18px;color:#e5eddf}
.filter-controls{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap}
.filter-controls>div{flex:1;min-width:170px}
.filter-controls .filter-search{flex:1.7}
.filter-panel label,.engine-controls label{display:block;font-size:.73rem;font-weight:550;margin-bottom:8px;color:#c3d2d6}
.portfolio-shell input,.portfolio-shell select{background:#0e1a20;border:1px solid #526a75;border-radius:5px;color:#e4ecef;min-height:46px;padding:10px 12px;font:inherit;font-size:.82rem;width:100%;max-width:100%;color-scheme:dark}
.portfolio-shell input::placeholder{color:#a4b7c1;opacity:1}
.portfolio-shell button{font-family:inherit;cursor:pointer}
.portfolio-shell :is(button,input,select):focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.portfolio-shell button:disabled{cursor:not-allowed;opacity:.5}
.filter-status{color:#bad599;font-size:.75rem;margin:20px 0}
.filter-empty{padding:25px;border:1px solid #6c6c48;border-radius:6px;background:#262a20;margin-bottom:20px}
.filter-empty h2{font-size:1.1rem;margin:0 0 10px}
.filter-empty p{margin:0;font-size:.85rem;color:#c4d0c5}
.filter-empty[hidden],.explore-card[hidden],.filter-panel fieldset[hidden]{display:none}
.explore-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}
.explore-card{display:flex;flex-direction:column;min-width:0;border:1px solid #3c535c;border-radius:8px;padding:27px;background:#132129}
.explore-meta{display:flex;justify-content:space-between;gap:17px;color:#aac4c9;font:500 .59rem/1.6 ui-monospace,Consolas,monospace;letter-spacing:.05em}
.explore-meta>span:last-child{color:var(--teal)}
.explore-card h2{font-size:1.5rem;line-height:1.3;letter-spacing:-.025em;margin:18px 0 13px}
.explore-card h2 a{text-decoration:none}
.explore-card h2 a:hover{color:var(--teal)}
.explore-card>p{font-size:.86rem;line-height:1.85;color:#bdcfd3;margin-bottom:22px}
.explore-skills{color:#c9e0b5;font-size:.74rem;font-weight:500;margin-top:auto;padding-top:8px}
.explore-proof{color:#a7bec9;font-size:.69rem;line-height:1.8;margin:10px 0 20px}
.explore-card .text-link{font-size:.8rem;border-top:1px solid #385057;padding-top:15px}
.explorer-scope{font-size:.75rem;line-height:1.8;color:#b3c6cd;margin:23px 0 0;max-width:900px}
.explorer-contact{margin-top:48px;padding:30px;border:1px solid #3d594b;background:#17271f;border-radius:8px}
.explorer-contact h2{font-size:1.5rem;margin:0 0 13px}
.explorer-contact p{font-size:.86rem;color:#becfc2}
.lab-intro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #3b555b;border-radius:8px;background:#15242a;margin:30px 0 20px;overflow:hidden}
.lab-intro>div{padding:22px 25px}
.lab-intro>div+div{border-left:1px solid #3b555b}
.lab-intro strong{display:block;font-size:1.25rem;font-weight:550;color:var(--teal);margin-bottom:6px}
.lab-intro span{font-size:.72rem;line-height:1.7;color:#b8cdd1;display:block}
.lab-scope{font-size:.76rem;line-height:1.9;color:#adc3cc;max-width:940px}
.lab-section{padding:39px 0;border-top:1px solid #354d55;margin-top:34px;scroll-margin-top:100px}
.lab-section h2{font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.2;margin:12px 0 20px;letter-spacing:-.035em}
.lab-section>p{color:#bdcfd2;font-size:.9rem;line-height:1.85;max-width:900px}
.lab-section-heading{display:flex;justify-content:space-between;gap:30px;align-items:center}
.lab-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.lab-page .button{font-size:.78rem;white-space:nowrap}
.engine-status{padding:16px 20px;background:#16262e;border:1px solid #43606a;border-radius:6px;color:#d4e1e4!important;line-height:1.7;font-size:.84rem;overflow-wrap:anywhere}
.engine-status[data-result="pass"]{border-color:#6f8e4f;background:#1b2e21;color:#d6f2bb!important}
.engine-status[data-result="hold"]{border-color:#91724e;background:#31291e;color:#f2d7b3!important}
.engine-controls{padding:23px;background:#15252d;border:1px solid #405d65;border-radius:7px;display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap;margin:25px 0}
.engine-controls>div{min-width:140px;flex:1;max-width:300px}
.engine-controls .coverage-select{max-width:600px;flex:2}
.lab-section .case-table table{min-width:600px}
.lab-section .case-table th:first-child{width:90px}
.lab-section .engine-footnote{font-size:.73rem;color:#a9c0c9;line-height:1.8}
.coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:23px 0}
.coverage-grid h3{font-size:.92rem;margin:0 0 15px}
.coverage-grid pre{padding:22px;margin:0;background:#0d1920;border:1px solid #3e5964;border-radius:6px;font:500 .72rem/1.9 ui-monospace,Consolas,monospace;color:#cce1d9;white-space:pre-wrap;overflow-wrap:anywhere;min-height:170px}
.coverage-verdict{padding:23px;border:1px solid #3e5964;border-radius:6px;background:#13242b;min-width:0}
.coverage-verdict .engine-status{font:600 .76rem/1.8 ui-monospace,Consolas,monospace;padding:14px;margin:0 0 17px}
.coverage-verdict>p:last-child{font-size:.84rem;color:#bdcfd3;line-height:1.85}
.lab-context-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px}
.lab-context-grid article{padding:25px;background:#14242a;border:1px solid #3b565e;border-radius:7px}
.lab-context-grid h3{font-size:1.2rem;margin:12px 0}
.lab-context-grid p{font-size:.84rem;color:#b9cdd2;line-height:1.85}
.lab-context-grid a{color:var(--teal);font-size:.78rem;text-underline-offset:4px}
@media(max-width:950px){.lab-section-heading{display:block}.lab-actions{margin:20px 0}.architecture-strip{grid-template-columns:1fr}.hiring-route strong{font-size:.82rem}.engineering-showcase article{padding:23px}}
@media(max-width:700px){.hiring-start-head{display:block}.hiring-start-head p{margin-top:9px}.hiring-route-grid{grid-template-columns:1fr}.hiring-route{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 18px}.hiring-route span{margin:0;font-size:.54rem}.engineering-showcase{grid-template-columns:1fr;gap:17px}.engineering-workbench-link{display:block;padding:20px}.engineering-workbench-link a{display:inline-block;margin-top:15px}.filter-panel{padding:20px}.filter-controls{display:grid;grid-template-columns:1fr;width:100%}.filter-controls>div{min-width:0}.filter-controls>.button{width:100%}.explore-grid{grid-template-columns:1fr}.explore-card{padding:24px}.explore-card h2{font-size:1.35rem}.lab-intro{grid-template-columns:1fr}.lab-intro>div{padding:17px 20px}.lab-intro>div+div{border-left:0;border-top:1px solid #3b555b}.lab-intro strong{font-size:1.1rem}.lab-intro span{font-size:.69rem}.engine-controls{padding:20px;gap:17px}.engine-controls>div,.engine-controls .coverage-select{max-width:none;min-width:0;flex-basis:100%}.engine-controls>button{width:100%}.coverage-grid,.lab-context-grid{grid-template-columns:1fr}.lab-context-grid{gap:17px}.lab-page .lab-actions{display:grid;grid-template-columns:1fr;width:100%}.lab-page .lab-actions .button{white-space:normal;text-align:center}.lab-section{padding:30px 0;margin-top:25px}.lab-section>p{font-size:.84rem}.engine-status{font-size:.76rem;padding:15px}.explorer-quick{gap:13px 20px}.explorer-contact{padding:23px}.explorer-contact h2{font-size:1.3rem}}
/* Recruiter evidence guide: readable source paths and explicit claim limits. */
.hiring-evidence-link{font-size:.78rem;color:#b9cbd0;margin:20px 0 0;line-height:1.8}
.hiring-evidence-link a{color:var(--teal);text-underline-offset:4px}
.verification-intro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:34px 0 45px}
.verification-intro>div{padding:21px;background:#14262c;border:1px solid #3b535b;border-radius:7px;min-width:0}
.verification-intro span,.verification-type{display:block;font:500 .63rem/1.6 ui-monospace,Consolas,monospace;color:#c0d8a2;letter-spacing:.06em}
.verification-intro strong{display:block;font-size:1.05rem;letter-spacing:-.02em;margin:11px 0 8px;color:#ebf1e8}
.verification-intro p{color:#b8cbd1;line-height:1.7;font-size:.77rem;margin:0}
.verification-section{border-top:1px solid #3c5059;padding:31px 0 19px}
.verification-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);gap:32px;margin-bottom:24px;align-items:end}
.verification-section-head h2{font-size:clamp(1.5rem,2.7vw,2rem);line-height:1.2;letter-spacing:-.03em;margin:10px 0 0}
.verification-section-head>p{font-size:.8rem;line-height:1.8;color:#b7cbd2;margin:0}
.verification-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:26px}
.verification-card{min-width:0;display:flex;flex-direction:column;padding:25px;background:#13242b;border:1px solid #435965;border-radius:8px}
.verification-card h3{font-size:1.3rem;margin:13px 0 14px;letter-spacing:-.02em}
.verification-card p{font-size:.8rem;line-height:1.8;color:#c1d0d3;margin:0 0 13px}
.verification-card p strong{color:#e6f0e5}
.verification-actions{display:flex;flex-wrap:wrap;gap:9px 17px;margin:5px 0 16px}
.verification-actions a{font-size:.77rem;color:var(--teal);text-underline-offset:4px}
.verification-card .verification-limit{border-top:1px solid #405962;padding-top:14px;margin:auto 0 0;color:#b9cad1;font-size:.75rem}
.verification-grid-single{grid-template-columns:minmax(0,1fr)}
.verification-method{padding:30px 0 45px;border-top:1px solid #3c5059}
.verification-method h2{font-size:1.65rem;letter-spacing:-.025em;margin:0 0 14px}
.verification-method>p{font-size:.83rem;line-height:1.85;color:#bed0d3;max-width:920px}
.verification-method a:not(.button){color:var(--teal);text-underline-offset:4px}
.verification-command{margin:23px 0;background:#0f1c23;border:1px solid #44606c;border-radius:7px;max-width:100%;overflow-x:auto}
.verification-command pre{margin:0;padding:22px;color:#dcf0d0;font:.73rem/1.85 ui-monospace,Consolas,monospace;white-space:pre;min-width:max-content}
.verification-command:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.verification-method .verification-caveat{border-left:3px solid #a1c48c;padding:13px 18px;background:#192b29}
.verification-final-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}
@media(max-width:800px){.verification-section-head{grid-template-columns:1fr;gap:10px}.verification-intro{grid-template-columns:1fr;gap:10px}.verification-intro>div{padding:17px 19px}.verification-grid{grid-template-columns:1fr}.verification-card{padding:21px}}
@media(max-width:390px){.verification-card h3{font-size:1.18rem}.verification-type{overflow-wrap:anywhere}.verification-command pre{font-size:.68rem}}
/* Role paths: recruiter-friendly navigation and independent interview evidence. */
.role-paths-page{scroll-margin-top:100px}
.role-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:33px 0 16px;scroll-margin-top:96px}
.role-route-card{display:flex;flex-direction:column;text-decoration:none;min-width:0;border:1px solid #4a656c;border-radius:8px;padding:24px;background:linear-gradient(155deg,#1b302f,#142229);transition:border-color .15s ease,background .15s ease}
.role-route-card:hover{border-color:var(--teal);background:#1b3431}
.role-route-card:focus-visible,.role-interview-question summary:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.role-route-card>span,.role-step-label{font:500 .61rem/1.7 ui-monospace,Consolas,monospace;letter-spacing:.055em;color:#c4d9a6}
.role-route-card strong{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:1.25rem;color:#edf4e9;letter-spacing:-.02em;margin:14px 0}
.role-route-card strong span{color:var(--teal)}
.role-route-card small{display:block;font-size:.76rem;line-height:1.75;color:#bbced3;margin-top:auto}
.role-read-note{font-size:.77rem;line-height:1.8;color:#bdccd1;margin:18px 0 42px;padding:16px 19px;background:#13242b;border-left:3px solid #9fbf82}
.role-read-note a,.role-interview-panel a,.role-evidence-step a{color:var(--teal);text-underline-offset:4px}
.role-track-section{padding:44px 0 34px;border-top:1px solid #3a5057;scroll-margin-top:96px}
.role-track-heading{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;margin-bottom:29px}
.role-track-heading h2{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.2;letter-spacing:-.035em;margin:11px 0 12px}
.role-track-heading p{max-width:720px;line-height:1.8;color:#c0d1d2;font-size:.87rem;margin:0}
.role-track-back{color:#c3dba9;font-size:.75rem;white-space:nowrap;margin-top:10px;text-underline-offset:4px}
.role-track-body{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:24px;align-items:start}
.role-trail-title{font-size:1rem;margin:0 0 16px}
.role-evidence-trail{margin:0;padding:0;list-style:none;display:grid;gap:11px}
.role-evidence-step{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;background:#13232a;border:1px solid #3a545e;border-radius:7px;padding:17px 19px}
.role-step-marker{font:600 .72rem/1.6 ui-monospace,Consolas,monospace;color:#b5d8a0;padding-top:2px}
.role-evidence-step h3{font-size:1.06rem;line-height:1.4;margin:5px 0 6px}
.role-evidence-step p{font-size:.78rem;line-height:1.76;color:#bfcfd5;margin:0 0 11px}
.role-evidence-step a{font-size:.78rem}
.role-interview-panel{padding:23px 25px;background:#182b2d;border:1px solid #4a635b;border-radius:8px;min-width:0}
.role-interview-panel h3{font-size:1.2rem;margin:13px 0 10px}
.role-interview-panel>p{font-size:.83rem;line-height:1.8;color:#c9d5d4}
.role-interview-question{margin:20px 0;border:1px solid #53716a;background:#102420;border-radius:6px;padding:0 15px}
.role-interview-question summary{cursor:pointer;padding:16px 0;font-size:.82rem;line-height:1.6;font-weight:600;color:#e3eddf}
.role-interview-question p{font-size:.79rem;line-height:1.85;color:#c7d8d4;margin:0 0 17px}
.role-followup-links{display:flex;flex-direction:column;gap:12px;border-top:1px solid #3f5a57;padding-top:17px;margin-top:19px}
.role-followup-links strong{font-size:.78rem}
.role-followup-links a{font-size:.75rem;line-height:1.6}
.role-interview-panel>.role-scope{margin:23px 0 0;padding-top:15px;border-top:1px solid #3f5a57;font-size:.74rem;line-height:1.85;color:#bdd0ce}
.role-path-final{display:flex;justify-content:space-between;gap:24px;align-items:center;background:#13252b;border:1px solid #45605f;border-radius:8px;padding:26px 30px;margin:30px 0 45px}
.role-path-final h2{font-size:1.65rem;letter-spacing:-.025em;margin:8px 0 10px}
.role-path-final p{font-size:.82rem;line-height:1.75;color:#bed1d4;max-width:640px;margin:0}
.role-final-actions{display:flex;gap:11px;flex-wrap:wrap}
.role-final-actions .button{white-space:nowrap;font-size:.78rem}
@media(max-width:1050px){.role-route-card{padding:18px}.role-route-card strong{font-size:1.1rem}.role-track-body{grid-template-columns:1fr}.role-path-final{display:block}.role-final-actions{margin-top:21px}}
@media(max-width:700px){.role-route-grid{grid-template-columns:1fr;gap:10px}.role-route-card{padding:18px}.role-route-card strong{margin:7px 0;font-size:1.08rem}.role-route-card small{font-size:.73rem}.role-track-section{padding:32px 0 23px}.role-track-heading{display:block}.role-track-back{display:inline-block;margin-top:12px}.role-interview-panel{padding:20px}.role-evidence-step{padding:15px}.role-path-final{padding:22px}.role-final-actions .button{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.role-route-card{transition:none}}
/* Recruiter quick-access résumé route, distinct from the printable profile. */
.portfolio-home .hero-resume-download{display:inline-flex;align-items:center;gap:6px;color:var(--teal);font-size:.78rem;line-height:1.65;text-decoration:underline;text-underline-offset:4px;font-weight:600}
.portfolio-home .hero-resume-download:focus-visible{outline:3px solid var(--teal);outline-offset:4px;border-radius:3px}
@media(max-width:370px){.portfolio-home .hero-resume-download{font-size:.73rem;margin:-5px 0 10px}}
/* Evidence-aware interactive console and visual polish. All status values computed from public fixtures. */
.portfolio-home .hero{isolation:isolate}
.portfolio-home .hero::after{content:"";position:absolute;pointer-events:none;z-index:-1;inset:0;
 background-image:linear-gradient(rgba(115,229,202,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(115,229,202,.04) 1px,transparent 1px);
 background-size:58px 58px;mask-image:linear-gradient(90deg,transparent 15%,#000 85%);opacity:.47}
.portfolio-home .hero-grid{position:relative;z-index:1}
.portfolio-home .hero-copy{position:relative}
.portfolio-home .hero-kicker{display:inline-flex;gap:8px;align-items:center}
.portfolio-home .hero-kicker::before{content:"";width:7px;height:7px;border:1px solid #a9f5d4;transform:rotate(45deg);box-shadow:0 0 17px rgba(101,231,203,.6)}
.portfolio-home .signal-panel{position:relative;isolation:isolate;transition:border-color .25s ease,box-shadow .25s ease}
.portfolio-home .signal-panel:hover{border-color:#7bbca7;box-shadow:0 26px 68px rgba(0,0,0,.42),0 0 35px rgba(51,156,141,.09)}
.portfolio-home .signal-panel::after{content:"";position:absolute;z-index:-1;pointer-events:none;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,transparent 46%,rgba(108,213,187,.09) 50%,transparent 55%);
 background-size:100% 160%;opacity:.45;animation:lab-scan 11s linear infinite}
@keyframes lab-scan{from{background-position:0 -220px}to{background-position:0 460px}}
.replay-section{padding:4px 0 75px;background:#0b1014;scroll-margin-top:96px}
.replay-frame{position:relative;isolation:isolate;overflow:hidden;border:1px solid #47625e;border-radius:13px;background:
 radial-gradient(circle at 5% 3%,rgba(88,190,148,.13),transparent 40%),
 linear-gradient(115deg,#132624 0%,#111d25 48%,#0c1820 100%);
 box-shadow:0 23px 70px rgba(0,0,0,.19)}
.replay-frame::before{content:"";pointer-events:none;position:absolute;z-index:-1;inset:0;background:
 linear-gradient(rgba(142,210,186,.05) 1px,transparent 1px),
 linear-gradient(90deg,rgba(142,210,186,.05) 1px,transparent 1px);background-size:35px 35px;
 mask-image:linear-gradient(0deg,transparent 12%,#000)}
.replay-frame::after{content:"";pointer-events:none;position:absolute;right:-110px;top:-170px;width:420px;height:420px;border-radius:50%;
 border:1px solid rgba(113,203,167,.16);box-shadow:0 0 0 45px rgba(113,203,167,.025),0 0 0 95px rgba(113,203,167,.014)}
.replay-topline{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 26px;border-bottom:1px solid #3b5c57;
 font:600 .64rem/1.5 ui-monospace,Consolas,monospace;letter-spacing:.08em;color:#c4d7c6}
.replay-topline>span:first-child{color:#b3eccb}
.replay-topline i{display:inline-block;width:7px;height:7px;border:1px solid #87d9b5;border-radius:50%;margin-right:9px}
.replay-layout{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.94fr);gap:30px;padding:30px 30px 27px;align-items:stretch}
.replay-narrative{min-width:0}
.replay-narrative .eyebrow{font-size:.57rem;color:#b9e4a5}
.portfolio-home .replay-narrative h2{font-size:clamp(1.6rem,3vw,2.35rem);margin:14px 0 17px;letter-spacing:-.045em;line-height:1.12}
.replay-narrative h2 span{color:#79dfb9}
.replay-narrative>p{max-width:535px;color:#c3d1d1;font-size:.81rem;line-height:1.85;margin:0 0 23px}
.replay-select{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 21px;max-width:450px}
.replay-select button{width:100%;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:13px 16px;
 border:1px solid #4a6865;border-radius:6px;background:#10252a;color:#dce9e5;text-align:left;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}
.replay-select button:not(:disabled):hover{transform:translateY(-2px);border-color:#81c8a4}
.replay-select button:disabled{cursor:default;opacity:.62}
.replay-select button[aria-pressed="true"]{border-color:#97e6bd;background:#1c403a;box-shadow:inset 0 0 0 1px rgba(151,230,189,.18)}
.replay-select strong{font-size:1.25rem;font-weight:700;letter-spacing:-.035em}
.replay-select small{font-size:.66rem;color:#bdcfcf}
.replay-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;align-items:center;max-width:450px;background:#0f2427;
 border:1px solid #38675b;border-radius:8px;padding:16px 18px;margin:0 0 19px}
.replay-result>span{font:600 .62rem/1.6 ui-monospace,Consolas,monospace;color:#c6d7cf;letter-spacing:.05em}
.replay-result>strong{font:700 1.9rem/1.2 ui-monospace,Consolas,monospace;letter-spacing:-.04em;color:#91efc3;white-space:nowrap}
.replay-result>p{grid-column:1/-1;font-size:.71rem;line-height:1.65;color:#bacdc9;margin:7px 0 0}
[data-replay-result="difference"] .replay-result{border-color:#a58a55}
[data-replay-result="difference"] .replay-result>strong{color:#edce88}
.replay-narrative>.replay-disclaimer{font-size:.71rem;line-height:1.75;color:#b5c8c7;margin-bottom:18px}
.replay-disclaimer strong{color:#e4e9e2}
.replay-links{display:flex;gap:10px 23px;flex-wrap:wrap}
.replay-links a{font-size:.75rem;color:#86e8bc;text-underline-offset:4px;font-weight:600}
.replay-console{position:relative;min-width:0;align-self:stretch;display:flex;flex-direction:column;overflow:hidden;
 border:1px solid #4c6866;background:#101d23;border-radius:8px;box-shadow:0 16px 38px rgba(0,0,0,.14)}
.replay-console-header,.replay-console-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;padding:13px 17px;
 font:600 .61rem/1.5 ui-monospace,Consolas,monospace;letter-spacing:.04em;color:#c5dcd0}
.replay-console-header{background:#162c2e;border-bottom:1px solid #4b645e}
.replay-cases{list-style:none;margin:0;padding:0;flex:1}
.replay-case{display:grid;grid-template-columns:25px minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px 16px;border-bottom:1px solid #314c4d;
 border-left:3px solid transparent;transition:background .2s ease,border-color .2s ease}
.replay-case-index{color:#729d9c;font:600 .72rem ui-monospace,Consolas,monospace}
.replay-case-main{display:flex;flex-direction:column;gap:1px;min-width:0}
.replay-case-main strong{font-size:.8rem;line-height:1.4;color:#e2eae4}
.replay-case-main span{font-size:.68rem;color:#bed0cf;line-height:1.5}
.replay-case-main small{font:.58rem/1.65 ui-monospace,Consolas,monospace;color:#9bbaba;overflow-wrap:anywhere}
.replay-case-verdict{font:700 .59rem/1.5 ui-monospace,Consolas,monospace;color:#b5c5c3;letter-spacing:.05em;white-space:nowrap}
.replay-case[data-replay-status="match"]{border-left-color:#87dbac;background:rgba(76,157,114,.07)}
.replay-case[data-replay-status="match"] .replay-case-verdict{color:#9ee6b2}
.replay-case[data-replay-status="missing"]{border-left-color:#d8a35c;background:rgba(211,151,74,.1)}
.replay-case[data-replay-status="missing"] .replay-case-verdict{color:#ffcf8a}
.replay-console-footer{justify-content:flex-start;font-weight:500;background:#14252a;font-size:.59rem;color:#b1c6c4;letter-spacing:0}
.replay-console-footer>span{display:flex;gap:7px;align-items:center}
.replay-legend-dot{width:8px;height:8px;background:#86d6a4;border-radius:50%;display:inline-block}
.replay-legend-dot.missing{background:#d8a35c}
.replay-noscript{margin:0 30px 20px;color:#d1dfcf;font-size:.78rem}
@media(max-width:950px){.replay-layout{grid-template-columns:1fr;gap:23px}.replay-console{max-width:none}.replay-narrative>p{max-width:740px}.replay-result,.replay-select{max-width:none}}
@media(max-width:600px){.replay-section{padding:0 0 45px}.replay-frame{border-radius:9px}.replay-layout{padding:21px 16px 18px;gap:18px}
.replay-topline{padding:12px 16px;font-size:.56rem}.replay-topline>span:last-child{display:none}
.replay-select{gap:9px}.replay-select button{padding:11px 12px}.replay-select strong{font-size:1.1rem}
.replay-result{padding:13px}.replay-result>strong{font-size:1.5rem}
.replay-console-header,.replay-console-footer{padding:12px}.replay-case{grid-template-columns:18px minmax(0,1fr) auto;padding:11px 10px;gap:7px}
.replay-case-main strong{font-size:.76rem}.replay-case-main span{font-size:.64rem}.replay-case-main small{font-size:.54rem}
.replay-case-index{font-size:.6rem}.replay-case-verdict{font-size:.54rem}
.replay-console-footer{gap:9px;font-size:.56rem}.replay-noscript{margin:0 16px 16px}}
@media(prefers-reduced-motion:reduce){.portfolio-home .signal-panel::after{animation:none;opacity:.08}.replay-case,.replay-select button{transition:none}}
/* Project dossier polish: same evidence-first visual language as the homepage replay. */
.portfolio-home .work-grid{align-items:stretch}
.portfolio-home .engineering-showcase article{position:relative;overflow:hidden;border-color:#4a6860;background:linear-gradient(150deg,#1d302b,#132227 80%);transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.portfolio-home .engineering-showcase article::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#9acd94,transparent 83%);pointer-events:none}
.portfolio-home .engineering-showcase article:nth-child(2)::before{background:linear-gradient(90deg,#93c4cf,transparent 83%)}
.portfolio-home .engineering-showcase article:hover{border-color:#8fb5a4;transform:translateY(-3px);box-shadow:0 19px 34px rgba(0,0,0,.2)}
.portfolio-home .engineering-showcase article:focus-within{border-color:#a3e3bd}
.portfolio-home .engineering-proofline{display:flex;align-items:center;gap:9px;margin:13px 0 3px;max-width:100%;font:600 .56rem/1.7 ui-monospace,Consolas,monospace;letter-spacing:.015em;color:#cee1cb}
.portfolio-home .engineering-proofline>span{width:8px;height:8px;border-radius:2px;flex-shrink:0;background:#a4c7aa;transform:rotate(45deg)}
.portfolio-home .engineering-showcase article>a{display:inline-flex;align-items:center;min-height:34px}
.case-page .case-masthead{position:relative;isolation:isolate;overflow:hidden;padding:23px 26px 11px;margin-top:0;border:1px solid #415b56;border-radius:10px;background:linear-gradient(110deg,#1a2d29,#111d23 68%)}
.case-page .case-masthead::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(rgba(132,198,160,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(132,198,160,.035) 1px,transparent 1px);background-size:32px 32px}
.case-page .case-masthead::after{content:"";position:absolute;right:0;top:0;width:95px;height:3px;background:linear-gradient(90deg,transparent,#b4ecae);pointer-events:none}
.case-page .case-masthead .eyebrow{color:#b1e9c4}
.case-page .case-masthead .article-title{max-width:900px;margin-top:10px}
.case-page .case-masthead .article-deck{max-width:780px}
.case-page .case-masthead .pill-group{margin:18px 0 12px}
.case-page .case-snapshot{margin-top:15px;margin-bottom:0;background:#45665e;border-color:#45665e}
.case-page .case-snapshot>div{position:relative;isolation:isolate;background:#16272a;border-top:2px solid #547d6e;padding:21px 23px}
.case-page .case-snapshot>div:first-child{border-top-color:#95cfa9}
.case-page .case-snapshot>div:last-child{border-top-color:#90b5c2}
.case-page .case-snapshot strong{color:#c0f3ad}
.case-page .case-review-strip{display:flex;align-items:center;justify-content:space-between;gap:21px;min-width:0;margin:14px 0 40px;padding:16px 18px;border:1px solid #405e59;border-radius:8px;background:linear-gradient(105deg,#142528,#111c22)}
.case-page .case-review-strip[data-case-scope="private-summary"]{border-color:#55625c;background:linear-gradient(105deg,#222b29,#151f24)}
.case-review-marker{display:flex;flex-direction:column;gap:2px;min-width:0}
.case-review-code{font:600 .59rem/1.6 ui-monospace,Consolas,monospace;letter-spacing:.075em;color:#a7dbb9}
.case-review-marker strong{color:#e2eae5;font-size:.86rem;line-height:1.5}
.case-review-marker small{color:#b7c9c8;font-size:.66rem;line-height:1.65}
.case-review-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.case-page .case-review-actions>a{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 11px;min-height:40px;border:1px solid #4c6d65;border-radius:5px;background:#1c3330;color:#d7e9dc;font-size:.7rem;line-height:1.5;text-decoration:none;font-weight:600;transition:background .18s ease,border-color .18s ease}
.case-page .case-review-actions>a:first-child{background:#9bcfa4;border-color:#9bcfa4;color:#10221d}
.case-page .case-review-actions>a:hover{border-color:#b3eabc;background:#2d4940}
.case-page .case-review-actions>a:first-child:hover{background:#c4efc5;color:#10221d}
.case-page .case-review-actions>a:focus-visible{outline:3px solid #b9f3bb;outline-offset:3px}
.case-page .case-snapshot>div:hover{background:#1a3031}
.case-page .case-sidebar nav>a{transition:color .15s ease,background .15s ease}
.case-page .case-sidebar nav>a:hover,.case-page .case-sidebar nav>a:focus-visible{color:#dbf4c9;background:rgba(106,174,139,.08)}
.case-page .case-next{border-top:1px solid #45625b;border-bottom:1px solid #45625b;background:linear-gradient(90deg,rgba(67,123,90,.06),transparent);padding-inline:15px}
@media(max-width:1120px){.case-page .case-review-strip{display:block}.case-review-actions{margin-top:16px}}
@media(max-width:800px){.case-page .case-masthead{padding:19px 19px 8px}.case-page .case-review-strip{margin-bottom:27px}}
@media(max-width:600px){
.portfolio-home .engineering-showcase article:hover{transform:none}
.case-page .case-masthead{padding:16px 15px 6px}.case-page .case-masthead .article-title{margin-top:10px;font-size:clamp(1.77rem,8vw,2.25rem)}
.case-page .case-masthead .article-deck{font-size:.89rem}
.case-page .case-review-strip{padding:16px 14px}.case-review-actions{display:grid;grid-template-columns:1fr;gap:9px}.case-page .case-review-actions>a{justify-content:space-between;text-align:left}
.case-page .case-snapshot{margin-top:10px}.case-page .case-snapshot>div{padding:15px 17px}}
@media(prefers-reduced-motion:reduce){.portfolio-home .engineering-showcase article,.case-page .case-review-actions>a{transition:none}}
/* Unified recruiter tool surfaces: Discover / Execute / Verify. */
.toolkit-masthead{position:relative;isolation:isolate;overflow:hidden;margin:0 0 15px;padding:23px 27px 20px;border:1px solid #49665f;border-radius:11px;background:linear-gradient(120deg,#1b302b,#13242b 70%,#111e25)}
.toolkit-masthead:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(120,193,155,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(120,193,155,.04) 1px,transparent 1px);background-size:33px 33px}
.toolkit-masthead:after{content:"";position:absolute;right:-85px;top:-130px;width:310px;height:310px;border:1px solid rgba(141,213,170,.13);border-radius:50%;box-shadow:0 0 0 43px rgba(141,213,170,.026);pointer-events:none}
.toolkit-masthead-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px;padding-bottom:12px;border-bottom:1px solid #405b54;color:#c7e0d1;font:600 .62rem/1.55 ui-monospace,Consolas,monospace;letter-spacing:.07em}
.toolkit-masthead-top span:first-child{color:#bdf0b6}
.toolkit-masthead .eyebrow{font-size:.64rem;color:#b5eab8}
.toolkit-masthead .article-title{margin:14px 0 15px;max-width:780px;font-size:clamp(2rem,4.6vw,3.3rem);line-height:1.12}
.toolkit-masthead .article-deck{max-width:785px;margin:0 0 7px;font-size:.94rem;line-height:1.85}
.toolkit-pipeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 28px}
.toolkit-pipeline a{min-width:0;display:flex;flex-direction:column;gap:5px;border:1px solid #405854;border-radius:7px;background:#14242a;padding:14px 17px;text-decoration:none;transition:background .16s ease,border-color .16s ease}
.toolkit-pipeline a>span{font:600 .57rem/1.5 ui-monospace,Consolas,monospace;color:#a7c8bf;letter-spacing:.08em}
.toolkit-pipeline a strong{font-size:.79rem;color:#e4ece6;display:flex;justify-content:space-between;gap:10px;font-weight:600}
.toolkit-pipeline a strong span{color:#b6dc9e}
.toolkit-pipeline a[aria-current="page"]{background:#234137;border-color:#a0d7a0;box-shadow:inset 0 0 0 1px rgba(168,232,182,.1)}
.toolkit-pipeline a[aria-current="page"]>span{color:#c5eab8}
.toolkit-pipeline a:hover{border-color:#a2d9b0;background:#1e3932}
.toolkit-pipeline a:focus-visible{outline:3px solid #b5edb5;outline-offset:3px}
.explorer-role-pills{display:flex;flex-wrap:wrap;gap:9px;margin:3px 0 19px}
.explorer-role-pills button{appearance:none;min-height:38px;padding:9px 13px;border:1px solid #56716b;border-radius:5px;background:#1a2c31;color:#d5e2dd;font-size:.73rem;font-weight:600;line-height:1.4;font-family:inherit;cursor:pointer;transition:background .15s,border-color .15s}
.explorer-role-pills button:hover{background:#29443c;border-color:#a5ddaf}
.explorer-role-pills button[aria-pressed="true"]{background:#afdba8;color:#14231e;border-color:#afdba8}
.explorer-role-pills button:focus-visible{outline:3px solid #b5edb5;outline-offset:3px}
.explorer-page .filter-panel{background:linear-gradient(135deg,#1b3030,#13252b);border-color:#52746a}
.explorer-page .filter-controls{gap:12px}
.explorer-page .filter-status{display:inline-flex;align-items:center;gap:9px;margin:15px 0 20px;padding:8px 12px;border:1px solid #47695a;border-radius:6px;background:#193027;color:#c6efc1;font:600 .72rem/1.5 ui-monospace,Consolas,monospace}
.explorer-page .filter-status:before{content:"";display:block;width:7px;height:7px;border-radius:50%;background:#a8e6a6}
.explorer-page .explore-card{position:relative;isolation:isolate;border-color:#48635d;background:linear-gradient(145deg,#192b2a,#132229);overflow:hidden;transition:transform .17s,border-color .17s,box-shadow .17s}
.explorer-page .explore-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#9ddea4,transparent 80%)}
.explorer-page .explore-card:nth-child(2):before,.explorer-page .explore-card:nth-child(3):before{background:linear-gradient(90deg,#9cced6,transparent 80%)}
.explorer-page .explore-card:nth-child(4):before{background:linear-gradient(90deg,#e4c795,transparent 80%)}
.explorer-page .explore-card:nth-child(5):before,.explorer-page .explore-card:nth-child(6):before{background:linear-gradient(90deg,#c3b7e7,transparent 80%)}
.explorer-page .explore-card:hover{transform:translateY(-2px);border-color:#a1c6ae;box-shadow:0 14px 25px rgba(0,0,0,.17)}
.explorer-page .explore-card:focus-within{border-color:#b4edbd}
.explorer-page .explore-proof{background:#1b3634;border-color:#47685e;color:#d1e5d4}
.explorer-page .explore-card h2{letter-spacing:-.03em}
.explorer-page .explore-card .text-link{display:inline-flex;align-items:center;gap:7px}
.lab-page .lab-intro{border-color:#4c6860}
.lab-page .lab-intro>div{background:#17272a}
.lab-page .lab-section{border-top-color:#47615b;scroll-margin-top:98px}
.lab-page .lab-section-heading{gap:18px}
.lab-page .engine-controls{background:linear-gradient(105deg,#1a302d,#132329);border-color:#4e6b64}
.lab-page .engine-status{border-radius:7px}
.replay-preset-bar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:13px 0 18px}
.replay-preset-bar>span{font:600 .6rem/1.6 ui-monospace,Consolas,monospace;color:#b7d8c1;letter-spacing:.08em;margin-right:4px}
.replay-preset-bar button{min-height:40px;padding:9px 13px;background:#1b3030;border:1px solid #58756c;border-radius:5px;color:#e0ebe0;font-size:.73rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}
.replay-preset-bar button:not(:disabled):hover{background:#2c4a3d;border-color:#a5ddaf}
.replay-preset-bar button[aria-pressed="true"]{background:#a9dca3;color:#182720;border-color:#a9dca3}
.replay-preset-bar button:disabled{opacity:.6;cursor:default}
.replay-preset-bar button:focus-visible{outline:3px solid #b5edb5;outline-offset:3px}
.lab-page .lab-context-grid article{border-color:#4b6a60;background:linear-gradient(130deg,#1b302c,#15252a)}
.verification-page .verification-intro{margin:22px 0 19px}
.verification-page .verification-intro>div{background:#17292b;border-color:#48695d}
.verification-jump{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:0 0 38px}
.verification-jump>a{display:flex;align-items:center;gap:13px;min-width:0;padding:12px 15px;border:1px solid #527369;border-radius:7px;background:#192e2e;text-decoration:none;color:#d5e6d8;font-size:.72rem;line-height:1.5;transition:background .16s,border-color .16s}
.verification-jump>a strong{font:700 1.15rem/1.2 ui-monospace,Consolas,monospace;color:#a1e3b6}
.verification-jump>a:hover{border-color:#b0e5b8;background:#24443c}
.verification-jump>a:focus-visible{outline:3px solid #b5edb5;outline-offset:3px}
.verification-page .verification-section{scroll-margin-top:96px}
.verification-page .verification-section h2{scroll-margin-top:96px}
.verification-page .verification-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#1a2d2f,#14262d);border-color:#48645d;transition:border-color .16s,transform .16s}
.verification-page .verification-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#b0dfa6,transparent 85%)}
.verification-page .verification-section:nth-of-type(2) .verification-card:before{background:linear-gradient(90deg,#b2bbeb,transparent 85%)}
.verification-page .verification-card:hover{border-color:#9ec5a9;transform:translateY(-2px)}
.verification-page .verification-card .verification-limit{border-color:#5a726b;background:#1b302d;border-radius:5px;padding:12px 13px;margin:4px -1px 0}
.verification-page .verification-card .verification-actions a{font-weight:600}
.verification-page .verification-card .verification-actions a:focus-visible{outline:3px solid #b5edb5;outline-offset:3px}
@media(max-width:800px){.toolkit-masthead{padding:20px}.toolkit-masthead .article-title{font-size:clamp(1.85rem,6vw,2.7rem)}.toolkit-pipeline{gap:8px}.toolkit-pipeline a{padding:12px}.toolkit-pipeline a strong{font-size:.7rem}}
@media(max-width:650px){.toolkit-masthead{padding:18px 16px}.toolkit-masthead-top{font-size:.55rem}.toolkit-masthead-top span:last-child{display:none}
.toolkit-masthead .article-deck{font-size:.87rem}.toolkit-pipeline{grid-template-columns:1fr;gap:8px;margin-bottom:22px}.toolkit-pipeline a{flex-direction:row;align-items:center;justify-content:space-between}
.toolkit-pipeline a>span{font-size:.52rem}.toolkit-pipeline a strong{font-size:.73rem;gap:7px}
.explorer-role-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.explorer-role-pills button{font-size:.67rem;padding:9px}
.replay-preset-bar>span{flex-basis:100%}.replay-preset-bar button{flex:1;font-size:.67rem;min-width:0}
.verification-jump{grid-template-columns:1fr;gap:8px}.verification-jump>a{padding:12px}.verification-page .verification-card:hover,.explorer-page .explore-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.toolkit-pipeline a,.explorer-role-pills button,.explorer-page .explore-card,.replay-preset-bar button,.verification-jump>a,.verification-page .verification-card{transition:none}}
/* Legible one-page recruiter printout, assessed against a real Chrome US-letter PDF. */
@media print{
 .recruiter-sheet-head .recruiter-intro{font-size:9pt;line-height:1.38}

 .recruiter-detail{font-size:9pt;line-height:1.44}
 .recruiter-evidence-links{font-size:8pt;line-height:1.45}
 .recruiter-project-grid h3,.recruiter-skill-columns h3{font-size:8.9pt}
 .recruiter-project-grid p,.recruiter-skill-columns p{font-size:8.4pt;line-height:1.4}
 .recruiter-qualification{font-size:7.85pt;line-height:1.43}
 .recruiter-block{padding:9pt 0 6pt;break-inside:avoid}
 .recruiter-section-title h2{font-size:12pt}
}
/* Print the white paper background through the page edge, with physical
   padding rather than a dark @page margin. Protect the right text edge. */
@media print{
 @page{size:letter;margin:0;background:#fff}
 html{background:#fff!important}
 body.portfolio-shell{width:100%!important;max-width:100%!important;
   min-height:0!important;margin:0!important;padding:.43in .52in!important;
   background:#fff!important;color:#162734!important}
 .recruiter-main,.recruiter-sheet{width:100%!important;max-width:100%!important;
   min-width:0!important;box-sizing:border-box!important}
 .recruiter-project-grid>div,.recruiter-skill-columns>div{min-width:0;overflow-wrap:anywhere}
 .recruiter-detail,.recruiter-qualification{overflow-wrap:break-word}
}
/* Hiring-first release candidate: real controlled evidence takes hero priority.
   Scoped to homepage to preserve other case-study and page layouts. */
.portfolio-home .hero{padding:58px 0 46px}
.portfolio-home .hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(25px,4.3vw,62px)}
.portfolio-home .hero h1{font-size:clamp(2.7rem,4.6vw,4.25rem);max-width:630px;margin:17px 0 17px}
.portfolio-home .hero-lead{font-size:.97rem;line-height:1.78;max-width:560px}
.portfolio-home .hero .actions{margin:20px 0 17px}
.portfolio-home .hero .actions .button{min-height:46px}
.portfolio-home .hero-resume-download{margin:0 0 18px}
.hero-proof-summary{display:flex;gap:13px 25px;flex-wrap:wrap;border-top:1px solid #365249;padding-top:14px;margin-top:1px;color:#c4d2ce;font-size:.72rem;line-height:1.7}
.hero-proof-summary>span{display:inline-flex;align-items:baseline;gap:6px}
.hero-proof-summary strong{color:#a4ecb1;font:700 .96rem/1.2 ui-monospace,Consolas,monospace}
.portfolio-home .hero-evidence-panel{border-color:#668579;background:linear-gradient(135deg,#162b29,#111e26);box-shadow:11px 14px 0 #0c171a}
.portfolio-home .hero-evidence-panel .signal-panel-body{padding:23px 23px 18px}
.hero-evidence-eyebrow{color:#bcdfbd;font:700 .58rem/1.6 ui-monospace,Consolas,monospace;letter-spacing:.075em;margin-bottom:7px}
.portfolio-home .hero-evidence-panel h2{font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.22;letter-spacing:-.035em;margin:5px 0 14px}
.hero-evidence-image{display:block;background:#e2e8eb;border:1px solid #839994;border-radius:5px;padding:9px;box-shadow:0 8px 17px rgba(0,0,0,.17)}
.hero-evidence-image img{display:block;width:100%;height:auto;min-height:40px;object-fit:contain}
.hero-evidence-image:hover,.hero-evidence-image:focus-visible{outline:2px solid #b7edbc;outline-offset:3px}
.portfolio-home .hero-evidence-panel .terminal-result{margin:13px 0 10px;padding:10px 12px;background:#1a3030;border:1px solid #4c7066;border-radius:6px;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 9px}
.portfolio-home .hero-evidence-panel .terminal-result strong{white-space:nowrap}
.portfolio-home .hero-evidence-panel .terminal-result>span:last-child{font-size:.65rem;line-height:1.6}
.hero-evidence-disclosure{font-size:.69rem;line-height:1.65;color:#c1d2cd;margin:0 0 13px}
.hero-evidence-disclosure strong{color:#dff0de}
.portfolio-home .hero-evidence-panel .signal-link{font-size:.76rem}
.portfolio-home .hero-evidence-panel .signal-panel-foot{font-size:.59rem}
.portfolio-home .splunk-feature{scroll-margin-top:79px}
.portfolio-home .hiring-start{padding:28px 0 12px;border-top:1px solid #2f4845}
@media(max-width:950px){
 .portfolio-home .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}
 .portfolio-home .hero h1{font-size:clamp(2.35rem,4.9vw,3.1rem)}
 .portfolio-home .hero-evidence-panel .signal-panel-body{padding:19px}
}
@media(max-width:800px){
 .portfolio-home .hero{padding:34px 0 37px}
 .portfolio-home .hero-grid{grid-template-columns:1fr;gap:29px}
 .portfolio-home .hero h1{font-size:clamp(2.45rem,6.5vw,3.25rem)}
 .portfolio-home .hero-lead{max-width:620px}
 .portfolio-home .hero-evidence-panel{max-width:620px;box-shadow:none}
 .portfolio-home .hero-evidence-panel h2{font-size:1.55rem}
 .portfolio-home .hero-proof-summary{margin-top:0}
}
@media(max-width:390px){
 .portfolio-home .hero{padding:23px 0 30px}
 .portfolio-home .hero h1{font-size:clamp(2.02rem,8.3vw,2.25rem);margin:14px 0}
 .portfolio-home .hero-lead{font-size:.83rem;line-height:1.6}
 .portfolio-home .hero .actions{gap:8px;margin:16px 0 13px}
 .portfolio-home .hero .actions .button{min-height:44px}
 .portfolio-home .hero-resume-download{font-size:.71rem;margin:0 0 14px}
 .hero-proof-summary{font-size:.66rem;gap:6px 14px;padding-top:10px}
 .portfolio-home .hero-evidence-panel .signal-panel-body{padding:16px}
 .hero-evidence-image{padding:6px}
}
@media(prefers-reduced-motion:reduce){.portfolio-home .hero-evidence-panel .signal-panel::after{animation:none}}
/* Security case executive review: one structure for four separately verified labs.
   Does not imply cross-case event correlation or production detection. */
.case-page .case-analyst-brief{margin:0 0 37px;padding:22px 23px 0;border:1px solid #52756a;border-radius:10px;background:linear-gradient(115deg,#192e2b,#142529 73%,#122026);scroll-margin-top:96px;overflow:hidden}
.case-brief-heading{display:flex;align-items:center;justify-content:space-between;gap:15px 22px;margin-bottom:20px}
.case-brief-code{display:block;color:#b6e6b5;font:650 .6rem/1.6 ui-monospace,Consolas,monospace;letter-spacing:.065em}
.case-page .case-brief-heading h2{font-size:clamp(1.23rem,2.6vw,1.67rem);line-height:1.3;letter-spacing:-.027em;margin:6px 0 7px;color:#f0f4e9}
.case-brief-heading p{margin:0;color:#bfd0c9;font-size:.76rem;line-height:1.65}
.case-brief-decision-link{white-space:nowrap;flex-shrink:0;display:inline-flex;gap:7px;align-items:center;min-height:40px;padding:8px 13px;background:#2c493d;border:1px solid #6a947d;border-radius:5px;text-decoration:none;color:#e6f7e7;font-size:.73rem;font-weight:650}
.case-brief-decision-link:hover{background:#365c48;border-color:#a5dfb5}
.case-brief-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 17px}
.case-brief-fact{min-width:0;padding:14px 14px 17px;border:1px solid #415d56;border-top:2px solid #86bb9d;background:#13272a;border-radius:5px}
.case-brief-fact:nth-child(2){border-top-color:#92bcd0}
.case-brief-fact:nth-child(3){border-top-color:#b7cea1}
.case-brief-fact[data-brief-limit="true"]{background:#282d2b;border-color:#636a5e;border-top-color:#d2bc93}
.case-brief-fact-label{display:block;font:650 .65rem/1.6 ui-monospace,Consolas,monospace;letter-spacing:.025em;color:#a9d7ba;margin:0 0 9px}
.case-brief-fact[data-brief-limit="true"] .case-brief-fact-label{color:#edd1a2}
.case-brief-fact p{margin:0;font-size:.86rem;line-height:1.74;color:#d7e3de;overflow-wrap:break-word}
.case-brief-details{margin:0 -23px;border-top:1px solid #43635b}
.case-brief-details>summary{list-style:revert;cursor:pointer;padding:14px 23px;min-height:47px;color:#d5ead9;font-size:.78rem;font-weight:650}
.case-brief-details>summary:hover{background:rgba(92,166,125,.1)}
.case-brief-details>summary:focus-visible,.case-brief-decision-link:focus-visible,.case-brief-source-links a:focus-visible{outline:3px solid #b6efbf;outline-offset:3px}
.case-brief-details>summary>span{padding-left:6px;color:#9cccaa}
.case-brief-details[open]>summary{border-bottom:1px solid #3d5b53;background:#1c3631}
.case-brief-expanded{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:23px;padding:20px 23px 24px}
.case-brief-expanded>div{min-width:0}
.case-brief-expanded h3{font-size:.82rem;letter-spacing:0;color:#e2efdf;margin:0 0 12px}
.case-brief-source-links{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.case-brief-source-links a{font-size:.84rem;min-height:32px;color:#a7e6bd;text-underline-offset:4px;overflow-wrap:anywhere}
.case-brief-expanded ol{margin:0;padding-left:22px;font-size:.76rem;line-height:1.72;color:#d2e1da}
.case-brief-expanded li+li{margin-top:6px}
.explorer-playbook{margin:45px 0 31px;padding:24px 23px;border:1px solid #56776d;border-radius:9px;background:linear-gradient(135deg,#1b302d,#14242a)}
.explorer-playbook-intro{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:end;margin-bottom:20px}
.explorer-playbook-intro h2{font-size:clamp(1.28rem,2.8vw,1.85rem);letter-spacing:-.027em;margin:7px 0 0;color:#f0f3eb}
.explorer-playbook-intro p{margin:0;font-size:.78rem;line-height:1.75;color:#c6d8d0}
.explorer-playbook-intro strong{color:#d9ecd8}
.explorer-playbook-steps{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.explorer-playbook-steps li{min-width:0}
.explorer-playbook-steps a{min-height:100%;text-decoration:none;display:flex;flex-direction:column;gap:10px;padding:18px 15px;border:1px solid #476158;border-top:3px solid #8ac2a0;border-radius:6px;background:#14272a;transition:background .16s ease,border-color .16s ease,transform .16s ease}
.explorer-playbook-steps li:nth-child(2) a{border-top-color:#99bbd6}
.explorer-playbook-steps li:nth-child(3) a{border-top-color:#b2b8dd}
.explorer-playbook-steps li:nth-child(4) a{border-top-color:#d7bc89}
.explorer-playbook-steps a>span:first-child{font:650 .59rem/1.6 ui-monospace,Consolas,monospace;letter-spacing:.04em;color:#b2dabd}
.explorer-playbook-steps a strong{font-size:.84rem;line-height:1.48;color:#edf1e9}
.explorer-playbook-steps a small{display:block;font-size:.72rem;line-height:1.7;color:#bfcfcb}
.explorer-playbook-steps a .playbook-go{margin-top:auto;font-size:.71rem;font-weight:650;color:#b8e4b9;padding-top:10px}
.explorer-playbook-steps a:hover{background:#203b36;border-color:#8fc9a5;transform:translateY(-2px)}
.explorer-playbook-steps a:focus-visible{outline:3px solid #b9efbf;outline-offset:3px}
@media(max-width:1030px){.case-brief-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.explorer-playbook-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
.explorer-playbook-intro{grid-template-columns:1fr;gap:12px}}
@media(max-width:650px){.case-page .case-analyst-brief{padding:18px 15px 0;margin-bottom:26px}
.case-brief-heading{display:block}.case-brief-decision-link{margin-top:13px;white-space:normal}
.case-brief-grid{grid-template-columns:1fr;gap:8px}.case-brief-fact{padding:12px 13px}.case-brief-fact p{font-size:.86rem}
.case-brief-details{margin:0 -15px}.case-brief-details>summary{padding:14px 15px}.case-brief-expanded{grid-template-columns:1fr;padding:16px 17px;gap:20px}
.explorer-playbook{padding:21px 16px}.explorer-playbook-steps{grid-template-columns:1fr}
.explorer-playbook-steps a{padding:14px 15px;gap:8px}.explorer-playbook-steps a .playbook-go{padding-top:3px}}
@media(prefers-reduced-motion:reduce){.explorer-playbook-steps a{transition:none}.explorer-playbook-steps a:hover{transform:none}}
/* Owner résumé alignment, while preserving the public Don Lopez display name. */
.portfolio-home .career-skills-note{margin:11px 0 0;font-size:.74rem;line-height:1.68;color:#afc5cc}
.application-page .resume-source-note{border:1px solid #496e65;background:#172c2a;border-radius:9px;padding:22px 25px}
.application-page .resume-source-note p{font-size:.87rem;line-height:1.78;color:#d5e1de;max-width:900px}
.application-page .resume-source-note a{color:#a5e3bd;text-underline-offset:4px}
.recruiter-credential-row span{overflow-wrap:break-word}
.recruiter-experience .recruiter-detail{margin-bottom:0}
@media(max-width:600px){.application-page .resume-source-note{padding:18px 16px}}
@media print{
 .recruiter-experience{padding:5pt 0 4pt}
 .recruiter-experience .recruiter-detail{font-size:8.2pt;line-height:1.32}
 .recruiter-credential-row span{font-size:7.7pt}
 .recruiter-credential-row small{font-size:6.7pt}
 .recruiter-links{gap:5pt 10pt;font-size:7.75pt}
 .recruiter-section-title{margin-bottom:5pt}
 .recruiter-project-grid p{font-size:8pt}
}
/* Source-grounded visual contrasts—not new runtime detections. */
.case-evidence-contrast{margin:0 0 34px;border:1px solid #54766c;border-radius:10px;overflow:hidden;background:linear-gradient(125deg,#1a2f2b,#142429);scroll-margin-top:90px}
.case-contrast-heading{padding:19px 22px 16px;border-bottom:1px solid #436159}
.case-contrast-kicker{font:650 .59rem/1.5 ui-monospace,Consolas,monospace;letter-spacing:.06em;color:#a9d9b6}
.case-evidence-contrast h2{color:#edf3e9;font-size:clamp(1.15rem,2.1vw,1.48rem);line-height:1.3;margin:7px 0 0}
.case-contrast-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#486159}
.case-contrast-side{background:#15292a;padding:18px 21px;min-width:0}
.case-contrast-side:nth-child(2){background:#20322e}
.case-contrast-label{display:block;color:#b1dabb;font:650 .59rem/1.55 ui-monospace,Consolas,monospace;margin-bottom:10px}
.case-contrast-side p{margin:0;color:#d8e5de;font-size:.79rem;line-height:1.75;overflow-wrap:anywhere}
.case-contrast-side code{overflow-wrap:anywhere;white-space:normal;font-size:.8em;color:#c9eacb}
.case-evidence-contrast figcaption{margin:0;padding:14px 22px;color:#c0d0c9;font-size:.71rem;line-height:1.7;border-top:1px solid #486159}
.case-evidence-contrast figcaption a{color:#adf0c1;font-weight:600}
.case-evidence-contrast figcaption a:focus-visible{outline:3px solid #baefbe;outline-offset:3px}
@media(max-width:650px){.case-contrast-grid{grid-template-columns:1fr}.case-contrast-heading{padding:17px}.case-contrast-side{padding:15px 17px}.case-evidence-contrast figcaption{padding:13px 17px}}
/* Don Lopez printable, role-specific résumé documents.
   Keep the substantive résumé in semantic HTML for search and assistive tech. */
.resume-document-page{background:#0b151a}
.resume-document-main{max-width:1100px;padding-top:30px;padding-bottom:64px}
.resume-document-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 auto 20px;max-width:900px}
.resume-document-controls>a,.resume-document-buttons>a{color:#bfdfd8;font-size:.83rem;text-underline-offset:4px}
.resume-document-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.resume-document-buttons .button{font-size:.81rem;min-height:42px}
.resume-document{max-width:900px;margin:0 auto;padding:43px 51px 35px;background:#fdfefe;color:#18252d;border:1px solid #b6c7cc;box-shadow:0 16px 55px rgba(0,0,0,.31);font-family:Arial,Helvetica,sans-serif}
.resume-document *{box-sizing:border-box}
.resume-document-heading{padding:0 0 15px;margin-bottom:14px;border-bottom:3px solid #16605d}
.resume-document-category{display:block;color:#477075;font-size:.62rem;font-weight:700;letter-spacing:.1em}
.resume-document h1{font-family:Arial,Helvetica,sans-serif;color:#122c38;font-size:2.15rem;font-weight:750;letter-spacing:-.045em;margin:6px 0 1px;line-height:1.15}
.resume-document-role{color:#17615d;font-size:.83rem;font-weight:700;letter-spacing:.06em;margin:6px 0 12px}
.resume-document-contact{display:flex;flex-wrap:wrap;gap:6px 17px;color:#365362;font-size:.72rem;line-height:1.6}
.resume-document a{color:#13645a;text-decoration:underline;text-underline-offset:2px}
.resume-document a:focus-visible{outline:2px solid #13645a;outline-offset:2px}
.resume-document p,.resume-document li{color:#26383f;font-size:.82rem;line-height:1.55}
.resume-document p{margin:0}
.resume-section{margin:12px 0}
.resume-section h2{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 7px;padding-bottom:4px;color:#144f57;border-bottom:1px solid #ccd8d9;font:750 .89rem/1.3 Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.035em}
.resume-section h2 small{font-size:.62rem;letter-spacing:0;font-weight:400;text-transform:none;color:#63767d}
.resume-section h3{font:700 .84rem/1.3 Arial,Helvetica,sans-serif;color:#172b32;margin:0 0 3px}
.resume-history-header{display:flex;justify-content:space-between;gap:16px;align-items:baseline}
.resume-history-header>span{font-size:.74rem;color:#52676e;font-weight:600;white-space:nowrap}
.resume-document-small{font-weight:500;color:#52676e}
.resume-document ul{padding-left:17px;margin:5px 0 0}
.resume-document li+li{margin-top:4px}
.resume-project{margin:9px 0 0}
.resume-project:first-of-type{margin-top:0}
.resume-project p a{font-weight:700;white-space:nowrap}
.resume-document-muted{color:#5b6b72!important;font-size:.72rem!important;margin-top:5px!important}
.resume-document-bottom{display:grid;grid-template-columns:1fr 1fr;gap:23px}
.resume-document-bottom .resume-section{min-width:0}
.resume-document-scope{color:#52676e!important;font-size:.67rem!important;line-height:1.48!important;border-top:1px solid #c4d0d2;padding-top:10px;margin-top:13px!important}
.resume-document-disclaimer{max-width:900px;margin:18px auto 0;color:#b8cdd0;font-size:.76rem;line-height:1.65}
.resume-document-disclaimer a{color:#b9eccd}
.application-role-actions .resume-formatted-link{display:inline-flex;align-items:center;justify-content:center;min-height:39px;white-space:normal;text-decoration:none;padding:8px 11px;border:1px solid #6ca99a;border-radius:6px;background:#23493f;color:#e5f6e9;font-size:.8rem;font-weight:650}
.application-role-actions .resume-formatted-link:hover{background:#306251}
.application-role-actions .resume-formatted-link:focus-visible{outline:3px solid #bef0bf;outline-offset:2px}
@media(max-width:700px){
 .resume-document-main{padding-top:18px;padding-bottom:35px}
 .resume-document{padding:27px 23px;box-shadow:none}
 .resume-document-controls{flex-wrap:wrap}
 .resume-document h1{font-size:1.9rem}
 .resume-document-bottom{grid-template-columns:1fr;gap:0}
 .resume-document-contact{gap:5px 12px}
}
@media(max-width:390px){
 .resume-document{padding:21px 15px}
 .resume-document h1{font-size:1.7rem}
 .resume-document p,.resume-document li{font-size:.79rem}
 .resume-history-header{flex-wrap:wrap;gap:3px}
 .resume-document-buttons{gap:9px}
}
@media print{
 @page{size:letter;margin:0}
 body.resume-document-page{background:white!important;color:#172733!important;
   margin:0!important;padding:.38in .52in!important;min-height:0!important}
 .resume-site-chrome,.resume-document-controls,.resume-document-disclaimer,
 .resume-document-page .skip-link{display:none!important}
 .resume-document-main{width:100%!important;max-width:100%!important;padding:0!important;margin:0!important}
 .resume-document{width:100%!important;max-width:100%!important;border:0!important;
   box-shadow:none!important;padding:0!important;margin:0!important}
 .resume-document-heading{padding-bottom:8pt;margin-bottom:7pt;border-bottom:2pt solid #16605d}
 .resume-document-category{font-size:6.8pt}
 .resume-document h1{margin:3pt 0 0}
 .resume-document-role{margin:2pt 0 5pt}
 .resume-document-contact{gap:0 10pt}

 .resume-section h2{line-height:1.2}
 .resume-section h2 small{font-size:6.2pt}
 .resume-section h3{margin-bottom:2pt}

 .resume-document ul{margin-top:2pt;padding-left:13pt}
 .resume-document li+li{margin-top:1pt}

 .resume-document-muted{margin-top:3pt!important}
 .resume-document-bottom{gap:13pt}
 .resume-document-scope{margin-top:7pt!important;padding-top:5pt}
 .resume-document *{break-inside:avoid}
 .resume-document a{color:#164d57!important;text-decoration:none}
}
/* Enlarged printed résumé typography following actual Chrome PDF inspection.
   The previous version left excess blank space despite fitting on one page. */
@media print{
 .resume-document h1{font-size:24pt}
 .resume-document p,.resume-document li{font-size:9.35pt;line-height:1.42}
 .resume-document-contact{font-size:8pt}
 .resume-document-role{font-size:9.1pt}
 .resume-section{margin:9pt 0}
 .resume-section h2{font-size:9.45pt;margin-bottom:5pt;padding-bottom:3pt}
 .resume-section h3{font-size:9.1pt}
 .resume-history-header>span{font-size:8.35pt}
 .resume-project{margin-top:7pt}
 .resume-document-muted{font-size:7.8pt!important;line-height:1.36!important}
 .resume-document-scope{font-size:7.3pt!important;line-height:1.35!important}
}
