:root{--paper:#f6f3ec;--ink:#263d33;--muted:#59645d;--line:#d5dbce;--sage:#e8eddf;--white:#fffdf8;--accent:#365f49;--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.7}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:var(--accent)}p{margin:0 0 1rem}h1,h2,h3{line-height:1.24}h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.035em}h2{font-size:clamp(1.8rem,3vw,2.7rem);margin:0}h3{font-size:1.08rem;margin:0 0 .6rem;font-weight:650}img{max-width:100%}.container{width:min(var(--max),calc(100% - 3rem));margin:auto}
.skip-link{position:fixed;top:-100px;left:1rem;background:var(--ink);color:white;padding:.7rem 1rem;z-index:100}.skip-link:focus{top:1rem}a:focus-visible,summary:focus-visible{outline:3px solid #865b3d;outline-offset:5px;border-radius:3px}
.nav{position:sticky;top:0;z-index:20;background:rgba(246,243,236,.97);border-bottom:1px solid var(--line)}.nav-inner{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.1rem 0}.brand{display:grid;flex-shrink:0}.brand strong{font-size:1.08rem;line-height:1.3}.brand-main{font-size:.73rem;color:var(--muted)}.nav-links{display:flex;gap:1.25rem;align-items:center}.nav-links a{font-size:.84rem;text-decoration:none;white-space:nowrap}.nav-links a:last-child{border-bottom:1px solid var(--ink)}
.hero{padding:4.25rem 0 2.5rem}.hero-grid{display:grid;grid-template-columns:1.3fr .85fr;gap:4.5rem;align-items:center}.hero-main{order:0}.hero-side{order:1}.eyebrow{display:flex;align-items:center;gap:.6rem;color:var(--accent);font-size:.77rem;margin:0 0 1.8rem}.eyebrow-dot{width:7px;height:7px;background:var(--accent);border-radius:50%;flex-shrink:0}.hero-name{font-size:.77rem;color:var(--muted);letter-spacing:.07em;text-transform:uppercase;margin-bottom:1rem}h1{font-size:clamp(2.9rem,5.4vw,4.8rem);margin:0;line-height:1.05}h1 em{font-weight:400;color:#4b674d}.subtitle{font-size:1.03rem;max-width:49ch;margin:1.6rem 0 1.2rem;color:var(--muted)}.hero-credential{font-size:.82rem;color:var(--muted);line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.6rem 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;text-decoration:none;border:1px solid #a6b3a5;border-radius:6px;padding:.8rem 1.1rem;font-size:.85rem;font-weight:600;transition:background .2s}.btn:hover{background:var(--sage)}.btn-primary{background:var(--ink);color:var(--white);border-color:var(--ink)}.btn-primary:hover{background:var(--accent);color:white}.hero-bottom{display:grid;gap:.4rem;font-size:.74rem;color:var(--muted);margin-top:1.5rem}.profile-card{margin:0}.profile-photo{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 58%;border-radius:160px 160px 14px 14px;border:1px solid #b9c1b2;box-shadow:14px 14px 0 #e2e7d8}.profile-caption{font-size:.88rem;margin:1.6rem 0 0 .5rem}.profile-caption span{display:block;font-size:.73rem;color:var(--muted);margin-top:.15rem}
section{padding-top:4.5rem;scroll-margin-top:105px}.section-head{border-top:1px solid var(--line);padding-top:1.5rem;margin-bottom:1.7rem;display:flex;justify-content:space-between;gap:1.5rem;align-items:end}.section-head p{color:var(--muted);max-width:55ch}.about-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:4rem}.section-card{padding:1.5rem;background:var(--white);border:1px solid var(--line);border-radius:10px}.about-grid .section-card{padding:0;border:0;background:none}.lead{font-size:1.1rem}.muted{color:var(--muted)}.checklist{padding:0;list-style:none;display:grid;gap:1rem;margin:1rem 0}.checklist li{display:flex;gap:.9rem;font-size:.91rem;color:var(--muted)}.checklist strong{color:var(--ink)}.check{color:var(--accent);font-size:1.1rem}.project-grid,.strength-grid,.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem}.project-card{padding:1.65rem;border:1px solid var(--line);border-radius:10px;background:var(--white);min-width:0}.project-card .project-type{display:block;font-size:.69rem;letter-spacing:.08em;text-transform:uppercase;color:#53684f;margin-bottom:.75rem}.project-card h3{font-size:1.2rem;line-height:1.35}.project-card p{font-size:.91rem;color:var(--muted)}.project-card ul,.timeline-item ul{margin:1rem 0;padding-left:1.15rem;color:var(--muted);font-size:.88rem}.project-card li,.timeline-item li{margin:.5rem 0}.skills-block{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}.pill{border:1px solid #d9dfd1;background:#eef1e6;color:#41533f;font-size:.72rem;border-radius:4px;padding:.2rem .5rem}.project-links{margin:1rem 0 0!important;display:flex;flex-wrap:wrap;gap:.2rem .5rem;line-height:1.8}.project-links a{font-size:.8rem;color:#315c44}.project-note{font-size:.77rem!important;margin:1.1rem 0 0!important;padding-top:1rem;border-top:1px solid var(--line)}.catalogue{margin-top:1.3rem}.catalogue>summary{padding:1.1rem 1.3rem;border:1px solid #aab79f;border-radius:8px;background:var(--sage);cursor:pointer;font-size:.95rem;font-weight:600}.catalogue>summary span{font-size:.77rem;font-weight:400;margin-left:1rem;color:var(--muted)}.catalogue[open]>summary{margin-bottom:1.1rem}.sample-preview{display:block;border:1px solid var(--line);border-radius:6px;overflow:hidden;margin:0 0 1.3rem;background:white}.sample-preview img{display:block;width:100%;height:220px;object-fit:cover;object-position:50% 8%}.timeline{display:grid;gap:0}.timeline-item{border-top:1px solid var(--line);padding:1.8rem 0}.timeline-item:first-child{border-top:0;padding-top:0}.timeline-top{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.role{font-size:1.08rem;font-weight:650}.meta,.date{color:var(--muted);font-size:.8rem}.date{white-space:nowrap}.timeline-item>p{font-size:.94rem;max-width:84ch}.timeline-item ul{max-width:94ch}.strength-card{padding:1.1rem;background:var(--paper);border-radius:6px}.strength-card p{font-size:.87rem;color:var(--muted);margin:0}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:1.5rem}.contact-card{border-top:2px solid #a6b399;padding-top:1.3rem;min-width:0}.contact-card p{color:var(--muted);font-size:.89rem}.contact-card a{overflow-wrap:anywhere;color:#315c44}#contact{padding-bottom:3rem!important}.full-review{font-size:.82rem;margin:.75rem 0}.full-review summary{cursor:pointer;color:var(--accent);text-decoration:underline;text-underline-offset:3px}.full-review p{margin-top:1rem}#testimonials .project-card{background:var(--sage)}#testimonials .project-card h3{font-size:.97rem}#testimonials .project-card>p:first-of-type{font-family:Georgia,"Times New Roman",serif;font-size:1.08rem;line-height:1.65;color:var(--ink)}footer{text-align:center;padding:2.3rem 1.5rem;border-top:1px solid var(--line);font-size:.74rem;color:var(--muted)}
@media(min-width:1400px){.hero{padding-top:5rem}}@media(max-width:1000px){.nav-inner{align-items:flex-start;flex-direction:column;gap:.7rem;padding:.8rem 0}.nav-links{width:100%;overflow-x:auto;padding:.25rem 0 .35rem;gap:1.2rem}.hero-grid{gap:2.5rem;grid-template-columns:1.2fr .85fr}.about-grid{gap:2rem}section{scroll-margin-top:130px}}
@media(max-width:680px){.container{width:calc(100% - 2rem)}.hero{padding-top:2rem}.hero-grid{grid-template-columns:1fr;gap:2.2rem}.hero-side{max-width:360px;width:calc(100% - 14px);margin:auto}.profile-photo{max-height:440px}.hero-name{font-size:.66rem}.eyebrow{font-size:.7rem;align-items:flex-start;margin-bottom:1.4rem}.eyebrow-dot{margin-top:.55rem}.hero-actions{gap:.6rem}.btn{padding:.75rem .9rem}.hero-bottom{font-size:.72rem}h1{font-size:clamp(2.8rem,12vw,4.2rem)}.about-grid,.project-grid,.strength-grid,.two-col,.contact-grid{grid-template-columns:1fr}.about-grid{gap:1.5rem}.section-head{padding-top:1.2rem;margin-bottom:1.3rem}section{padding-top:3rem}.project-card{padding:1.3rem}.timeline-top{flex-direction:column;gap:.35rem}.catalogue>summary span{display:block;margin:.4rem 0 0 1rem}.sample-preview img{height:190px}.contact-grid{gap:1.2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* Original project evidence */
.work-evidence{margin:0 0 1.1rem;border:1px solid var(--border,#ddd);border-radius:10px;overflow:hidden;background:#f1eee8}.work-evidence img{display:block;width:100%;height:260px;object-fit:contain;background:#eeeae3}.work-evidence figcaption{font-size:.77rem;padding:.6rem .8rem;line-height:1.5;color:#5c5d57}.evidence-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.evidence-gallery img{height:440px}.evidence-page{max-width:1100px;margin:auto;padding:2rem 1.2rem}.evidence-page table{border-collapse:collapse;width:100%;font-size:.9rem}.evidence-page td,.evidence-page th{padding:.75rem;border-bottom:1px solid #ddd;text-align:left}.table-scroll{overflow-x:auto}.evidence-page h1{font-size:clamp(2rem,5vw,3.5rem)}

/* Original student-review evidence */
.review-screenshots{display:grid;gap:1.4rem;margin-block:1.5rem}.review-original{margin:0;border:1px solid var(--border,#ddd);border-radius:10px;overflow:hidden;background:#fff}.review-original img{display:block;width:100%;height:auto}.review-original figcaption{padding:.75rem;font-size:.85rem}.student-reviews .project-grid{margin-block:1.2rem}.project-card blockquote{margin:0;line-height:1.65}.review-heading{font-weight:600}.student-reviews summary span{display:block}
