@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-cyrillic-ext-400-normal.0~1-8pi.lyc0t.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-ext-400-normal.16hcyj33e0.-~.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-cyrillic-400-normal.0j5xz1mifvml7.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-400-normal.0r4-wm.jk.s_u.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-greek-400-normal.0np-onej.1cff.woff2)format("woff2"),url(../media/ibm-plex-sans-greek-400-normal.0ft1.2~cs0_ox.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-vietnamese-400-normal.174rm78~clk5h.woff2)format("woff2"),url(../media/ibm-plex-sans-vietnamese-400-normal.12f1knjau_n~p.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-latin-ext-400-normal.0xehc83oa1vav.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-ext-400-normal.0ft~mcscblu0h.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-sans-latin-400-normal.0l-vv37ssd90w.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-400-normal.0enq_aif7f~gw.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-cyrillic-ext-500-normal.0-iqkfvzzi1ds.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-ext-500-normal.17ohg5prvctci.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-cyrillic-500-normal.10-wysk8zad3n.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-500-normal.0vrnq0-92.etg.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-greek-500-normal.068z9q_e5zy2v.woff2)format("woff2"),url(../media/ibm-plex-sans-greek-500-normal.0tsr62mhfo-xv.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-vietnamese-500-normal.0-osuancacpy1.woff2)format("woff2"),url(../media/ibm-plex-sans-vietnamese-500-normal.0d5d~-kw2kik_.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-latin-ext-500-normal.0g-5vqutfk1rm.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-ext-500-normal.0msq053qydv5z.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-sans-latin-500-normal.0s-1qbqc6wgag.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-500-normal.0d5ky9cn7njc0.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-cyrillic-ext-600-normal.05chnchm.x.rt.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-ext-600-normal.0_6xxar4v5e95.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-cyrillic-600-normal.0f6p4xrac1bav.woff2)format("woff2"),url(../media/ibm-plex-sans-cyrillic-600-normal.05a2he~3rppxj.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-greek-600-normal.0e59ne2f6i63e.woff2)format("woff2"),url(../media/ibm-plex-sans-greek-600-normal.0iody3.z2b5i2.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-vietnamese-600-normal.10lhzj-adz6-d.woff2)format("woff2"),url(../media/ibm-plex-sans-vietnamese-600-normal.10yyvi93ppg_v.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-latin-ext-600-normal.034z4l~~wk.8i.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-ext-600-normal.003~t~7nkuv6..woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/ibm-plex-sans-latin-600-normal.0u.mw9ignqukb.woff2)format("woff2"),url(../media/ibm-plex-sans-latin-600-normal.0xfaxvw542opf.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-cyrillic-ext-400-normal.02-0t9z9jd-uq.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-ext-400-normal.0s.68cpy0amf-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-cyrillic-400-normal.06uziraombnwl.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-400-normal.0z0q6lyz-8zbk.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-vietnamese-400-normal.0~6zm384jrs6s.woff2)format("woff2"),url(../media/ibm-plex-mono-vietnamese-400-normal.0tvr4.esbc4ir.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-latin-ext-400-normal.0h2gyl-d.cdr1.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-ext-400-normal.07bv7l84.0p0~.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/ibm-plex-mono-latin-400-normal.15bn-bt6r468-.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-400-normal.0t~9uo.86bpiw.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-mono-cyrillic-ext-500-normal.0q3bhks_n_0su.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-ext-500-normal.17c5ew7w3a5ai.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-mono-cyrillic-500-normal.0pg7f66dx0dkx.woff2)format("woff2"),url(../media/ibm-plex-mono-cyrillic-500-normal.0g2p4r3r~_iny.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-mono-vietnamese-500-normal.08oyj9~0rbrq8.woff2)format("woff2"),url(../media/ibm-plex-mono-vietnamese-500-normal.0sdgzjd9~7ldm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-mono-latin-ext-500-normal.0foptdln-x42y.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-ext-500-normal.0ks84uvmhzz2f.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/ibm-plex-mono-latin-500-normal.0c7_spa399b67.woff2)format("woff2"),url(../media/ibm-plex-mono-latin-500-normal.0gg~2yiu7s.0a.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--bg:#fff;--surface:#fff;--surface-soft:#fff;--text:#20242f;--text-soft:#5d6776;--line:#d8dbe1}html{scroll-behavior:smooth;height:100%}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:IBM Plex Sans,sans-serif}*{box-sizing:border-box;margin:0;padding:0}::selection{background:#20242f1f}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit}.site-shell{min-height:100vh}.shell-container{width:min(1100px,100% - 2rem);margin:0 auto}.site-header{z-index:20;border-bottom:1px solid var(--line);background:#fffffff7;position:sticky;top:0}.header-inner,.footer-inner{justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem 0;display:flex}.brand-mark{align-items:center;gap:.85rem;display:inline-flex}.brand-kicker{border:1px solid var(--line);background:var(--surface);letter-spacing:.08em;border-radius:999px;justify-content:center;align-items:center;width:2.6rem;height:2.6rem;font-family:IBM Plex Mono,monospace;font-size:.88rem;display:inline-flex}.brand-copy{flex-direction:column;gap:.1rem;display:flex}.brand-copy strong{font-family:IBM Plex Sans,sans-serif;font-size:1rem;font-weight:600}.brand-copy span:last-child{color:var(--text-soft);font-size:.9rem}.site-nav,.footer-links{color:var(--text-soft);align-items:center;gap:1rem;display:flex}.hero-section{padding:3.5rem 0 2rem}.hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.85fr);align-items:start;gap:2rem;display:grid}.hero-chip,.section-eyebrow,.panel-label,.card-meta,.timeline-meta,.gallery-version{letter-spacing:.08em;text-transform:uppercase;color:var(--text-soft);font-family:IBM Plex Mono,monospace;font-size:.78rem;display:inline-block}.hero-copy h1{letter-spacing:-.03em;max-width:none;margin-top:.9rem;font-family:IBM Plex Sans,sans-serif;font-size:clamp(2.3rem,5vw,3.8rem);font-weight:600;line-height:1.02}.hero-copy p,.section-heading p,.detail-hero p,.card p,.timeline-item p,.footer-copy,.rich-text p,.rich-text li,.simple-summary-copy p,.gallery-caption p,.metric-label{color:var(--text-soft);line-height:1.7}.hero-copy p{max-width:58ch;margin-top:1rem;font-size:1.03rem}.hero-actions,.detail-actions,.contact-links,.card-actions,.section-link-row{flex-wrap:wrap;gap:.8rem;display:flex}.hero-actions{margin-top:1.5rem}.button-primary,.button-secondary,.detail-actions a,.contact-links a{border:1px solid var(--line);background:var(--surface);border-radius:.2rem;justify-content:center;align-items:center;min-height:2.8rem;padding:0 1rem;display:inline-flex}.button-primary{background:var(--text);color:#fff;border-color:var(--text)}.hero-proof{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin-top:1.5rem;display:grid}.hero-proof-item,.card,.timeline-item,.contact-band,.hero-panel,.feature-banner,.achievement-card,.gallery-card,.telemetry-orbit,.telemetry-card,.portrait-frame{border:1px solid var(--line);background:var(--surface);border-radius:.2rem}.hero-proof-item,.telemetry-card,.card,.timeline-item,.achievement-card,.gallery-caption,.contact-band,.feature-banner,.hero-panel{padding:1.25rem}.hero-proof-item{gap:.35rem;display:grid}.hero-proof-item span{letter-spacing:.06em;text-transform:uppercase;color:var(--text-soft);font-family:IBM Plex Mono,monospace;font-size:.74rem}.hero-panel{background:0 0;border:0;gap:1rem;padding:0;display:grid}.portrait-frame{min-height:330px;position:relative;overflow:hidden}.portrait-glow,.telemetry-ring,.project-accent-bar{display:none}.hero-portrait{object-fit:cover;object-position:center 18%;width:100%;height:100%;position:absolute;inset:0}.telemetry-orbit{padding:1.25rem}.telemetry-core{gap:.5rem;display:grid}.telemetry-core strong{font-family:IBM Plex Sans,sans-serif;font-size:1.1rem;font-weight:600;line-height:1.35}.hero-panel-stack{gap:.8rem;display:grid}.telemetry-card-accent{background:var(--surface)}.section-block,.page-section{padding:1rem 0 3.5rem}.section-heading{gap:.75rem;max-width:60rem;margin-bottom:1.75rem;display:grid}.section-heading h2{letter-spacing:-.02em;font-family:IBM Plex Sans,sans-serif;font-size:clamp(1.5rem,3vw,2.1rem);font-weight:600;line-height:1.15}.content-grid.two-column,.detail-grid,.skills-grid,.project-showcase-grid,.achievement-grid,.gallery-grid,.cards-grid,.feature-banner{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;display:grid}.narrative-card,.metric-card,.feature-banner-copy,.rich-text{gap:1rem;display:grid}.metric-card>div{border-bottom:1px solid var(--line);gap:.2rem;padding-bottom:1rem;display:grid}.metric-card>div:last-child{border-bottom:0;padding-bottom:0}.metric-value{letter-spacing:-.03em;font-family:IBM Plex Sans,sans-serif;font-size:2.1rem;font-weight:600}.skill-card ul,.sidebar-list,.rich-text ul,.rich-text ol{gap:.6rem;padding-left:1.1rem;display:grid}.skill-card li,.sidebar-list li,.rich-text li{line-height:1.65}.card-meta{flex-wrap:wrap;gap:.65rem;margin-bottom:.8rem;display:flex}.tag-list,.award-strip{flex-wrap:wrap;gap:.55rem;list-style:none;display:flex}.tag-list{margin-top:1rem}.tag-list li,.award-pill{border:1px solid var(--line);background:var(--surface-soft);border-radius:.3rem;align-items:center;min-height:1.9rem;padding:.3rem .7rem;font-size:.92rem;display:inline-flex}.card-actions,.section-link-row{margin-top:1rem;font-weight:600}.timeline-list{gap:1rem;display:grid}.timeline-item{grid-template-columns:220px 1fr;gap:1.25rem;display:grid}.timeline-item h3{margin-bottom:.55rem;font-family:IBM Plex Sans,sans-serif;font-size:1.25rem;font-weight:600}.timeline-item h3 span{color:var(--text-soft);font-weight:500}.detail-layout{padding-top:3rem}.back-link{color:var(--text-soft);margin-bottom:1rem;display:inline-flex}.detail-hero{gap:1rem;margin-bottom:1.5rem;display:grid}.detail-hero h1{letter-spacing:-.03em;max-width:12ch;font-family:IBM Plex Sans,sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:600}.detail-sidebar{background:var(--surface);align-self:start;gap:1.25rem;display:grid;position:sticky;top:6rem}.detail-sidebar strong{line-height:1.5;display:block}.detail-article{gap:1.25rem;display:grid}.project-gallery{gap:1rem;display:grid}.gallery-heading{gap:.35rem;display:grid}.gallery-heading h2{font-family:IBM Plex Sans,sans-serif;font-size:1.6rem;font-weight:600}.gallery-card{grid-template-rows:auto 1fr;padding:0;display:grid;overflow:hidden}.gallery-image{aspect-ratio:5/4;object-fit:var(--gallery-fit,contain);object-position:var(--gallery-position,center);background:var(--surface);width:100%;padding:.75rem;display:block}.gallery-placeholder{text-align:center;background:var(--surface-soft);min-height:280px;color:var(--text-soft);place-items:center;gap:.55rem;padding:1rem;display:grid}.gallery-placeholder code,.rich-text code{background:var(--surface-soft);border-radius:.25rem;padding:.16rem .4rem;font-family:IBM Plex Mono,monospace}.gallery-caption{border-top:1px solid var(--line);gap:.35rem;display:grid}.gallery-caption strong{font-family:IBM Plex Sans,sans-serif;font-size:1rem;font-weight:600}.detail-highlights{background:var(--surface-soft)}.rich-text h2,.rich-text h3{margin-top:.7rem}.rich-text h2{font-family:IBM Plex Sans,sans-serif;font-size:1.8rem;font-weight:600}.rich-text h3{font-family:IBM Plex Sans,sans-serif;font-size:1.35rem;font-weight:600}.site-footer{border-top:1px solid var(--line);padding:1rem 0 2rem}.footer-title{margin-bottom:.35rem;font-family:IBM Plex Sans,sans-serif;font-size:1.1rem;font-weight:600}.journal-layout,.journal-entry-layout,.admin-layout{gap:1.5rem;display:grid}.journal-project-card,.admin-panel{gap:1rem;display:grid}.journal-project-cover,.journal-timeline-thumb,.journal-image,.journal-video,.admin-media-preview img,.admin-media-preview video{border:1px solid var(--line);object-fit:cover;background:var(--surface);border-radius:.2rem;width:100%;display:block}.journal-project-cover{aspect-ratio:16/9}.journal-timeline{gap:1rem;padding-left:1.5rem;display:grid;position:relative}.journal-timeline:before{content:"";background:var(--line);width:1px;position:absolute;top:.4rem;bottom:.4rem;left:.35rem}.journal-timeline-item{position:relative}.journal-timeline-marker{border:1px solid var(--line);background:var(--surface);border-radius:999px;width:.7rem;height:.7rem;position:absolute;top:1.4rem;left:-1.5rem}.journal-timeline-content{gap:.75rem;display:grid}.journal-timeline-content h2{font-size:1.25rem;font-weight:600}.journal-timeline-thumb{aspect-ratio:16/10;max-width:360px}.journal-media-stack{gap:1rem;display:grid}.journal-media-card{gap:.65rem;display:grid}.journal-media-card figcaption{color:var(--text-soft);line-height:1.65}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.admin-column,.admin-entry-list,.admin-media-fields,.admin-media-list{gap:1rem;display:grid}.admin-field{gap:.45rem;display:grid}.admin-field span,.admin-checkbox span,.admin-media-header h3{letter-spacing:.08em;text-transform:uppercase;color:var(--text-soft);font-family:IBM Plex Mono,monospace;font-size:.78rem}.admin-field input,.admin-field textarea,.admin-field select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:2.8rem;color:var(--text);border-radius:.2rem;padding:.75rem .85rem}.admin-field textarea{resize:vertical;min-height:10rem}.admin-checkbox{align-items:center;gap:.6rem;display:inline-flex}.admin-entry-button{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:.2rem;gap:.25rem;padding:.9rem 1rem;display:grid}.admin-entry-button strong{font-size:1rem;font-weight:600}.admin-entry-button span{color:var(--text-soft)}.admin-media-header,.admin-actions,.admin-media-actions{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.admin-upload-button{cursor:pointer;position:relative;overflow:hidden}.admin-upload-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.admin-media-card{border:1px solid var(--line);border-radius:.2rem;grid-template-columns:minmax(220px,280px) 1fr;gap:1rem;padding:1rem;display:grid}.admin-media-preview img,.admin-media-preview video{aspect-ratio:16/10}@media (max-width:960px){.hero-grid,.content-grid.two-column,.detail-grid,.skills-grid,.project-showcase-grid,.achievement-grid,.gallery-grid,.cards-grid,.feature-banner,.timeline-item,.admin-grid,.admin-media-card{grid-template-columns:1fr}.detail-sidebar{position:static}.hero-copy h1,.detail-hero h1{max-width:100%}.hero-proof{grid-template-columns:1fr}}@media (max-width:720px){.header-inner,.footer-inner{flex-direction:column;align-items:flex-start}.site-nav{flex-wrap:wrap;width:100%}.site-nav a{border:1px solid var(--line);background:var(--surface);border-radius:.3rem;min-height:2.2rem;padding:.4rem .7rem;display:inline-flex}.hero-section{padding-top:2.5rem}.hero-copy h1{font-size:clamp(2.5rem,12vw,4rem);line-height:.98}.portrait-frame{min-height:300px}.section-block,.page-section{padding-bottom:3rem}.journal-timeline-thumb{max-width:100%}}
