@font-face{font-family:'Bespoke Serif';src:url('assets/fonts/BespokeSerif-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
/* Home only: identity first, with a quiet and regular project index. */
.home-identity{padding:42px 5vw 0;color:var(--foliage)}
.identity-label{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.07em;line-height:1.6;color:var(--pebble)}
.identity-main{display:grid;grid-template-columns:1.2fr 1fr;gap:10vw;align-items:end;padding:35px 0 45px}
.identity-main h1{font:400 clamp(54px,6.4vw,96px)/1.08 'Bespoke Serif',Georgia,serif;letter-spacing:-.025em;margin:0;color:var(--foliage)}
.identity-description{max-width:420px;padding-bottom:4px}
.identity-description p{font-size:14px;line-height:1.85;margin:0;color:var(--sow)}
.identity-description .link{font-size:12px;margin-top:22px;border-color:var(--mist)}
.identity-description .link:hover{color:var(--redwood);text-decoration:none;border-color:var(--redwood)}
.identity-bottom{border-top:1px solid var(--mist);padding:17px 0;display:flex;justify-content:space-between;gap:30px;align-items:center;font-size:10px;line-height:1.7;color:var(--pebble)}
#work.identity-project-index{max-width:none;padding:55px 5vw 90px}
.identity-project-index .section-head{margin-bottom:32px;border:0;padding:0;display:flex;justify-content:space-between;align-items:baseline;gap:24px}
.identity-project-index .section-head h2{font:400 28px/1.2 'Helvetica Neue',Arial,sans-serif;letter-spacing:-.03em;color:var(--sow)}
.identity-project-index .section-head .eyebrow{font-size:10px;letter-spacing:.05em}
.identity-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:62px 4vw}
.identity-projects .project,.identity-projects .project:first-child,.identity-projects .project:last-child:nth-child(even){grid-column:auto;display:block;padding:0;border:0;min-width:0}
.identity-projects .project .project-media,.identity-projects .project:first-child .project-media,.identity-projects .project:last-child:nth-child(even) .project-media{order:initial;aspect-ratio:3/2;align-self:auto;border-top:1px solid var(--mist);border-bottom:1px solid var(--mist);padding:18px}
.identity-projects .project .project-copy,.identity-projects .project:first-child .project-copy,.identity-projects .project:last-child:nth-child(even) .project-copy{padding-top:19px;order:initial}
.identity-projects .project h3,.identity-projects .project:first-child h3{font:400 clamp(25px,2.5vw,36px)/1.15 Georgia,serif;letter-spacing:-.02em;margin:15px 0 10px;color:var(--sow)}
.identity-projects .project:hover h3{color:var(--redwood)}
.identity-projects .project p{font-size:12px;line-height:1.7;max-width:460px;min-height:0;color:var(--pebble)}
.identity-projects .project .meta{font-size:9px;letter-spacing:.03em;gap:15px}
@media(max-width:900px){.identity-main{gap:6vw;grid-template-columns:1.1fr 1fr}.identity-main h1{font-size:clamp(48px,7.3vw,65px)}.identity-description p{font-size:13px}.identity-bottom{font-size:9px}.identity-projects{gap:50px 4vw}}
@media(max-width:600px){.home-identity{padding:27px 6vw 0}.identity-label{font-size:9px}.identity-main{grid-template-columns:1fr;gap:26px;padding:27px 0 30px}.identity-main h1{font-size:clamp(52px,14vw,74px);line-height:1.03}.identity-description{max-width:360px}.identity-description p{font-size:13px;line-height:1.8}.identity-description .link{margin-top:16px;font-size:11px}.identity-bottom{align-items:start;padding:14px 0;gap:26px;font-size:9px}.identity-bottom span{max-width:210px}.identity-bottom a{flex:none}#work.identity-project-index{padding:36px 6vw 65px}.identity-project-index .section-head{margin-bottom:26px}.identity-project-index .section-head h2{font-size:25px}.identity-project-index .section-head .eyebrow{font-size:9px}.identity-projects{grid-template-columns:1fr;gap:42px}.identity-projects .project h3,.identity-projects .project:first-child h3{font-size:28px}.identity-projects .project .project-media,.identity-projects .project:first-child .project-media,.identity-projects .project:last-child:nth-child(even) .project-media{padding:12px}.identity-projects .project .meta{font-size:9px}}

/* The introduction presents three source-backed design fields. */
.identity-main{align-items:center}
.design-focus{max-width:460px;padding-bottom:0}
.design-focus h2{font:400 10px/1.5 'Helvetica Neue',Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--pebble);margin:0 0 18px}
.focus-module{border-top:0;padding:16px 0 17px}
.focus-module h3{font:500 17px/1.35 'Helvetica Neue',Arial,sans-serif;letter-spacing:-.02em;color:var(--foliage);margin:0 0 7px}
.focus-module p{font-size:12px;line-height:1.7;max-width:380px;margin:0;color:var(--pebble)}
.design-focus .link{margin-top:4px}
@media(max-width:900px){.focus-module{padding:14px 0}.focus-module h3{font-size:15px}.focus-module p{font-size:11px}}
@media(max-width:600px){.identity-main{gap:30px}.design-focus{max-width:none;width:100%}.design-focus h2{font-size:9px;margin-bottom:14px}.focus-module{padding:16px 0}.focus-module h3{font-size:17px}.focus-module p{font-size:12px;max-width:320px}.design-focus .link{margin-top:4px}}

/* A dedicated featured row within the project index. */
.identity-projects .feature-marker{display:block;color:var(--foliage);font-size:10px;line-height:1.6;letter-spacing:.06em;margin-bottom:24px}
@media(min-width:601px){
.identity-projects .project.featured:first-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:5vw;align-items:center;padding-bottom:30px;border-bottom:1px solid var(--mist)}
.identity-projects .project.featured:first-child .project-media{aspect-ratio:3/2;order:0;padding:20px;border:0}
.identity-projects .project.featured:first-child .project-copy{order:1;padding:0;max-width:370px}
.identity-projects .project.featured:first-child h3{font-size:clamp(30px,3vw,44px)}
}
@media(max-width:600px){.identity-main h1{line-height:1.08}.identity-projects .feature-marker{margin-bottom:14px;font-size:9px}}

/* Home refinements: one name, a full professional title, and fewer rules. */
.identity-second-role{display:block;font-size:.64em;line-height:1.2;letter-spacing:-.015em;margin-top:14px}
.identity-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;border:0;padding:0;align-items:center}
.qualification-line{display:flex;align-items:center;gap:16px;min-width:0}
.qualification-line:before,.qualification-line:after{content:'';display:block;height:1px;background:var(--mist)}
.qualification-line:before{flex:0 0 28px}
.qualification-line:after{flex:1 1 40px}
.qualification-line span{flex:0 1 auto;max-width:none}
.identity-projects .project .project-media,.identity-projects .project:first-child .project-media,.identity-projects .project:last-child:nth-child(even) .project-media{border:0;padding:0}
.identity-projects .project.featured:first-child{border:0;padding-bottom:0}
.identity-projects .feature-marker{display:inline-block;width:fit-content;padding:5px 10px;background:var(--foliage);color:var(--seedling);font-family:var(--type-body);font-weight:700;font-size:11px;letter-spacing:.025em}
/* Equalise the displayed image area, retaining each complete original. */
.identity-projects .project:not(.featured) .project-media{aspect-ratio:2/1}
.identity-projects .project:not(.featured) .project-media img{width:var(--cover-width);height:auto;max-width:100%;max-height:none;aspect-ratio:auto;object-fit:contain}
@media(max-width:600px){.identity-bottom{gap:20px;font-size:9px}.qualification-line{gap:9px}.qualification-line:before{flex-basis:12px}.qualification-line:after{flex-basis:12px}.qualification-line span{max-width:210px}.identity-second-role{margin-top:10px}.identity-projects .feature-marker{font-size:10px}}

/* A compact identity line above three horizontally aligned design fields. */
.home-identity{padding-top:28px}
.identity-main{display:block;padding:22px 0 28px}
.identity-topline{display:flex;align-items:baseline;justify-content:space-between;gap:28px;margin-bottom:28px}
.identity-main h1{font-size:clamp(28px,3.2vw,46px);line-height:1.2;letter-spacing:-.025em}
.identity-topline>.link{flex:none;margin:0;font-size:12px;border-color:var(--mist)}
.design-focus{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;max-width:none;width:100%;margin:0}
.design-focus h2{grid-column:1/-1;margin:0 0 14px}
.focus-module{padding:15px 0 0}
.focus-module h3{font-size:17px;line-height:1.4;margin-bottom:7px}
.focus-module p{font-size:12px;line-height:1.75;max-width:40ch}
#work.identity-project-index{padding-top:42px}
@media(min-width:601px) and (max-width:900px){.design-focus{gap:0 22px}.focus-module h3{font-size:15px}.focus-module p{font-size:11px}.identity-topline{gap:22px}.identity-topline>.link{font-size:11px}}
@media(max-width:600px){.home-identity{padding-top:24px}.identity-main{padding:18px 0 24px}.identity-topline{display:block;margin-bottom:25px}.identity-main h1{font-size:32px;line-height:1.2;max-width:360px}.identity-topline>.link{margin-top:14px;font-size:11px}.design-focus{grid-template-columns:1fr;gap:0}.design-focus h2{margin-bottom:12px}.focus-module{padding:13px 0}.focus-module h3{font-size:16px;margin-bottom:5px}.focus-module p{font-size:12px;line-height:1.7;max-width:42ch}#work.identity-project-index{padding-top:32px}}

/* Separate the five standard project entries with a short rule. */
.identity-projects .project:not(.featured)::before{content:"";display:block;width:42px;height:1px;background:var(--mist);margin:18px 0 26px}
