*{box-sizing:border-box}html,body{margin:0;background:#0b1015;color:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif}body{overflow-x:hidden}.hero{min-height:100svh;position:relative;background:url('assets/ocean-lava.jpg') center/cover no-repeat;isolation:isolate}.shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(3,14,27,.74) 0%,rgba(4,18,33,.48) 42%,rgba(0,0,0,.08) 75%),linear-gradient(0deg,rgba(0,0,0,.42),transparent 38%)}header{height:110px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw}.brand{font-weight:750;letter-spacing:.32em;font-size:19px;color:#fff;text-decoration:none}nav{display:flex;gap:48px}nav a{color:#fff;text-decoration:none;font-size:15px;opacity:.92}.copy{position:absolute;left:5vw;top:24%;width:min(58vw,900px)}.eyebrow{font-size:13px;letter-spacing:.35em;margin:0 0 25px;white-space:nowrap}.copy h1{font-size:clamp(82px,11vw,180px);line-height:.78;letter-spacing:-.055em;margin:0;font-weight:800}.tagline{font-size:clamp(24px,2.5vw,40px);font-weight:300;letter-spacing:.06em;margin:28px 0 45px}.interests{display:flex;gap:46px;margin-bottom:46px}.interests span{font-size:29px;text-align:center;min-width:45px}.interests small{display:block;font-size:13px;font-weight:400;letter-spacing:.14em;margin-top:8px}.mail{display:flex;align-items:center;gap:18px;width:max-content;min-width:310px;padding:16px 22px;border:1px solid rgba(255,255,255,.85);border-radius:999px;color:#fff;text-decoration:none;backdrop-filter:blur(5px);background:rgba(7,22,36,.12)}.mail b{margin-left:auto;font-size:22px;font-weight:300}.location{position:absolute;left:5vw;bottom:5vh;display:flex;flex-direction:column;gap:10px;font-size:12px;letter-spacing:.28em}.location span{letter-spacing:.18em}.scroll{position:absolute;left:50%;bottom:4.7vh;transform:translateX(-50%);color:#fff;text-decoration:none;text-align:center;font-size:11px;letter-spacing:.25em}.scroll i{display:block;height:46px;width:1px;background:#fff;margin:0 auto 12px}.below{min-height:75vh;padding:14vh 8vw;background:#0b1015}.below>p:first-child{letter-spacing:.3em;font-size:12px;opacity:.65}.below h2{font-size:clamp(54px,8vw,120px);line-height:.92;letter-spacing:-.05em;margin:30px 0}.intro{font-size:20px;opacity:.7;max-width:620px}@media(max-width:800px){.hero{background-position:62% center}.shade{background:linear-gradient(180deg,rgba(3,14,27,.2),rgba(3,14,27,.72) 58%,rgba(0,0,0,.78))}header{height:80px;padding:0 24px}.brand{font-size:15px}nav{gap:18px}nav a[href="#about"]{display:none}.copy{left:24px;right:24px;top:auto;bottom:18vh;width:auto}.eyebrow{font-size:9px;letter-spacing:.2em;white-space:normal}.copy h1{font-size:clamp(64px,21vw,105px)}.tagline{font-size:21px;margin:18px 0 26px}.interests{gap:18px;overflow:hidden;margin-bottom:26px}.interests span{font-size:21px;min-width:34px}.interests small{font-size:9px}.mail{min-width:0;width:100%;max-width:330px}.location{left:24px;bottom:3vh;font-size:9px}.scroll{display:none}}

/* v0.2: one line-icon family and all eight passions at every size. */
.copy{width:min(76vw,1050px)}
.eyebrow{white-space:normal;line-height:1.8;max-width:850px}
.interests{list-style:none;padding:0;display:grid;grid-template-columns:repeat(8,1fr);gap:20px;max-width:700px}
.interests li{display:flex;flex-direction:column;align-items:center;gap:10px}
.interests svg{width:29px;height:29px;flex-shrink:0}
.interests li span{font-size:12px;letter-spacing:.1em;min-width:0}
.mail svg{width:22px;height:22px}
a:focus-visible{outline:2px solid white;outline-offset:6px}
nav a:hover{opacity:.7}.mail:hover{background:rgba(255,255,255,.14)}
@media(min-width:801px) and (max-height:760px){.hero{min-height:760px}}
@media(max-width:800px){
.hero{min-height:100svh;display:flex;flex-direction:column}
.copy{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:auto;margin:auto 24px 0;padding-top:90px;padding-bottom:42px}
.eyebrow{max-width:520px;margin-bottom:20px}
.interests{grid-template-columns:repeat(4,1fr);gap:22px 16px;max-width:400px;overflow:visible;margin:0 0 30px}
.interests svg{width:26px;height:26px}.interests li span{font-size:11px}
.location{position:relative;left:auto;bottom:auto;margin:0 24px 24px;gap:7px}
.tagline{line-height:1.4}.below>p:first-child{line-height:2}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
