/* A personal, text-led landing page with Curve's local reactive texture. */
body.home{--paper:#111210;--ink:#ebece5;--muted:#a8aaa3;--line:#343731;--lime:#d9ee91;--dark:#252923;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;position:relative;isolation:isolate}
#ambient{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;mask-image:linear-gradient(to bottom,transparent,#000 25%)}
.home>.site-header,.home>main,.home>.site-footer{position:relative;z-index:1}
.home .wrap{width:min(720px,calc(100% - 48px))}
.home .site-header{min-height:92px;border-color:var(--line);gap:22px}
.home .wordmark{font-family:Georgia,"Times New Roman",serif;font-size:1.65rem;font-style:italic;font-weight:400;letter-spacing:-.075em}
.home .site-header nav{gap:20px;font-size:.8rem;color:#d2d4cc}
.home .site-header nav a[aria-current=page]{text-decoration:none;color:var(--lime)}
.home .site-header nav a:hover,.home .site-header nav a:focus-visible{color:var(--lime)}
.home .header-contact{font-size:.78rem;border-bottom-color:#666b5d}
.home a:focus-visible,.home button:focus-visible{outline-color:var(--lime)}
.home .skip-link{background:var(--lime);color:#111210}
.personal-intro{padding-block:104px 90px}
.intro-label{color:var(--lime)!important;font:.7rem/1.5 "Courier New",monospace;letter-spacing:.13em;margin:0 0 27px!important}
.personal-intro h1{font-size:clamp(2.8rem,6.4vw,4.15rem);line-height:1.07;letter-spacing:-.065em;font-weight:650;margin:0 0 30px}
.personal-intro h1 .accent{color:var(--lime)}
.personal-intro p:not(.intro-label){font-size:1.12rem;line-height:1.7;color:var(--muted);max-width:590px;margin:0 0 20px}
.personal-intro a:not(.read-more),.personal-section p a{color:var(--ink);text-decoration:underline;text-decoration-color:#718046;text-underline-offset:5px}
.personal-intro a:not(.read-more):hover,.personal-section p a:hover{color:var(--lime)}
.personal-intro .age-line{font-size:.98rem!important;margin-top:31px!important;font-variant-numeric:tabular-nums}
#age-counter{color:var(--ink);font-family:"Courier New",monospace;letter-spacing:-.045em}
.read-more{display:inline-block;margin-top:12px;border-bottom:1px solid #898e7d;padding-bottom:3px;color:#d7dacd;font-size:.89rem}
.read-more:hover{color:var(--lime);border-color:var(--lime)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.personal-section{padding-block:42px 65px;border-top:1px solid var(--line)}
.section-title{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:25px}
.section-title h2{font:.72rem/1.4 "Courier New",monospace;letter-spacing:.13em;font-weight:400;margin:0;color:var(--lime)}
.section-title>span{font-size:.73rem;color:#777c71}
.home .project-tabs{gap:18px;border:0;margin:0 0 23px}
.home .project-tabs a{min-height:auto;padding:0 0 4px;background:none!important;color:#888f80;font-size:.75rem;border-bottom:1px solid transparent}
.home .project-tabs a[aria-current=page]{color:var(--ink);border-color:var(--lime)}
.home .project-tabs a:hover{color:var(--lime)}
.index-row{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:18px;min-height:105px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s,padding .2s}
.index-row:hover{background:#24271f;padding-inline:13px}
.project-symbol{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:#d9ee91;color:#263024;font:italic 2rem/1 Georgia,serif}
.row-main{display:flex;flex-direction:column;gap:3px}
.row-main strong{font-size:1.12rem;font-weight:550}
.row-main small,.row-meta{font-size:.75rem;color:var(--muted)}
.row-meta{white-space:nowrap;display:flex;align-items:center;gap:18px}
.personal-section>p{font-size:1rem;line-height:1.75;color:var(--muted);max-width:620px;margin:0 0 16px}
.home .elsewhere{display:block;padding-block:42px 70px}
.home .elsewhere .social-links{display:flex;gap:28px;border-top:0;padding-top:8px;font-size:.86rem}
.home .social-links a{display:inline-flex;gap:8px;align-items:center;color:#d0d4c7;border-bottom:1px solid #626b55;padding-bottom:4px}
.home .social-links a:hover{color:var(--lime);border-color:var(--lime)}
.home .site-footer{align-items:flex-start;padding-block:26px 40px}
.home .footer-brand{align-items:baseline;gap:14px}
.home .footer-brand>span{white-space:nowrap}
.home .site-footer nav{justify-content:flex-end;gap:10px 18px;line-height:1.5}
.home .site-footer nav a:hover,.home .site-footer nav button:hover{color:var(--lime)}
.home .cookie-notice{border:1px solid #566248;background:#232820;color:var(--ink);max-width:760px}
.home .cookie-actions button{background:var(--lime);color:#20251d}
@media(max-width:850px){.home .site-header{flex-wrap:nowrap}.home .site-header nav{order:initial;width:auto;justify-content:initial}}
@media(max-width:650px){.home .wrap{width:calc(100% - 42px)}.home .site-header{flex-wrap:wrap;padding-block:20px;gap:12px}.home .site-header nav{order:3;width:100%;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:12px}.home .header-contact{margin-left:auto}.personal-intro{padding-block:76px 72px}.personal-intro h1{font-size:clamp(2.55rem,12vw,3.5rem)}.personal-intro p:not(.intro-label){font-size:1rem}.personal-section{padding-block:34px 48px}.home .elsewhere{padding-block:34px 55px}.index-row{grid-template-columns:45px 1fr;gap:12px;padding-block:15px}.project-symbol{width:43px;height:43px;font-size:1.7rem}.row-meta{grid-column:2;white-space:normal;margin-top:-5px}.home .site-footer{gap:15px}.home .site-footer nav{justify-content:flex-start}.home .footer-brand{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.index-row{transition:none}}
