:root{color-scheme:light;--background:#f4efe8;--surface:rgba(255,250,244,0.8);--surface-strong:#fffaf4;--text:#201917;--muted:#6b5a52;--accent:#a04d2f;--accent-soft:#dfb28d;--border:rgba(64,39,22,0.12);--shadow:0 30px 80px rgba(76,44,20,0.12);font-family:Georgia,Times New Roman,serif;background:var(--background);color:var(--text)}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{min-height:100vh;background:radial-gradient(circle at top left,rgba(160,77,47,.18),transparent 32%),radial-gradient(circle at top right,rgba(223,178,141,.45),transparent 22%),linear-gradient(180deg,#fbf6ef,#efe4d7)}a{color:inherit;text-decoration:none;transition:color .16s ease,opacity .16s ease}a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}p{margin:0}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.03em}.portfolio-page{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:32px 0 72px}.not-found-page{display:grid;width:min(100% - 32px,980px);min-height:100vh;margin:0 auto;padding:32px 0;place-items:center}.not-found-card{display:grid;grid-template-columns:minmax(250px,.9fr) minmax(0,1.1fr);width:100%;overflow:hidden;border:1px solid var(--border);border-radius:36px;background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.not-found-art{position:relative;display:grid;min-height:390px;overflow:hidden;background:var(--text);color:#fff8f1;place-items:center}.not-found-art p{position:relative;z-index:1;font-size:clamp(5.5rem,15vw,9.5rem);font-weight:700;letter-spacing:-.1em;line-height:1}.not-found-orbit{position:absolute;border:1px solid rgba(255,248,241,.36);border-radius:50%}.not-found-orbit-one{width:280px;height:280px;transform:rotate(-26deg) scaleY(.42)}.not-found-orbit-two{width:430px;height:430px;transform:rotate(48deg) scaleY(.38)}.not-found-dot{position:absolute;width:16px;height:16px;border-radius:50%;background:var(--accent-soft);box-shadow:0 0 0 8px rgba(223,178,141,.12)}.not-found-dot-one{top:24%;right:20%}.not-found-dot-two{bottom:22%;left:18%;width:10px;height:10px}.not-found-copy{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(32px,6vw,72px)}.not-found-copy h1{max-width:8ch;margin-top:18px;font-size:clamp(2.8rem,5vw,4.4rem);line-height:.94}.not-found-copy>p:not(.eyebrow){max-width:31rem;margin-top:24px;font-family:Segoe UI,sans-serif;color:var(--muted);line-height:1.75}.not-found-copy .button{margin-top:32px}.hero-section{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);grid-gap:24px;gap:24px;align-items:stretch;padding-top:32px}.contact-banner,.hero-card,.hero-copy,.metrics-section,.project-card,.section-grid{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.hero-copy{padding:56px;border-radius:36px}.eyebrow,.hero-card-label,.project-kicker,.section-label{display:inline-block;font-family:Segoe UI,sans-serif;text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;color:var(--accent)}.hero-copy h1{margin-top:18px;font-size:clamp(2.7rem,6vw,4.6rem);line-height:.92;max-width:15ch}.lede{margin-top:24px;max-width:40rem;font-size:1.1rem;line-height:1.8;color:var(--muted)}.hero-actions{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;font-family:Segoe UI,sans-serif;font-weight:600;transition:transform .16s ease,background-color .16s ease,box-shadow .16s ease;position:relative;cursor:pointer;border:none}.button:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(160,77,47,.2)}.button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.button:active{transform:translateY(0)}.button-primary{background:var(--text);color:#fff8f1}.button-primary:hover{background:#0d0d0c}.button-secondary{background:rgba(255,255,255,.58);color:var(--text);border:1px solid var(--border)}.button-secondary:hover{background:rgba(255,255,255,.78);border-color:var(--accent)}.hero-card{padding:32px;border-radius:30px;align-self:stretch}.profile-image{display:block;width:calc(100% + 64px);height:auto;margin:-32px -32px 28px;filter:grayscale(100%);border-radius:30px 30px 0 0}.bullet-list,.hero-card ul{margin:18px 0 0;padding-left:20px;color:var(--muted);line-height:1.8}.metrics-section{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px;margin-top:24px;padding:28px 32px;border-radius:28px}.metrics-section div{display:grid;grid-gap:8px;gap:8px}.metrics-section span{font-size:clamp(2rem,4vw,3rem);font-weight:700;color:var(--accent)}.contact-banner,.metrics-section p,.project-card p,.section-body{font-family:Segoe UI,sans-serif}.section-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-gap:32px;gap:32px;margin-top:24px;padding:36px;border-radius:30px}.contact-banner h2,.section-grid h2,.section-heading h2{margin-top:12px;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.section-body{display:grid;grid-gap:18px;gap:18px;color:var(--muted);line-height:1.8}.work-section{margin-top:24px}.experience-section,.skills-section{margin-top:24px;padding:36px;border:1px solid var(--border);border-radius:30px;background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.experience-list{margin-top:28px;border-top:1px solid var(--border)}.experience-item{display:grid;grid-template-columns:150px minmax(0,1fr);grid-gap:28px;gap:28px;padding:24px 0;border-bottom:1px solid var(--border);transition:opacity .16s ease}.experience-item:hover{opacity:.85}.experience-detail,.experience-organisation,.experience-period{font-family:Segoe UI,sans-serif}.experience-period{color:var(--accent);font-size:.9rem;font-weight:600}.experience-item h3{font-size:1.45rem}.experience-organisation{margin-top:4px;color:var(--accent);font-weight:600}.experience-detail{max-width:42rem;margin-top:12px;color:var(--muted);line-height:1.7}.skills-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-gap:32px;gap:32px;align-items:start}.technology-list{display:flex;flex-wrap:wrap;gap:10px}.technology-list span{padding:10px 14px;border:1px solid rgba(160,77,47,.24);border-radius:999px;background:rgba(255,250,244,.72);font-family:Segoe UI,sans-serif;color:var(--text);transition:all .16s ease;cursor:default}.technology-list span:hover{background:rgba(160,77,47,.08);border-color:var(--accent);transform:translateY(-2px)}.section-heading{padding:0 4px 18px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.project-card{display:grid;grid-gap:16px;gap:16px;padding:28px;border-radius:28px;transition:all .2s ease}a.project-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(160,77,47,.15)}a.project-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.project-card h3{font-size:1.5rem}.project-card p{color:var(--muted);line-height:1.7}.project-card strong{font-family:Segoe UI,sans-serif;font-size:.95rem}.contact-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;padding:36px;border-radius:30px}.contact-details{display:grid;justify-items:end;grid-gap:10px;gap:10px;color:var(--muted)}.contact-details p{font-size:.9rem}.contact-details a{padding:2px 4px;border-radius:4px;transition:all .16s ease}.contact-details a:not(.button):hover{color:var(--accent);background:rgba(160,77,47,.05)}.contact-details a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:960px){.hero-section,.metrics-section,.not-found-card,.project-grid,.section-grid,.skills-section{grid-template-columns:1fr}.not-found-art{min-height:250px}.hero-copy{padding:40px 28px}}@media (max-width:640px){.portfolio-page{width:min(100% - 20px,1180px);padding:18px 0 48px}.not-found-page{width:min(100% - 20px,980px);padding:10px 0}.contact-banner,.experience-section,.hero-card,.hero-copy,.metrics-section,.not-found-card,.project-card,.section-grid,.skills-section{padding:24px;border-radius:24px}.not-found-card{padding:0}.not-found-art{min-height:210px}.not-found-copy{padding:32px 24px 36px}.profile-image{width:calc(100% + 48px);height:auto;margin:-24px -24px 24px;border-radius:24px 24px 0 0}.hero-copy h1{font-size:2.7rem}.contact-banner{align-items:flex-start;flex-direction:column}.contact-details{justify-items:start}.experience-item{grid-template-columns:1fr;gap:10px}}