:root{--ink:#0b1728;--muted:#536176;--line:#dce4ed;--paper:#fff;--wash:#f5f8fb;--blue:#1261a0;--cyan:#27b0c8;--shadow:0 16px 45px rgba(17,45,76,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--wash);color:var(--ink);font:16px/1.65 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}a{color:var(--blue);text-underline-offset:3px}button{font:inherit}.container{width:min(1120px,calc(100% - 2rem));margin-inline:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:20;background:#fff;padding:.75rem 1rem}.hero{background:linear-gradient(120deg,#071523,#0d2b47);color:#fff;padding:4.75rem 0}.hero-grid{display:grid;gap:2.5rem}.kicker,.section-heading>p,.section-heading div>p{margin:0 0 .35rem;color:var(--cyan);font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}h1{margin:0;font-size:clamp(3rem,8vw,5.6rem);line-height:1;letter-spacing:-.055em}.tagline{max-width:760px;margin:1.25rem 0 0;color:#d5e3ef;font-size:clamp(1.05rem,2.4vw,1.35rem)}.contact{display:flex;flex-direction:column;gap:.55rem;font-style:normal;color:#d5e3ef}.contact a{color:inherit}.section-nav{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line);background:rgba(255,255,255,.94);backdrop-filter:blur(12px)}.nav-links{display:flex;gap:1.3rem;overflow:auto;padding:.8rem 0}.nav-links a{color:var(--ink);font-size:.88rem;font-weight:750;text-decoration:none;white-space:nowrap}.resume{padding:3.5rem 0 5rem}.section{scroll-margin-top:5rem;padding:2.7rem 0;border-bottom:1px solid var(--line)}.section:last-child{border:0}.section-heading{margin-bottom:1.25rem}.section-heading h2{margin:0;font-size:clamp(1.75rem,4vw,2.4rem);line-height:1.15}.heading-row{display:flex;align-items:end;justify-content:space-between;gap:1rem}.summary{max-width:920px;margin:0;font-size:1.08rem}.skill-groups,.project-grid{display:grid;gap:1rem}.skill-groups>div,.project-card{border:1px solid var(--line);border-radius:14px;background:var(--paper);padding:1.25rem;box-shadow:var(--shadow)}.skill-groups h3,.project-card h3{margin:0 0 .35rem}.skill-groups p,.project-card p{margin:.25rem 0}.editing-note{margin:1rem 0 0;padding:1rem;border-left:4px solid var(--cyan);background:#eaf8fb}.accordion{display:grid;gap:.8rem}.entry{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}.entry h3{margin:0}.entry-trigger{display:flex;width:100%;align-items:center;justify-content:space-between;gap:1rem;border:0;background:#fff;padding:1.25rem;text-align:left;cursor:pointer}.entry-trigger:hover{background:#f8fbfd}.entry-trigger:focus-visible,.text-button:focus-visible,#print-resume:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}.entry-trigger strong,.entry-trigger small{display:block}.entry-trigger strong{font-size:1.05rem}.entry-trigger small{margin-top:.2rem;color:var(--muted);font-weight:500}.indicator{color:var(--blue);font-size:1.6rem;transition:transform .2s}.entry-trigger[aria-expanded=true] .indicator{transform:rotate(45deg)}.entry-panel{padding:0 1.25rem 1.25rem;border-top:1px solid var(--line)}.entry-panel ul{margin:1rem 0 0;padding-left:1.25rem}.entry-panel li+li{margin-top:.65rem}.entry-panel p{margin:1rem 0 0}.text-button,#print-resume{border:1px solid var(--blue);border-radius:999px;background:#fff;color:var(--blue);padding:.5rem .85rem;font-weight:750;cursor:pointer}.project-card .stack{color:var(--blue);font-size:.9rem;font-weight:750}.project-card a{display:inline-block;margin-top:.8rem;font-weight:750}.credential-list{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}.credential-list li{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding:.8rem 0}.credential-list span{color:var(--muted);text-align:right}footer{background:var(--ink);color:#d5e3ef}.footer-content{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem 0}#print-resume{border-color:#8fd3df;background:transparent;color:#fff}@media(min-width:760px){.hero-grid{grid-template-columns:1.6fr .7fr;align-items:end}.contact{justify-self:end}.skill-groups{grid-template-columns:repeat(2,1fr)}.project-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.heading-row,.credential-list li,.footer-content{align-items:flex-start;flex-direction:column}.credential-list span{text-align:left}.text-button{display:none}}@media print{.skip-link,.section-nav,.text-button,#print-resume,.editing-note{display:none!important}body{background:#fff;font-size:10.5pt}.hero{padding:1.2rem 0;background:#fff;color:#000}.tagline,.contact,.contact a{color:#333}.resume{padding:.5rem 0}.section{padding:1rem 0;break-inside:avoid}.entry,.skill-groups>div,.project-card{box-shadow:none}.entry-panel[hidden]{display:block}.entry-trigger{padding:.6rem}.entry-panel{padding:0 .6rem .6rem}.indicator{display:none}footer{background:#fff;color:#333}.footer-content{padding:.5rem 0}}
