:root{--ink:#171714;--cream:#f2efe8;--paper:#faf9f6;--rust:#a95638;--line:rgba(23,23,20,.2)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%}button{font:inherit}.site-header{height:84px;position:absolute;z-index:10;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;color:white;border-bottom:1px solid rgba(255,255,255,.22)}.brand{display:flex;align-items:center;gap:12px;font:600 16px Manrope,sans-serif;letter-spacing:.06em;text-transform:uppercase}.brand svg{width:32px;height:32px;fill:currentColor}.site-header nav{display:flex;align-items:center;gap:2.3rem;font-size:13px;letter-spacing:.07em}.site-header nav a{opacity:.8}.site-header nav a:hover{opacity:1}.nav-cta{border:1px solid rgba(255,255,255,.65);padding:12px 20px}.menu-toggle{display:none}.hero{height:max(760px,100vh);min-height:650px;position:relative;color:#fff;overflow:hidden;background:#111}.hero-image{position:absolute;inset:0;background:url("assets/images/portrait-formal.jpg") center 27%/cover no-repeat;filter:contrast(1.07)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,7,.86) 0%,rgba(7,7,7,.42) 47%,rgba(7,7,7,.02) 72%),linear-gradient(0deg,rgba(0,0,0,.28),transparent 45%)}.hero-copy{position:absolute;left:9vw;top:50%;transform:translateY(-43%);z-index:2}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-weight:600}.eyebrow{color:#d5c6b4;margin-bottom:25px}.hero h1,.section h2{margin:0;font:500 clamp(58px,7.4vw,112px)/.88 Manrope,sans-serif;letter-spacing:-.065em}.hero h1 em,.section h2 em{font-weight:400;color:#b86749}.intro{font:400 18px/1.65 Manrope,sans-serif;margin:34px 0;color:rgba(255,255,255,.78)}.hero-actions{display:flex;align-items:center;gap:38px}.button{display:inline-flex;gap:45px;align-items:center;padding:17px 20px;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.button.light{background:#f7f6f1;color:#171714}.button span,.text-link span{font-size:18px}.text-link{border-bottom:1px solid rgba(255,255,255,.5);padding:14px 0;text-transform:uppercase;letter-spacing:.12em;font-size:12px;display:flex;gap:28px}.hero-index{position:absolute;right:4vw;bottom:42px;z-index:2;display:flex;align-items:center;gap:10px;font-size:10px}.hero-index i{width:80px;height:1px;background:rgba(255,255,255,.5)}.scroll-cue{position:absolute;left:4.5vw;bottom:42px;z-index:2;text-transform:uppercase;letter-spacing:.16em;font-size:10px;display:flex;gap:13px}.section{padding:120px 7vw}.section-kicker{display:flex;align-items:center;gap:14px;margin-bottom:78px}.section-kicker span{color:var(--rust)}.profile{background:var(--cream)}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.profile h2,.portfolio h2,.contact h2{font-size:clamp(50px,5.4vw,82px)}.profile-copy{max-width:620px}.profile-copy p{font:400 16px/1.8 Manrope,sans-serif;color:#55544f}.profile-copy .lead{font-size:23px;line-height:1.55;color:var(--ink);margin-top:0}.strengths{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}.strengths span{border:1px solid var(--line);padding:10px 14px;border-radius:30px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.stats{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);margin-top:100px;padding-top:35px}.stats div{display:flex;align-items:flex-start;gap:12px;border-right:1px solid var(--line);padding:0 22px}.stats div:first-child{padding-left:0}.stats div:last-child{border:0}.stats strong{font:500 clamp(24px,2.5vw,39px) Manrope,sans-serif}.stats span{text-transform:uppercase;font-size:9px;line-height:1.5;letter-spacing:.12em;color:#777}.portfolio{padding-bottom:140px}.portfolio-head{display:grid;grid-template-columns:.65fr 1.4fr .7fr;align-items:end;margin-bottom:65px}.portfolio-head .section-kicker{align-self:start;margin:0}.filters{justify-self:end;display:flex;gap:20px}.filters button{background:none;border:0;border-bottom:1px solid transparent;padding:8px 0;color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.12em;cursor:pointer}.filters button.active{color:var(--ink);border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:290px;gap:18px}.gallery figure{margin:0;position:relative;overflow:hidden;background:#ddd;transition:.35s}.gallery figure.wide{grid-column:span 2}.gallery figure.tall{grid-row:span 2}.gallery img{height:100%;object-fit:cover;transition:transform .7s ease}.gallery figure:hover img{transform:scale(1.025)}.gallery figcaption{position:absolute;inset:auto 0 0;padding:45px 20px 18px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.7));display:flex;justify-content:space-between;align-items:end}.gallery figcaption span{text-transform:uppercase;letter-spacing:.14em;font-size:9px}.gallery figcaption b{font:500 14px Manrope,sans-serif}.gallery figure.hidden{opacity:0;transform:scale(.96);pointer-events:none}.credits{background:#171714;color:#efede6}.section-kicker.light span{color:#cc7554}.credits-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:10vw}.credits h2{font-size:clamp(54px,6.3vw,94px)}.credit-list article{display:grid;grid-template-columns:48px 1fr;gap:20px;padding:27px 0;border-top:1px solid rgba(255,255,255,.18)}.credit-list article>span{color:#b86a4e;font-size:11px}.credit-list h3{margin:0 0 8px;font:500 23px Manrope,sans-serif}.credit-list p{margin:0;color:#94928d;line-height:1.7;font-size:14px}.contact{display:grid;grid-template-columns:.9fr 1.1fr;padding:0;background:#c57b58;min-height:720px}.contact-photo{min-height:720px}.contact-photo img{height:100%;object-fit:cover;object-position:center 15%}.contact-copy{padding:100px 8vw;display:flex;flex-direction:column;justify-content:center}.contact-copy .section-kicker{margin-bottom:60px}.contact-copy h2 em{color:#f1d5c4}.contact-copy>p{margin:35px 0 20px}.mail-link{font:500 clamp(21px,2.3vw,34px) Manrope,sans-serif;border-bottom:1px solid rgba(23,23,20,.55);padding:15px 0;display:flex;justify-content:space-between}.contact-links{display:flex;gap:35px;margin-top:35px;font-size:13px}footer{padding:40px 5vw;background:#111;color:#eee;display:flex;justify-content:space-between;align-items:center}footer p{color:#777;font-size:11px;text-transform:uppercase;letter-spacing:.13em}footer .brand svg{width:25px}
@media(max-width:900px){.site-header{height:70px}.menu-toggle{display:flex;flex-direction:column;gap:6px;background:none;border:0;padding:10px;z-index:2}.menu-toggle span{width:25px;height:1px;background:white}.site-header nav{position:fixed;inset:0;background:#171714;flex-direction:column;justify-content:center;font-size:20px;transform:translateY(-100%);transition:.4s}.site-header.nav-open nav{transform:none}.hero-copy{left:7vw}.hero h1{font-size:clamp(55px,15vw,90px)}.profile-grid,.credits-layout{grid-template-columns:1fr}.profile-copy{margin-top:50px}.stats{grid-template-columns:repeat(2,1fr);gap:30px}.stats div{border:0;padding:0}.portfolio-head{grid-template-columns:1fr}.portfolio-head .section-kicker{margin-bottom:55px}.portfolio-head h2{margin-bottom:40px}.filters{justify-self:start}.gallery{grid-template-columns:1fr 1fr}.gallery figure.wide{grid-column:span 2}.credits h2{margin-bottom:60px}.contact{grid-template-columns:1fr}.contact-photo{min-height:500px}.contact-copy{padding:80px 7vw}footer{gap:20px;flex-direction:column;text-align:center}}@media(max-width:560px){.section{padding:85px 6vw}.site-header{padding:0 5vw}.brand span{font-size:13px}.hero-image{background-position:60% center}.hero-shade{background:linear-gradient(90deg,rgba(7,7,7,.83),rgba(7,7,7,.15)),linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.hero-copy{top:auto;bottom:130px;transform:none}.hero h1{font-size:55px}.intro{font-size:15px}.hero-actions{gap:20px}.button{gap:18px}.hero-index{display:none}.profile-grid h2,.portfolio h2,.contact h2{font-size:48px}.stats{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr;grid-auto-rows:390px}.gallery figure.wide{grid-column:span 1}.gallery figure.tall{grid-row:span 1}.filters{gap:14px}.contact-photo{min-height:430px}.contact-copy{padding:70px 6vw}.mail-link{font-size:18px}footer .brand{display:none}}
