:root {
  --refresh-shadow: 0 1px 2px rgba(3, 3, 3, .03), 0 16px 40px rgba(3, 3, 3, .07);
  --refresh-shadow-dark: 0 2px 8px rgba(0, 0, 0, .16), 0 24px 56px rgba(0, 0, 0, .22);
}

/* AlignUI hierarchy and stable scroll-story geometry. */
:is(h1, h2, h3, h4, h5, h6),
:is(h1, h2, h3, h4, h5, h6) * {
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}

/* WCAG AA contrast for compact operational labels. */
.responsibility-track article footer b,
.scenario-track article footer b,
.process-phase-strip span b,
.portfolio-track article > div > header b,
.scope-track article > header > span {
  color: #525866 !important;
}

#industries > div > div > span {
  color: #b8bcc5 !important;
}

.responsibility-track article.is-google-boundary footer b,
.scenario-track article.is-next footer b {
  color: #c7cbd1 !important;
}

footer#footer {
  background: #030303 !important;
  color: #ffffff !important;
}

footer#footer .footer-v3-bottom,
footer#footer .footer-v3-bottom span {
  color: #c7cbd1 !important;
}

footer#footer .footer-v3-bottom {
  background: #030303 !important;
}

section[data-scroll-story] {
  position: relative;
  overflow-x: clip;
  overflow-y: visible;
}

[data-scroll-track],
[data-review-scroll-track] {
  transform: translate3d(var(--story-x, 0), 0, 0);
  will-change: transform;
}

/* Scrubbed choreography for the editable narrative scenes. */
[data-cinematic-story] {
  --story-progress: 0;
  --scene-shift-y: 0px;
  --scene-scale: 1;
  --scene-tilt: 0deg;
  isolation: isolate;
}

[data-cinematic-story] > :is([data-story-stage], .b-story-stage, .services-stage) {
  isolation: isolate;
}

[data-cinematic-story] > :is([data-story-stage], .b-story-stage, .services-stage)::before,
[data-cinematic-story] > :is([data-story-stage], .b-story-stage, .services-stage)::after {
  content: "";
  position: absolute;
  z-index: 20;
  top: 24px;
  left: max(24px, calc((100vw - 1264px) / 2));
  right: max(24px, calc((100vw - 1264px) / 2));
  height: 2px;
  pointer-events: none;
  transform-origin: left center;
}

[data-cinematic-story] > :is([data-story-stage], .b-story-stage, .services-stage)::before {
  background: rgba(142, 147, 158, .28);
}

[data-cinematic-story] > :is([data-story-stage], .b-story-stage, .services-stage)::after {
  background: #ffea00;
  transform: scaleX(var(--story-progress));
  box-shadow: 0 0 0 1px rgba(255, 234, 0, .08);
}

[data-cinematic-story] [data-motion-anchor] {
  transform: translate3d(0, var(--scene-shift-y), 0) rotate(var(--scene-tilt)) scale(var(--scene-scale));
  transform-origin: center;
}

[data-cinematic-story] [data-motion-card] {
  transform: translate3d(0, var(--card-drift-y, 0), 0) rotate(var(--card-rotate, 0deg)) scale(var(--card-scale, 1));
  transform-origin: center;
  backface-visibility: hidden;
}

[data-cinematic-story] [data-motion-card] :is(
  .ranking-signal-stack,
  .ranking-cta-preview,
  .service-mini-ui,
  dl,
  footer
) {
  transform: translate3d(0, var(--visual-shift, 0), 0);
}

[data-cinematic-story][data-story-state="complete"] [data-motion-card],
[data-cinematic-story][data-story-state="complete"] [data-motion-anchor] {
  transform: none;
}

@media (min-width: 961px) and (min-height: 800px) {
  [data-cinematic-story] {
    --story-edge: max(24px, calc((100vw - 1264px) / 2));
  }

  [data-cinematic-story] :is(
    .responsibility-viewport,
    .attribution-viewport,
    .services-viewport,
    .scope-viewport,
    .process-viewport,
    .conversion-viewport,
    .scenario-viewport,
    .portfolio-viewport,
    .gbp-system-viewport
  ) {
    width: calc(100% + var(--story-edge));
    margin-right: calc(0px - var(--story-edge));
    padding-right: var(--story-edge);
    border-radius: 24px 0 0 24px;
  }
}

#ranking-vs-conversion .ranking-story-track {
  padding-right: 32px;
}

#ranking-vs-conversion > .b-story-stage {
  width: min(1264px, calc(100% - 48px));
  margin-inline: auto;
}

#ranking-vs-conversion .ranking-story-track > article:nth-child(even) {
  margin-top: 24px;
}

#ranking-vs-conversion .ranking-decision-board {
  position: relative;
  z-index: 2;
}

/* Responsibility */
.responsibility-v3 {
  padding: 96px 24px;
  background: #f6f8fa;
  border-block: 1px solid #e2e4e9;
}

.responsibility-shell {
  display: grid;
  grid-template-columns: 344px minmax(0, 1fr);
  gap: 24px;
  margin-top: 48px;
}

.responsibility-anchor {
  min-height: 488px;
  display: flex;
  flex-direction: column;
  padding: 32px;
  border-radius: 24px;
  background: #030303;
  color: #ffffff;
  box-shadow: var(--refresh-shadow-dark);
}

.responsibility-anchor .b-status { align-self: flex-start; }
.responsibility-anchor h3 { margin: 32px 0 0; font-size: 32px; line-height: 40px; }
.responsibility-anchor > p { margin: 16px 0 0; color: #c8cbd1; font-size: 14px; line-height: 24px; }

.responsibility-ledger {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: auto;
  padding-top: 32px;
}

.responsibility-ledger span {
  min-height: 56px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border: 1px solid #30302c;
  border-radius: 12px;
  background: #151513;
}

.responsibility-ledger b {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  flex: none;
  border-radius: 8px;
  background: #ffea00;
  color: #030303;
  font-size: 10px;
  line-height: 16px;
}

.responsibility-ledger small { color: #d8d9de; font-size: 10px; line-height: 16px; }
.responsibility-viewport { min-width: 0; overflow: hidden; border-radius: 24px; }

.responsibility-track {
  width: max-content;
  display: flex;
  align-items: stretch;
  gap: 16px;
  padding: 0 32px 24px 0;
}

.responsibility-track article {
  width: 336px;
  min-height: 464px;
  flex: none;
  display: flex;
  flex-direction: column;
  padding: 24px;
  border: 1px solid #e2e4e9;
  border-radius: 20px;
  background: #ffffff;
  box-shadow: var(--refresh-shadow);
}

.responsibility-track article:nth-child(even) { margin-top: 24px; }
.responsibility-track article header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.responsibility-track article header > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #e0faec; color: #0b6e3b; font-size: 12px; line-height: 16px; }
.responsibility-track article header em { padding: 4px 8px; border-radius: 8px; background: #e0faec; color: #0b6e3b; font-size: 10px; line-height: 16px; font-style: normal; }
.responsibility-track h3 { margin: 48px 0 0; font-size: 24px; line-height: 32px; }
.responsibility-track p { margin: 12px 0 0; color: #525866; font-size: 14px; line-height: 24px; }
.responsibility-track footer { margin-top: auto; padding-top: 24px; border-top: 1px solid #e2e4e9; }
.responsibility-track footer b, .responsibility-track footer span { display: block; }
.responsibility-track footer b { color: #7a7f8b; font-size: 10px; line-height: 16px; text-transform: uppercase; }
.responsibility-track footer span { margin-top: 4px; color: #030303; font-size: 13px; line-height: 20px; }
.responsibility-track .is-google-boundary { border-color: #30302c; background: #151513; color: #ffffff; }
.responsibility-track .is-google-boundary header > span { background: #ffea00; color: #030303; }
.responsibility-track .is-google-boundary header em { background: #30302c; color: #ffea00; }
.responsibility-track .is-google-boundary p { color: #a5a8b3; }
.responsibility-track .is-google-boundary footer { border-color: #30302c; }
.responsibility-track .is-google-boundary footer span { color: #ffffff; }

.responsibility-proofbar {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 16px;
  padding: 8px;
  border: 1px solid #e2e4e9;
  border-radius: 16px;
  background: #ffffff;
}

.responsibility-proofbar span { min-height: 48px; display: flex; align-items: center; gap: 10px; padding: 8px 12px; border-radius: 12px; background: #f6f8fa; }
.responsibility-proofbar i { width: 8px; height: 8px; flex: none; border-radius: 50%; background: #1fc16b; box-shadow: 0 0 0 4px rgba(31, 193, 107, .14); }
.responsibility-proofbar b { font-size: 11px; line-height: 16px; }

/* Attribution evidence console */
.attribution-v3 { padding: 96px 24px; background: #030303; color: #ffffff; }
.attribution-v3 .b-title { color: #ffffff; }
.attribution-v3 .b-copy { color: #b8bcc5; }
.attribution-shell { display: grid; grid-template-columns: 328px minmax(0, 1fr); gap: 24px; margin-top: 48px; }
.attribution-anchor { min-height: 464px; display: flex; flex-direction: column; padding: 24px; border: 1px solid #30302c; border-radius: 24px; background: #151513; }
.attribution-anchor-head { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 12px; align-items: center; }
.attribution-anchor-head > span { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: #ffffff; color: #4285f4; font-size: 20px; line-height: 28px; }
.attribution-anchor-head small, .attribution-anchor-head strong { display: block; }
.attribution-anchor-head small { color: #8e939e; font-size: 10px; line-height: 16px; text-transform: uppercase; }
.attribution-anchor-head strong { margin-top: 4px; font-size: 16px; line-height: 24px; }
.attribution-health { display: grid; gap: 16px; margin-top: 40px; }
.attribution-health span { display: grid; grid-template-columns: 88px minmax(0, 1fr) 80px; gap: 8px; align-items: center; }
.attribution-health b, .attribution-health em { font-size: 10px; line-height: 16px; font-style: normal; }
.attribution-health em { color: #8e939e; text-align: right; }
.attribution-health i { position: relative; height: 6px; overflow: hidden; border-radius: 999px; background: #30302c; }
.attribution-health i::after { content: ""; position: absolute; inset: 0 auto 0 0; width: var(--health); border-radius: inherit; background: #ffea00; }
.attribution-anchor > p { margin: auto 0 0; padding-top: 32px; color: #a5a8b3; font-size: 13px; line-height: 20px; }
.attribution-viewport { min-width: 0; overflow: hidden; border-radius: 24px; }
.attribution-track { width: max-content; display: flex; align-items: stretch; gap: 16px; padding: 0 32px 24px 0; }
.attribution-track article { width: 336px; min-height: 440px; flex: none; display: flex; flex-direction: column; padding: 24px; border: 1px solid #30302c; border-radius: 20px; background: #11110f; box-shadow: var(--refresh-shadow-dark); }
.attribution-track article:nth-child(even) { margin-top: 24px; }
.attribution-track header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.attribution-track header > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #20201d; color: #ffffff; }
.attribution-track header > span.is-blue { background: #e8f0fe; color: #2453d4; }
.attribution-track header > span.is-yellow { background: #fff8d6; color: #79500a; }
.attribution-track header > span.is-purple { background: #efebff; color: #6e3ff3; }
.attribution-track header > span.is-green { background: #e0faec; color: #0b6e3b; }
.attribution-track header em { color: #8e939e; font-size: 10px; line-height: 16px; font-style: normal; }
.attribution-track h3 { margin: 48px 0 0; font-size: 24px; line-height: 32px; }
.attribution-track p { margin: 12px 0 0; color: #a5a8b3; font-size: 14px; line-height: 24px; }
.attribution-track dl { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin: auto 0 0; padding-top: 24px; }
.attribution-track dl div { padding: 12px; border: 1px solid #30302c; border-radius: 12px; background: #151513; }
.attribution-track dt, .attribution-track dd { margin: 0; }
.attribution-track dt { color: #8e939e; font-size: 9px; line-height: 16px; text-transform: uppercase; }
.attribution-track dd { margin-top: 4px; color: #ffffff; font-size: 11px; line-height: 16px; }
.attribution-track .is-confirmed { border-color: #e5ce00; background: #ffea00; color: #030303; }
.attribution-track .is-confirmed header > span { background: #030303; color: #ffea00; }
.attribution-track .is-confirmed header em, .attribution-track .is-confirmed p { color: #30323a; }
.attribution-track .is-confirmed dl div { border-color: #e5ce00; background: #fffdf0; }
.attribution-track .is-confirmed dt, .attribution-track .is-confirmed dd { color: #30323a; }
.attribution-note { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; align-items: center; margin-top: 16px; padding: 16px; border: 1px solid #30302c; border-radius: 16px; background: #11110f; }
.attribution-note > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #ffea00; color: #030303; font-weight: 500; }
.attribution-note p { margin: 0; color: #c8cbd1; font-size: 12px; line-height: 20px; }

/* Services */
.services-v3 { padding: 0; background: #030303; color: #ffffff; }
.services-stage { padding: 88px 24px; }
.services-v3 .b-title { color: #ffffff; }
.services-v3 .b-copy { color: #a5a8b3; }
.services-head { align-items: end; }
.services-shell { display: grid; grid-template-columns: 384px minmax(0, 1fr); gap: 40px; align-items: center; margin-top: 48px; }
#services [data-service-visual] { width: 100% !important; max-width: 360px !important; transform: scale(.88); transform-origin: center; }
#services [data-service-stat] { display: none !important; }
.services-viewport { min-width: 0; overflow: hidden; border-radius: 24px; }
.services-track { width: max-content; display: flex !important; flex-direction: row !important; align-items: stretch; gap: 16px !important; padding: 16px 32px 24px 0; }
.services-track > article { position: relative; width: 456px; min-height: 496px; flex: none; display: flex !important; flex-direction: column; gap: 0 !important; padding: 24px; overflow: hidden; border: 1px solid #30302c; border-radius: 24px !important; background: #11110f; box-shadow: var(--refresh-shadow-dark); }
#services.services-v3 .services-track > article { position: relative !important; top: auto !important; display: flex !important; grid-template-columns: none !important; flex-direction: column !important; align-items: stretch !important; gap: 0 !important; min-height: 496px !important; padding: 24px !important; }
.services-track > article:nth-child(even) { margin-top: 24px; }
.services-track > article::after { content: none !important; }
.services-track > article > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.services-track > article > header span { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid #3c3c38; border-radius: 12px; color: #ffea00; font-size: 11px; line-height: 16px; }
.services-track > article > header em { padding: 4px 8px; border-radius: 8px; background: #20201d; color: #d8d9de; font-size: 10px; line-height: 16px; font-style: normal; }
.service-card-copy { margin-top: 32px; }
.service-card-copy h3 { margin: 0 !important; color: #ffffff !important; font-size: 28px !important; line-height: 36px !important; text-transform: none !important; }
.service-card-copy p { margin: 12px 0 0 !important; color: #a5a8b3 !important; font-size: 14px !important; line-height: 24px !important; }
.service-mini-ui { position: relative; min-height: 160px; margin-top: auto; padding: 20px; overflow: hidden; border: 1px solid #e2e4e9; border-radius: 16px; background: #ffffff; color: #030303; }
.service-mini-ui > span { display: flex; align-items: end; gap: 8px; }
.service-mini-ui > span b { font-size: 32px; line-height: 40px; }
.service-mini-ui > span small { max-width: 112px; padding-bottom: 4px; color: #69707d; font-size: 10px; line-height: 16px; }
.service-mini-ui > i { display: block; height: 8px; margin-top: 12px; border-radius: 999px; background: #e8f0fe; }
.service-mini-ui > i:nth-of-type(1) { width: 88%; }
.service-mini-ui > i:nth-of-type(2) { width: 64%; }
.service-mini-ui > i:nth-of-type(3) { width: 76%; }
.service-mini-ui footer { position: absolute; right: 16px; bottom: 16px; padding: 6px 10px; border-radius: 8px; background: #e0faec; color: #0b6e3b; font-size: 10px; line-height: 16px; }
.service-mini-ui.is-purple > i { background: #efebff; }
.service-mini-ui.is-green > i { background: #e0faec; }
.service-mini-ui.is-yellow > i { background: #fff8d6; }
.service-mini-ui.is-cyan > i { background: #ebfaff; }
.service-mini-ui.is-dark { border-color: #30302c; background: #20201d; color: #ffffff; }
.service-mini-ui.is-dark > span small { color: #a5a8b3; }
.service-mini-ui.is-dark > i { background: #3c3c38; }
.service-mini-ui.is-dark footer { background: #ffea00; color: #030303; }
#services [data-service-item][data-service-active="1"] { border-color: #ffea00 !important; background: #151513 !important; box-shadow: 0 0 0 1px rgba(255, 234, 0, .24), var(--refresh-shadow-dark) !important; }

/* Scope */
.scope-v3 { padding: 96px 24px; background: #f6f8fa; border-block: 1px solid #e2e4e9; }
.scope-command { margin-top: 48px; padding: 16px; border: 1px solid #e2e4e9; border-radius: 24px; background: #ffffff; box-shadow: var(--refresh-shadow); }
.scope-command-head { display: grid; grid-template-columns: auto 1fr auto 1fr auto 1fr auto; gap: 12px; align-items: center; padding: 8px 8px 24px; }
.scope-command-head span { display: flex; align-items: center; gap: 8px; }
.scope-command-head b { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 10px; background: #030303; color: #ffea00; font-size: 10px; line-height: 16px; }
.scope-command-head small { font-size: 11px; line-height: 16px; }
.scope-command-head i { height: 2px; background: #e2e4e9; }
.scope-viewport { overflow: hidden; border-radius: 16px; }
.scope-track { width: max-content; display: flex; align-items: stretch; gap: 16px; padding: 0 32px 24px 0; }
.scope-track article { width: 312px; min-height: 344px; flex: none; display: flex; flex-direction: column; padding: 24px; border: 1px solid #e2e4e9; border-radius: 16px; background: #f6f8fa; }
.scope-track article:nth-child(even) { margin-top: 24px; }
.scope-track article header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.scope-track article header span { color: #7a7f8b; font-size: 11px; line-height: 16px; }
.scope-track article header em { padding: 4px 8px; border-radius: 8px; background: #e8f0fe; color: #2453d4; font-size: 10px; line-height: 16px; font-style: normal; }
.scope-track h3 { margin: 40px 0 0; font-size: 24px; line-height: 32px; }
.scope-track p { margin: 12px 0 0; color: #525866; font-size: 14px; line-height: 24px; }
.scope-track footer { margin-top: auto; padding-top: 16px; border-top: 1px solid #e2e4e9; color: #0b6e3b; font-size: 11px; line-height: 16px; }
.scope-track .is-dark { border-color: #30302c; background: #030303; color: #ffffff; }
.scope-track .is-dark header em { background: #ffea00; color: #030303; }
.scope-track .is-dark p { color: #a5a8b3; }
.scope-track .is-dark footer { border-color: #30302c; color: #ffea00; }
.scope-delivery-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 16px; }
.scope-delivery-strip span { min-height: 72px; padding: 12px 16px; border: 1px solid #e2e4e9; border-radius: 14px; background: #ffffff; }
.scope-delivery-strip b, .scope-delivery-strip small { display: block; }
.scope-delivery-strip b { font-size: 12px; line-height: 16px; }
.scope-delivery-strip small { margin-top: 4px; color: #69707d; font-size: 10px; line-height: 16px; }

/* Process */
.process-v3 { padding: 96px 24px; background: #ffffff; }
.process-phase-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 40px; padding: 8px; border: 1px solid #e2e4e9; border-radius: 16px; background: #f6f8fa; }
.process-phase-strip span { min-height: 64px; padding: 8px 12px; border-radius: 12px; background: #ffffff; }
.process-phase-strip b, .process-phase-strip small { display: block; }
.process-phase-strip b { color: #7a7f8b; font-size: 10px; line-height: 16px; }
.process-phase-strip small { margin-top: 4px; font-size: 11px; line-height: 16px; }
.process-viewport { margin-top: 24px; overflow: hidden; border-radius: 24px; }
.process-track { width: max-content; display: flex; align-items: stretch; gap: 16px; padding: 0 32px 24px 0; }
.process-card { width: 304px; min-height: 384px; flex: none; display: flex; flex-direction: column; padding: 24px; border: 1px solid #e2e4e9; border-radius: 20px; background: #ffffff; box-shadow: var(--refresh-shadow); }
.process-card:nth-child(even) { margin-top: 24px; }
.process-card header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.process-card header span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #ffea00; font-size: 11px; line-height: 16px; }
.process-card header em { padding: 4px 8px; border-radius: 8px; background: #f6f8fa; color: #525866; font-size: 10px; line-height: 16px; font-style: normal; }
.process-card h3 { margin: 40px 0 0; font-size: 22px; line-height: 32px; }
.process-card p { margin: 12px 0 0; color: #525866; font-size: 13px; line-height: 24px; }
.process-card footer { display: flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 16px; border-top: 1px solid #e2e4e9; }
.process-card footer i { width: 8px; height: 8px; flex: none; border-radius: 50%; background: #1fc16b; }
.process-card footer small { color: #69707d; font-size: 10px; line-height: 16px; }
.process-card.is-final { border-color: #30302c; background: #030303; color: #ffffff; }
.process-card.is-final p, .process-card.is-final footer small { color: #a5a8b3; }
.process-card.is-final footer { border-color: #30302c; }
.process-footer { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 16px; padding: 16px; border: 1px solid #e2e4e9; border-radius: 16px; background: #f6f8fa; }
.process-footer p { margin: 0; max-width: 720px; color: #525866; font-size: 12px; line-height: 20px; }

/* Featured plan */
.plans-track .plan-card { min-height: 568px; }
.plan-card.is-featured { isolation: isolate; overflow: hidden; border: 2px solid #d7b900; box-shadow: 0 2px 8px rgba(3, 3, 3, .04), 0 20px 48px rgba(215, 185, 0, .16); }
.plan-card.is-featured::before { content: ""; position: absolute; z-index: -1; inset: 0 0 auto; height: 8px; background: #ffea00; }
.plan-card.is-featured > header em { padding: 6px 10px; background: #ffea00; color: #030303; box-shadow: 0 0 0 4px #fff8a8; }
.plan-feature-visual { margin-top: 20px; padding: 16px; border: 1px solid #eee2a2; border-radius: 16px; background: #fffdf0; }
.plan-feature-visual > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.plan-feature-visual > div span { display: inline-flex; align-items: center; gap: 8px; }
.plan-feature-visual > div i { width: 8px; height: 8px; border-radius: 50%; background: #1fc16b; box-shadow: 0 0 0 4px rgba(31, 193, 107, .14); }
.plan-feature-visual > div b, .plan-feature-visual > div em { font-size: 9px; line-height: 16px; font-style: normal; }
.plan-feature-visual > div em { padding: 4px 8px; border-radius: 8px; background: #ffffff; color: #525866; }
.plan-feature-visual > ul { height: 48px; display: flex; align-items: end; gap: 8px; margin: 12px 0 0; padding: 0; list-style: none; }
.plan-feature-visual > ul li { width: 100%; height: var(--level); border-radius: 6px 6px 2px 2px; background: #4285f4; }
.plan-feature-visual > ul li:nth-child(2) { background: #ffea00; }
.plan-feature-visual > ul li:nth-child(3) { background: #1fc16b; }
.plan-feature-visual > ul li:nth-child(4) { background: #030303; }
.plan-feature-visual > footer { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; margin-top: 8px; }
.plan-feature-visual > footer span { color: #69707d; font-size: 8px; line-height: 16px; text-align: center; }
.plan-card.is-featured h3 { margin-top: 20px; }

/* Map */
.map-v3-section .map-intelligence-stage { box-shadow: var(--refresh-shadow) !important; }
.map-illustration-v4 { position: relative; isolation: isolate; height: 520px; overflow: hidden; border: 1px solid #1d3850 !important; border-radius: 24px; background: #082238; }
.map-illustration-grid { position: absolute; inset: 0; overflow: hidden; opacity: .72; }
.map-illustration-grid::before, .map-illustration-grid::after, .map-illustration-grid i { content: ""; position: absolute; display: block; background: #315069; }
.map-illustration-grid::before { left: -12%; top: 28%; width: 132%; height: 16px; transform: rotate(12deg); }
.map-illustration-grid::after { left: 42%; top: -12%; width: 16px; height: 132%; transform: rotate(18deg); }
.map-illustration-grid i:nth-child(1) { left: -8%; top: 58%; width: 120%; height: 8px; transform: rotate(-20deg); }
.map-illustration-grid i:nth-child(2) { left: 16%; top: -8%; width: 8px; height: 124%; transform: rotate(-8deg); }
.map-illustration-grid i:nth-child(3) { right: -8%; top: 72%; width: 76%; height: 8px; transform: rotate(24deg); }
.map-illustration-grid i:nth-child(4) { right: 24%; top: -4%; width: 8px; height: 120%; transform: rotate(42deg); }
.map-illustration-grid i:nth-child(5) { left: -8%; top: 12%; width: 72%; height: 4px; transform: rotate(-28deg); background: #1d405a; }
.map-illustration-grid i:nth-child(6) { right: 4%; top: 4%; width: 4px; height: 72%; transform: rotate(-18deg); background: #1d405a; }
#mappack .map-illustration-v4 > .map-query-card,
#mappack .map-illustration-v4 > .map-v3-pin,
#mappack .map-illustration-v4 > .map-competitor-dock,
#mappack .map-illustration-v4 > .map-signal-lenses { display: flex !important; }
.map-query-card { position: absolute; z-index: 8; left: 24px; right: 24px; top: 24px; align-items: center; gap: 12px; padding: 12px 16px; border: 1px solid #e2e4e9; border-radius: 16px; background: #ffffff; box-shadow: 0 8px 24px rgba(3, 3, 3, .16); transform: translate3d(calc((var(--map-progress, .5) - .5) * 20px), 0, 0); }
.map-query-card > span { display: grid; place-items: center; width: 36px; height: 36px; flex: none; border-radius: 10px; background: #e8f0fe; color: #2453d4; font-size: 16px; }
.map-query-card small, .map-query-card strong { display: block; }
.map-query-card small { color: #69707d; font-size: 9px; line-height: 16px; text-transform: uppercase; }
.map-query-card strong { color: #30323a; font-size: 12px; line-height: 16px; }
.map-query-card em { margin-left: auto; padding: 4px 8px; border-radius: 8px; background: #e0faec; color: #0b6e3b; font-size: 9px; line-height: 16px; font-style: normal; }
.map-radar-core { position: absolute; z-index: 2; left: 52%; top: 46%; width: 184px; height: 184px; transform: translate(-50%, -50%); }
.map-radar-core span { position: absolute; inset: 0; border: 1px solid rgba(66, 133, 244, .48); border-radius: 50%; transform: scale(.98); }
.map-radar-core span:nth-child(2) { inset: 28px; border-color: rgba(255, 234, 0, .46); }
.map-radar-core span:nth-child(3) { inset: 56px; border-color: rgba(31, 193, 107, .52); }
.map-radar-core b { position: absolute; inset: 72px; display: grid; place-items: center; border-radius: 12px; background: #ffea00; color: #030303; font-size: 14px; box-shadow: 0 8px 24px rgba(0, 0, 0, .24); }
.map-v3-pin { position: absolute; z-index: 5; flex-direction: column; align-items: center; gap: 4px; transform: translate3d(0, calc((var(--map-progress, .5) - .5) * -24px), 0); }
.map-v3-pin b { display: grid; place-items: center; width: 40px; height: 40px; border: 2px solid rgba(255, 255, 255, .72); border-radius: 12px; background: #ea4335; color: #ffffff; box-shadow: 0 8px 20px rgba(3, 3, 3, .24); font-size: 11px; }
.map-v3-pin small { padding: 4px 8px; border: 1px solid rgba(255, 255, 255, .24); border-radius: 999px; background: #ffffff; color: #30323a; box-shadow: 0 4px 12px rgba(3, 3, 3, .16); font-size: 9px; line-height: 16px; white-space: nowrap; }
.map-v3-pin.is-a { left: 58%; top: 24%; }
.map-v3-pin.is-b { left: 18%; top: 34%; }
.map-v3-pin.is-b b { background: #4285f4; }
.map-v3-pin.is-c { right: 12%; top: 42%; }
.map-v3-pin.is-c b { background: #34a853; }
.map-v3-pin.is-you { right: 24%; top: 62%; }
.map-v3-pin.is-you b { background: #030303; color: #ffea00; }
.map-competitor-dock { position: absolute; z-index: 7; left: 24px; bottom: 24px; width: 304px; flex-direction: column; padding: 12px; border: 1px solid #e2e4e9; border-radius: 16px; background: #ffffff; box-shadow: 0 12px 32px rgba(3, 3, 3, .18); transform: translate3d(calc((.5 - var(--map-progress, .5)) * 24px), 0, 0); }
.map-competitor-dock header { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.map-competitor-dock header span { display: flex; align-items: center; gap: 8px; }
.map-competitor-dock header i { width: 8px; height: 8px; border-radius: 50%; background: #1fc16b; box-shadow: 0 0 0 4px rgba(31, 193, 107, .14); }
.map-competitor-dock header b, .map-competitor-dock header em { font-size: 9px; line-height: 16px; font-style: normal; }
.map-competitor-dock header em { color: #7a7f8b; }
.map-competitor-dock > div { display: grid; gap: 4px; margin-top: 8px; }
.map-competitor-dock > div > span { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; gap: 8px; align-items: center; min-height: 32px; padding: 4px 8px; border-radius: 8px; background: #f6f8fa; }
.map-competitor-dock > div > span > b { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 8px; background: #ffffff; color: #525866; font-size: 9px; }
.map-competitor-dock strong, .map-competitor-dock small { font-size: 9px; line-height: 16px; }
.map-competitor-dock small { color: #69707d; }
.map-competitor-dock .is-you { border: 1px solid #e5ce00; background: #fffdf0; }
.map-competitor-dock .is-you > b { background: #ffea00; color: #030303; }
.map-signal-lenses { position: absolute; z-index: 6; right: 24px; top: 96px; flex-direction: column; gap: 6px; padding: 8px; border: 1px solid #e2e4e9; border-radius: 14px; background: #ffffff; box-shadow: 0 8px 24px rgba(3, 3, 3, .14); transform: translate3d(calc((var(--map-progress, .5) - .5) * 24px), 0, 0); }
.map-signal-lenses span { display: flex; align-items: center; gap: 8px; min-height: 28px; padding: 4px 8px; border-radius: 8px; background: #f6f8fa; }
.map-signal-lenses i { width: 8px; height: 8px; border-radius: 50%; background: #4285f4; }
.map-signal-lenses i.is-red { background: #ea4335; }
.map-signal-lenses i.is-yellow { background: #f6b51e; }
.map-signal-lenses b { color: #30323a; font-size: 9px; line-height: 16px; }
.map-reading-card { position: absolute; z-index: 6; right: 24px; bottom: 24px; width: 216px; padding: 16px; border: 1px solid #34536c; border-radius: 16px; background: #0d2c45; color: #ffffff; box-shadow: 0 12px 32px rgba(0, 0, 0, .2); transform: translate3d(calc((var(--map-progress, .5) - .5) * -16px), 0, 0); }
.map-reading-card small, .map-reading-card strong { display: block; }
.map-reading-card small { color: #9fb5c7; font-size: 9px; line-height: 16px; text-transform: uppercase; }
.map-reading-card strong { margin-top: 8px; font-size: 12px; line-height: 20px; }

/* Conversion */
.conversion-v3 { padding: 96px 24px; background: #f6f8fa; border-block: 1px solid #e2e4e9; }
.conversion-viewport { margin-top: 48px; overflow: hidden; border-radius: 24px; }
.conversion-track-v3 { width: max-content; display: flex; align-items: stretch; gap: 16px; padding: 0 32px 24px 0; }
.conversion-track-v3 article { width: 336px; min-height: 400px; flex: none; display: flex; flex-direction: column; padding: 24px; border: 1px solid #e2e4e9; border-radius: 20px; background: #ffffff; box-shadow: var(--refresh-shadow); }
.conversion-track-v3 article:nth-child(even) { margin-top: 24px; }
.conversion-track-v3 header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.conversion-track-v3 header span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #f6f8fa; color: #525866; font-size: 11px; line-height: 16px; }
.conversion-track-v3 header em { padding: 4px 8px; border-radius: 8px; background: #e8f0fe; color: #2453d4; font-size: 10px; line-height: 16px; font-style: normal; }
.conversion-track-v3 h3 { margin: 40px 0 0; font-size: 24px; line-height: 32px; }
.conversion-track-v3 p { margin: 12px 0 0; color: #525866; font-size: 14px; line-height: 24px; }
.conversion-proof, .conversion-actions { display: flex; align-items: center; gap: 8px; margin-top: auto; padding: 12px; border-radius: 12px; background: #f6f8fa; }
.conversion-proof b { display: grid; place-items: center; min-width: 40px; height: 32px; padding: 0 8px; border-radius: 8px; background: #ffffff; font-size: 11px; line-height: 16px; }
.conversion-proof span { color: #525866; font-size: 10px; line-height: 16px; }
.conversion-actions { flex-wrap: wrap; }
.conversion-actions b { padding: 6px 10px; border-radius: 8px; background: #030303; color: #ffffff; font-size: 10px; line-height: 16px; }
.conversion-track-v3 .is-result { border-color: #30302c; background: #030303; color: #ffffff; }
.conversion-track-v3 .is-result p { color: #a5a8b3; }
.conversion-track-v3 .is-result .conversion-proof { background: #151513; }
.conversion-track-v3 .is-result .conversion-proof b { background: #ffea00; color: #030303; }
.conversion-track-v3 .is-result .conversion-proof span { color: #d8d9de; }
.conversion-decision-board-v3 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 16px; padding: 8px; border: 1px solid #e2e4e9; border-radius: 16px; background: #ffffff; }
.conversion-decision-board-v3 span { min-height: 72px; padding: 12px; border-radius: 12px; background: #f6f8fa; }
.conversion-decision-board-v3 b, .conversion-decision-board-v3 small { display: block; }
.conversion-decision-board-v3 b { font-size: 12px; line-height: 16px; }
.conversion-decision-board-v3 small { margin-top: 4px; color: #69707d; font-size: 10px; line-height: 16px; }
.conversion-decision-board-v3 .is-final { background: #e0faec; }

/* Scenario */
.scenario-v3 { padding: 96px 24px; background: #ffffff; }
.scenario-shell { display: grid; grid-template-columns: 328px minmax(0, 1fr); gap: 24px; margin-top: 48px; }
.scenario-summary { min-height: 416px; display: flex; flex-direction: column; padding: 24px; border: 1px solid #e5ce00; border-radius: 24px; background: #fffdf0; color: #030303; box-shadow: var(--refresh-shadow); }
.scenario-summary .b-status { align-self: flex-start; background: #ffea00; }
.scenario-summary h3 { margin: 24px 0 0; font-size: 28px; line-height: 36px; }
.scenario-case-snapshot { display: grid; gap: 8px; margin-top: 24px; }
.scenario-case-snapshot > span { min-height: 52px; display: grid; grid-template-columns: 8px 88px minmax(0, 1fr); gap: 8px; align-items: center; padding: 8px 12px; border: 1px solid #eee2a2; border-radius: 12px; background: #ffffff; }
.scenario-case-snapshot i { width: 8px; height: 8px; border-radius: 50%; background: #4285f4; }
.scenario-case-snapshot i.is-yellow { background: #f6b51e; }
.scenario-case-snapshot i.is-red { background: #ea4335; }
.scenario-case-snapshot i.is-green { background: #1fc16b; }
.scenario-case-snapshot b { font-size: 10px; line-height: 16px; }
.scenario-case-snapshot small { color: #69707d; font-size: 9px; line-height: 16px; }
.scenario-summary > p { margin: auto 0 0; padding-top: 16px; color: #525866; font-size: 10px; line-height: 16px; }
.scenario-viewport { min-width: 0; overflow: hidden; border-radius: 24px; }
.scenario-track { width: max-content; display: flex; align-items: stretch; gap: 16px; padding: 0 32px 24px 0; }
.scenario-track article { width: 336px; min-height: 416px; flex: none; display: flex; flex-direction: column; padding: 24px; border: 1px solid #e2e4e9; border-radius: 20px; background: #f6f8fa; box-shadow: var(--refresh-shadow); }
.scenario-track article:nth-child(even) { margin-top: 0; }
.scenario-track header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.scenario-track header span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #ffffff; color: #525866; font-size: 11px; line-height: 16px; }
.scenario-track header em { padding: 4px 8px; border-radius: 8px; background: #e8f0fe; color: #2453d4; font-size: 10px; line-height: 16px; font-style: normal; }
.scenario-track h3 { margin: 40px 0 0; font-size: 22px; line-height: 32px; }
.scenario-track p { margin: 12px 0 0; color: #525866; font-size: 13px; line-height: 24px; }
.scenario-track footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: auto; padding-top: 16px; border-top: 1px solid #e2e4e9; }
.scenario-track footer b { color: #7a7f8b; font-size: 9px; line-height: 16px; text-transform: uppercase; }
.scenario-track footer span { font-size: 10px; line-height: 16px; }
.scenario-track .is-next { border-color: #30302c; background: #030303; color: #ffffff; }
.scenario-track .is-next p { color: #a5a8b3; }
.scenario-track .is-next footer { border-color: #30302c; }
.scenario-track .is-next header em { background: #ffea00; color: #030303; }
.scenario-evidence-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 16px; }
.scenario-evidence-strip span { min-height: 48px; display: flex; align-items: center; gap: 10px; padding: 8px 12px; border: 1px solid #e2e4e9; border-radius: 12px; background: #f6f8fa; }
.scenario-evidence-strip i { width: 8px; height: 8px; border-radius: 50%; background: #ea4335; }
.scenario-evidence-strip i.is-blue { background: #4285f4; }
.scenario-evidence-strip i.is-green { background: #1fc16b; }
.scenario-evidence-strip b { font-size: 11px; line-height: 16px; }

/* Portfolio */
.portfolio-v3 { padding: 96px 24px; background: #f6f8fa; border-block: 1px solid #e2e4e9; }
.portfolio-viewport { margin-top: 48px; overflow: hidden; border-radius: 24px; }
.portfolio-track { width: max-content; display: flex; align-items: stretch; gap: 24px; padding: 0 32px 24px 0; }
.portfolio-track article { width: min(640px, calc(100vw - 48px)); flex: none; overflow: hidden; border: 1px solid #e2e4e9; border-radius: 20px; background: #ffffff; box-shadow: var(--refresh-shadow); }
.portfolio-track article:nth-child(even) { margin-top: 24px; }
.portfolio-track picture { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #e9edf2; }
.portfolio-track picture img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .72s cubic-bezier(.16, .84, .28, 1); }
.portfolio-track article:hover picture img { transform: scale(1.024); }
.portfolio-track article > div { padding: 24px; }
.portfolio-track header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.portfolio-track header span { padding: 6px 10px; border-radius: 8px; background: #e8f0fe; color: #2453d4; font-size: 10px; line-height: 16px; }
.portfolio-track header b { color: #7a7f8b; font-size: 11px; line-height: 16px; }
.portfolio-track h3 { margin: 24px 0 0; font-size: 28px; line-height: 36px; }
.portfolio-track p { margin: 12px 0 0; max-width: 520px; color: #525866; font-size: 14px; line-height: 24px; }
.portfolio-track ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 24px 0 0; padding: 0; list-style: none; }
.portfolio-track li { padding: 6px 10px; border: 1px solid #e2e4e9; border-radius: 8px; color: #525866; font-size: 10px; line-height: 16px; }
.portfolio-footer { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 16px; padding: 16px; border: 1px solid #e2e4e9; border-radius: 16px; background: #ffffff; }
.portfolio-footer p { margin: 0; max-width: 760px; color: #525866; font-size: 12px; line-height: 20px; }

/* Reviews */
.reviews-v3 { padding: 0; background: #ffffff; }
.reviews-stage { padding: 96px 0; }
.reviews-v3 .b-review-viewport { margin-top: 48px; overflow: hidden; }
.reviews-v3 .b-review-track,
#reviews.reviews-v3 .b-review-track { width: max-content; min-width: 100%; display: flex; grid-template-rows: none; grid-template-columns: none; grid-auto-flow: initial; overflow: visible; padding-right: 32px; scrollbar-width: none; transform: translate3d(var(--story-x, 0), 0, 0) !important; }
.reviews-v3 .b-review-card { width: 376px; flex-basis: 376px; }
.reviews-v3 .b-review-card:nth-child(even) { margin-top: 24px; }
.review-sync-status { display: inline-flex; align-items: center; gap: 8px; margin-top: 16px; padding: 6px 10px; border-radius: 8px; background: #e0faec; color: #0b6e3b; font-size: 10px; line-height: 16px; }
.review-sync-status::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #1fc16b; box-shadow: 0 0 0 4px rgba(31, 193, 107, .14); }

/* Complete GBP system */
.gbp-system-v3 { padding: 96px 24px; background: #f6f8fa; border-block: 1px solid #e2e4e9; }
.gbp-system-console { display: grid; grid-template-columns: 304px minmax(0, 1fr); gap: 24px; margin-top: 48px; }
.gbp-system-console > aside { min-height: 416px; display: flex; flex-direction: column; padding: 24px; border-radius: 24px; background: #030303; color: #ffffff; box-shadow: var(--refresh-shadow-dark); }
.gbp-system-console > aside .b-status { align-self: flex-start; }
.gbp-system-console > aside h3 { margin: 32px 0 0; font-size: 32px; line-height: 40px; }
.gbp-system-console > aside p { margin: 12px 0 0; color: #a5a8b3; font-size: 13px; line-height: 20px; }
.gbp-system-console > aside > div { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin-top: auto; }
.gbp-system-console > aside > div span { padding: 12px; border: 1px solid #30302c; border-radius: 12px; background: #151513; }
.gbp-system-console > aside > div b, .gbp-system-console > aside > div small { display: block; }
.gbp-system-console > aside > div b { color: #ffea00; font-size: 20px; line-height: 28px; }
.gbp-system-console > aside > div small { margin-top: 4px; color: #a5a8b3; font-size: 9px; line-height: 16px; }
.gbp-system-viewport { min-width: 0; overflow: hidden; border-radius: 24px; }
.gbp-system-track { width: max-content; display: flex; align-items: stretch; gap: 16px; padding: 0 32px 24px 0; }
.gbp-system-track article { width: 304px; min-height: 392px; flex: none; display: flex; flex-direction: column; padding: 24px; border: 1px solid #e2e4e9; border-radius: 20px; background: #ffffff; box-shadow: var(--refresh-shadow); }
.gbp-system-track article:nth-child(even) { margin-top: 24px; }
.gbp-system-track article > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #e8f0fe; color: #2453d4; font-size: 11px; line-height: 16px; }
.gbp-system-track h3 { margin: 40px 0 0; font-size: 22px; line-height: 32px; }
.gbp-system-track p { margin: 12px 0 0; color: #525866; font-size: 13px; line-height: 24px; }
.gbp-system-track em { align-self: flex-start; margin-top: auto; padding: 6px 10px; border-radius: 8px; background: #e0faec; color: #0b6e3b; font-size: 10px; line-height: 16px; font-style: normal; }
.gbp-system-track .is-dark { border-color: #30302c; background: #030303; color: #ffffff; }
.gbp-system-track .is-dark > span { background: #ffea00; color: #030303; }
.gbp-system-track .is-dark p { color: #a5a8b3; }
.gbp-system-track .is-dark em { background: #20201d; color: #ffea00; }
.gbp-system-bottom { display: grid; grid-template-columns: auto 1fr auto 1fr auto 1fr auto; gap: 12px; align-items: center; margin-top: 16px; padding: 16px; border: 1px solid #e2e4e9; border-radius: 16px; background: #ffffff; }
.gbp-system-bottom span { min-width: 120px; }
.gbp-system-bottom b, .gbp-system-bottom small { display: block; }
.gbp-system-bottom b { font-size: 12px; line-height: 16px; }
.gbp-system-bottom small { margin-top: 4px; color: #69707d; font-size: 10px; line-height: 16px; }
.gbp-system-bottom i { height: 2px; background: #e2e4e9; }

/* Contact */
#contact.contact-v4 { padding: 120px 24px; background: #f6f8fa; border-top: 1px solid #e2e4e9; }
.contact-v4-inner { max-width: 1264px; display: grid; gap: 32px; margin: 0 auto; }
.contact-v4-overview { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 24px; align-items: start; padding: 48px; border: 1px solid #e2e4e9; border-radius: 24px; background: #ffffff; box-shadow: var(--refresh-shadow); }
.contact-v4-overview > div:first-child,
.contact-v4-overview > h2,
.contact-v4-overview > p { grid-column: 1 / 7; }
.contact-v4-overview > h2 { margin-top: 0 !important; align-self: end; }
.contact-v4-overview > p { margin-top: -8px !important; }
.audit-preview-v4 { grid-column: 7 / -1; grid-row: 1 / 4; min-height: 248px; padding: 20px; border: 1px solid #b8cce0; border-radius: 20px; background: #e8f0fe; color: #030303; }
.audit-preview-v4 > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.audit-preview-v4 > header span { display: inline-flex; align-items: center; gap: 8px; }
.audit-preview-v4 > header i { width: 8px; height: 8px; border-radius: 50%; background: #1fc16b; box-shadow: 0 0 0 4px rgba(31, 193, 107, .14); }
.audit-preview-v4 > header b, .audit-preview-v4 > header em { font-size: 10px; line-height: 16px; font-style: normal; }
.audit-preview-v4 > header em { padding: 4px 8px; border-radius: 8px; background: #ffffff; color: #525866; }
.audit-preview-v4 > div { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 20px; }
.audit-preview-v4 > div span { min-height: 104px; display: flex; flex-direction: column; padding: 12px; border: 1px solid #c9d8e8; border-radius: 12px; background: #ffffff; }
.audit-preview-v4 > div b { font-size: 10px; line-height: 16px; }
.audit-preview-v4 > div small { margin-top: 4px; color: #69707d; font-size: 9px; line-height: 16px; }
.audit-preview-v4 > div i { position: relative; height: 8px; overflow: hidden; margin-top: auto; border-radius: 999px; background: #e2e4e9; }
.audit-preview-v4 > div i::after { content: ""; position: absolute; inset: 0 auto 0 0; width: var(--audit-level); border-radius: inherit; background: #4285f4; }
.audit-preview-v4 > div span:nth-child(2) i::after { background: #ea4335; }
.audit-preview-v4 > div span:nth-child(3) i::after { background: #f6b51e; }
.audit-preview-v4 > div span:nth-child(4) i::after { background: #1fc16b; }
.audit-preview-v4 > footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 16px; padding-top: 16px; border-top: 1px solid #c9d8e8; }
.audit-preview-v4 > footer span { color: #525866; font-size: 10px; line-height: 16px; }
.audit-preview-v4 > footer b { flex: none; padding: 4px 8px; border-radius: 8px; background: #ffffff; font-size: 9px; line-height: 16px; }
.audit-preview-v4 + div { grid-column: 1 / -1; display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 16px !important; margin-top: 8px !important; }
.audit-preview-v4 + div > div { min-height: 88px; padding: 16px; border: 1px solid #e2e4e9; border-radius: 16px; background: #f6f8fa; }
.contact-v4-overview > a { grid-column: 1 / 6; align-self: center; justify-self: start; margin-top: 0 !important; }
.contact-v4-overview > div:last-child { grid-column: 6 / -1; align-self: center; justify-self: end; margin-top: 0 !important; }
.contact-v4-form { padding: 48px; border: 1px solid #e2e4e9; border-radius: 24px; background: #ffffff; box-shadow: var(--refresh-shadow); }
.contact-v4-form [data-form-body] > div[data-mq-stack] { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 16px !important; margin-top: 32px !important; }
.contact-v4-form form input,
.contact-v4-form form select,
.contact-v4-form form textarea { min-height: 48px; border-radius: 12px !important; border-color: #e2e4e9 !important; background: #ffffff !important; }
.contact-v4-form form input:hover,
.contact-v4-form form select:hover,
.contact-v4-form form textarea:hover { border-color: #c7cbd1 !important; }
.contact-v4-form form input:focus,
.contact-v4-form form select:focus,
.contact-v4-form form textarea:focus { border-color: #030303 !important; box-shadow: 0 0 0 4px rgba(255, 234, 0, .36) !important; }
.contact-v4-form [data-category-other] { grid-column: 1 / -1; }

a[href*="api.whatsapp.com"],
a[href*="api.whatsapp.com"] *,
[data-ui-button="whatsapp"],
[data-ui-button="whatsapp"] * {
  color: #ffffff !important;
}

#top a[href*="api.whatsapp.com"],
#top a[href*="api.whatsapp.com"] *,
#contact a[href*="api.whatsapp.com"],
#contact a[href*="api.whatsapp.com"] * {
  color: #ffffff !important;
}

a.whatsapp-contrast-button {
  padding: 4px !important;
  background: #25d366 !important;
}

a.whatsapp-contrast-button > .whatsapp-contrast-label {
  width: 100%;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 24px;
  border-radius: 999px;
  background: #075e54;
  color: #ffffff !important;
}

a[href*="api.whatsapp.com"] svg,
[data-ui-button="whatsapp"] svg { fill: currentColor !important; }
.whatsapp-mark { width: 20px; height: 20px; display: block; flex: none; object-fit: contain; }

/* Footer */
.footer-v3 { padding: 80px 24px 32px; background: #030303; color: #ffffff; }
.footer-v3-inner { max-width: 1264px; margin: 0 auto; }
.footer-v3-hero { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 48px; align-items: end; padding-bottom: 56px; border-bottom: 1px solid #30302c; }
.footer-v3-kicker { display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; border: 1px solid #30302c; border-radius: 999px; background: #151513; }
.footer-v3-kicker i { width: 8px; height: 8px; border-radius: 50%; background: #ffea00; }
.footer-v3-kicker b { color: #ffea00; font-size: 10px; line-height: 16px; text-transform: uppercase; }
.footer-v3-hero h2 { margin: 24px 0 0; max-width: 800px; color: #ffffff; font-size: 48px; line-height: 56px; }
.footer-v3-hero p { margin: 16px 0 0; color: #a5a8b3; font-size: 16px; line-height: 24px; }
.footer-v3-cta { min-height: 56px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 16px 24px; border-radius: 12px; background: #ffea00; color: #030303; text-decoration: none; font-size: 14px; line-height: 20px; font-weight: 500; }
footer#footer .footer-v3-cta { background: #ffea00 !important; color: #030303 !important; }
.footer-v3-cta svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform .24s ease; }
.footer-v3-cta:hover { color: #030303 !important; background: #fff04d; }
.footer-v3-cta:hover svg { transform: translateX(4px); }
.footer-v3-grid { display: grid; grid-template-columns: 1.5fr .8fr .8fr 1.1fr; gap: 48px; padding: 56px 0; }
.footer-v3-brand img { width: auto; height: 24px; display: block; }
.footer-v3-brand p { margin: 24px 0 0; max-width: 360px; color: #a5a8b3; font-size: 14px; line-height: 24px; }
.footer-v3-social { display: flex; gap: 8px; margin-top: 24px; }
.footer-v3-social a { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid #30302c; border-radius: 12px; color: #ffffff; }
.footer-v3-social svg { width: 16px; height: 16px; fill: currentColor; stroke: currentColor; stroke-width: 1.8; }
.footer-v3-social a:hover { border-color: #52524c !important; background: #20201d !important; color: #d8d9de !important; }
.footer-v3-nav { display: flex; flex-direction: column; gap: 12px; }
.footer-v3-nav h3, .footer-v3-proof h3 { margin: 0 0 8px; color: #ffffff; font-size: 12px; line-height: 16px; text-transform: uppercase; }
.footer-v3-nav a { color: #a5a8b3; text-decoration: none; font-size: 13px; line-height: 20px; }
.footer-v3-nav a:hover { color: #d8d9de !important; }
.footer-v3-proof { display: flex; flex-direction: column; gap: 8px; }
.footer-v3-proof > span { min-height: 48px; display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 8px; align-items: center; padding: 8px 12px; border: 1px solid #30302c; border-radius: 12px; background: #151513; }
.footer-v3-proof i { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 8px; background: #20201d; color: #ffea00; font-size: 10px; font-style: normal; }
.footer-v3-proof b { color: #d8d9de; font-size: 10px; line-height: 16px; }
.footer-v3-bottom { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-top: 24px; border-top: 1px solid #30302c; color: #8e939e; font-size: 12px; line-height: 16px; }
.footer-v3-bottom > div { display: flex; gap: 24px; }
.footer-v3-bottom a { color: #8e939e; text-decoration: none; }
.footer-v3-bottom a:hover { color: #d8d9de !important; }

/* Footer v4 */
.footer-v4 { padding: 96px 24px 32px; background: #030303; color: #ffffff; }
.footer-v4-inner { max-width: 1264px; margin: 0 auto; }
.footer-v4-hero { display: grid; grid-template-columns: minmax(0, .98fr) minmax(400px, .72fr); gap: 64px; align-items: end; padding-bottom: 64px; border-bottom: 1px solid #30302c; }
.footer-v4-kicker { display: inline-flex; align-items: center; gap: 8px; min-height: 32px; padding: 8px 12px; border: 1px solid #30302c; border-radius: 999px; background: #151513; }
.footer-v4-kicker i { width: 8px; height: 8px; border-radius: 50%; background: #ffea00; }
.footer-v4-kicker b { color: #ffea00; font-size: 10px; line-height: 16px; text-transform: uppercase; }
.footer-v4-copy h2 { margin: 24px 0 0; max-width: 760px; color: #ffffff; font-size: 48px; line-height: 56px; }
.footer-v4-copy > p { margin: 16px 0 0; max-width: 680px; color: #a5a8b3; font-size: 16px; line-height: 24px; }
.footer-v4-cta { min-height: 56px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; margin-top: 32px; padding: 16px 24px; border-radius: 12px; background: #ffea00; color: #030303; text-decoration: none; font-size: 14px; line-height: 20px; font-weight: 500; box-shadow: 0 12px 32px rgba(255, 234, 0, .12); }
footer#footer .footer-v4-cta { background: #ffea00 !important; color: #030303 !important; }
footer#footer .footer-v4-cta:hover { background: #fff04d !important; color: #030303 !important; }
.footer-v4-cta:hover { background: #fff04d; box-shadow: 0 16px 40px rgba(255, 234, 0, .18); transform: translateY(-2px); }
.footer-v4-cta svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform .24s ease; }
.footer-v4-cta:hover svg { transform: translateX(4px); }
.footer-v4-signal { padding: 20px; border: 1px solid #30302c; border-radius: 20px; background: #10100f; box-shadow: var(--refresh-shadow-dark); }
.footer-v4-signal > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.footer-v4-signal > header span { display: inline-flex; align-items: center; gap: 8px; }
.footer-v4-signal > header i { width: 8px; height: 8px; border-radius: 50%; background: #1fc16b; box-shadow: 0 0 0 4px rgba(31, 193, 107, .12); }
.footer-v4-signal > header b, .footer-v4-signal > header em { font-size: 10px; line-height: 16px; font-style: normal; }
.footer-v4-signal > header em { padding: 4px 8px; border-radius: 8px; background: #20201d; color: #a5a8b3; }
.footer-v4-signal > div { display: grid; gap: 8px; margin-top: 20px; }
.footer-v4-signal article { min-height: 72px; display: grid; grid-template-columns: 40px minmax(0, 1fr) 56px; gap: 12px; align-items: center; padding: 12px; border: 1px solid #30302c; border-radius: 14px; background: #181816; }
.footer-v4-signal article > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #20201d; color: #c7cbd1; font-size: 10px; }
.footer-v4-signal article b, .footer-v4-signal article small { display: block; }
.footer-v4-signal article b { color: #ffffff; font-size: 12px; line-height: 16px; }
.footer-v4-signal article small { margin-top: 4px; color: #8e939e; font-size: 9px; line-height: 16px; }
.footer-v4-signal article > i { height: 8px; border-radius: 999px; background: #4285f4; }
.footer-v4-signal article > i.is-yellow { background: #ffea00; }
.footer-v4-signal article > i.is-green { background: #1fc16b; }
.footer-v4-signal > footer { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin-top: 12px; }
.footer-v4-signal > footer span { padding: 8px 10px; border-radius: 10px; background: #20201d; color: #a5a8b3; font-size: 9px; line-height: 16px; text-align: center; }
.footer-v4-directory { display: grid; grid-template-columns: 1.45fr .78fr .72fr 1.15fr; gap: 48px; padding: 64px 0; }
.footer-v4-brand img { width: auto; height: 24px; display: block; }
.footer-v4-brand p { margin: 24px 0 0; max-width: 360px; color: #a5a8b3; font-size: 14px; line-height: 24px; }
.footer-v4-social { display: flex; gap: 8px; margin-top: 24px; }
.footer-v4-social a { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid #30302c; border-radius: 12px; color: #ffffff; }
.footer-v4-social svg { width: 16px; height: 16px; fill: currentColor; stroke: currentColor; stroke-width: 1.8; }
.footer-v4-social a:hover { border-color: #52524c !important; background: #20201d !important; color: #d8d9de !important; }
.footer-v4-nav { display: flex; flex-direction: column; gap: 12px; }
.footer-v4-nav h3, .footer-v4-commitments h3 { margin: 0 0 8px; color: #ffffff; font-size: 12px; line-height: 16px; text-transform: uppercase; }
.footer-v4-nav a { color: #a5a8b3; text-decoration: none; font-size: 13px; line-height: 20px; }
.footer-v4-nav a:hover { color: #d8d9de !important; }
.footer-v4-commitments { display: flex; flex-direction: column; gap: 8px; }
.footer-v4-commitments > span { min-height: 48px; display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 8px; align-items: center; padding: 8px 12px; border: 1px solid #30302c; border-radius: 12px; background: #151513; }
.footer-v4-commitments i { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 10px; background: #20201d; color: #ffea00; font-size: 9px; font-style: normal; }
.footer-v4-commitments b { color: #d8d9de; font-size: 10px; line-height: 16px; }
.footer-v4-wordmark { overflow: hidden; padding: 32px 0; border-block: 1px solid #30302c; color: #ffffff; font-family: var(--font-display); font-size: clamp(64px, 10vw, 136px); line-height: .9; font-weight: 500; letter-spacing: 0; text-align: center; white-space: nowrap; }
.footer-v4-wordmark span { color: #ffea00; }
.footer-v4-bottom { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-top: 24px; color: #a5a8b3; font-size: 12px; line-height: 16px; }
.footer-v4-bottom > div { display: flex; flex-wrap: wrap; gap: 24px; }
.footer-v4-bottom a { color: #a5a8b3; text-decoration: none; }
.footer-v4-bottom a:hover { color: #d8d9de !important; }

@media (min-width: 961px) and (min-height: 800px) {
  section[data-story-pin] > [data-story-stage],
  section[data-story-pin] > .b-story-stage,
  section[data-story-pin] > .services-stage,
  section[data-story-pin] > .reviews-stage,
  .plans-section[data-story-pin] > .plans-stage {
    position: sticky;
    top: 0;
    height: 100vh;
    min-height: 800px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: visible;
  }

  section[data-story-pin] [data-scroll-track] > article,
  section[data-story-pin] [data-review-scroll-track] > article { margin-top: 0 !important; }
  .plans-section[data-story-pin] > .plans-stage { padding-block: 40px; }
}

@media (min-width: 961px) and (min-height: 800px) and (max-height: 900px) {
  section[data-story-pin] .b-section-head { gap: 32px; }
  section[data-story-pin] .b-title { margin-top: 16px; font-size: 36px; line-height: 44px; }
  section[data-story-pin] .b-copy { margin-top: 12px; font-size: 14px; line-height: 20px; }
  section[data-story-pin] :is(.ranking-story-track, .responsibility-shell, .attribution-shell, .services-shell, .scope-command, .process-viewport, .conversion-viewport, .scenario-shell, .portfolio-viewport, .gbp-system-console, .b-review-viewport, .plans-track) { margin-top: 24px; }
  section[data-story-pin] :is(.responsibility-anchor, .attribution-anchor, .scenario-summary, .gbp-system-console > aside) { min-height: 352px; }
  section[data-story-pin] :is(.responsibility-track article, .attribution-track article, .scope-track article, .process-card, .conversion-track-v3 article, .scenario-track article, .gbp-system-track article) { min-height: 344px; }
  section[data-story-pin] :is(.responsibility-track h3, .attribution-track h3, .scope-track h3, .process-card h3, .conversion-track-v3 h3, .scenario-track h3, .gbp-system-track h3) { margin-top: 24px; }
  section[data-story-pin] :is(.responsibility-proofbar, .scope-delivery-strip, .process-footer, .conversion-decision-board-v3, .scenario-evidence-strip, .portfolio-footer, .gbp-system-bottom) { margin-top: 8px; }
  .plans-track .plan-card { min-height: 552px; padding: 16px; }
  .plans-track .plan-card > header span { width: 32px; height: 32px; border-radius: 8px; }
  .plans-track .plan-card h3 { margin-top: 16px; font-size: 20px; line-height: 28px; }
  .plans-track .plan-card > p { margin-top: 8px; font-size: 12px; line-height: 20px; }
  .plans-track .plan-card > ul { gap: 4px; margin: 16px 0; }
  .plans-track .plan-card > ul li { min-height: 28px; padding: 4px 8px 4px 28px; line-height: 20px; }
  .plans-track .plan-card > ul li::before { left: 8px; top: 4px; }
  .plans-track .plan-card > footer { padding-top: 8px; }
  .plans-track .plan-card > footer a { min-height: 32px; padding-block: 4px; }
  .plans-track .plan-feature-visual { margin-top: 12px; padding: 12px; border-radius: 16px; }
  .plans-track .plan-feature-visual > ul { height: 32px; margin-top: 8px; }
  .plans-track .plan-feature-visual > footer { margin-top: 4px; }
  .plans-track .plan-card.is-featured h3 { margin-top: 12px; }
}

@media (min-width: 961px) and (max-height: 799px) {
  section[data-story-pin] { height: auto !important; }
  section[data-story-pin] > [data-story-stage],
  section[data-story-pin] > .b-story-stage,
  section[data-story-pin] > .services-stage,
  section[data-story-pin] > .reviews-stage,
  .plans-section[data-story-pin] > .plans-stage { position: relative !important; top: auto !important; height: auto !important; min-height: 0 !important; overflow: visible !important; }
  section[data-story-pin] [data-scroll-track],
  section[data-story-pin] [data-review-scroll-track] { transform: none !important; will-change: auto; }
  #ranking-vs-conversion .ranking-story-track,
  #plans .plans-track { width: 100%; max-width: 100%; overflow-x: auto; overflow-y: hidden; padding-bottom: 16px; scroll-snap-type: x mandatory; scrollbar-width: thin; }
  section[data-story-pin] :is(.responsibility-viewport, .attribution-viewport, .services-viewport, .scope-viewport, .process-viewport, .conversion-viewport, .scenario-viewport, .portfolio-viewport, .gbp-system-viewport, .b-review-viewport) { overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: thin; }
  section[data-story-pin] [data-scroll-track] > article,
  section[data-story-pin] [data-review-scroll-track] > article { margin-top: 0 !important; scroll-snap-align: start; }
}

@media (max-width: 1120px) {
  .responsibility-shell,
  .attribution-shell,
  .services-shell,
  .scenario-shell,
  .gbp-system-console { grid-template-columns: 288px minmax(0, 1fr); }
  .services-shell { grid-template-columns: 320px minmax(0, 1fr); }
  #services [data-service-visual] { transform: scale(.78); }
  .footer-v3-grid { grid-template-columns: 1.3fr repeat(3, 1fr); gap: 32px; }
  .contact-v4-form [data-form-body] > div[data-mq-stack] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .footer-v4-hero { grid-template-columns: minmax(0, 1fr) 400px; gap: 40px; }
  .footer-v4-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; }
}

@media (max-width: 960px) {
  section[data-story-pin] { height: auto !important; }
  [data-scroll-track], [data-review-scroll-track] { transform: none !important; will-change: auto; }
  .responsibility-v3, .attribution-v3, .scope-v3, .process-v3, .conversion-v3, .scenario-v3, .portfolio-v3, .gbp-system-v3 { padding-block: 80px; }
  .services-stage, .reviews-stage { padding-block: 80px; }
  .responsibility-shell, .attribution-shell, .services-shell, .scenario-shell, .gbp-system-console { grid-template-columns: 1fr; }
  .responsibility-anchor, .attribution-anchor, .scenario-summary, .gbp-system-console > aside { min-height: 0; }
  .responsibility-ledger, .attribution-anchor > p, .scenario-summary > p, .gbp-system-console > aside > div { margin-top: 32px; }
  #services [data-service-visual] { max-width: 360px !important; transform: none; }
  .responsibility-viewport, .attribution-viewport, .services-viewport, .scope-viewport, .process-viewport, .conversion-viewport, .scenario-viewport, .portfolio-viewport, .gbp-system-viewport, .reviews-v3 .b-review-viewport { overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: thin; }
  .responsibility-track > article, .attribution-track > article, .services-track > article, .scope-track > article, .process-track > article, .conversion-track-v3 > article, .scenario-track > article, .portfolio-track > article, .gbp-system-track > article, .reviews-v3 .b-review-card { scroll-snap-align: start; margin-top: 0 !important; }
  .scope-command-head, .process-phase-strip, .conversion-decision-board-v3, .gbp-system-bottom { grid-template-columns: repeat(2, 1fr); }
  .scope-command-head i, .gbp-system-bottom i { display: none; }
  .footer-v3-hero { grid-template-columns: 1fr; align-items: start; }
  .footer-v3-grid { grid-template-columns: repeat(2, 1fr); }
  #contact.contact-v3 > div { grid-template-columns: 1fr !important; }
  #contact.contact-v3 > div > div:first-child { position: relative; top: auto; }
  .contact-v4-overview { grid-template-columns: 1fr; padding: 32px; }
  .contact-v4-overview > div:first-child,
  .contact-v4-overview > h2,
  .contact-v4-overview > p,
  .audit-preview-v4,
  .audit-preview-v4 + div,
  .contact-v4-overview > a,
  .contact-v4-overview > div:last-child { grid-column: 1; grid-row: auto; }
  .contact-v4-overview > h2 { margin-top: 0 !important; }
  .contact-v4-overview > p { margin-top: 0 !important; }
  .contact-v4-overview > a, .contact-v4-overview > div:last-child { justify-self: start; }
  .contact-v4-form { padding: 32px; }
  .footer-v4-hero { grid-template-columns: 1fr; align-items: start; }
  .footer-v4-signal { width: min(520px, 100%); }
  .footer-v4-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .responsibility-v3, .attribution-v3, .scope-v3, .process-v3, .conversion-v3, .scenario-v3, .portfolio-v3, .gbp-system-v3 { padding: 80px 16px; }
  .services-stage { padding: 80px 16px; }
  .responsibility-anchor, .attribution-anchor, .scenario-summary, .gbp-system-console > aside { padding: 24px; border-radius: 16px; }
  .responsibility-anchor h3, .gbp-system-console > aside h3 { font-size: 28px; line-height: 36px; }
  .responsibility-track article, .attribution-track article, .services-track > article, .scope-track article, .process-card, .conversion-track-v3 article, .scenario-track article, .gbp-system-track article { width: min(320px, calc(100vw - 48px)); }
  .services-track > article { min-height: 472px; }
  .responsibility-proofbar, .scope-delivery-strip, .scenario-evidence-strip { grid-template-columns: 1fr; }
  .responsibility-ledger, .scope-command-head, .process-phase-strip, .conversion-decision-board-v3 { grid-template-columns: 1fr; }
  .portfolio-track article { width: calc(100vw - 48px); }
  .portfolio-footer, .process-footer { align-items: stretch; flex-direction: column; }
  .portfolio-footer .b-button, .process-footer .b-button { width: 100%; }
  .reviews-stage { padding: 80px 0; }
  .reviews-v3 .b-review-track { padding-left: 16px; }
  .reviews-v3 .b-review-card { width: min(344px, calc(100vw - 32px)); flex-basis: min(344px, calc(100vw - 32px)); }
  .gbp-system-bottom { grid-template-columns: 1fr; }
  .map-competitor-dock { left: 12px; right: 12px; bottom: 12px; width: auto; }
  .map-signal-lenses { display: none !important; }
  .map-v3-pin.is-a { left: 56%; top: 24%; }
  .map-v3-pin.is-b { left: 16%; top: 38%; }
  .map-v3-pin.is-c { right: 8%; top: 44%; }
  .map-v3-pin.is-you { right: 20%; top: 60%; }
  #contact.contact-v3 { padding: 80px 16px !important; }
  #contact.contact-v3 > div > div:first-child, #contact.contact-v3 > div > div:nth-child(2) { padding: 24px !important; border-radius: 16px !important; }
  #contact.contact-v3 form > [data-form-body] > div[style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
  .footer-v3 { padding: 64px 16px 24px; }
  .footer-v3-hero h2 { font-size: 32px; line-height: 40px; }
  .footer-v3-cta { width: 100%; }
  .footer-v3-grid { grid-template-columns: 1fr; gap: 40px; }
  .footer-v3-bottom { align-items: flex-start; flex-direction: column; }
  .map-illustration-v4 { height: 560px !important; }
  .map-illustration-v4 .map-query-card { left: 12px; right: 12px; top: 12px; }
  .map-radar-core { left: 54%; top: 40%; width: 144px; height: 144px; }
  .map-radar-core span:nth-child(2) { inset: 24px; }
  .map-radar-core span:nth-child(3) { inset: 48px; }
  .map-radar-core b { inset: 56px; }
  .map-illustration-v4 .map-competitor-dock { left: 12px; right: 12px; bottom: 12px; width: auto; }
  .map-illustration-v4 .map-reading-card, .map-illustration-v4 .map-signal-lenses { display: none !important; }
  #contact.contact-v4 { padding: 80px 16px; }
  .contact-v4-overview, .contact-v4-form { padding: 24px; border-radius: 16px; }
  .audit-preview-v4 { padding: 16px; border-radius: 16px; }
  .audit-preview-v4 > div { grid-template-columns: repeat(2, 1fr); }
  .audit-preview-v4 + div { grid-template-columns: 1fr; }
  .contact-v4-form [data-form-body] > div[data-mq-stack] { grid-template-columns: 1fr !important; }
  .contact-v4-overview > a { width: 100%; justify-self: stretch; }
  .contact-v4-overview > a > span { width: 100%; }
  .contact-v4-overview > div:last-child { align-items: flex-start !important; }
  .footer-v4 { padding: 72px 16px 24px; }
  .footer-v4-hero { gap: 40px; padding-bottom: 48px; }
  .footer-v4-copy h2 { font-size: 32px; line-height: 40px; }
  .footer-v4-cta { width: 100%; }
  .footer-v4-directory { grid-template-columns: 1fr; gap: 40px; padding: 48px 0; }
  .footer-v4-wordmark { padding: 24px 0; font-size: 48px; white-space: normal; }
  .footer-v4-bottom { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  [data-scroll-track], [data-review-scroll-track] { transform: none !important; }
  .map-query-card, .map-v3-pin, .map-competitor-dock, .map-signal-lenses { transform: none !important; }
}

/* Illustrated local coverage map */
#mappack .map-illustration-v4 {
  height: 520px;
  border: 1px solid #cbd5dc !important;
  border-radius: 24px;
  background: #eaf0f2;
  box-shadow: 0 2px 8px rgba(3, 3, 3, .04), 0 24px 56px rgba(3, 3, 3, .09) !important;
}

.map-illustration-grid { opacity: 1; }
.map-illustration-grid::before,
.map-illustration-grid::after,
.map-illustration-grid i {
  border: 1px solid #d6dfe4;
  background: #ffffff;
  box-shadow: 0 0 0 6px rgba(255, 255, 255, .54);
}

.map-illustration-grid::before { height: 22px; }
.map-illustration-grid::after { width: 22px; }
.map-illustration-grid i:nth-child(1),
.map-illustration-grid i:nth-child(3) { height: 12px; }
.map-illustration-grid i:nth-child(2),
.map-illustration-grid i:nth-child(4) { width: 12px; }
.map-illustration-grid i:nth-child(5),
.map-illustration-grid i:nth-child(6) { border-color: #dce4e9; background: #f9fbfc; }

.map-districts,
.map-street-labels { position: absolute; inset: 0; pointer-events: none; }
.map-districts i { position: absolute; display: block; border: 1px solid rgba(82, 88, 102, .08); border-radius: 24px; }
.map-districts i:nth-child(1) { left: -8%; top: 12%; width: 42%; height: 28%; background: #dff3e5; transform: rotate(-10deg); }
.map-districts i:nth-child(2) { right: -10%; top: 28%; width: 42%; height: 32%; background: #dceafa; transform: rotate(12deg); }
.map-districts i:nth-child(3) { left: 32%; bottom: -12%; width: 38%; height: 30%; background: #f7efd8; transform: rotate(8deg); }
.map-street-labels span { position: absolute; z-index: 1; padding: 4px 8px; border-radius: 8px; background: rgba(255, 255, 255, .82); color: #7a7f8b; font-size: 8px; line-height: 16px; letter-spacing: 0; }
.map-street-labels span:nth-child(1) { left: 38%; top: 30%; }
.map-street-labels span:nth-child(2) { left: 8%; top: 54%; transform: rotate(-20deg); }
.map-street-labels span:nth-child(3) { right: 8%; top: 64%; transform: rotate(24deg); }

#mappack .map-query-card {
  left: 20px;
  right: 20px;
  top: 20px;
  border-color: #d8e0e5;
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(3, 3, 3, .09);
  transform: translate3d(var(--map-orbit, 0), 0, 0);
}

.map-radar-core {
  left: 54%;
  top: 46%;
  width: 208px;
  height: 208px;
  transform: translate(-50%, -50%) translate3d(var(--map-orbit, 0), var(--map-rise, 0), 0);
}
.map-radar-core span { border: 2px solid rgba(66, 133, 244, .34); background: rgba(66, 133, 244, .04); }
.map-radar-core span:nth-child(2) { inset: 36px; border-color: rgba(251, 188, 5, .48); background: rgba(251, 188, 5, .05); }
.map-radar-core span:nth-child(3) { inset: 72px; border-color: rgba(52, 168, 83, .56); background: rgba(52, 168, 83, .06); }
.map-radar-core b { inset: 84px; border-radius: 50%; background: #ffffff; color: #4285f4; box-shadow: 0 8px 24px rgba(3, 3, 3, .14); }

#mappack .map-v3-pin { gap: 6px; }
#mappack .map-v3-pin::before { content: ""; position: absolute; z-index: -1; top: -12px; width: 64px; height: 64px; border: 1px dashed rgba(82, 88, 102, .32); border-radius: 50%; background: rgba(255, 255, 255, .26); }
#mappack .map-v3-pin b { width: 40px; height: 40px; border: 3px solid #ffffff; border-radius: 50%; box-shadow: 0 8px 20px rgba(3, 3, 3, .18); }
#mappack .map-v3-pin small { border-color: #d8e0e5; box-shadow: 0 4px 12px rgba(3, 3, 3, .08); }
#mappack .map-v3-pin.is-a { left: 60%; top: 25%; transform: translate3d(var(--map-orbit, 0), var(--map-rise, 0), 0); }
#mappack .map-v3-pin.is-b { left: 18%; top: 38%; transform: translate3d(calc(0px - var(--map-orbit, 0px)), var(--map-rise, 0), 0); }
#mappack .map-v3-pin.is-c { right: 11%; top: 46%; transform: translate3d(var(--map-orbit, 0), calc(0px - var(--map-rise, 0px)), 0); }
#mappack .map-v3-pin.is-you { right: 34%; top: 62%; transform: translate3d(calc(0px - var(--map-orbit, 0px)), calc(0px - var(--map-rise, 0px)), 0); }
#mappack .map-v3-pin.is-a b { background: #ea4335; }
#mappack .map-v3-pin.is-b b { background: #4285f4; }
#mappack .map-v3-pin.is-c b { background: #34a853; }
#mappack .map-v3-pin.is-you b { background: #030303; color: #ffea00; }

#mappack .map-competitor-dock {
  left: 20px;
  bottom: 20px;
  width: 248px;
  border-color: #d8e0e5;
  box-shadow: 0 12px 32px rgba(3, 3, 3, .1);
  transform: translate3d(calc(0px - var(--map-orbit, 0px)), 0, 0);
}

#mappack .map-signal-lenses {
  right: 20px;
  top: 92px;
  border-color: #d8e0e5;
  box-shadow: 0 8px 24px rgba(3, 3, 3, .08);
  transform: translate3d(var(--map-orbit, 0), 0, 0);
}

#mappack .map-reading-card {
  left: 20px;
  right: auto;
  top: 92px;
  bottom: auto;
  width: 224px;
  border-color: #d8e0e5;
  background: #ffffff;
  color: #030303;
  box-shadow: 0 8px 24px rgba(3, 3, 3, .08);
  transform: translate3d(calc(0px - var(--map-orbit, 0px)), 0, 0);
}
#mappack .map-reading-card small { color: #69707d; }

.map-coverage-key {
  position: absolute;
  z-index: 8;
  right: 20px;
  bottom: 20px;
  width: 224px;
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid #d8e0e5;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 12px 32px rgba(3, 3, 3, .1);
  transform: translate3d(var(--map-orbit, 0), 0, 0);
}
.map-coverage-key > span { min-height: 32px; display: grid; grid-template-columns: 16px 28px minmax(0, 1fr); gap: 8px; align-items: center; padding: 4px 8px; border-radius: 8px; background: #f6f8fa; }
.map-coverage-key i { width: 12px; height: 12px; border: 3px solid #ffffff; border-radius: 50%; background: #ea4335; box-shadow: 0 0 0 1px #c7cbd1; }
.map-coverage-key .is-b i { background: #4285f4; }
.map-coverage-key .is-c i { background: #34a853; }
.map-coverage-key .is-you { background: #fffdf0; }
.map-coverage-key .is-you i { background: #030303; }
.map-coverage-key b { font-size: 9px; line-height: 16px; }
.map-coverage-key small { color: #69707d; font-size: 9px; line-height: 16px; }

/* Two-column audit composition */
#contact.contact-v4 { padding: 120px 24px; background: #f6f8fa; }
.contact-v4-inner { grid-template-columns: minmax(376px, .84fr) minmax(0, 1.16fr); gap: 32px; align-items: start; }
.contact-v4-overview {
  position: sticky;
  top: 96px;
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 40px;
  border-radius: 24px;
}
.contact-v4-overview > h2 { margin: 24px 0 0 !important; font-size: 40px !important; line-height: 48px !important; }
.contact-v4-overview > p { margin: 16px 0 0 !important; font-size: 16px !important; line-height: 24px !important; }
.audit-preview-v4 { width: 100%; min-height: 0; margin-top: 32px; padding: 16px; }
.audit-preview-v4 > div { grid-template-columns: repeat(2, 1fr); gap: 8px; margin-top: 16px; }
.audit-preview-v4 > div span { min-height: 72px; }
.audit-preview-v4 > footer { align-items: flex-start; flex-direction: column; gap: 8px; }
.audit-preview-v4 + div { display: grid !important; grid-template-columns: 1fr; gap: 8px !important; margin-top: 24px !important; }
.audit-preview-v4 + div > div { min-height: 72px; padding: 12px; }
.contact-v4-overview > a { width: 100%; align-self: stretch; justify-self: auto; margin-top: 24px !important; }
.contact-v4-overview > div:last-child { justify-self: auto; margin-top: 24px !important; }
.contact-v4-form { padding: 40px; border-radius: 24px; }
.contact-v4-form [data-form-body] > div[data-mq-stack] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 16px !important; }

/* Official WhatsApp treatment */
a.whatsapp-contrast-button {
  min-height: 56px;
  justify-content: center;
  padding: 16px 24px !important;
  border: 1px solid rgba(0, 0, 0, .04) !important;
  border-radius: 999px !important;
  background: #25d366 !important;
  color: #ffffff !important;
  box-shadow: 0 8px 24px rgba(37, 211, 102, .2) !important;
}
a.whatsapp-contrast-button > .whatsapp-contrast-label {
  min-height: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #ffffff !important;
}
a.whatsapp-contrast-button:hover { background: #20c763 !important; color: #ffffff !important; box-shadow: 0 12px 32px rgba(37, 211, 102, .26) !important; transform: translateY(-2px); }
.whatsapp-mark { filter: none; }

/* Footer system */
.footer-v4 { position: relative; overflow: hidden; }
.footer-v4::before { content: ""; position: absolute; inset: 0 24px auto; height: 1px; background: #30302c; }
.footer-v4-signal { position: relative; overflow: hidden; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .02), 0 24px 56px rgba(0, 0, 0, .26); }
.footer-v4-signal article { transition: transform .24s ease, border-color .24s ease, background .24s ease; }
.footer-v4-signal article:hover { border-color: #52524c; background: #20201d; transform: translateX(4px); }
.footer-v4-proofline { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; padding: 16px 0; border-bottom: 1px solid #30302c; }
.footer-v4-proofline > span { min-height: 72px; display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 12px; align-items: center; padding: 12px 16px; border: 1px solid #30302c; border-radius: 12px; background: #10100f; }
.footer-v4-proofline i { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 8px; background: #ffea00; color: #030303; font-size: 9px; line-height: 16px; font-style: normal; }
.footer-v4-proofline b, .footer-v4-proofline small { display: block; }
.footer-v4-proofline b { color: #ffffff; font-size: 11px; line-height: 16px; }
.footer-v4-proofline small { margin-top: 4px; color: #8e939e; font-size: 9px; line-height: 16px; }
.footer-v4-social a { width: 44px; height: 44px; border-radius: 8px; transition: transform .24s ease, background .24s ease, border-color .24s ease; }
.footer-v4-social img { width: 18px; height: 18px; display: block; object-fit: contain; }
.footer-v4-social a:hover { color: #ffffff !important; transform: translateY(-2px); }
.footer-v4-social .is-instagram:hover { border-color: #e4405f !important; background: #e4405f !important; }
.footer-v4-social .is-facebook:hover { border-color: #1877f2 !important; background: #1877f2 !important; }
.footer-v4-social .is-linkedin:hover { border-color: #0a66c2 !important; background: #0a66c2 !important; }
.footer-v4-wordmark { text-shadow: 0 16px 40px rgba(0, 0, 0, .42); }

@media (max-width: 1120px) {
  .contact-v4-inner { grid-template-columns: minmax(336px, .78fr) minmax(0, 1.22fr); }
  .contact-v4-overview, .contact-v4-form { padding: 32px; }
  .contact-v4-overview > h2 { font-size: 36px !important; line-height: 44px !important; }
  .footer-v4-proofline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 960px) {
  [data-cinematic-story] > :is([data-story-stage], .b-story-stage, .services-stage)::before,
  [data-cinematic-story] > :is([data-story-stage], .b-story-stage, .services-stage)::after { display: none; }
  [data-cinematic-story] [data-motion-anchor],
  [data-cinematic-story] [data-motion-card],
  [data-cinematic-story] [data-motion-card] :is(.ranking-signal-stack, .ranking-cta-preview, .service-mini-ui, dl, footer) { transform: none !important; }
  [data-cinematic-story] :is(.responsibility-viewport, .attribution-viewport, .services-viewport, .scope-viewport, .process-viewport, .conversion-viewport, .scenario-viewport, .portfolio-viewport, .gbp-system-viewport) { width: 100%; margin-right: 0; padding-right: 0; border-radius: 16px; }
  .contact-v4-inner { grid-template-columns: 1fr; }
  .contact-v4-overview { position: relative; top: auto; }
}

@media (max-width: 640px) {
  #mappack .map-illustration-v4 { height: 600px !important; border-radius: 16px; }
  #mappack .map-query-card { left: 12px; right: 12px; top: 12px; transform: none; }
  #mappack .map-query-card em { display: none; }
  #mappack .map-reading-card { left: 12px; top: 88px; width: 184px; transform: none; }
  #mappack .map-radar-core { left: 54%; top: 43%; width: 160px; height: 160px; transform: translate(-50%, -50%); }
  #mappack .map-radar-core span:nth-child(2) { inset: 28px; }
  #mappack .map-radar-core span:nth-child(3) { inset: 56px; }
  #mappack .map-radar-core b { inset: 64px; }
  #mappack .map-v3-pin { transform: none !important; }
  #mappack .map-v3-pin.is-a { left: 57%; top: 24%; }
  #mappack .map-v3-pin.is-b { left: 12%; top: 42%; }
  #mappack .map-v3-pin.is-c { right: 7%; top: 48%; }
  #mappack .map-v3-pin.is-you { right: 31%; top: 58%; }
  #mappack .map-competitor-dock { left: 12px; right: 12px; bottom: 12px; width: auto; transform: none; }
  #mappack .map-coverage-key,
  #mappack .map-illustration-v4 > .map-signal-lenses { display: none !important; }
  .contact-v4-overview, .contact-v4-form { padding: 24px; }
  .contact-v4-overview > h2 { font-size: 32px !important; line-height: 40px !important; }
  .contact-v4-form [data-form-body] > div[data-mq-stack] { grid-template-columns: 1fr !important; }
  .footer-v4-proofline { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  [data-cinematic-story] [data-motion-anchor],
  [data-cinematic-story] [data-motion-card],
  .map-query-card,
  .map-v3-pin,
  .map-competitor-dock,
  .map-signal-lenses,
  .map-reading-card,
  .map-coverage-key { transform: none !important; }

  .map-radar-core { transform: translate(-50%, -50%) !important; }
}

/* Aligned cinematic storytelling: one horizontal composition, one baseline. */
[data-cinematic-story] {
  overflow-x: clip;
  --story-card-width: min(400px, calc(100vw - 48px));
}

section[data-scroll-story] [data-scroll-track],
section[data-scroll-story] [data-review-scroll-track] {
  will-change: auto;
}

section[data-scroll-story][data-story-state="moving"] [data-scroll-track],
section[data-scroll-story][data-story-state="moving"] [data-review-scroll-track] {
  will-change: transform;
}

[data-cinematic-story] [data-motion-card] {
  height: auto;
  align-self: stretch;
  margin-top: 0 !important;
  transform: none !important;
}

[data-cinematic-story] [data-motion-anchor] {
  transform: none;
}

[data-cinematic-story] :is(
  .ranking-story-track,
  .responsibility-track,
  .attribution-track,
  .services-track,
  .scope-track,
  .process-track,
  .plans-track,
  .conversion-track-v3,
  .scenario-track,
  .portfolio-track,
  .b-review-track,
  .gbp-system-track
) {
  align-items: stretch !important;
  gap: 24px !important;
}

[data-cinematic-story] :is(
  .ranking-story-track,
  .responsibility-track,
  .attribution-track,
  .services-track,
  .scope-track,
  .process-track,
  .plans-track,
  .conversion-track-v3,
  .scenario-track,
  .portfolio-track,
  .b-review-track,
  .gbp-system-track
) > article:nth-child(n) {
  margin-top: 0 !important;
}

[data-cinematic-story] :is(
  .ranking-story-track,
  .responsibility-track,
  .attribution-track,
  .services-track,
  .scope-track,
  .process-track,
  .conversion-track-v3,
  .scenario-track,
  .gbp-system-track
) > article {
  width: var(--story-card-width);
}

#services.services-v3 .services-track > article {
  min-height: 520px !important;
}

#portfolio .portfolio-track > article {
  width: min(620px, calc(100vw - 48px));
}

#reviews .b-review-viewport {
  width: min(1264px, calc(100% - 48px));
  margin-inline: auto;
  container-type: inline-size;
}

#reviews .b-review-track {
  gap: 24px !important;
  padding: 8px 0 24px !important;
}

#reviews .b-review-card {
  --review-card-width: calc((100cqw - 56px) / 3);
  width: var(--review-card-width);
  flex-basis: var(--review-card-width);
  min-height: 376px;
  overflow: visible;
}

#reviews .b-review-card > p {
  min-height: 96px;
}

#reviews [data-review-help] {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  align-items: center;
}

#reviews [data-review-help] > span:first-child,
#reviews [data-vote-count] {
  grid-column: 1;
}

#reviews [data-vote-count] {
  display: block;
  color: #525866 !important;
}

#reviews [data-review-help] > span:last-child {
  grid-column: 2;
  grid-row: 1 / 3;
  align-self: center;
  margin-left: 0;
}

.semantic-scene {
  --scene-accent: #4285f4;
  --scene-soft: #e8f0fe;
  position: relative;
  min-height: 152px;
  margin: 20px 0 16px;
  padding: 14px;
  overflow: hidden;
  border: 1px solid #e2e4e9;
  border-radius: 16px;
  background: #f8f9fb;
  color: #030303;
}

.semantic-scene[data-scene-index="2"],
.semantic-scene[data-scene-index="7"] { --scene-accent: #6e3ff3; --scene-soft: #efebff; }
.semantic-scene[data-scene-index="3"],
.semantic-scene[data-scene-index="8"] { --scene-accent: #12a594; --scene-soft: #e3f8f4; }
.semantic-scene[data-scene-index="4"],
.semantic-scene[data-scene-index="9"] { --scene-accent: #ff8447; --scene-soft: #fff3eb; }
.semantic-scene[data-scene-index="5"],
.semantic-scene[data-scene-index="10"] { --scene-accent: #b47818; --scene-soft: #fff8d6; }
.semantic-scene[data-scene-index="6"],
.semantic-scene[data-scene-index="11"] { --scene-accent: #1fc16b; --scene-soft: #e0faec; }
.semantic-scene[data-scene-index="12"] { --scene-accent: #fb3748; --scene-soft: #fdecec; }

.semantic-scene-head {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  margin-bottom: 12px;
}

.semantic-scene-head > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: var(--scene-soft);
  color: var(--scene-accent);
}

.semantic-scene-head svg,
.scene-message svg,
.scene-document svg,
.scene-evidence svg,
.scene-handoff svg,
.scene-modules svg,
.scene-search svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.semantic-scene-head small,
.semantic-scene-head strong { display: block; }
.semantic-scene-head small { color: #525866; font-size: 9px; line-height: 14px; font-weight: 500; }
.semantic-scene-head strong { margin-top: 2px; color: #030303; font-size: 13px; line-height: 18px; font-weight: 600; }

.scene-tags,
.scene-gallery-note,
.scene-change-note,
.scene-search-foot,
.scene-map-note,
.scene-evidence-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 8px;
  color: #69707d;
  font-size: 8px;
  line-height: 14px;
}

.scene-tags span,
.scene-change-note span {
  padding: 3px 7px;
  border-radius: 6px;
  background: #ffffff;
  box-shadow: inset 0 0 0 1px #e2e4e9;
}

.scene-listing { display: grid; grid-template-columns: 36px minmax(0, 1fr) 26px; gap: 10px; align-items: center; padding: 10px; border-radius: 12px; background: #ffffff; box-shadow: 0 6px 18px rgba(3,3,3,.06); }
.scene-listing > b { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: #ffffff; color: #4285f4; box-shadow: inset 0 0 0 1px #e2e4e9; font-size: 15px; }
.scene-listing > span { display: grid; gap: 5px; }
.scene-listing > span i { height: 5px; border-radius: 5px; background: #d8dbe2; }
.scene-listing > span i:nth-child(2) { width: 72%; }
.scene-listing > span i:nth-child(3) { width: 52%; background: var(--scene-soft); }
.scene-listing > em { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: #e0faec; color: #0b6e3b; font-size: 11px; font-style: normal; }

.scene-gallery { position: relative; display: grid; grid-template-columns: 1.35fr 1fr 1fr; grid-template-rows: 34px 34px; gap: 5px; }
.scene-gallery > i { display: block; border-radius: 8px; background: #d7e5f8; }
.scene-gallery > i:first-child { grid-row: 1 / 3; background: #b9d0ef; }
.scene-gallery > i:nth-child(2) { background: #f2d985; }
.scene-gallery > i:nth-child(3) { background: #bde8d0; }
.scene-gallery > i:nth-child(4) { grid-column: 2 / 4; background: #d9cdfa; }
.scene-gallery > strong { position: absolute; left: 8px; bottom: 8px; padding: 3px 6px; border-radius: 5px; background: rgba(255,255,255,.9); font-size: 8px; line-height: 12px; font-weight: 500; }
.scene-gallery-note em { padding: 3px 7px; border-radius: 999px; background: var(--scene-soft); color: var(--scene-accent); font-style: normal; font-weight: 600; }

.scene-review { position: relative; padding: 10px; border-radius: 12px; background: #ffffff; box-shadow: 0 6px 18px rgba(3,3,3,.05); }
.scene-review > span { color: #fbbc05; font-size: 10px; letter-spacing: 1px; }
.scene-review > i { display: block; width: 86%; height: 5px; margin-top: 6px; border-radius: 5px; background: #d8dbe2; }
.scene-review > i:nth-of-type(2) { width: 58%; }
.scene-review blockquote { margin: 7px 0 0; color: #30323a; font-size: 8px; line-height: 12px; }
.scene-reply { display: flex; align-items: center; gap: 7px; width: 82%; margin: 6px 0 0 auto; padding: 6px 8px; border-radius: 9px; background: var(--scene-soft); color: #30323a; font-size: 8px; line-height: 12px; }
.scene-reply b { color: var(--scene-accent); }

.scene-browser { overflow: hidden; border: 1px solid #d8dbe2; border-radius: 11px; background: #ffffff; }
.scene-browser > header { height: 22px; display: flex; align-items: center; gap: 4px; padding: 0 8px; background: #030303; color: #ffffff; }
.scene-browser > header > i { width: 5px; height: 5px; border-radius: 50%; background: #fb3748; }
.scene-browser > header > i:nth-child(2) { background: #ffea00; }
.scene-browser > header > i:nth-child(3) { background: #1fc16b; }
.scene-browser > header small { margin-left: 4px; color: #d8d9de; font-size: 7px; line-height: 12px; }
.scene-browser > div { display: grid; grid-template-columns: 1.2fr .8fr; gap: 8px; padding: 10px; }
.scene-browser > div > span { display: grid; gap: 5px; align-content: start; }
.scene-browser > div > span b { width: 84%; height: 8px; border-radius: 5px; background: #030303; }
.scene-browser > div > span i { width: 100%; height: 4px; border-radius: 4px; background: #d8dbe2; }
.scene-browser > div > span i:nth-of-type(2) { width: 68%; }
.scene-browser > div > span em { justify-self: start; padding: 3px 7px; border-radius: 5px; background: #ffea00; font-size: 7px; line-height: 12px; font-style: normal; font-weight: 600; }
.scene-browser > div > strong { min-height: 54px; border-radius: 8px; background: linear-gradient(145deg,#dce9f8,#b9d2ee); }

.scene-change { display: grid; grid-template-columns: 1fr 20px 1fr; gap: 6px; align-items: center; }
.scene-change > span { position: relative; display: grid; gap: 6px; padding: 8px; border: 1px solid #e2e4e9; border-radius: 10px; background: #ffffff; }
.scene-change > span:last-child { border-color: #b8ebcf; background: #f2fcf6; }
.scene-change small { color: #7a7f8b; font-size: 7px; line-height: 10px; }
.scene-change i { height: 5px; border-radius: 5px; background: #d8dbe2; }
.scene-change i:nth-of-type(2) { width: 62%; }
.scene-change > b { color: var(--scene-accent); text-align: center; }
.scene-change em { position: absolute; right: 6px; top: 6px; color: #0b6e3b; font-size: 9px; font-style: normal; }

.scene-boundary { display: grid; grid-template-columns: 1fr 1px 1fr; gap: 10px; min-height: 80px; }
.scene-boundary > span { display: grid; grid-template-columns: 24px 1fr; gap: 4px 7px; align-content: center; padding: 8px; border-radius: 10px; background: #ffffff; color: #30323a; font-size: 8px; line-height: 12px; }
.scene-boundary > span > b { grid-row: 1 / 3; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 8px; background: var(--scene-soft); color: var(--scene-accent); }
.scene-boundary > span > small { color: #7a7f8b; font-size: 7px; }
.scene-boundary > i { background: #d8dbe2; }

.scene-search > span { display: flex; align-items: center; gap: 7px; padding: 7px 9px; border: 1px solid #e2e4e9; border-radius: 999px; background: #ffffff; color: #525866; font-size: 8px; line-height: 12px; }
.scene-search > span svg { color: #4285f4; }
.scene-search article { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; gap: 8px; align-items: center; margin-top: 7px; padding: 8px; border-radius: 10px; background: #ffffff; box-shadow: 0 5px 14px rgba(3,3,3,.05); }
.scene-search article > b { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; color: #4285f4; box-shadow: inset 0 0 0 1px #e2e4e9; }
.scene-search article > i { height: 5px; border-radius: 5px; background: #d8dbe2; }
.scene-search article > i:nth-of-type(2) { width: 68%; }
.scene-search article > em { grid-column: 3; grid-row: 1 / 3; color: #fbbc05; font-size: 8px; font-style: normal; }
.scene-search-foot strong { color: var(--scene-accent); }

.scene-route { position: relative; display: grid; grid-template-columns: 1fr 18px 1fr 18px 1fr; gap: 4px; align-items: center; min-height: 72px; }
.scene-route > span { min-width: 0; display: grid; justify-items: center; gap: 5px; text-align: center; }
.scene-route > span b { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px; background: var(--scene-soft); color: var(--scene-accent); }
.scene-route > span small { color: #525866; font-size: 7px; line-height: 10px; }
.scene-route > i { color: #a5a8b3; font-size: 10px; font-style: normal; }

.scene-events { position: relative; display: grid; grid-template-columns: repeat(3,1fr); gap: 6px; padding-top: 12px; }
.scene-events > b { min-width: 0; min-height: 48px; display: grid; place-items: center; padding: 6px; border: 1px solid #e2e4e9; border-radius: 10px; background: #ffffff; color: #30323a; font: 500 7px/11px Inter,Arial,sans-serif; text-align: center; }
.scene-events > b:nth-child(2) { border-color: #b9d2ee; background: #eef5ff; color: #2453d4; }
.scene-events > b:nth-child(3) { border-color: #b8ebcf; background: #f1fbf5; color: #0b6e3b; }
.scene-events > span { position: absolute; right: 13%; top: 5px; width: 8px; height: 8px; border-radius: 50%; background: #1fc16b; box-shadow: 0 0 0 5px rgba(31,193,107,.14); }

.scene-people { display: flex; align-items: center; padding: 6px 0 0 8px; }
.scene-people > span { position: relative; width: 42px; height: 42px; margin-left: -8px; border: 3px solid #f8f9fb; border-radius: 50%; background: #d7e5f8; }
.scene-people > span:nth-child(2) { background: #f2d985; }
.scene-people > span:nth-child(3) { background: #bde8d0; }
.scene-people > span i { position: absolute; left: 14px; top: 8px; width: 10px; height: 10px; border-radius: 50%; background: #30323a; }
.scene-people > span b { position: absolute; left: 9px; bottom: 6px; width: 20px; height: 12px; border-radius: 12px 12px 7px 7px; background: #525866; }
.scene-people > strong { margin-left: auto; max-width: 106px; color: #30323a; font-size: 8px; line-height: 12px; font-weight: 500; text-align: right; }
.scene-message { display: grid; grid-template-columns: 26px minmax(0,1fr); gap: 8px; align-items: center; margin-top: 8px; padding: 7px 9px; border-radius: 10px; background: #ffffff; color: var(--scene-accent); }
.scene-message > span { color: #30323a; font-size: 8px; line-height: 12px; }
.scene-message small { display: block; color: #7a7f8b; font-size: 7px; }

.scene-deal { display: grid; grid-template-columns: 1fr 20px 1fr; gap: 6px; align-items: center; }
.scene-deal > span { display: grid; gap: 3px; padding: 9px; border: 1px solid #e2e4e9; border-radius: 10px; background: #ffffff; }
.scene-deal > span.is-won { border-color: #b8ebcf; background: #f1fbf5; }
.scene-deal b { font-size: 9px; line-height: 13px; }
.scene-deal small { color: #69707d; font-size: 7px; line-height: 11px; }
.scene-deal > i { color: var(--scene-accent); text-align: center; font-style: normal; }
.scene-deal-foot { display: flex; align-items: center; gap: 5px; margin-top: 9px; }
.scene-deal-foot i { width: 20px; height: 5px; border-radius: 5px; background: #d8dbe2; }
.scene-deal-foot i:nth-child(2) { background: #f2d985; }
.scene-deal-foot i:nth-child(3) { background: #b8ebcf; }
.scene-deal-foot strong { margin-left: auto; color: #0b6e3b; font-size: 9px; }

.scene-document { padding: 9px; border-radius: 11px; background: #ffffff; box-shadow: 0 6px 18px rgba(3,3,3,.05); }
.scene-document header { display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 8px; align-items: center; color: var(--scene-accent); }
.scene-document header span { color: #30323a; font-size: 8px; line-height: 12px; }
.scene-document header small { display: block; color: #7a7f8b; font-size: 7px; }
.scene-document ul { display: grid; gap: 5px; margin: 8px 0 0; padding: 0; list-style: none; }
.scene-document li { display: grid; grid-template-columns: 16px minmax(0,1fr); gap: 6px; align-items: center; }
.scene-document li b { display: grid; place-items: center; width: 16px; height: 16px; border-radius: 5px; background: #e0faec; color: #0b6e3b; font-size: 7px; }
.scene-document li i { height: 5px; border-radius: 5px; background: #d8dbe2; }
.scene-document li:nth-child(2) i { width: 78%; }
.scene-document li:nth-child(3) i { width: 58%; }

.scene-map { position: relative; height: 72px; overflow: hidden; border-radius: 12px; background: #0b2940; }
.scene-map > i { position: absolute; left: 48%; top: 50%; width: 98px; height: 98px; border: 1px solid rgba(66,133,244,.55); border-radius: 50%; transform: translate(-50%,-50%); }
.scene-map > i:nth-child(2) { width: 66px; height: 66px; border-color: rgba(255,234,0,.58); }
.scene-map > i:nth-child(3) { width: 34px; height: 34px; border-color: rgba(31,193,107,.62); }
.scene-map > b { position: absolute; display: grid; place-items: center; width: 20px; height: 20px; border: 2px solid #ffffff; border-radius: 7px; background: #ea4335; color: #ffffff; font-size: 7px; }
.scene-map > b:nth-of-type(1) { left: 18%; top: 15%; }
.scene-map > b:nth-of-type(2) { right: 18%; top: 25%; background: #4285f4; }
.scene-map > b:nth-of-type(3) { left: 44%; bottom: 8%; background: #34a853; }
.scene-map > strong { position: absolute; left: 50%; top: 50%; padding: 3px 6px; border-radius: 5px; background: #ffea00; color: #030303; font-size: 7px; transform: translate(-50%,-50%); }
.scene-map-note em { color: var(--scene-accent); font-style: normal; font-weight: 600; }

.scene-calendar { overflow: hidden; border: 1px solid #e2e4e9; border-radius: 11px; background: #ffffff; }
.scene-calendar > header { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 6px 8px; background: #f6f8fa; color: #525866; font-size: 7px; line-height: 12px; }
.scene-calendar > header strong { color: var(--scene-accent); }
.scene-calendar > div { display: grid; grid-template-columns: repeat(7,1fr); gap: 3px; padding: 7px; }
.scene-calendar > div i { aspect-ratio: 1; border-radius: 4px; background: #f0f1f4; }
.scene-calendar > div i:nth-child(4n+2) { background: var(--scene-soft); }
.scene-calendar > div i:nth-child(7) { background: #ffea00; }
.scene-calendar > footer { display: flex; align-items: center; gap: 6px; padding: 0 8px 7px; color: #69707d; font-size: 7px; line-height: 11px; }
.scene-calendar > footer b { width: 18px; height: 12px; border-radius: 4px; background: #b9d2ee; }

.scene-analytics { display: grid; grid-template-columns: 82px minmax(0,1fr); gap: 8px; align-items: end; }
.scene-analytics > span { display: grid; gap: 2px; }
.scene-analytics > span b { font-size: 20px; line-height: 24px; font-weight: 600; }
.scene-analytics > span small { color: #69707d; font-size: 7px; line-height: 11px; }
.scene-analytics > svg { width: 100%; height: 54px; overflow: visible; }
.scene-analytics > svg path { fill: none; stroke: var(--scene-accent); stroke-width: 3; stroke-linecap: round; }
.scene-analytics > svg circle { fill: #ffffff; stroke: var(--scene-accent); stroke-width: 3; }
.scene-analytics > footer { grid-column: 1 / -1; padding: 6px 8px; border-radius: 8px; background: var(--scene-soft); color: #30323a; font-size: 8px; line-height: 12px; }

.scene-access { display: grid; gap: 5px; }
.scene-access > span { display: grid; grid-template-columns: 24px minmax(0,1fr) auto; gap: 7px; align-items: center; padding: 6px 8px; border: 1px solid #e2e4e9; border-radius: 9px; background: #ffffff; }
.scene-access > span i { position: relative; width: 24px; height: 24px; border-radius: 50%; background: var(--scene-soft); }
.scene-access > span i::before { content: ""; position: absolute; left: 8px; top: 5px; width: 8px; height: 8px; border-radius: 50%; background: var(--scene-accent); }
.scene-access > span i::after { content: ""; position: absolute; left: 5px; bottom: 4px; width: 14px; height: 7px; border-radius: 8px 8px 5px 5px; background: var(--scene-accent); }
.scene-access > span b { min-width: 0; color: #30323a; font-size: 8px; line-height: 12px; }
.scene-access > span em { color: #0b6e3b; font-size: 7px; font-style: normal; }

.scene-cycle { display: grid; grid-template-columns: 1fr 12px 1fr 12px 1fr; gap: 3px; align-items: center; min-height: 62px; }
.scene-cycle > span { display: grid; justify-items: center; gap: 5px; color: #525866; font-size: 7px; line-height: 11px; text-align: center; }
.scene-cycle > span b { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--scene-soft); color: var(--scene-accent); }
.scene-cycle > i { color: #a5a8b3; font-size: 9px; font-style: normal; }
.scene-cycle > strong { position: absolute; right: 10px; top: 10px; color: var(--scene-accent); font-size: 18px; }

.scene-compare { display: grid; grid-template-columns: 1fr 24px 1fr; gap: 6px; align-items: center; }
.scene-compare article { display: grid; gap: 6px; padding: 8px; border: 1px solid #e2e4e9; border-radius: 10px; background: #ffffff; }
.scene-compare article.is-ahead { border-color: #b8ebcf; background: #f2fcf6; }
.scene-compare article b { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 7px; background: #f0f1f4; color: #525866; font-size: 8px; }
.scene-compare article.is-ahead b { background: #e0faec; color: #0b6e3b; }
.scene-compare article i { height: 5px; border-radius: 5px; background: #d8dbe2; }
.scene-compare article i:nth-of-type(2) { width: 64%; }
.scene-compare article small { color: #69707d; font-size: 7px; line-height: 10px; }
.scene-compare > strong { color: var(--scene-accent); font-size: 8px; text-align: center; }

.scene-evidence { display: grid; grid-template-columns: 1fr 1fr 28px; gap: 7px; align-items: center; }
.scene-evidence > span { display: grid; justify-items: center; gap: 5px; min-height: 60px; padding: 8px; border: 1px solid #e2e4e9; border-radius: 10px; background: #ffffff; color: var(--scene-accent); }
.scene-evidence > span small { color: #525866; font-size: 7px; line-height: 10px; text-align: center; }
.scene-evidence > b { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #e0faec; color: #0b6e3b; }
.scene-evidence-foot { justify-content: flex-start; }

.scene-priority { display: grid; gap: 5px; }
.scene-priority > span { display: grid; grid-template-columns: 24px minmax(0,1fr) auto; gap: 7px; align-items: center; padding: 6px 8px; border: 1px solid #e2e4e9; border-radius: 9px; background: #ffffff; color: #30323a; font-size: 8px; line-height: 12px; }
.scene-priority > span:first-child { border-color: #f0d800; background: #fffdf0; }
.scene-priority b { color: var(--scene-accent); font-size: 7px; }
.scene-priority em { padding: 2px 5px; border-radius: 5px; background: var(--scene-soft); color: var(--scene-accent); font-size: 6px; font-style: normal; }

.scene-handoff { display: grid; grid-template-columns: 1fr 12px 1fr 12px 1fr; gap: 3px; align-items: center; }
.scene-handoff > span { min-width: 0; display: grid; justify-items: center; gap: 6px; min-height: 68px; padding: 9px 5px; border-radius: 10px; background: #ffffff; color: var(--scene-accent); }
.scene-handoff > span small { color: #525866; font-size: 7px; line-height: 10px; text-align: center; }
.scene-handoff > i { color: #a5a8b3; font-size: 8px; font-style: normal; text-align: center; }

.scene-modules { display: grid; grid-template-columns: repeat(3,1fr); gap: 6px; }
.scene-modules > span { display: grid; justify-items: center; gap: 7px; padding: 9px 5px; border-radius: 10px; background: #ffffff; color: var(--scene-accent); font-size: 7px; line-height: 10px; text-align: center; }

.attribution-track .semantic-scene,
.services-track .semantic-scene,
.plan-card.is-dark .semantic-scene,
.gbp-system-track .is-dark .semantic-scene {
  border-color: #30302c;
  background: #20201d;
  color: #ffffff;
}

.attribution-track .semantic-scene-head small,
.services-track .semantic-scene-head small,
.plan-card.is-dark .semantic-scene-head small,
.gbp-system-track .is-dark .semantic-scene-head small { color: #a5a8b3; }
.attribution-track .semantic-scene-head strong,
.services-track .semantic-scene-head strong,
.plan-card.is-dark .semantic-scene-head strong,
.gbp-system-track .is-dark .semantic-scene-head strong { color: #ffffff; }
.attribution-track .semantic-scene { margin-top: auto; }
.services-track .semantic-scene { min-height: 164px; margin-top: auto; margin-bottom: 0; background: #ffffff; color: #030303; }
.services-track .semantic-scene-head small { color: #525866; }
.services-track .semantic-scene-head strong { color: #030303; }
.plan-card .semantic-scene { min-height: 144px; }
.plan-card.is-dark .semantic-scene :is(.scene-listing,.scene-browser,.scene-priority>span,.scene-calendar) { border-color: #3c3c38; }

#plans .plans-track {
  gap: 24px;
}

#plans .plan-card {
  width: min(400px, calc(100vw - 48px));
  border-radius: 20px;
  border-color: #d8dbe2;
  box-shadow: 0 1px 2px rgba(3, 3, 3, .03), 0 20px 48px rgba(3, 3, 3, .07);
}

#plans .plan-card > header {
  padding-bottom: 16px;
  border-bottom: 1px solid #e2e4e9;
}

#plans .plan-card.is-dark > header {
  border-color: #30302c;
}

#plans .plan-card > footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
}

#plans .plan-card > footer a {
  min-width: 152px;
}

#plans .plan-card.is-featured {
  border-color: #d7b900;
  box-shadow: 0 2px 8px rgba(3, 3, 3, .04), 0 24px 56px rgba(215, 185, 0, .18);
}

.contact-v4-overview > p + div {
  display: grid !important;
  grid-template-columns: 1fr;
  gap: 8px !important;
  margin-top: 32px !important;
}

.contact-v4-overview > p + div > div {
  min-height: 72px;
  padding: 12px;
  border: 1px solid #e2e4e9;
  border-radius: 16px;
  background: #ffffff;
}

.form-consent {
  display: grid !important;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 12px !important;
  align-items: start !important;
}

.form-consent > input[type="checkbox"] {
  width: 20px !important;
  height: 20px !important;
  min-height: 20px !important;
  max-height: 20px !important;
  padding: 0 !important;
  margin: 0 !important;
  align-self: start;
  flex: none;
}

.form-consent > span {
  display: block;
  min-width: 0;
  line-height: 20px;
}

@media (min-width: 961px) and (min-height: 800px) {
  #ranking-vs-conversion > .b-story-stage,
  #plans .b-container,
  [data-cinematic-story] :is(
    .responsibility-shell,
    .attribution-shell,
    .services-shell,
    .scope-command,
    .process-viewport,
    .conversion-viewport,
    .scenario-shell,
    .portfolio-viewport,
    .b-review-viewport,
    .gbp-system-console
  ) {
    overflow-x: clip;
  }

  [data-cinematic-story] [data-motion-anchor] {
    transform: translate3d(var(--anchor-x, 0), 0, 0) !important;
  }

  [data-cinematic-story] :is(
    .responsibility-viewport,
    .attribution-viewport,
    .services-viewport,
    .scope-viewport,
    .process-viewport,
    .conversion-viewport,
    .scenario-viewport,
    .portfolio-viewport,
    .gbp-system-viewport
  ) {
    width: 100% !important;
    margin-right: 0 !important;
    padding-right: 0 !important;
  }

  [data-cinematic-story] :is(
    .responsibility-viewport,
    .attribution-viewport,
    .services-viewport,
    .scenario-viewport,
    .gbp-system-viewport
  ) {
    overflow: visible !important;
  }

  [data-cinematic-story] :is(
    .responsibility-shell,
    .attribution-shell,
    .services-shell,
    .scenario-shell,
    .gbp-system-console
  ) {
    align-items: stretch;
  }

  [data-cinematic-story] :is(
    .responsibility-shell,
    .attribution-shell,
    .scenario-shell,
    .gbp-system-console
  ) {
    grid-template-columns: var(--story-card-width) minmax(0, 1fr);
  }

  [data-cinematic-story] :is(
    .responsibility-viewport,
    .attribution-viewport,
    .scenario-viewport,
    .gbp-system-viewport
  ),
  [data-cinematic-story] :is(
    .responsibility-track,
    .attribution-track,
    .scenario-track,
    .gbp-system-track
  ) {
    height: 100%;
    padding-bottom: 0;
  }

  #services [data-service-visual][data-motion-anchor] {
    position: relative !important;
    top: auto !important;
    transform: translate3d(var(--anchor-x, 0), 16px, 0) scale(.844) !important;
    transform-origin: top center !important;
  }
}

@media (min-width: 961px) and (min-height: 800px) and (max-width: 1120px) {
  #services [data-service-visual][data-motion-anchor] {
    transform: translate3d(var(--anchor-x, 0), 16px, 0) scale(.844) !important;
  }
}

@media (max-width: 960px) {
  [data-cinematic-story] [data-motion-anchor] { transform: none !important; }
  .semantic-scene { min-height: 144px; }
  #plans .plan-card { width: min(344px, calc(100vw - 48px)); }
  #plans .plan-card > footer { grid-template-columns: 1fr; }
  #plans .plan-card > footer a { width: 100%; min-width: 0; }
  #reviews .b-review-card { width: calc(100cqw - 8px); flex-basis: calc(100cqw - 8px); }
  #reviews [data-review-help] { grid-template-columns: minmax(0, 1fr) auto; }
  #reviews [data-review-help] > span:last-child { grid-column: 2; grid-row: 1 / 3; }
}
