/* C: an editorial composition with an intentionally asymmetric image sequence. */
.gallery{--pink:#f1d6cf;--wine:#602133;--paper:#fffdf8}.gallery .header{background:var(--paper);color:var(--wine)}.gallery-hero{padding:30px var(--gutter) 95px;background:var(--paper);color:var(--wine)}.gallery-top{display:flex;justify-content:space-between;gap:30px;font-size:14px;margin-bottom:40px}.gallery-top p:last-child{text-align:right}.gallery-hero h1{text-align:center;font-size:clamp(74px,9.7vw,155px);line-height:.94;letter-spacing:-.065em;margin:0 0 70px}.gallery-composition{display:grid;grid-template-columns:1.3fr .85fr .65fr;gap:40px;align-items:center}.gallery-photo img{display:block;width:100%;height:500px;object-fit:cover;object-position:40% center}.gallery-detail{align-self:start;margin-top:-30px}.gallery-detail img{width:100%;height:280px;object-fit:cover;object-position:70% center;display:block}.gallery-composition figcaption{font-size:12px;margin-top:12px}.gallery-n{display:block;font-family:Georgia,serif;font-size:100px;line-height:1;margin-bottom:30px;letter-spacing:-.09em}.gallery-note p{font-size:17px;margin-bottom:27px}.gallery-note .primary{gap:24px;font-size:15px}.gallery .intro{background:#f1d6cf;color:var(--wine)}.gallery .services{background:var(--paper)}.gallery .service{background:transparent!important;color:var(--wine)!important;border-top:1px solid #c9b7b5;margin:0;padding:0}.gallery .service summary{min-height:130px}.gallery .service:last-child{border-bottom:1px solid #c9b7b5}.gallery .listening{background:#f1d6cf}
/* D: a typographic campaign and an original repeatable graphic mark. */
.direction-signal{--wine:#601c32;--pink:#f4bfd0;background:#fff9ee}.direction-signal .header{background:#fff9ee;color:var(--wine)}.signal-hero{display:grid;grid-template-columns:1.15fr 1fr;background:#fff9ee;color:var(--wine);padding-left:var(--gutter);gap:35px;align-items:stretch}.signal-heading{padding:50px 0 60px}.signal-heading>p{font-size:14px;margin-bottom:45px}.signal-hero h1{font-size:clamp(62px,7vw,108px);line-height:1;letter-spacing:-.065em}.signal-intro{margin-top:50px;max-width:390px}.signal-intro p{font-size:17px;margin-bottom:26px}.signal-poster{position:relative;background:#f4bfd0;color:#601c32;overflow:hidden;min-height:640px;display:flex;flex-direction:column;justify-content:space-between}.signal-poster>svg{width:100%;height:100%;min-height:510px;display:block}.poster-footer{display:flex;gap:20px;align-items:end;justify-content:space-between;padding:25px 30px;font-size:13px}.poster-brand{font-family:Georgia,serif;font-size:42px;letter-spacing:-3px;line-height:1}.direction-signal .intro{background:#e73539;color:#fff9ee}.direction-signal .services{background:#fff9ee}.direction-signal .listening{background:#f4bfd0}.direction-signal .graphic-signal{background:#601c32}.direction-signal .engagements{background:#fff9ee}
@media(max-width:1000px){.gallery-composition{grid-template-columns:1.2fr 1fr;gap:30px}.gallery-detail{display:none}.gallery-photo img{height:440px}.signal-hero{gap:20px}.signal-hero h1{font-size:7vw}.signal-poster{min-height:590px}.signal-poster>svg{min-height:460px}.poster-footer{padding:25px 20px}.poster-brand{font-size:34px}}
@media(max-width:650px){.gallery-hero{padding:25px 24px 60px}.gallery-top{font-size:12px;gap:20px;margin-bottom:35px}.gallery-top p:first-child{max-width:17ch}.gallery-top p:last-child{max-width:15ch}.gallery-hero h1{font-size:clamp(44px,12vw,74px);line-height:1.05;margin-bottom:35px;text-align:left}.gallery-composition{display:flex;flex-direction:column;align-items:stretch;gap:28px}.gallery-photo img{height:350px}.gallery-photo{margin-left:-24px;margin-right:-24px}.gallery-composition figcaption{padding-left:24px}.gallery-note{display:grid;grid-template-columns:65px 1fr;gap:0 20px;align-items:start}.gallery-n{font-size:70px;grid-row:1/3;margin:0}.gallery-note p{font-size:16px;margin-bottom:22px}.gallery-note .primary{justify-self:start}.gallery .service summary{min-height:110px}.signal-hero{display:flex;flex-direction:column;padding:0;gap:0}.signal-heading{padding:28px 24px 45px}.signal-heading>p{font-size:13px;margin-bottom:30px}.signal-hero h1{font-size:clamp(48px,12.8vw,78px)}.signal-intro{margin-top:28px}.signal-intro p{font-size:16px}.signal-poster{min-height:0;margin:0 24px 45px}.signal-poster>svg{min-height:0;height:auto;aspect-ratio:1}.poster-footer{padding:20px;font-size:12px}.poster-brand{font-size:34px}}
