:root{--pink:#1b58db;--ink:#1b58db;--paper:#efeaea;--line:#a3b5da}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{display:flex;align-items:center;justify-content:space-between;padding:26px 4.5%;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:4}.wordmark{font-size:26px;font-weight:700;letter-spacing:-1.3px}.wordmark span{font-size:12px;vertical-align:top;margin-left:4px}nav{display:flex;gap:38px;font-size:14px}nav a:hover{color:var(--pink)}.intro{padding:72px 4.5% 45px}.eyebrow{font-size:12px;letter-spacing:1.7px;font-weight:600}h1{font-size:clamp(54px,7.7vw,120px);line-height:.99;letter-spacing:-.065em;font-weight:500;margin:28px 0 38px}em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.065em}h1 em{color:var(--pink)}.intro-bottom{display:flex;align-items:flex-end;justify-content:space-between}.intro-bottom p{margin:0;color:var(--ink)}.text-link{font-size:14px;border-bottom:1px solid;padding-bottom:4px;display:inline-block}.featured{display:grid;grid-template-columns:1.65fr 1fr;gap:20px;margin:0 4.5% 86px}.feature{padding:0;border:0;text-align:left;background:transparent;position:relative;overflow:hidden;color:white;min-height:420px}.feature img{width:100%;height:480px;display:block;object-fit:cover;transition:transform .5s}.feature:hover img{transform:scale(1.035)}.feature:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.75));pointer-events:none}.feature .caption{position:absolute;bottom:25px;left:26px;z-index:1}.feature .caption span{font-size:12px;text-transform:uppercase;letter-spacing:1.4px}.feature h3{font-size:28px;font-weight:500;letter-spacing:-1px;margin:8px 0 0}.work{padding:0 4.5% 90px}.section-heading{display:flex;justify-content:space-between;align-items:center;border-top:1px solid;padding-top:30px}h2{font-size:clamp(36px,4vw,60px);letter-spacing:-.05em;font-weight:500;line-height:1.05;margin:0}.section-heading h2 span{font-size:14px;letter-spacing:0;vertical-align:top;display:inline-block;margin:5px 0 0 12px}.filters{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0}.filters button{background:none;border:1px solid var(--line);border-radius:30px;padding:10px 20px;font-size:14px}.filters button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 22px}.card{background:transparent;border:0;padding:0;text-align:left;min-width:0}.card .image{overflow:hidden;background:#f2f2f2}.card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .4s}.card:hover img{transform:scale(1.04)}.card h3{font-size:17px;font-weight:500;margin:13px 0 4px;line-height:1.3;letter-spacing:-.35px}.meta{color:var(--ink);font-size:12px;display:flex;justify-content:space-between;gap:12px}.about{padding:80px 4.5%;background:#e6e1e1;display:grid;grid-template-columns:1fr 1.2fr;gap:9%;align-items:center}.about-photo img{width:100%;max-height:650px;object-fit:cover;display:block}.about-copy h2{margin:22px 0 30px}.about-copy p{max-width:570px;color:var(--ink)}.disciplines{display:flex;flex-wrap:wrap;gap:8px 22px;border-top:1px solid var(--line);padding-top:20px;margin:25px 0;font-size:14px}.contact{background:var(--pink);padding:70px 4.5% 85px}.contact h2{font-size:clamp(66px,9vw,130px);margin:25px 0 38px;line-height:.95;letter-spacing:-.06em}.contact>a{font-size:clamp(18px,2.3vw,30px);border-bottom:1px solid}footer{padding:28px 4.5%;display:flex;gap:32px;font-size:12px}footer span:first-child{margin-right:auto}dialog{border:0;padding:0;width:min(1100px,94vw);max-height:92vh;background:var(--paper);color:var(--ink)}dialog::backdrop{background:rgba(0,0,0,.75)}.dialog-bar{display:flex;justify-content:space-between;align-items:center;padding:18px 30px;background:var(--paper);position:sticky;top:0;z-index:2;border-bottom:1px solid var(--line);font-size:14px}.dialog-bar button{background:none;border:0;padding:8px}#detail{padding:30px}#detail h2{margin:10px 0 20px}#detail p{max-width:800px;color:var(--ink)}#detail img{display:block;width:100%;height:auto;margin:22px 0;background:#f3f3f3}#detail iframe{width:100%;aspect-ratio:16/9;border:0;margin:15px 0}.detail-meta{font-size:12px;letter-spacing:1px;text-transform:uppercase}.source-link{display:inline-block;margin:20px 0;border-bottom:1px solid;font-size:14px}a:focus-visible,button:focus-visible{outline:3px solid var(--pink);outline-offset:5px}.contact a:focus-visible{outline-color:var(--ink)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(max-width:800px){header{padding:18px 5%}.wordmark{font-size:22px}nav{gap:18px}.intro{padding:45px 5% 32px}.featured{margin:0 5% 60px;gap:12px}.feature{min-height:290px}.feature img{height:330px}.feature h3{font-size:21px}.feature .caption{left:16px;bottom:18px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading>.eyebrow{display:none}.about{gap:35px;padding:50px 5%;grid-template-columns:1fr 1fr}.work{padding:0 5% 60px}.contact{padding:55px 5%}}@media(max-width:540px){.intro-bottom{align-items:flex-start;gap:24px;flex-direction:column}.intro-bottom p{font-size:14px}.featured{grid-template-columns:1fr}.feature img{height:340px}.feature:nth-child(2){display:none}.grid{gap:28px 14px}.card h3{font-size:15px}.meta{font-size:12px;display:block}.meta span{display:block}.filters{gap:8px}.filters button{padding:8px 13px}.about{grid-template-columns:1fr}.about-photo{max-width:320px}.contact h2{font-size:76px}footer{gap:18px;flex-wrap:wrap}#detail{padding:20px}.dialog-bar{padding:12px 18px}h1{font-size:58px}nav{gap:13px;font-size:14px}}

/* Typography and palette inspired by the supplied resume reference. */
.wordmark{font-family:"Arial Black",Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:-1.2px;text-transform:uppercase}
h1,h2{font-family:"Arial Black",Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:-.045em;text-transform:uppercase;line-height:1.04}
em{font-family:inherit;font-style:normal;font-weight:inherit;letter-spacing:inherit}
h1 em{color:inherit}h1{font-size:clamp(48px,7.3vw,110px)}
nav,.eyebrow,.text-link{font-weight:700}.eyebrow{letter-spacing:1.2px}.card h3{font-weight:700}.feature h3{font-weight:800;text-transform:uppercase;letter-spacing:-.6px}
.filters button{border-color:var(--ink);color:var(--ink)}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.contact{background:var(--ink);color:var(--paper)}.contact a:focus-visible{outline-color:var(--paper)}.contact h2{font-size:clamp(58px,8.5vw,120px)}
.feature{color:#fff}.feature .eyebrow{color:#fff}.section-heading{border-color:var(--ink)}.disciplines{border-color:var(--line)}
@media(max-width:540px){h1{font-size:clamp(39px,10.7vw,58px)}.wordmark{font-size:19px;letter-spacing:-.8px}.contact h2{font-size:clamp(52px,12vw,76px)}.about-copy h2{font-size:36px}}

@font-face{font-family:"Portfolio Script";src:url("assets/pinyon-c.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
.wordmark{white-space:nowrap;line-height:1.25}.wordmark .script-c{font-family:"Portfolio Script",cursive;font-size:2.05em;font-weight:400;letter-spacing:-.08em;vertical-align:-.13em;display:inline-block;line-height:.65;margin-left:-.03em;margin-right:.03em;text-transform:none}.wordmark .registered{font-size:12px;vertical-align:top;margin-left:4px}
@media(max-width:540px){.wordmark{font-size:18px}.wordmark .script-c{font-size:2.05em}nav{gap:11px}}

.headline-row{display:flex;align-items:center;justify-content:space-between;gap:30px}.headline-row h1{min-width:0}.hero-flower{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:clamp(90px,13vw,190px);aspect-ratio:1;color:var(--ink);font-family:Arial,"DejaVu Sans",sans-serif;font-weight:400;font-size:clamp(110px,15vw,220px);line-height:1;transform:rotate(-12deg);margin-right:2%}
@media(max-width:800px){.headline-row{gap:16px}.hero-flower{width:95px;margin-right:0}.headline-row h1{font-size:clamp(40px,7.4vw,60px)}}
@media(max-width:540px){.headline-row{position:relative;display:block;padding-right:0}.headline-row h1{font-size:clamp(37px,9.7vw,53px)}.hero-flower{position:absolute;right:0;top:-22px;width:52px}}

@media(max-width:800px){.hero-flower{font-size:115px}}@media(max-width:540px){.hero-flower{font-size:64px}}

.hero-flower{transform:rotate(-12deg) scale(.30);transform-origin:center}

.wordmark .name-flower{font-family:Arial,"DejaVu Sans",sans-serif;font-size:1em;font-weight:400;display:inline-block;line-height:1;vertical-align:baseline;margin-left:.3em;letter-spacing:0;color:var(--ink);transform:rotate(-12deg)}

.about-photo{position:relative;isolation:isolate}.about-photo img{position:relative;object-fit:contain}

.about-photo{max-width:420px;margin-inline:auto;width:100%}.about-photo img{max-height:680px;object-fit:contain}

#detail video{display:block;width:100%;max-height:75vh;background:#161616;margin:24px 0;object-fit:contain}
