/* Soluções: escolha principal nos painéis; acesso directo como índice discreto. */
.service-page .internal-hero { min-height: 0; padding-block: var(--gn-inner-space); }
.service-page .internal-hero__grid { align-items: center; }
.service-page .internal-hero h1 { font-size: var(--gn-inner-title-size); line-height: 1.1; letter-spacing: -.04em; }
.service-page .internal-hero__lead { font-size: var(--gn-inner-lead-size); }
.service-page .solutions-hero-note { overflow: hidden; padding: 0; border: 1px solid var(--gn-line); border-radius: 8px; background: var(--gn-surface,#fff); box-shadow: 0 14px 35px rgba(4,24,48,.08); }
.service-page .solutions-hero-note__visual { position: relative; display: grid; place-items: center; isolation: isolate; width: 100%; height: clamp(140px,12vw,164px); overflow: hidden; background-image: linear-gradient(110deg,rgba(5,26,48,.55),rgba(5,22,43,.38)),var(--gn-hero-card-image); background-size: cover; background-position: center; }
.service-page .solutions-hero-note__visual::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg,transparent 60%,rgba(4,19,38,.36)); }
.service-page .solutions-hero-note__brand { position: relative; display: grid; place-items: center; width: 112px; height: 112px; animation: solution-brand-float 5s ease-in-out infinite; }
.service-page .solutions-hero-note__brand::before { content: ""; position: absolute; inset: 3px; border: 1px solid rgba(188,229,252,.65); border-radius: 50%; background: rgba(5,29,54,.26); box-shadow: 0 0 26px rgba(60,187,241,.16); animation: solution-brand-glow 5s ease-in-out infinite; }
.service-page .solutions-hero-note__brand img { position: relative; width: 78px; height: 78px; object-fit: contain; filter: drop-shadow(0 8px 12px rgba(0,8,23,.4)); }
.service-page .solutions-hero-note__brand,
.service-page .solutions-hero-note__brand::before { animation-play-state: paused; }
.service-page .internal-hero.is-ambient-active .solutions-hero-note__brand,
.service-page .internal-hero.is-ambient-active .solutions-hero-note__brand::before { animation-play-state: running; }
.service-page .solutions-hero-note__copy { padding: 16px 20px; }
.service-page .solutions-hero-note__eyebrow { display: inline-flex; align-items: center; gap: 8px; color: #195bb8; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.service-page .solutions-hero-note__copy strong { display: block; margin: 8px 0; color: var(--gn-ink); font-size: clamp(19px,1.55vw,22px); line-height: 1.25; }
.service-page .solutions-hero-note__copy p { margin: 0; color: var(--gn-muted); font-size: 13px; line-height: 1.6; }
.service-page .solutions-hero-note a { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; color: var(--gn-blue); font-size: 13px; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.service-page .solutions-hero-note a:focus-visible { outline: 2px solid var(--gn-blue); outline-offset: 4px; }
.service-page .capability-slide__content { bottom: 54px; }
.service-page .capability-slide__content h3 { max-width: 14ch; }
.service-page .capability-slide__content p { max-width: 52ch; font-size: 14px; }
.service-page .capability-slide__content ul { margin-top: 16px; }
.service-page .capability-slide__content li { font-size: 11px; font-weight: 600; }
.service-page .capability-slide__link { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; margin-top: 15px; color: #fff; font-size: 14px; font-weight: 700; text-decoration: underline; text-decoration-color: #82d7ff; text-underline-offset: 5px; }
.service-page .capability-slide__link i { color: #82d7ff; transition: transform .2s ease; }
.service-page .capability-slide__link:hover i { transform: translateX(3px); }
.service-page .capability-slide__link:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.service-page .solutions-directory { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 20px; margin-top: 20px; padding: 13px 0; border-block: 1px solid var(--gn-line); }
.service-page .solutions-directory__label { margin-right: auto; color: var(--gn-muted); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.service-page .solutions-directory a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--gn-ink); font-size: 13px; font-weight: 650; }
.service-page .solutions-directory a i { color: var(--gn-blue); font-size: 11px; }
.service-page .solutions-directory a:hover { color: var(--gn-blue); text-decoration: underline; text-underline-offset: 4px; }
.service-page .solutions-directory a:focus-visible { outline: 2px solid var(--gn-blue); outline-offset: 3px; }
.service-page .service-next-step__panel--concise { align-items: center; }
.service-page .service-next-step__panel--concise .service-next-step__intro h2 { max-width: 15ch; }
html[data-theme="dark"] .service-page .solutions-hero-note { border-color: #35536b; background: #112a40; }
html[data-theme="dark"] .service-page .solutions-hero-note__copy p { color: #c7d7e7; }
html[data-theme="dark"] .service-page .solutions-hero-note__copy strong { color: #f5f9ff; }
html[data-theme="dark"] .service-page .solutions-hero-note__eyebrow { color: #8bd6ff; }
html[data-theme="dark"] .service-page .solutions-hero-note a,
html[data-theme="dark"] .service-page .solutions-directory a i { color: #8bd6ff; }
@keyframes solution-brand-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
@keyframes solution-brand-glow { 0%,100% { opacity: .6; transform: scale(.96); } 50% { opacity: 1; transform: scale(1.04); } }
@media(max-width:980px) {
  .service-page .internal-hero__grid { gap: 26px; }
  .service-page .solutions-hero-note { display: grid; grid-template-columns: minmax(130px,.65fr) minmax(0,1fr); }
  .service-page .solutions-hero-note__visual { height: 100%; min-height: 156px; }
  .service-page .solutions-directory__label { width: 100%; }
}
@media(max-width:640px) {
  .service-page .internal-hero h1 { margin-block: 14px 18px; }
  .service-page .solutions-hero-note { grid-template-columns: 96px minmax(0,1fr); }
  .service-page .solutions-hero-note__visual { height: 100%; min-height: 148px; }
  .service-page .solutions-hero-note__brand { width: 76px; height: 76px; }
  .service-page .solutions-hero-note__brand img { width: 53px; height: 53px; }
  .service-page .solutions-hero-note__copy { padding: 15px; }
  .service-page .solutions-hero-note__copy strong { font-size: 18px; }
  .service-page .capability-slide__content { bottom: 44px; }
  .service-page .capability-slide__content p { font-size: 12px; }
  .service-page .capability-slide__content li { font-size: 9px; }
  .service-page .capability-slide__link { margin-top: 10px; font-size: 12px; }
  .service-page .solutions-directory { gap: 0 14px; }
  .service-page .solutions-directory a { font-size: 12px; }
}
@media(prefers-reduced-motion:reduce) {
  .service-page .solutions-hero-note__brand,
  .service-page .solutions-hero-note__brand::before { animation: none; }
}
