@import url('../designs/designs.css?v=5');
body{background:#f8f7f4}.site-head a.nav-label{text-decoration:none;min-height:44px;display:flex;align-items:center}.site-head{height:auto!important;min-height:100px}.identity{min-width:0;max-width:70vw}.identity strong,.identity span{overflow-wrap:anywhere}.identity strong{font-size:30px}.identity span{line-height:1.5}.d7 .chapter{justify-content:flex-end;margin:0 28px;padding:13px 0 14px;min-height:0;gap:0;border-bottom:1px solid #b7b6ab}.d7 .chapter:before,.d7 .chapter:after{display:none}.d7 .chapter h2{white-space:normal;text-align:right;font-size:16px;overflow-wrap:anywhere;max-width:100%}.d7 .client-section+.client-section{padding-top:56px}.tile>img{object-fit:cover}.site-footer{gap:20px;align-items:center}.site-footer>div{display:flex;gap:25px;align-items:center}.site-footer button{font:inherit;border:0;background:none;padding:12px 0}.site-footer a{text-underline-offset:4px}.client-relationships{padding:70px 4vw 75px;border-top:0;margin-top:32px}.client-relationships h2{font:400 17px Outfit, sans-serif;text-align:center;letter-spacing:.08em;margin:0 0 52px}.client-logo-grid{--logo-columns:7;--logo-gap:24px;list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:42px var(--logo-gap);margin:0;padding:0}.client-logo-grid li{flex:0 0 calc((100% - (var(--logo-columns) - 1) * var(--logo-gap)) / var(--logo-columns));min-width:0;height:85px;display:grid;place-items:center}.client-logo-grid img,.client-logo-grid svg{width:var(--logo-width);max-width:100%;max-height:80px;object-fit:contain;filter:grayscale(1);mix-blend-mode:multiply}.about-hero{position:relative;background:#24221f}.about-hero video{width:100%;aspect-ratio:32/9;object-fit:cover;display:block}.about-intro,.about-partnership{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;max-width:1280px;padding:75px 5vw;margin:auto}.about-intro h1{font:300 clamp(36px,5vw,68px)/1.1 Outfit,sans-serif;letter-spacing:-.025em;margin:0 0 30px}.portrait-photo{width:180px;max-width:100%}.bio,.about-partnership p,.about-process{font-size:17px;line-height:1.85;color:#55514a}.bio p:first-child,.about-partnership p:first-child{margin-top:0}.about-partnership{grid-template-columns:1.2fr .8fr;padding-top:15px}.about-partnership h2{font:300 clamp(28px,3.6vw,47px)/1.18 Outfit,sans-serif;margin:0;text-align:right}.projects{padding:25px 5vw 50px}.projects h2{font:300 30px Outfit}.project-strip{display:flex;gap:28px;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:25px}.project-strip figure{margin:0;flex:0 0 190px;scroll-snap-align:start}.project-strip img{height:275px;width:100%;object-fit:contain;object-position:bottom}.project-strip figcaption{font-size:12px;line-height:1.6;margin-top:13px}.about-film{padding:0 5vw;max-width:1300px;margin:auto}.about-film video{display:block;width:100%;max-height:70vh;background:#111}.about-process{max-width:1100px;padding:55px 5vw;margin:auto}.about-collage{display:grid;grid-template-columns:1.25fr .65fr 1.1fr;gap:3px;height:340px}.about-collage>*{width:100%;height:100%;object-fit:cover;min-width:0}#player iframe{border:0;width:100%;aspect-ratio:16/9;display:block}#player video{max-height:80dvh}p{white-space:pre-line;overflow-wrap:anywhere}#info-content h1{overflow-wrap:anywhere}
@media(max-width:900px){.client-logo-grid{--logo-columns:4}.about-intro,.about-partnership{gap:5vw}.about-collage{height:250px}}
@media(max-width:700px){.identity strong{font-size:clamp(19px,5.6vw,30px)!important}.d7 .site-head{padding:18px 14px;min-height:90px;gap:8px}.d7 .chapter{margin:0 14px;padding:12px 0 13px!important;min-height:0!important}.d7 .client-section+.client-section{padding-top:40px}.client-relationships{padding:45px 25px}.client-logo-grid{--logo-columns:2;--logo-gap:26px;row-gap:26px}.client-relationships h2{font-size:16px;margin-bottom:35px}.site-footer{align-items:flex-start;flex-wrap:wrap;font-size:10px}.about-hero video{aspect-ratio:16/9}.about-intro,.about-partnership{display:block;padding:42px 25px}.portrait-photo{float:right;width:100px;margin:0 0 15px 20px}.about-intro:after{content:'';display:block;clear:both}.about-intro h1{font-size:38px}.bio,.about-partnership p,.about-process{font-size:15px}.about-partnership{padding-top:0}.about-partnership h2{margin:30px 0 0}.projects{padding:0 25px 35px}.project-strip figure{flex-basis:160px}.project-strip img{height:230px}.about-process{padding:25px}.about-collage{height:auto;grid-template-columns:1fr 1fr}.about-collage>*{height:200px}.about-collage video{grid-row:2;grid-column:1/-1;height:270px}.site-head .nav-label{overflow-wrap:anywhere;max-width:55px}}

/* Owner-selected theme and dimensions. Text contrast follows the background. */
.direction.d7 .site-head{min-height:var(--header-height,100px)}
.direction.d7 .identity strong{font-size:var(--title-size,30px)!important}
.direction.d7 .bio,.direction.d7 .about-partnership p,.direction.d7 .about-process{color:color-mix(in srgb,var(--ink) 76%,var(--bg))}
.logo-filter-definitions{position:absolute;pointer-events:none;overflow:hidden}.direction[data-dark=true] .client-logo-grid img,.direction[data-dark=true] .client-logo-grid svg{filter:url(#client-logo-light-ink);mix-blend-mode:normal;background:transparent;border-radius:0;padding:0}.direction[data-dark=true] .client-logo-grid [data-logo-treatment=white-lettering] img{filter:url(#client-logo-white-lettering)}
[data-element]{min-width:0}
@media(max-width:700px){.direction.d7 .site-head{grid-template-columns:minmax(0,1fr) minmax(0,3fr) minmax(0,1fr)}.direction.d7 .identity{max-width:100%}.direction.d7 .identity strong{font-size:min(var(--title-size,30px),10vw)!important}.direction.d7 .site-head .nav-label{max-width:100%}}

.projects h2{text-align:center}
/* Segment treatments share the same films and editable company labels. */
.d7 .segment-label{min-width:0;max-width:100%}
.d7 .segment-label:empty{display:none}
.d7[data-separator="short-rule"] .chapter{border:0;padding:18px 0 0!important}
.d7[data-separator="short-rule"] .segment-label:after{content:'';display:block;width:72px;max-width:100%;height:1px;background:color-mix(in srgb,var(--ink) 60%,var(--bg));margin:12px 0 0 auto}
.d7:is([data-separator="rounded-tab"],[data-separator="attached-tab"]) .chapter{position:relative;margin:0;padding:0!important;border-bottom:0;border-top:3px solid var(--ink);align-items:flex-start}
.d7:is([data-separator="rounded-tab"],[data-separator="attached-tab"]) .segment-label{display:flex;align-items:center;min-height:50px;padding:13px 28px 16px 42px;box-sizing:border-box;background:var(--ink);color:var(--bg)}
.d7:is([data-separator="rounded-tab"],[data-separator="attached-tab"]) .segment-label:empty{display:none}
.d7[data-separator="rounded-tab"] .segment-label{border-bottom-left-radius:32px}
.d7[data-separator="attached-tab"] .chapter{border-top-width:4px}
.d7[data-separator="attached-tab"] .segment-label{padding-left:44px;clip-path:polygon(0 0,100% 0,100% 100%,28px 100%)}
.d7[data-separator="attached-tab"] .chapter:before{content:'';display:block;background:transparent;flex:none;position:absolute;left:0;top:-4px;width:22%;height:16px;border-left:1px solid color-mix(in srgb,var(--ink) 50%,var(--bg));border-bottom:1px solid color-mix(in srgb,var(--ink) 50%,var(--bg));box-sizing:border-box;pointer-events:none}
@media(max-width:700px){.d7:is([data-separator="rounded-tab"],[data-separator="attached-tab"]) .segment-label{padding-right:18px}.d7[data-separator="attached-tab"] .segment-label{padding-left:36px}}
.site-head>[data-contact]{justify-self:end;text-align:right}

/* The name stays anchored within a full-width, symmetrical header lane. */
.direction.d7 .site-head{grid-template-columns:70px minmax(0,1fr) 70px;column-gap:20px}
.direction.d7 .identity{width:100%;max-width:100%;align-items:center;min-width:0}
.direction.d7 .identity strong{width:max-content;max-width:100%;white-space:nowrap;overflow-wrap:normal;flex-shrink:0}
.direction.d7 .identity span{max-width:100%}
@media(max-width:700px){.direction.d7 .site-head{grid-template-columns:50px minmax(0,1fr) 50px;column-gap:8px}.direction.d7 .identity span{letter-spacing:.08em;font-size:7px}}

/* Text is centered vertically in its own area; horizontal alignment is retained. */
.about-intro,.about-partnership{align-items:stretch}
.about-intro>div:first-child{align-self:center}
.bio,.partnership-copy{display:grid;grid-auto-rows:minmax(min-content,1fr);gap:20px}
.text-slot{display:grid;min-width:0}
.text-slot>p{align-self:center;margin:0!important}
.about-partnership>h2{align-self:center}
.about-process{display:grid}
.about-process>p{align-self:center}
/* Constrain every grid child, including intrinsic video height, to its track. */
.about-collage{height:var(--collage-height);grid-template-rows:minmax(0,1fr);overflow:hidden}
.about-collage>*{height:100%;max-height:100%;min-height:0;display:block}
.site-footer{position:relative;isolation:isolate;background:var(--bg)}
.client-logo-grid img,.client-logo-grid svg{transform:scale(var(--logo-scale,1));transform-origin:center}
/* Dialogs live outside the page wrapper, so inherit the same theme explicitly. */
#info-dialog{background:var(--site-bg,#f8f7f4);color:var(--site-ink,#181818)}
#info-dialog .close-dialog{background:var(--site-bg,#f8f7f4);border-color:color-mix(in srgb,var(--site-ink,#181818) 30%,transparent)}
body[data-dark=true] #info-dialog .close-dialog img{filter:invert(1)}
/* Equal framing on all four sides. The close control overlays the upper corner. */
#film-dialog{padding:12px;background:var(--site-bg,#f8f7f4);max-height:calc(100dvh - 32px)}
#film-dialog[data-border=false]{padding:0;background:transparent}
#film-dialog .close-dialog{top:18px;right:18px}
#film-dialog[data-border=false] .close-dialog{top:6px;right:6px}
#player video,#player iframe{max-height:calc(100dvh - 80px)}
#film-error{background:#090909;margin:0}
@media(max-width:700px){
 .bio,.partnership-copy{gap:20px}
 .about-intro>div:first-child{display:flow-root}
 .about-collage{height:auto;grid-template-rows:var(--collage-height) var(--collage-height)}
 .about-collage>*,.about-collage video{height:var(--collage-height);max-height:var(--collage-height)}
 #film-dialog{padding:8px}
}

#film-dialog{width:min(1200px,calc(100% - 24px),calc((100dvh - 80px) * var(--video-ratio,1.777778) + 24px))}#player video,#player iframe{width:100%;height:100%;aspect-ratio:var(--video-ratio,1.777778);object-fit:contain;background:#090909}

/* This alternate 2:3 poster fills the existing cover frame without stretching. */
.project-strip img[src="/review/assets/projects/solomon-bunch.jpg"]{object-fit:cover;object-position:center}
