:root{--bg:#000;--bg2:#000;--text:#f3ecd8;--text-2:#c9c3b0;--muted:#8c8778;--line:#1d1b16;--accent:#e9c66b;--accent-ink:#e9c66b;--gold-hi:#f8e3a3;--gold:#e9c66b;--gold-lo:#a87f2e;--rule:#f3ecd81c;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--pad:clamp(20px,4vw,64px);color-scheme:dark}
*{box-sizing:border-box;margin:0;padding:0}
html{background:#000;scroll-padding-top:68px}
body{font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}
a{color:inherit}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
img{display:block;max-width:100%}
.skip-link{position:fixed;left:20px;top:-80px;background:#000;color:var(--text);padding:10px;z-index:10000}
.skip-link:focus{top:60px}
.personal-page{color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.7;padding:76px 40px 0;min-height:100svh;display:flex;flex-direction:column;position:relative;isolation:isolate}

.personal-page main{flex:1;outline:none}
.page-panel{padding-bottom:80px}
.personal-page h1{font-family:"Archivo",sans-serif;font-stretch:125%;font-variation-settings:"wdth" 125;font-size:clamp(2rem,6.25vw,5rem);font-weight:800;line-height:1.05;letter-spacing:-.03em;margin:4px 0 74px}
.open-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;padding:0 16px;align-items:start}
.note h2{font-family:"IBM Plex Mono",monospace;font-size:12px;font-weight:500;line-height:20px;letter-spacing:.06em;padding-bottom:10px;margin-bottom:14px;border-bottom:1px solid var(--rule);color:var(--muted)}
.note p{margin-bottom:17px;max-width:54ch}
.note p:last-child{margin-bottom:0}
.note a{text-decoration:underline;text-decoration-color:#f3ecd840;text-underline-offset:4px;transition:color .15s,text-decoration-color .15s}
.note a:hover{color:var(--gold);text-decoration-color:var(--gold)}
.home-grid .today-note,.home-grid .yesterday-note{margin-top:172px}
.about-grid .how-note{grid-column:1;grid-row:1 / span 2}
.about-photo{grid-column:3;grid-row:1;width:100%;aspect-ratio:1;object-fit:cover;object-position:50% 28%;filter:grayscale(1);border-radius:5px}
.dither-portrait{grid-column:3;grid-row:1;position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:1px solid #e9c66b2e;box-shadow:0 0 0 1px #000,0 20px 60px -30px #e9c66b40}
.dither-portrait .about-photo{width:100%;height:100%;border-radius:0}
.dither-portrait canvas{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;opacity:0;transition:opacity .4s}
.dither-portrait.is-dithered canvas{opacity:1}
.what-note{grid-column:2;grid-row:2;margin-top:0}
.education-note{grid-column:3;grid-row:3;margin-top:20px}

.elsewhere-note{grid-column:2;margin-top:172px}
.personal-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--rule);padding:16px 0 24px;font-size:12px;color:var(--text-2);margin-top:auto}
.dock{position:fixed;top:12px;left:50%;transform:translateX(-50%);display:grid;grid-template-columns:repeat(4,1fr);padding:3px;height:40px;width:min(560px,calc(100% - 48px));background:#080807;border:1px solid #24221d;border-radius:7px;z-index:9999}
.dock a{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;height:32px;border-radius:3px;text-decoration:none;letter-spacing:.02em;font-size:14px;font-weight:500;color:var(--muted);transition:color .12s ease}
.dock a:hover{color:var(--text)}
.dock a[aria-current="page"]{color:var(--gold-hi);text-shadow:none}
.dock-thumb{position:absolute;top:auto;bottom:2px;left:3px;height:2px;width:0;border-radius:0;background:var(--gold);box-shadow:none;pointer-events:none}
.page-curtain{position:fixed;inset:0;z-index:9001;visibility:hidden;transform:translateX(101%);pointer-events:none;background:linear-gradient(90deg,#090806 0%,#11100c 72%,#17140d 100%);will-change:transform}
.page-curtain::after{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background:var(--gold-hi);box-shadow:0 0 8px 2px #f8e3a388,0 0 28px 8px #e9c66b44}
.no-js-thumb .dock a[aria-current="page"],html:not(.js) .dock a[aria-current="page"]{color:var(--gold-hi);box-shadow:inset 0 -2px var(--gold)}
.js .page-panel[hidden]{display:none}

@media(min-width:701px){.personal-page{min-height:100svh}.page-panel{min-height:calc(100svh - 103px)}}
@media(max-width:1000px) and (min-width:701px){.personal-page{padding:70px 28px 0}.open-grid{gap:25px;padding:0 8px}.personal-page h1{margin-bottom:64px}.home-grid .today-note,.home-grid .yesterday-note{margin-top:142px}.personal-footer{padding-bottom:92px}.work-crm{margin-top:250px}}
@media(max-width:700px){html{scroll-padding-top:58px}.skip-link:focus{top:50px}.personal-page{padding:62px 22px 0;font-size:16px;line-height:1.7}.personal-page h1{font-size:clamp(34px,10vw,56px);letter-spacing:-.03em;margin:0 0 56px;max-width:100%;overflow-wrap:normal;line-height:1.05}.open-grid{grid-template-columns:1fr;gap:38px;padding:0 4px}.home-grid .today-note,.home-grid .yesterday-note,.work-market,.work-crm,.elsewhere-note,.education-note{margin-top:0}.about-grid .how-note,.about-photo,.dither-portrait,.what-note,.education-note,.elsewhere-note{grid-column:auto;grid-row:auto}.about-photo,.dither-portrait{max-width:420px;order:3}.education-note{order:4}.page-panel{padding-bottom:52px}.note p{max-width:55ch}.personal-footer{padding:16px 0 24px;font-size:12px}.dock{top:8px;height:38px;width:calc(100% - 28px);padding:2px;border-radius:6px}.dock a{height:32px;padding:4px 4px;font-size:12px;letter-spacing:0}.dock-thumb{bottom:1px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.page-curtain{display:none!important}}

/* Static phosphor grain sits above the ink, without blocking selection. */
.personal-page::after{content:"";position:fixed;inset:0;z-index:8;pointer-events:none;opacity:.32;mix-blend-mode:multiply;animation:grain-shift .8s steps(1,end) infinite;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23grain)' d='M0 0h160v160H0z'/%3E%3C/svg%3E");background-size:160px 160px}
/* Keep the CRT character in the atmosphere and headings; body copy stays sharp. */
.personal-page .page-panel>h1{text-shadow:0 0 18px #e9c66b14}
/* CRT scanlines: dark rows over the ink; invisible on the pure black background. */
.personal-page main::after{content:"";position:fixed;inset:0;z-index:7;pointer-events:none;background:repeating-linear-gradient(0deg,#00000038 0 1px,transparent 1px 2px)}
/* Work: numbered entries, as in the reference's work index. */
.work-list{list-style:none;display:grid;gap:64px;padding:0 16px;max-width:980px}
.work-item{display:grid;grid-template-columns:auto 1fr;column-gap:22px;align-items:start}
.work-item-featured{padding:22px 24px;border:1px solid #e9c66b40;border-left:3px solid var(--gold);border-radius:8px;background:linear-gradient(110deg,#e9c66b0d,transparent 72%)}
.work-num{font-size:clamp(34px,3.4vw,48px);line-height:1;color:#f3ecd833;letter-spacing:-.02em;padding-top:2px}
.work-item-featured .work-num{color:#e9c66b99}
.work-body h2{font-family:"Archivo",sans-serif;font-stretch:125%;font-variation-settings:"wdth" 125;font-weight:800;font-size:clamp(22px,2.3vw,32px);line-height:1.1;letter-spacing:-.02em;margin-bottom:8px}
.work-item-featured .work-body h2 a{color:var(--gold-hi)}
.work-item-featured .work-body h2 a::after{content:"featured";display:inline-block;margin-left:12px;padding:4px 8px;border:1px solid #e9c66b55;border-radius:99px;color:var(--gold);font-family:var(--font-sans);font-size:10px;font-stretch:normal;font-variation-settings:normal;font-weight:500;letter-spacing:.08em;line-height:1;text-transform:uppercase;vertical-align:middle}
.work-body p{max-width:62ch;color:var(--text-2)}
.work-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.work-stats div{border:1px solid #e9c66b33;background:linear-gradient(180deg,#e9c66b12,#e9c66b05);border-radius:8px;padding:10px 14px;min-width:120px}
.work-stats dt{font-size:10px;letter-spacing:.08em;color:var(--muted)}
.work-stats dd{font-family:"Archivo",sans-serif;font-stretch:125%;font-variation-settings:"wdth" 125;font-weight:800;font-size:22px;color:var(--gold-hi);letter-spacing:-.01em;margin-top:2px}
@media(max-width:700px){.work-list{gap:48px;padding:0 4px}.work-item{grid-template-columns:1fr;row-gap:6px}.work-stats div{min-width:0;flex:1 1 30%}}
.note a.cta-link{display:inline-block;text-decoration:none;padding:10px 16px;border-radius:9px;color:#120f08;text-shadow:none;background:linear-gradient(180deg,var(--gold-hi),var(--gold) 45%,var(--gold-lo));box-shadow:inset 0 1px 0 #fff6d0aa,0 2px 14px #e9c66b33}
.note a.cta-link:hover{color:#000;filter:brightness(1.06)}
/* Social proof: small, quiet monochrome wordmarks. */
.proof{margin:4px 0 20px;padding-top:14px;border-top:1px solid var(--rule)}
.proof-label{display:block;font-size:10px;letter-spacing:.08em;color:var(--muted);margin-bottom:10px;text-shadow:none}
.proof-logos{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.proof-logos svg{display:block;height:14px;width:auto;fill:#f3ecd8;stroke:#f3ecd8;opacity:.55;transition:opacity .2s,fill .2s,stroke .2s}
.proof-logos svg text{stroke:none}
.proof-logos svg rect+text{fill:#000}
.proof-logos li:hover svg{opacity:1;fill:var(--gold);stroke:var(--gold)}

@keyframes grain-shift{0%{background-position:0 0}12%{background-position:-41px 23px}25%{background-position:17px -63px}37%{background-position:-88px -12px}50%{background-position:52px 71px}62%{background-position:-23px 94px}75%{background-position:79px -37px}87%{background-position:-60px 48px}}

/* Cloud halftone canvas (drawn by main.js) */
#cloud{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;image-rendering:pixelated}
.personal-page main{position:relative}

/* Heading signal acquisition */
.page-panel{position:relative}
.personal-page h1.is-acquiring{opacity:0}
.signal-layer{position:absolute;z-index:4;isolation:isolate;pointer-events:none;user-select:none}
.signal-band{position:absolute;inset:0}
.signal-copy{position:absolute;margin:0;text-shadow:none}

/* Page wipe */
.wipe-from{position:absolute;left:0;right:0;top:0;z-index:2}
.wipe-strip{position:absolute;left:0;right:0;top:0;z-index:3;pointer-events:none;user-select:none}
.wipe-strip h1,.wipe-strip .note,.wipe-strip .work-body h2,.wipe-strip .work-body p{text-shadow:-3px 0 0 #ff2d55cc,3px 0 0 #2f7dffcc,0 0 2px #3dff9a88}
.wipe-front{position:fixed;left:0;right:0;top:0;height:0;z-index:9000;pointer-events:none}
.wipe-front i{position:absolute;top:0;height:2px;background:var(--gold-hi);box-shadow:0 0 6px 1px #f8e3a3cc,0 0 22px 6px #e9c66b55}

/* Intro: CRT signal, then centre-split reveal */
html[data-intro="hold"] body>*:not(.intro){visibility:hidden}
.intro{position:fixed;inset:0;z-index:10001;overflow:hidden;pointer-events:auto}
.intro-panel{position:absolute;left:0;right:0;height:50%;background:#000}
.intro-panel.top{top:0}.intro-panel.bottom{bottom:0}
.intro-panel.top::after,.intro-panel.bottom::after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--gold-hi);box-shadow:0 0 8px 2px #f8e3a3cc,0 0 28px 8px #e9c66b55;opacity:0}
.intro-panel.top::after{bottom:-1px}.intro-panel.bottom::after{top:-1px}
.intro.is-revealing .intro-panel::after{opacity:1}
.intro-signal{position:absolute;left:0;right:0;top:50%;height:1px;background:#f6dc9a;box-shadow:0 -3px #3a2a0e,0 3px #9a7230,0 0 28px 5px #e9c66b80}
.intro-signal::before,.intro-signal::after{content:"";position:absolute;inset:-9px -10%;background:repeating-linear-gradient(0deg,transparent 0 3px,#c9a24f80 3px 4px);clip-path:polygon(0 30%,18% 30%,18% 0,37% 0,37% 60%,59% 60%,59% 20%,76% 20%,76% 75%,100% 75%,100% 100%,0 100%);animation:intro-tracking .16s step-end infinite}
.intro-signal::after{animation-direction:reverse;animation-duration:.25s;opacity:.5}
@keyframes intro-tracking{0%,100%{transform:translate(0)}23%{transform:translate(-6%)}47%{transform:translate(4%)}71%{transform:translate(-2%)}86%{transform:translate(7%)}}
.intro-shard{position:absolute;left:0;top:0;opacity:0;transform-origin:left;background:repeating-linear-gradient(0deg,#f8e3a3 0 1px,#4a3612 1px 3px)}
.intro-shard.gold{box-shadow:9px -3px #e9c66b,-13px 3px #5e4720}
.intro-shard.rgb{box-shadow:-11px -2px #bd547e,14px 3px #41bacc}
.work-body h2 a{text-decoration:none;transition:color .15s}
.work-body h2 a:hover{color:var(--gold-hi)}
.work-link{margin-top:16px}
.work-link a{color:var(--gold);text-decoration:underline;text-decoration-color:#e9c66b55;text-underline-offset:4px}
.work-link a:hover{color:var(--gold-hi)}
.personal-page>.personal-footer{font-size:11px;color:var(--text-2);padding:14px 8px 18px;align-items:center}
/* Keep small-screen reading crisp; the CRT registration belongs to the title. */
@media(max-width:700px){
  .personal-page .note,.personal-page .work-body h2,.personal-page .work-body p,.personal-page .work-stats,.personal-page .work-num,.personal-page .personal-footer,.personal-page .dock a{text-shadow:none}
  .personal-page::after{opacity:.07}
  .is-registering .open-grid{animation:none;filter:none;text-shadow:none}
}
/* Match the reference's title offset (h1 padding 8px) */
.personal-page .page-panel>h1{margin-top:8px}
.personal-page>.personal-footer{padding:0 8px;min-height:45px}
.stack{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.stack li{font-size:10.5px;letter-spacing:.04em;color:var(--text-2);border:1px solid #f3ecd81f;border-radius:20px;padding:4px 10px;text-shadow:none;background:#0b0a07}
.note h2{color:#b3ad9c}
.stack li{display:inline-flex;align-items:center;gap:6px}
.tool-mark{display:inline-block;width:14px;height:14px;flex:0 0 14px;object-fit:contain;border-radius:2px;vertical-align:middle}

/* Center the site content in a narrow reading column while preserving the CRT style. */
@media (min-width: 701px) {
  .personal-page main {
    width: min(100%, 820px);
    margin-inline: auto;
  }

  .personal-page > .personal-footer {
    width: min(100%, 820px);
    margin-inline: auto;
  }

  .page-panel > h1 {
    margin-bottom: 54px;
    text-align: left;
  }

  .open-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 38px;
    padding: 0;
  }

  .home-grid .today-note,
  .home-grid .yesterday-note,
  .elsewhere-note,
  .education-note {
    margin-top: 0;
  }

  .about-grid .how-note,
  .about-grid .what-note,
  .about-grid .education-note,
  .about-grid .about-photo,
  .about-grid .dither-portrait {
    grid-column: auto;
    grid-row: auto;
  }

  .about-grid .about-photo,
  .about-grid .dither-portrait {
    width: min(100%, 320px);
    max-width: 320px;
  }

  .work-list {
    max-width: 100%;
    padding-inline: 0;
  }
}
@media(min-width:701px){.site-home::after{opacity:.18}}
.site-home main::after{background:repeating-linear-gradient(0deg,#00000018 0 1px,transparent 1px 2px)}
.site-home #root .home-grid .note h2{font-size:14px;line-height:1.4;letter-spacing:.04em;color:#b3ad9c}
.site-home #root .home-grid .note p{font-size:18px;line-height:1.75}
@media(max-width:700px){.site-home #root .home-grid .note p{font-size:17px;line-height:1.7}}
