:root{--ink:#172029;--muted:#54616d;--paper:#fafbfc;--line:#d8dfe5;--accent:#175d8b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-underline-offset:6px}a:focus-visible{outline:3px solid #1b88ba;outline-offset:6px}.skip{position:absolute;top:-100px;left:10px}.skip:focus{top:10px;background:white;z-index:5}header,main,footer{max-width:1440px;margin:auto}header{padding:34px 6%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.wordmark{text-decoration:none;font-weight:700;font-size:21px;letter-spacing:-.5px}.wordmark span{display:block;font-size:12px;font-weight:400;letter-spacing:1.1px;text-transform:uppercase;color:var(--muted);margin-top:3px}nav{display:flex;gap:32px;font-size:15px}nav a{text-decoration:none}nav a:hover{color:var(--accent)}.hero{padding:76px 6% 35px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:2px;display:block;font-weight:700;color:var(--muted)}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,7.7vw,106px);font-weight:400;line-height:1.08;letter-spacing:-3px;margin:28px 0 35px}h1 em{font-weight:400;color:var(--accent)}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;max-width:1000px}.intro p{margin:0 0 20px;max-width:560px}.intro p+ p{color:var(--muted)}.textlink{font-size:15px;color:var(--accent);display:inline-block;margin-top:12px}.hero-foot{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:60px;padding-top:22px;font-size:14px;color:var(--muted)}.folio{font-size:12px;letter-spacing:.5px}.section{padding:88px 6%;border-top:1px solid var(--line)}.section-top{display:grid;grid-template-columns:1fr 2.2fr;gap:20px}h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4vw,54px);font-weight:400;letter-spacing:-1.2px;line-height:1.18;margin:0 0 28px}.section-intro{margin:0 0 44px 31.25%;max-width:620px;color:var(--muted)}.companies{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.companies article{border-top:2px solid var(--ink);padding-top:17px}.company-no{font-size:12px;color:var(--muted);margin-bottom:30px}h3{font-size:24px;line-height:1.25;letter-spacing:-.6px;margin:0 0 18px;font-weight:500}.companies h3{min-height:60px}.role{font-size:14px;color:var(--accent);margin:0 0 18px}.companies article>p:not(.role){color:var(--muted);font-size:16px;min-height:110px}.companies a{font-size:14px}.journey{background:#eef2f5}.timeline{margin-left:31.25%}.timeline article{display:grid;grid-template-columns:110px 1fr;gap:20px;border-top:1px solid #cad3db;padding:29px 0}.when{font-size:14px;color:var(--accent);font-weight:700;padding-top:4px}.timeline p{margin:0;color:var(--muted);font-size:16px;max-width:660px}.personal{background:var(--ink);color:#f5f8fa;padding:88px 6%}.personal .eyebrow{color:#b4c2ce}.personal-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;margin-top:40px}.personal-grid article{border-top:1px solid #4a5865;padding-top:22px}.small-title{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:#a9bfce;display:block;margin-bottom:25px}.personal h3{font-family:Georgia,serif;font-size:30px;font-weight:400;line-height:1.2}.personal-grid p{color:#c0ccd5;font-size:16px}.home{display:grid;grid-template-columns:1fr 2.2fr;gap:20px;border-top:1px solid #4a5865;padding-top:35px;margin-top:60px}.home p{font-family:Georgia,serif;font-size:34px;line-height:1.35;margin:0}.home p span{font-family:Arial,sans-serif;font-size:16px;color:#c0ccd5;display:inline-block;margin-top:14px}.closing{padding:80px 6%}.closing h2{margin-top:25px}.linkedin{display:inline-block;border:1px solid var(--ink);padding:13px 24px;text-decoration:none;font-size:15px}.linkedin:hover{background:var(--ink);color:white}footer{border-top:1px solid var(--line);padding:24px 6%;display:flex;justify-content:space-between;gap:20px;font-size:13px;color:var(--muted)}@media(max-width:760px){header{padding:22px 6%;align-items:flex-start;gap:20px}.wordmark{font-size:18px}.wordmark span{font-size:10px}nav{gap:15px;font-size:14px;flex-wrap:wrap;justify-content:flex-end}.hero{padding-top:50px}h1{letter-spacing:-1.7px}.intro{grid-template-columns:1fr;gap:0}.hero-foot{margin-top:40px}.folio{display:none}.section,.personal{padding-top:55px;padding-bottom:55px}.section-top{grid-template-columns:1fr;gap:20px}.section-intro,.timeline{margin-left:0}.companies,.personal-grid{grid-template-columns:1fr;gap:38px}.companies h3{min-height:0}.companies article>p:not(.role){min-height:0}.company-no{margin-bottom:20px}.timeline article{grid-template-columns:78px 1fr;gap:16px}.timeline h3{font-size:21px}.home{grid-template-columns:1fr;gap:20px}.personal-grid{margin-top:20px}.closing{padding-top:55px;padding-bottom:55px}footer{flex-wrap:wrap}.home p{font-size:29px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Personal photography */
figure{margin:0}img{display:block;max-width:100%;height:auto}.hero-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:48px;align-items:center}.hero h1{font-size:clamp(46px,5.7vw,78px);letter-spacing:-2px}.hero .intro{display:block;max-width:590px}.portrait img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:58% 50%}.office{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:50px;padding-top:65px}.office img{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:40% 75%}.office figcaption{font-size:12px;line-height:1.65;color:var(--muted);margin-top:10px}.office h3{font-family:Georgia,serif;font-size:34px;margin-top:20px}.office-copy p{font-size:16px;color:var(--muted)}.personal-grid article{border:0;padding:0}.interest-photo{width:100%;aspect-ratio:4/3;object-fit:cover;margin-bottom:25px}.camp-photo{object-position:65% 50%}.bike-photo{object-position:65% 20%}.italy-photo{object-position:40% 38%}.home{grid-template-columns:1.3fr 1fr;align-items:center;gap:45px}.home img{width:100%;aspect-ratio:4/3;object-fit:cover}.home-copy .eyebrow{margin-bottom:20px}.home p span{line-height:1.65}@media(max-width:900px){.hero-layout{gap:28px}.hero h1{font-size:52px}.office{gap:30px}.home{gap:30px}}@media(max-width:760px){.hero-layout,.office,.home{grid-template-columns:1fr}.hero h1{font-size:clamp(44px,9vw,62px)}.portrait{margin-top:10px}.portrait img{aspect-ratio:4/3;object-position:58% 50%}.office{padding-top:40px;gap:25px}.office-copy{grid-row:1}.office h3{margin-bottom:15px}.personal-grid{gap:38px}.interest-photo{aspect-ratio:4/3}.home{gap:28px}.home img{aspect-ratio:4/3}}

.portrait{overflow:hidden}.portrait img{transform:scale(1.5);transform-origin:50% 0}.personal-grid{row-gap:55px}.cars-photo{object-position:50% 55%}.ski-photo{object-position:50% 35%}@media(max-width:760px){.personal-grid{row-gap:38px}}

.family{display:grid;grid-template-columns:1.3fr 1fr;gap:45px;align-items:center;margin:40px 0 65px}.family img{width:100%;height:auto}.family-copy .eyebrow{margin-bottom:20px}.family-copy p{font-size:16px;color:#c0ccd5}@media(max-width:760px){.family{grid-template-columns:1fr;gap:28px;margin:25px 0 45px}}

.motto{border-top:1px solid #4a5865;border-bottom:1px solid #4a5865;padding:28px 0;margin:20px 0 40px;display:flex;align-items:center;justify-content:space-between;gap:24px}.motto blockquote{margin:0;font-family:Georgia,serif;font-style:italic;font-size:clamp(36px,5vw,58px);line-height:1.2;letter-spacing:-1px}@media(max-width:760px){.motto{align-items:flex-start;flex-direction:column;gap:15px}}
