/* Keep the violet navigation; let photography lead the scrolling studio. */
#main { padding-inline: 0; max-width: none; }
.block { margin-inline: var(--gutter); }
.signal-opening { background: #e6def1; }
.signal-opening figure, .signal-story figure { margin: 0; }
.signal-opening img, .signal-story img { display: block; width: 100%; height: auto; aspect-ratio: 2 / 3; object-fit: cover; }
.signal-opening-copy { padding: 36px var(--gutter) 48px; }
.signal-kicker { margin-bottom: 16px; color: var(--violet-ink); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; font-weight: 700; }
.signal-opening h2, .signal-gallery h2, .signal-story h2 { font-size: clamp(2rem, 4.5vw, 3.5rem); line-height: 1.06; }
.signal-opening-copy > p:not(.signal-kicker), .signal-gallery header > p:not(.signal-kicker), .signal-story div > p:not(.signal-kicker) { margin-top: 22px; max-width: 36em; line-height: 1.75; color: var(--ink-2); }
.signal-opening a, .signal-story a { display: inline-flex; align-items: center; min-height: 44px; margin-top: 18px; text-decoration: none; font-weight: 700; font-size: 14px; }
.signal-gallery { padding: 52px 0; background: #211539; color: #f5effa; overflow: hidden; }
.signal-gallery header { padding-inline: var(--gutter); margin-bottom: 30px; }
.signal-gallery .signal-kicker { color: #d4bafc; }
.signal-gallery header > p:not(.signal-kicker) { color: #d4c7e5; }
.gallery-track { display: flex; gap: 12px; padding: 0 var(--gutter) 14px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--gutter); overscroll-behavior-x: contain; scrollbar-width: thin; scrollbar-color: #b99bdc #3b2757; }
.gallery-track:focus-visible { outline-offset: -3px; }
.gallery-item { flex: 0 0 76%; min-width: 0; margin: 0; scroll-snap-align: start; }
.gallery-item img { display: block; width: 100%; height: auto; aspect-ratio: 2 / 3; object-fit: cover; }
.gallery-tools { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 20px var(--gutter) 0; }
.gallery-tools p { font-size: 12px; color: #d4c7e5; }
.gallery-tools > div { display: flex; gap: 8px; }
.gallery-tools button { border: 1px solid #c4afd8; border-radius: 0; width: 46px; height: 46px; background: transparent; color: #fff; font: inherit; font-size: 22px; cursor: pointer; transition: opacity 160ms; }
.gallery-tools button:disabled { opacity: .3; cursor: default; }
.signal-story { background: #e6def1; padding: 0 0 44px; }
.signal-story > div { padding: 32px var(--gutter) 0; }
.agency-ai-note { font-size: 12px; color: var(--muted); padding-top: 24px; }
.side__nav a { border: 0; border-radius: 0; border-bottom: 1px solid rgba(255,255,255,.4); padding-inline: 0; margin-right: 16px; }
.side__nav a[aria-current="true"] { background: transparent; color: #fff; border-bottom: 2px solid #ff8fb1; }
.deal, .steps li { border-radius: 0; }
@media (hover: hover) and (pointer: fine) { .signal-opening a:hover, .signal-story a:hover { text-decoration: underline; } .gallery-tools button:not(:disabled):hover { opacity: .65; } }
@media (min-width: 600px) { .gallery-item { flex-basis: 45%; } .signal-opening { display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; } .signal-opening-copy { padding-inline: 28px; } .signal-opening h2 { font-size: clamp(2rem, 4vw, 3rem); } }
@media (min-width: 1024px) {
  .split { grid-template-columns: minmax(0, 39%) minmax(0, 61%); }
  .side { padding-inline: clamp(28px, 3.5vw, 68px); }
  .side__title { font-size: clamp(2.5rem, 3.7vw, 4.8rem); }
  .side__lead { max-width: 29em; }
  .signal-opening { display: block; }
  .signal-opening figure { max-width: none; }
  .signal-opening img { max-height: none; object-fit: cover; }
  .signal-opening-copy { padding: 40px var(--gutter) 56px; }
  .block { margin-inline: var(--gutter); }
  .signal-story { display: grid; grid-template-columns: 1fr 1fr; align-items: center; padding: 0; }
  .signal-story > div { padding: 32px; }
  .signal-story h2 { font-size: clamp(1.8rem, 2.4vw, 2.9rem); }
  .signal-story div > p:not(.signal-kicker) { font-size: 15px; }
}
@media (min-width: 1600px) { .signal-opening { display: grid; grid-template-columns: 1fr .9fr; } .signal-opening img { max-height: none; } .signal-opening-copy { padding: 36px; } }
@media (prefers-reduced-motion: reduce) { .gallery-track { scroll-behavior: auto; } .gallery-tools button { transition: none; } }
