/* Páginas interiores de servicios de Servijud */

.inner-hero,
.service-hero {
  padding: 95px max(7vw, 34px) 80px;
  background: linear-gradient(115deg, var(--cream) 0 72%, var(--forest) 72%);
}

.inner-hero > div { max-width: 880px; }

.inner-hero h1,
.service-hero h1 {
  max-width: 880px;
  margin: 0 0 24px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(46px, 5.5vw, 78px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -.035em;
}

.inner-hero .hero-lead,
.service-hero .hero-lead { max-width: 760px; }

.breadcrumbs,
.breadcrumb {
  margin: 0 0 28px;
  color: var(--muted);
  font-size: 11px;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.breadcrumbs a,
.breadcrumb a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.service-trust {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 28px;
  padding: 12px max(5vw, 28px);
  background: #102c26;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.service-trust span + span { color: #d8c698; }
.service-trust a { border-bottom: 1px solid #c8a96b; }

.practice-content {
  display: grid;
  grid-template-columns: 1.35fr .65fr;
  gap: 8vw;
}

.practice-copy h2,
.practice-faq h2,
.related h2,
.service-content h2,
.faq-section h2,
.related-services h2 {
  margin: 0 0 24px;
  font-family: Georgia, serif;
  font-size: clamp(34px, 3.7vw, 50px);
  font-weight: 400;
  line-height: 1.15;
}

.practice-copy h3,
.service-content h3 {
  margin: 0 0 14px;
  font-family: Georgia, serif;
  font-size: 25px;
  font-weight: 400;
}

.practice-copy p,
.service-content p { color: var(--muted); font-size: 16px; }

.content-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
}

.content-grid article {
  padding: 34px;
  border: 1px solid var(--line);
  background: #fff;
}

.content-grid ul,
.practice-list { margin: 25px 0; padding: 0; list-style: none; }

.content-grid li,
.practice-list li { padding: 14px 0; border-bottom: 1px solid var(--line); }

.content-grid li::before,
.practice-list li::before { content: "—"; margin-right: 12px; color: var(--gold); }

.practice-aside {
  position: sticky;
  top: 112px;
  height: max-content;
  padding: 38px;
  background: var(--forest);
  color: #fff;
}

.practice-aside h2 { font-family: Georgia, serif; font-size: 30px; font-weight: 400; line-height: 1.2; }
.practice-aside p { color: #d7e0dd; }
.practice-aside .button { margin-top: 14px; background: var(--gold); color: var(--deep); }

.service-highlight {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding: 64px max(7vw, 34px);
  background: var(--forest);
  color: #fff;
}

.service-highlight > div { max-width: 760px; }
.service-highlight h2 { margin: 0 0 18px; font-family: Georgia, serif; font-size: clamp(32px, 3.5vw, 48px); font-weight: 400; line-height: 1.15; }
.service-highlight p { margin: 0; color: #d7e0dd; }
.service-highlight .button { flex: 0 0 auto; }

.practice-faq,
.faq-section { background: var(--cream); }

.faq-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
}

.faq-item,
.faq-grid article { padding: 26px 0; border-bottom: 1px solid var(--line); }
.faq-item { max-width: 900px; }

.faq-item h3,
.faq-grid h3 { margin: 0 0 8px; font-family: Georgia, serif; font-size: 22px; font-weight: 400; }

.faq-item p,
.faq-grid p { margin: 0; color: var(--muted); }

.related-grid,
.related-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  width: 100%;
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}

.related-grid a,
.related-links > a {
  display: flex;
  align-items: center;
  min-width: 0;
  min-height: 92px;
  padding: 24px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  color: var(--forest);
  font-family: Georgia, serif;
  font-size: 18px;
  line-height: 1.35;
  text-decoration: none;
  overflow-wrap: anywhere;
  transition: background-color .2s ease, color .2s ease;
}

.related-grid a:hover,
.related-links > a:hover,
.related-links > a:focus-visible { background: var(--cream); color: var(--deep); }

.related-links > a:focus-visible { outline: 3px solid var(--gold); outline-offset: -3px; }

.notice { margin-top: 36px; padding-left: 16px; border-left: 2px solid var(--gold); color: var(--muted); font-size: 12px; }
.branch-note { margin: 24px 0; padding: 18px 20px; border-left: 4px solid var(--gold); background: var(--cream); color: #3f4d48 !important; }
.branch-note a { color: var(--forest); font-weight: 700; text-decoration: underline; }

@media (max-width: 900px) {
  .inner-hero,
  .service-hero { background: var(--cream); }
  .practice-content,
  .content-grid,
  .faq-grid { grid-template-columns: 1fr; }
  .practice-aside { position: static; }
  .related-grid,
  .related-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .service-highlight { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 700px) {
  .service-trust { align-items: flex-start; flex-direction: column; gap: 4px; padding: 12px 24px; }
}

@media (max-width: 560px) {
  .inner-hero,
  .service-hero { padding: 65px 24px; }
  .service-highlight { padding: 54px 24px; }
  .related-grid,
  .related-links { grid-template-columns: 1fr; }
}