/* Sistema interno baseado na escala e nos CTAs da página Serviços. */
:root {
  --internal-section-space: clamp(44px, 4.5vw, 58px);
  --internal-hero-space: clamp(40px, 5vw, 64px);
  --internal-grid-gap: clamp(32px, 5vw, 72px);
  --internal-title-size: clamp(2.65rem, 3.75vw, 4rem);
  --internal-heading-size: clamp(2rem, 2.8vw, 3rem);
  --internal-accent: #e10600;
}
.internal-hero {
  position: relative;
  color: #080808;
  padding-block: var(--internal-hero-space);
}
.internal-hero__grid { min-width: 0; }
.internal-hero__content { min-width: 0; max-width: 680px; }
.internal-breadcrumb { margin-bottom: 28px; }
.internal-breadcrumb ol { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; padding: 0; margin: 0; color: #666666; font-size: .75rem; line-height: 1.7; }
.internal-breadcrumb li + li::before { content: "/"; margin-right: 10px; color: #777777; }
.internal-hero .service-eyebrow { margin-bottom: 14px; color: #666666; letter-spacing: .18em; }
.internal-hero .service-eyebrow::before { width: 8px; height: 8px; border-radius: 50%; background: var(--internal-accent); }
.internal-hero h1 { margin: 0; font-size: var(--internal-title-size); font-weight: 600; line-height: .96; letter-spacing: -.055em; overflow-wrap: break-word; }
.internal-hero h1 span { display: block; margin-top: 4px; color: var(--internal-accent); }
.internal-hero__summary { max-width: 570px; margin: 18px 0 22px; color: #555555; font-size: .94rem; line-height: 1.6; }
.internal-hero__watermark { width: 150%; max-width: none; opacity: .075; filter: brightness(0); pointer-events: none; }
.internal-button { display: inline-flex; align-items: center; justify-content: center; gap: 14px; min-height: 46px; padding: 13px 21px; border: 1px solid #080808; border-radius: 999px; background: #080808; color: #ffffff; font-size: .86rem; font-weight: 500; line-height: 1.4; transition: transform .25s ease, background-color .25s ease, box-shadow .25s ease; }
.internal-button:hover { transform: translateY(-2px); background: #1b1b1b; box-shadow: 0 12px 28px rgba(0,0,0,.14); }
.internal-section { padding-block: var(--internal-section-space); }
.internal-grid { gap: var(--internal-grid-gap); }
.internal-cta { color: #080808; padding-block: var(--internal-section-space); }
.internal-cta p { color: #555555; }
/* Sobre mantém sua composição e utiliza os mesmos espaços das internas. */
.page-sobre .internal-section { padding-block: var(--internal-section-space); }
.page-sobre .contact-section { min-height: auto; padding-block: var(--internal-section-space); }
.page-sobre .contact-section::after,
.page-sobre .sobre-hero::after { content: none; }
.page-sobre .sobre-stack__list span { background-color: var(--surface-light-bg); }
.page-sobre .sobre-stack__list span:hover { background-color: #080808; }
@media (max-width: 640px) {
  .internal-breadcrumb { margin-bottom: 24px; }
}
@media (max-width: 480px) {
  :root { --internal-title-size: clamp(2.2rem, 9vw, 2.65rem); --internal-grid-gap: 24px; }
  .internal-button { max-width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .internal-button { transition: none; } }

/* Hero editorial: mesma faixa premium full width da referência Sobre. */
.internal-hero--editorial {
  width: 100%;
  height: 50svh;
  min-height: 0;
  display: block;
  padding-block: clamp(8px, 2svh, 20px);
  overflow: hidden;
}
.internal-hero--editorial > .container { height: 100%; }
.internal-hero--editorial h1 {
  font-size: clamp(2.15rem, 3.2vw, 3rem);
  line-height: 1.03;
  min-height: 0;
}
.internal-hero--editorial .internal-breadcrumb { margin-bottom: 8px; }
.internal-hero--editorial .service-eyebrow { margin-bottom: 8px; }
.internal-hero--editorial .internal-hero__summary { min-height: 0; margin-block: 10px 12px; }
.internal-hero--editorial .internal-breadcrumb,
.internal-hero--editorial .internal-hero__grid { width: min(620px, 55%); }
.internal-hero--editorial .internal-hero__grid { display: block; }
.internal-hero--editorial .internal-hero__art {
  position: absolute;
  top: 28px;
  right: max(var(--page-padding), calc((100% - var(--container-width)) / 2));
  width: min(42%, calc(var(--container-width) * .42));
  pointer-events: none;
}
.internal-hero--editorial .internal-hero__watermark {
  width: 100%;
  max-width: 100%;
  height: auto;
  opacity: .075;
  box-shadow: none;
}
@media (min-width: 641px) and (max-width: 1024px) {
  .internal-hero--editorial h1 { font-size: clamp(2.15rem, 4.1vw, 2.65rem); min-height: 0; }
}
@media (max-width: 640px) {
  .internal-hero--editorial { height: auto; min-height: 640px; padding-top: 144px; }
  .internal-hero--editorial > .container { height: auto; }
  .internal-hero--editorial h1 { min-height: 0; }
  .internal-hero--editorial .internal-hero__summary { min-height: 0; }
  .internal-hero--editorial .internal-breadcrumb,
  .internal-hero--editorial .internal-hero__grid { width: 100%; }
  .internal-hero--editorial .internal-hero__art { width: min(72%, 360px); top: 24px; right: var(--page-padding); }
}
