/* Page-specific styles for v4/fuer-agenturen.html. Shared v4 chrome remains in styles-v4.css. */
.page-fuer-agenturen .nav__links a[aria-current="page"],
.page-fuer-agenturen .nav__mobile-links a[aria-current="page"] { color: var(--main); }

.agency-hero {
  position: relative;
  min-height: 963px;
  background: #101314;
  color: var(--white);
  overflow: hidden;
  padding-top: 1px;
}
.agency-hero__bg,
.agency-hero__screen,
.agency-hero__shade { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.agency-hero__screen { opacity: .34; mix-blend-mode: screen; object-position: center 30%; filter: saturate(.94) contrast(1.02); }
.agency-hero__bg { opacity: .9; object-position: center top; }
.agency-hero__shade { background: linear-gradient(180deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,.2) 45%, rgba(0,0,0,.96) 100%), radial-gradient(circle at 72% 32%, rgba(255,255,255,.12), transparent 35%); }
.agency-hero__content { position: relative; z-index: 2; padding-top: 226px; }
.agency-hero__copy { display: grid; grid-template-columns: minmax(460px, 480px) minmax(420px, 479px); gap: 26px; align-items: end; max-width: 1006px; }
.agency-hero__copy h1 { color: var(--color-2); }
.agency-hero__copy h1 span { color: var(--white); }
.agency-hero__intro p { max-width: 479px; color: var(--white); font-size: 16px; line-height: 25px; margin-bottom: 20px; }
.agency-button-row { display: flex; flex-wrap: wrap; gap: 12px; }
.agency-carousel { position: absolute; z-index: 3; left: max(166px, calc((100vw - var(--container-max)) / 2)); right: 0; bottom: 129px; display: flex; gap: 20px; overflow: hidden; padding-right: 0; }
.agency-carousel__card { position: relative; flex: 0 0 280px; height: 190px; background: #111; overflow: hidden; }
.agency-carousel__card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(216deg, rgba(0,0,0,0) 20%, rgba(0,0,0,.86) 100%); }
.agency-carousel__card img { width: 100%; height: 100%; object-fit: cover; }
.agency-carousel__card p { position: absolute; z-index: 1; left: 20px; right: 16px; bottom: 18px; font-size: 16px; line-height: 20px; color: var(--white); }
.agency-carousel__card p span + span { color: var(--color-2); }
.agency-trusted { position: absolute; z-index: 3; left: max(166px, calc((100vw - var(--container-max)) / 2)); right: max(166px, calc((100vw - var(--container-max)) / 2)); bottom: 44px; display: grid; grid-template-columns: 180px 1fr; gap: 54px; align-items: center; color: var(--white); }
.agency-trusted p { color: var(--white); font-size: 16px; line-height: 25px; }
.agency-trusted__logos { display: flex; align-items: center; justify-content: space-between; gap: 34px; min-width: 0; }
.agency-trusted__logos img { max-width: 118px; max-height: 42px; width: auto; height: auto; object-fit: contain; filter: none; }
.agency-trusted__logos img[src$="Heart-Red-1.svg"] { max-width: 33px; }

.agency-challenges { max-width: 1180px; margin: 132px auto 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.agency-challenge-card { border-top: 1px solid var(--color-2); min-height: 355px; display: flex; flex-direction: column; justify-content: space-between; padding-top: 24px; }
.agency-challenge-card h2 { font-size: clamp(1.65rem, 2.4vw, 2rem); line-height: 1.06; letter-spacing: -.02em; margin-bottom: 18px; }
.agency-challenge-card p { color: var(--soft); max-width: 300px; }
.agency-challenge-card__cta { background: var(--main); color: var(--black); min-height: 92px; display: flex; align-items: center; gap: 16px; padding: 18px 20px; border-radius: 4px; }
.agency-challenge-card__cta img { width: 18px; flex: 0 0 auto; }
.agency-challenge-card__cta p { color: var(--black); line-height: 20px; }

.agency-process { margin-top: 160px; padding: 0 0 8px; }
.agency-process__inner { position: relative; min-height: 430px; }
.agency-process h2 { max-width: 592px; }
.agency-process__connector { width: min(760px, 65vw); margin: 68px auto 0; }
.agency-process__steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 42px; }
.agency-process__steps article { border-top: 1px solid var(--color-2); padding-top: 22px; }
.agency-process__steps h3 { font-size: 24px; line-height: 1.08; letter-spacing: -.02em; margin-bottom: 14px; }
.agency-process__steps p { color: var(--soft); max-width: 310px; }

.agency-services { margin-top: 150px; }
.agency-services h2 { margin-bottom: 54px; }
.agency-services__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: stretch; }
.agency-services__small-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.agency-service-card { background: var(--color); min-height: 280px; padding: 24px; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; }
.agency-service-card h3 { font-size: 24px; line-height: 1.08; letter-spacing: -.02em; }
.agency-service-card p { color: var(--soft); max-width: 430px; }
.agency-service-card--large { padding: 0; background: #111; color: var(--white); position: relative; min-height: 584px; }
.agency-service-card--large::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,0) 38%, rgba(0,0,0,.86) 100%); }
.agency-service-card--large img { width: 100%; height: 100%; object-fit: cover; }
.agency-service-card--large div { position: absolute; z-index: 1; left: 24px; right: 24px; bottom: 24px; }
.agency-service-card--large p { color: var(--white); }
.agency-stats { margin-top: 132px; }

.agency-cases { margin-top: 160px; }
.agency-section-heading { margin-bottom: 54px; }
.agency-case-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.agency-case-card { min-height: 355px; position: relative; background: #111; overflow: hidden; color: var(--white); }
.agency-case-card::after { content:""; position:absolute; inset:0; background:linear-gradient(216deg,rgba(0,0,0,0) 18%,rgba(0,0,0,.94) 100%); }
.agency-case-card > img:first-child { width: 100%; height: 100%; object-fit: cover; }
.agency-card-arrow { position: absolute; z-index: 2; right: 20px; top: 20px; width: 34px; }
.agency-case-card__body { position: absolute; z-index: 2; left: 20px; right: 20px; bottom: 20px; }
.agency-case-card h3 { font-size: 24px; line-height: 1; letter-spacing: -.02em; }
.agency-case-card__subtitle { font-size: 24px; line-height: 1; letter-spacing: -.02em; color: var(--color-2); margin-top: 4px; }
.agency-case-card__text { margin-top: 24px; color: var(--white); max-width: 250px; }
.agency-case-cta { margin-top: 40px; display: grid; grid-template-columns: 280px 1fr; gap: 24px; align-items: start; }
.agency-case-cta p { max-width: 579px; color: var(--soft); justify-self: end; }

.agency-tools { margin-top: 160px; }
.agency-tools__title { display: grid; grid-template-columns: 1fr 380px; gap: 24px; align-items: start; margin-bottom: 54px; }
.agency-tools__title p { color: var(--soft); }
.agency-tools__grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 24px; }
.agency-tool-card { min-height: 280px; background: var(--color); padding: 24px; display: flex; flex-direction: column; justify-content: space-between; }
.agency-tool-card img { max-width: 72px; max-height: 72px; width: auto; object-fit: contain; }
.agency-tool-card h3 { margin-top: auto; font-size: 24px; line-height: 1.08; letter-spacing: -.02em; }
.agency-tool-card p { color: var(--soft); margin-top: 10px; }

.agency-testimonials { margin-top: 160px; }
.agency-testimonials h2 { margin-bottom: 54px; }
.agency-testimonial-mosaic { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; align-items: start; }
.agency-testimonial-card { background: var(--color); padding: 24px; min-height: 280px; display: flex; flex-direction: column; justify-content: space-between; }
.agency-testimonial-card--tall { min-height: 430px; }
.agency-testimonial-card--medium { min-height: 355px; }
.agency-testimonial-card--short { min-height: 250px; }
.agency-testimonial-card__quote { font-size: 18px; line-height: 28px; color: var(--black); }
.agency-testimonial-card__author { display: flex; gap: 14px; align-items: center; margin-top: 28px; }
.agency-testimonial-card__author img { width: 52px; height: 52px; object-fit: cover; border-radius: 50%; }
.agency-testimonial-card__author span { color: var(--soft); }

.agency-faq { margin-top: 160px; margin-bottom: 160px; }
.agency-faq__inner { display: grid; grid-template-columns: 380px 1fr; gap: 120px; align-items: start; }
.agency-faq__heading h2 { margin-bottom: 34px; }
.agency-faq__items { border-top: 1px solid var(--color-2); }
.agency-faq__item { border-bottom: 1px solid var(--color-2); padding: 24px 0; }
.agency-faq__item h3 { font-size: 24px; line-height: 1.2; letter-spacing: -.02em; }
.agency-faq__item p { color: var(--soft); max-width: 680px; margin-top: 18px; display: none; }
.agency-faq__item.is-open p { display: block; }
.agency-cta { margin-top: 0; }

@media (max-width: 1228px) {
  .agency-hero__content, .agency-challenges, .agency-process__inner, .agency-services .container, .agency-cases .container, .agency-tools .container, .agency-testimonials .container, .agency-faq__inner { padding-left: 24px; padding-right: 24px; }
  .agency-carousel, .agency-trusted { left: 24px; right: 24px; }
  .agency-case-grid, .agency-tools__grid { grid-template-columns: repeat(2, 1fr); }
  .agency-services__grid { grid-template-columns: 1fr; }
}
@media (max-width: 1024px) {
  .agency-hero { min-height: 1020px; }
  .agency-hero__copy, .agency-tools__title, .agency-faq__inner { grid-template-columns: 1fr; gap: 28px; }
  .agency-carousel { bottom: 185px; overflow-x: auto; }
  .agency-trusted { grid-template-columns: 1fr; gap: 18px; bottom: 48px; }
  .agency-trusted__logos { flex-wrap: wrap; justify-content: flex-start; }
  .agency-challenges, .agency-process__steps, .agency-testimonial-mosaic { grid-template-columns: 1fr; }
  .agency-process, .agency-services, .agency-cases, .agency-tools, .agency-testimonials, .agency-faq { margin-top: 110px; }
}
@media (max-width: 640px) {
  .agency-hero { min-height: 930px; }
  .page-fuer-agenturen { overflow-x: hidden; }
  .agency-hero__content { padding-top: 148px; }
  .agency-hero__copy { min-width: 0; }
  .agency-hero__intro p { max-width: 100%; }
  .agency-button-row { align-items: stretch; flex-direction: column; }
  .agency-button-row .btn { width: 100%; }
  .agency-carousel { bottom: 178px; gap: 14px; max-width: calc(100vw - 48px); overflow-x: auto; overflow-y: hidden; }
  .agency-carousel__card { flex-basis: 238px; height: 166px; }
  .agency-trusted { bottom: 28px; }
  .agency-challenges { margin-top: 92px; grid-template-columns: 1fr; padding-left: 24px; padding-right: 24px; }
  .agency-services__small-grid, .agency-case-grid, .agency-tools__grid { grid-template-columns: 1fr; }
  .agency-service-card--large { min-height: 430px; }
  .agency-case-cta { grid-template-columns: 1fr; }
  .agency-process__connector { width: 100%; }
  .agency-faq { margin-bottom: 96px; }
}
