:root{color-scheme:light;--ink:#162f30;--paper:#f4f5f1;--lime:#d5ed9b;--muted:#546664}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #98ba55;outline-offset:7px}.skip{position:absolute;top:-100px;z-index:10;background:white;padding:15px}.skip:focus{top:10px}header{height:108px;padding:0 6%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:15px}.monogram{font-family:Georgia,serif;font-size:48px;font-weight:bold;letter-spacing:-5px;line-height:1;padding-right:4px}.brand>span:last-child{font-size:12px;line-height:1.5;letter-spacing:2px;font-weight:700}nav{display:flex;gap:40px;font-size:14px}nav a{padding:10px 0;border-bottom:1px solid transparent}nav a:hover{border-color:var(--ink)}nav span{margin-left:15px}.hero{position:relative;min-height:720px;min-height:min(850px,calc(100svh - 108px));color:white;background:#213b3b;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between}.hero-image,.shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.shade{z-index:-1;background:linear-gradient(90deg,rgba(8,28,29,.75),rgba(8,28,29,.25) 65%,rgba(8,28,29,.1)),linear-gradient(0deg,rgba(8,28,29,.55),transparent 30%)}.hero-copy{padding:64px 8% 45px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.6px;line-height:1.5;margin:0 0 30px}h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(64px,7.5vw,112px);line-height:.98;letter-spacing:-3.8px;margin:0 0 25px}h1 em{color:var(--lime);font-weight:400} .lede{font-size:17px;line-height:1.6;color:#ebeeeb;margin-bottom:28px}.button{background:var(--lime);color:var(--ink);display:inline-flex;align-items:center;gap:35px;padding:18px 22px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#e7ffc0;transform:translateY(-2px)}.hero-bottom{margin:0 6%;padding:24px 0;border-top:1px solid #ffffff40;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:1.5px;gap:20px}.hero-bottom a{font-size:14px;letter-spacing:0}.hero-bottom a span{margin-left:20px}.about{padding:108px 8%;display:grid;grid-template-columns:1fr 1fr;gap:10%;border-bottom:1px solid #cbd3ce}h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(38px,4vw,58px);line-height:1.1;letter-spacing:-1.5px;margin:0}h2 em{font-weight:400;color:#637d65}.about-copy{padding-top:38px;max-width:520px}.about-copy p,.links-intro>p:last-child{font-size:17px;line-height:1.8;color:var(--muted);margin:0 0 20px}.signature{display:inline-block;font-family:Georgia,serif;font-style:italic;font-size:30px;margin-top:8px}.elsewhere{padding:100px 8%;display:grid;grid-template-columns:1fr 1.25fr;gap:10%;}.links-intro>p:last-child{margin-top:28px;max-width:330px}.link-list{border-top:1px solid #bcc9c2}.social{padding:27px 0;display:flex;align-items:center;gap:24px;border-bottom:1px solid #bcc9c2;transition:padding .2s,background .2s}.social:hover{padding-left:14px;padding-right:14px;background:#e9eee5}.number{font-size:12px;color:#63776f}.social strong{font-size:23px;display:block;font-family:Georgia,serif;font-weight:400}.social small{display:block;font-size:14px;color:var(--muted);margin-top:9px;line-height:1.4}.arrow{margin-left:auto;font-size:25px}.featured strong{font-weight:bold}footer{background:var(--ink);color:#e8eee4;padding:45px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p{font-family:Georgia,serif;font-style:italic;font-size:18px}.copyright{font-size:12px;color:#b9c8c0}.photo-credit{background:var(--ink);color:#b9c8c0;font-size:12px;text-align:right;padding:0 6% 18px}.photo-credit a{text-decoration:underline}@media(min-width:1600px){header,.about,.elsewhere,footer{padding-left:max(8%,calc((100vw - 1400px)/2));padding-right:max(8%,calc((100vw - 1400px)/2))}}@media(max-width:700px){header{height:88px;padding:0 6%}.monogram{font-size:42px}.brand>span:last-child{font-size:10px;letter-spacing:1.3px}nav{gap:16px}nav a:first-child{display:none}nav a{font-size:13px}nav span{margin-left:6px}.hero{min-height:710px;min-height:calc(100svh - 88px)}.hero-copy{padding:58px 7% 50px}h1{font-size:clamp(60px,12.4vw,85px);letter-spacing:-2.6px;line-height:1.03}.hero-image{object-position:60% center}.hero .eyebrow{font-size:11px;letter-spacing:2px}.hero-bottom{padding:22px 0}.hero-bottom>span{font-size:10px;letter-spacing:.8px}.hero-bottom a{font-size:12px}.hero-bottom a span{margin-left:5px}.about,.elsewhere{padding:65px 7%;grid-template-columns:1fr;gap:25px}.about-copy{padding-top:0}.eyebrow{margin-bottom:24px}.elsewhere{gap:30px}h2{font-size:43px}.links-intro>p:last-child{max-width:none}.social{gap:18px}footer{flex-wrap:wrap;padding:34px 7%;gap:18px}footer p{width:100%;order:3;margin:0}.copyright{margin-left:auto;font-size:11px}.photo-credit{text-align:left;padding:0 7% 20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Frame Stephen's portrait photograph without changing its pixels. */
.hero{background:#162f30;min-height:740px}
.hero-image{left:auto;right:0;width:64%;object-position:50% 64%}
.shade{background:linear-gradient(90deg,#162f30 0%,#162f30 30%,rgba(22,47,48,.92) 38%,rgba(22,47,48,.18) 60%,transparent 75%),linear-gradient(0deg,rgba(8,28,29,.65),transparent 18%)}
.hero-copy{padding-right:0;width:56%;position:relative}
h1{font-size:clamp(64px,7vw,108px)}
@media(max-width:700px){
 .hero{min-height:0;display:block}
 .hero-image{position:relative;inset:auto;width:100%;height:auto;display:block;object-fit:contain;z-index:-2}
 .shade{height:40%;background:linear-gradient(180deg,rgba(8,28,29,.4),transparent);pointer-events:none}
 .hero-copy{display:contents}
 .hero-heading{position:absolute;top:22px;left:7%;right:7%}
 .hero .eyebrow{font-size:12px;letter-spacing:1.2px;margin:0 0 12px}
 h1{font-size:clamp(32px,8.5vw,58px);letter-spacing:-1px;line-height:1.02;margin:0;text-shadow:0 2px 18px rgba(0,0,0,.2)}
 .hero-actions{padding:26px 7% 28px}
 .lede{font-size:16px;margin:0 0 20px}
 .hero-bottom{flex-wrap:wrap;gap:16px}
 .hero-bottom>span{font-size:12px}
 .hero-bottom a{font-size:14px}
}
