@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--bg:#f4f1e9;--surface:#eae6dc;--ink:#252823;--muted:#62645c;--line:#cecfc3;--accent:#872b35;--accent-hover:#68212a;--header:rgba(244,241,233,.96);--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;color-scheme:light}
html[data-theme=dark]{--bg:#191c19;--surface:#232721;--ink:#f1eee4;--muted:#b4b8ad;--line:#42483f;--accent:#e9a6ac;--accent-hover:#f1bcc0;--header:rgba(25,28,25,.96);color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button{color:inherit}::selection{background:var(--accent);color:var(--bg)}h1,h2,h3,p,figure{margin:0}img{display:block;width:100%}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.03}p+p{margin-top:20px}.header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 5.5%;gap:25px;background:var(--header)}.brand{display:flex;gap:16px;align-items:center;font-family:var(--serif);font-size:39px;letter-spacing:-3px;line-height:1}.brand span{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;border-left:1px solid var(--line);padding:7px 0 7px 16px}.header nav{display:flex;gap:30px;font-size:14px}.header nav a:hover,.text-link:hover{color:var(--accent)}.settings{display:flex;align-items:center;gap:23px}.languages{display:flex;gap:7px;align-items:center;font-size:13px}.languages button{border:0;background:none;padding:7px 2px;color:var(--muted)}.languages button[aria-pressed=true]{color:var(--ink);text-decoration:underline;text-underline-offset:5px}.theme-button{border:1px solid var(--line);border-radius:50%;width:39px;height:39px;background:none;display:grid;place-items:center}.theme-button svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.5}.hero{display:grid;grid-template-columns:1.08fr 1fr;min-height:700px}.hero-copy{padding:68px 7% 30px 10.2%;display:flex;flex-direction:column}.eyebrow,.section-kicker{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:500}.eyebrow{display:flex;gap:12px;align-items:center}.short-rule{width:29px;height:1px;background:var(--accent)}h1{font-size:clamp(80px,8.7vw,145px);margin:39px 0 22px;letter-spacing:-.045em;line-height:.96}h1 em{font-weight:400}h1 .period{color:var(--accent)}.role{font-size:16px;font-weight:500}.hero-description{max-width:350px;font-size:17px;color:var(--muted);margin-top:16px}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;min-height:54px;padding:13px 24px;font-size:14px;border:1px solid var(--accent);transition:background .2s}.primary{color:var(--bg);background:var(--accent)}.primary:hover{background:var(--accent-hover)}.text-link{display:inline-flex;gap:12px;align-items:center;font-size:14px;border-bottom:1px solid var(--line);padding-bottom:4px}.text-link small{font-size:12px;color:var(--muted)}.hero-foot{border-top:1px solid var(--line);margin-top:auto;padding-top:22px;display:flex;justify-content:space-between;gap:18px;font-size:12px;color:var(--muted)}.hero-actions+.hero-foot{margin-top:54px}.hero-photo{position:relative;overflow:hidden;min-height:700px;background:#45151a}.hero-photo img{position:absolute;height:113%;object-fit:cover;object-position:50% 25%}.hero-photo:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.7))}.hero-photo figcaption{position:absolute;bottom:29px;left:34px;right:30px;display:flex;gap:24px;color:white;z-index:1;font-size:13px}.identity-strip{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 7%;border-bottom:1px solid var(--line);font-size:14px;letter-spacing:.02em}.asterisk{color:var(--accent);font-size:25px}.section{padding:100px 6%}.bio{display:grid;grid-template-columns:1fr 3fr;gap:30px}.section-kicker{display:flex;gap:18px;color:var(--muted);padding-top:8px}.section-kicker>span:first-child{color:var(--accent)}h2{font-size:clamp(40px,4.7vw,72px);letter-spacing:-.025em}.bio-columns{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;margin-top:36px}.lead{font-size:21px;line-height:1.55}.bio-columns>div{color:var(--muted);font-size:16px}.bio-columns .text-link{margin-top:25px;color:var(--ink)}.work{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:55px}.section-heading h2{margin-top:23px}.section-heading>p{max-width:320px;color:var(--muted)}.work-grid{display:grid;grid-template-columns:1fr 1.12fr;gap:6%}.work-photo{min-height:530px;position:relative;overflow:hidden}.work-photo img{position:absolute;height:112%;object-fit:cover;object-position:center top}.project{border-top:1px solid var(--line);padding:23px 0 25px;display:grid;grid-template-columns:50px 1fr;gap:16px}.project:first-child{border-top:1px solid var(--ink)}.project .year{font-size:12px;color:var(--accent);padding-top:7px}.project h3{font-size:34px}.project p{margin-top:14px;color:var(--muted);font-size:16px}.project .tag{display:inline-block;font-size:12px;margin-top:16px;text-transform:uppercase;letter-spacing:.08em}.career-layout{display:grid;grid-template-columns:1fr 2fr;gap:9%;margin-top:40px}.career-intro p{margin-top:23px;color:var(--muted)}.timeline-item{padding:25px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:108px 1fr;gap:20px}.timeline-item:last-child{border-bottom:1px solid var(--line)}.timeline-item time{color:var(--accent);font-size:13px}.timeline-item h3{font-family:var(--sans);font-size:17px;font-weight:500;line-height:1.5}.timeline-item p{font-size:15px;color:var(--muted);margin-top:8px}.formation{display:grid;grid-template-columns:1fr 2fr;gap:9%;margin-top:55px}.formation h3{font-size:30px}.formation p{color:var(--muted);font-size:15px}.formation strong{color:var(--ink);font-weight:500}.contact{background:var(--surface);border-top:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:10%}.contact h2{margin:24px 0}.contact-intro>p{max-width:390px;color:var(--muted)}.contact-details{margin-top:35px}.phone{font-family:var(--serif);font-size:35px}.contact-details>a{display:block;width:fit-content}.contact-details .email{font-size:15px;margin-top:10px;border-bottom:1px solid var(--line)}.socials{display:flex;gap:26px;margin-top:26px;font-size:14px}.contact-portrait{height:185px;width:155px;margin-top:40px;overflow:hidden}.contact-portrait img{height:100%;object-fit:cover;object-position:50% 25%}form{border-top:1px solid var(--ink);padding-top:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:block;font-size:14px;margin-bottom:7px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:0;padding:12px 13px;background:var(--bg);color:var(--ink);font-size:16px;min-height:50px}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}textarea{resize:vertical;min-height:115px}.field{margin-bottom:20px}.optional{color:var(--muted);font-size:12px}form .button{width:100%}.form-note{color:var(--muted);font-size:13px;margin-top:14px;line-height:1.6}.form-status{font-size:14px;margin-top:14px}.form-status a{text-decoration:underline}footer{padding:40px 6%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer p{font-size:12px;color:var(--muted)}.skip{position:fixed;top:-80px;left:15px;background:var(--bg);z-index:20;padding:12px}.skip:focus{top:12px}
@media(min-width:1600px){body{max-width:1800px;margin:auto}.hero-copy{padding-top:90px}.hero{min-height:850px}.hero-photo{min-height:850px}}
@media(max-width:1100px){.header{padding:0 4%;height:85px}.brand span{display:none}.hero-copy{padding:50px 7% 30px}.hero,.hero-photo{min-height:665px}h1{font-size:clamp(75px,9.5vw,105px)}.hero-foot{flex-direction:column;gap:5px}.hero-actions{gap:20px}.bio{grid-template-columns:1fr}.section{padding:75px 5%}.bio-main{margin-top:15px}.work-photo{min-height:560px}.contact-grid{gap:6%}footer .brand span{display:none}}
@media(max-width:700px){html{scroll-padding-top:25px}.header{height:80px;flex-wrap:wrap;gap:8px;padding:14px 6%}.header .brand{font-size:34px}.header nav{order:3;width:100%;justify-content:center;gap:26px;font-size:13px;padding-top:12px;display:none}.settings{gap:18px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:36px 7% 28px}.eyebrow{font-size:10px;letter-spacing:.1em}h1{font-size:clamp(76px,17vw,118px);margin-top:30px}.role{font-size:15px}.hero-description{font-size:16px;max-width:310px}.hero-actions{margin-top:26px;gap:20px}.button{padding:13px 18px}.hero-foot{flex-direction:row;flex-wrap:wrap;font-size:11px}.hero-actions+.hero-foot{margin-top:35px}.hero-photo{min-height:0;height:460px}.hero-photo img{height:135%;object-position:center 30%}.hero-photo figcaption{left:25px;bottom:22px}.identity-strip{padding:20px 7%;gap:10px;font-size:10px;letter-spacing:0}.asterisk{font-size:17px}.section{padding:60px 7%}.section-kicker{font-size:11px;gap:12px}.bio-columns{grid-template-columns:1fr;gap:23px;margin-top:26px}.lead{font-size:20px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:22px}.work-grid{grid-template-columns:1fr;gap:35px}.work-photo{min-height:0;height:400px}.work-photo img{height:155%;object-position:center 12%}.project{grid-template-columns:40px 1fr;gap:12px}.project h3{font-size:31px}.career-layout,.formation,.contact-grid{grid-template-columns:1fr;gap:35px}.career-layout{margin-top:25px}.timeline-item{grid-template-columns:74px 1fr;gap:14px}.timeline-item time{font-size:11px}.formation{gap:17px;margin-top:40px}.contact-portrait{display:none}.form-row{gap:14px}.contact-grid{gap:45px}.phone{font-size:34px}footer{flex-wrap:wrap;padding:30px 7%;gap:20px}footer p{order:3;width:100%}footer .text-link{font-size:13px}}
footer .design-credit{color:var(--ink);text-decoration:underline;text-underline-offset:3px}footer .design-credit:hover{color:var(--accent)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.header,.hero-actions,.settings,.identity-strip,form,.socials,footer,.contact-portrait,.hero-photo{display:none}.hero{display:block;min-height:0}.hero-copy,.section{padding:25px}.hero-foot{margin-top:20px!important}h1{font-size:60px}h2{font-size:32px}body{color:#000;background:#fff}.work-photo{display:none}.work-grid{display:block}.section{break-inside:avoid}.contact-grid{display:block}}

.listening{border-bottom:1px solid var(--line)}.audio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 40px}.audio-track{min-width:0;border-top:1px solid var(--line);padding-top:18px}.audio-heading{display:flex;align-items:baseline;gap:14px;margin-bottom:14px}.audio-heading h3{font-family:var(--sans);font-size:16px;line-height:1.5;flex:1}.audio-number{color:var(--accent);font-size:12px}.audio-duration{color:var(--muted);font-size:12px}audio{display:block;width:100%;max-width:100%;height:54px}@media(max-width:700px){.audio-grid{grid-template-columns:1fr;gap:24px}.header{height:auto;min-height:80px}.header nav{display:flex;gap:18px;flex-wrap:wrap;padding-bottom:6px}}
