/* Local review: support services and partner network. */
.other-hub-page .other-hub-hero { min-height: 0; padding: clamp(26px,4vw,46px); }
.other-hub-page .other-hub-hero-inner { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.85fr); align-items:center; gap:36px; }
.other-hub-page .other-hub-hero h1 { font-size:clamp(34px,4.6vw,60px); line-height:1.1; }
.other-hub-page .other-hub-lead { font-size:16px; margin-top:20px; }
.other-hub-page .other-hub-hero::after { content:none; }
.other-hub-photo { margin:0; overflow:hidden; }
.other-hub-photo img { display:block; width:100%; aspect-ratio:3/2; object-fit:cover; border:0; }
.other-hub-page .service-grid { grid-template-columns:repeat(12,minmax(0,1fr)); gap:18px; border:0; background:transparent; }
.other-hub-page .service-card,
.other-hub-page .service-card:nth-child(n) { grid-column:span 6; min-height:0; display:flex; flex-direction:column; padding:22px; border:0; color:#112c43; background:var(--support-tint,#edf3f8); box-shadow:none; overflow:hidden; }
.other-hub-page .service-card:nth-child(n+5) { grid-column:span 4; }
.other-hub-page .service-card:nth-child(7n+1) { --support-tint:#edf3f8; }
.other-hub-page .service-card:nth-child(7n+2) { --support-tint:#edf4f1; }
.other-hub-page .service-card:nth-child(7n+3) { --support-tint:#f2f0f7; }
.other-hub-page .service-card:nth-child(7n+4) { --support-tint:#f5f2ea; }
.other-hub-page .service-card:nth-child(7n+5) { --support-tint:#edf2f5; }
.other-hub-page .service-card:nth-child(7n+6) { --support-tint:#f1f4ed; }
.other-hub-page .service-card:nth-child(7n+7) { --support-tint:#f4eff2; }
.other-hub-page .service-card::before,
.other-hub-page .service-card::after { content:none; }
.other-hub-page .service-card:hover,
.other-hub-page .service-card:focus-within { background:var(--support-tint); color:#112c43; box-shadow:none; }
.service-card-media { display:block; margin:-22px -22px 22px; overflow:hidden; }
.service-card-media img { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; border:0; }
.other-hub-page .service-card-top { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.other-hub-page .service-card h3 { font-size:clamp(20px,2vw,25px); line-height:1.35; }
.other-hub-page .service-card p,
.other-hub-page .service-card:hover p,
.other-hub-page .service-card:focus-within p { margin:15px 0 22px; color:#435a6b; font-size:14px; line-height:1.8; }
.other-hub-page .service-card .service-tag,
.other-hub-page .service-card:hover .service-tag,
.other-hub-page .service-card:focus-within .service-tag { color:#33536a; background:rgba(255,255,255,.65); border-color:rgba(39,69,93,.16); flex:none; }
.other-hub-page .service-card .btn.primary,
.other-hub-page .service-card:hover .btn.primary,
.other-hub-page .service-card:focus-within .btn.primary { margin-top:auto; color:#fff; background:#173f63; border:1px solid #173f63; box-shadow:none; padding:11px 16px; }
.other-hub-page .service-card .btn.primary:hover { background:#0e2e4a; }
body.other-hub-page[data-faq-ui] section#hub-faq { display:block; }
.other-hub-page #hub-faq>h2 { color:#112c43; }
.other-hub-page #hub-faq .hub-faq-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; border:0; }
.other-hub-page .hub-flow { grid-template-columns:minmax(0,.7fr) minmax(0,1fr); }
.about-brand-page .about-partner-section { padding:clamp(24px,4vw,42px); background:#eef3f6; border:0; }
.partner-preview-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:24px; }
.partner-preview-card { padding:22px; background:rgba(255,255,255,.78); border:0; }
.partner-preview-card h3 { margin:0 0 10px; color:#183c59; font-size:19px; }
.partner-preview-card p { margin:0; color:#465f70; font-size:14px; line-height:1.85; }
.partner-network-page .page-main { background:#f4f6f7; }
.partner-network-page .page-wrap { padding-top:36px; padding-bottom:64px; }
.partner-network-shell { max-width:1180px; margin:auto; display:grid; gap:36px; }
.network-hero { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.85fr); gap:38px; align-items:center; padding:clamp(26px,4vw,46px); background:#102a40; color:#f7fafc; }
.network-kicker { margin:0 0 18px; font-size:12px; letter-spacing:.08em; color:#c3d3df; }
.network-hero h1 { font-size:clamp(32px,4.4vw,54px); line-height:1.18; color:#fff; margin:0; }
.network-hero p:not(.network-kicker) { margin:20px 0 0; line-height:1.85; color:#d6e0e8; }
.network-hero figure { margin:0; }
.network-hero img { display:block; width:100%; aspect-ratio:3/2; object-fit:cover; border:0; }
.network-section h2 { color:#14344e; margin:0 0 12px; font-size:clamp(25px,3vw,34px); }
.network-section>p { margin:0 0 24px; color:#496172; line-height:1.8; }
.network-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:16px; }
.network-card { grid-column:span 3; padding:26px; background:#edf2f7; color:#173a55; }
.network-card:nth-child(2) { background:#edf3ef; }
.network-card:nth-child(3) { background:#f3eff6; }
.network-card:nth-child(4) { background:#f5f1e8; }
.network-card:nth-child(5) { grid-column:1/-1; background:#eaf1f3; }
.network-card h3 { margin:0 0 12px; font-size:22px; line-height:1.4; }
.network-card p { margin:0 0 18px; color:#4a6170; line-height:1.85; }
.network-card a { display:inline-block; color:#153f65; font-weight:700; }
.network-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.network-flow article { padding:24px; background:#fff; }
.network-flow h3 { margin:0 0 12px; color:#173a55; font-size:19px; }
.network-flow p { margin:0; color:#4a6170; line-height:1.8; }
.network-cta { padding:28px; background:#e7eef3; display:flex; justify-content:space-between; gap:24px; align-items:center; }
.network-cta h2 { margin:0 0 8px; font-size:26px; color:#163a55; }
.network-cta p { margin:0; color:#4b6170; }
.partner-network-page .btn.primary { color:#fff; background:#173f63; border-color:#173f63; box-shadow:none; }
.sworn-review-page .os-section:nth-of-type(even) { background:#edf3f7; padding:28px; border-top:0; }
.sworn-review-page .os-section:nth-of-type(odd):not(.os-hero) { background:#f2f4ef; padding:28px; border-top:0; }
.sworn-review-page .os-card { background:rgba(255,255,255,.8); }
.sworn-reference { display:flex; flex-wrap:wrap; gap:14px; font-size:13px; color:#1d4768; margin-top:18px; }
.official-institution-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.official-institution-grid.language-school-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.official-institution-card { min-width:0; background:#edf2f6; }
.official-institution-card:nth-child(2) { background:#eef3ef; }
.official-institution-card:nth-child(3) { background:#f1eef6; }
.official-logo-box { display:flex; align-items:center; justify-content:center; height:156px; margin:14px; padding:22px; background:#fff; }
.official-logo-box img { display:block; width:auto; height:auto; max-width:100%; max-height:100px; object-fit:contain; }
.official-logo-justice img { max-height:108px; }
.official-institution-card>div { padding:8px 24px 26px; }
.institution-type,.network-city-label { display:block; color:#536b7b; font-size:12px; line-height:1.7; margin:0 0 10px; }
.official-institution-card h3 { margin:0 0 12px; color:#153853; font-size:22px; line-height:1.4; }
.official-institution-card p { color:#4a6170; margin:0 0 18px; font-size:14px; line-height:1.8; }
.institution-service-link { color:#173f63; font-size:14px; font-weight:700; }
.about-official-logos { display:flex; flex-wrap:wrap; align-items:center; gap:20px; margin-top:18px; }
.about-official-logos a { display:flex; align-items:center; justify-content:center; width:160px; height:70px; padding:12px; background:#fff; }
.about-official-logos img { max-width:100%; max-height:100%; object-fit:contain; }
body.other-detail-page section#partner-schools.os-section.language-partner-section { display:block; min-height:0; }
body.other-detail-page .language-partner-section>h2 { margin:0 0 14px; }
body.other-detail-page .language-partner-section>.official-institution-grid { margin-top:24px; }
@media (max-width:980px) {
  .other-hub-page .other-hub-hero-inner,.network-hero { grid-template-columns:1fr; gap:26px; }
  .other-hub-page .service-card:nth-child(n) { grid-column:span 6; }
  .network-hero img { max-height:340px; }
  .official-institution-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:680px) {
  .partner-network-page .network-section { padding-left:16px; padding-right:16px; }
  .partner-network-page .partner-map-section.pm-network { padding-left:16px; padding-right:16px; }
  .other-hub-page .service-grid { grid-template-columns:1fr; }
  .other-hub-page .service-card:nth-child(n) { grid-column:auto; }
  .other-hub-page #hub-faq .hub-faq-list,.partner-preview-grid,.network-flow { grid-template-columns:1fr; }
  .other-hub-page .hub-flow { grid-template-columns:1fr; }
  .other-hub-page .hub-flow-grid { grid-column:auto; grid-row:auto; }
  .network-card:nth-child(n) { grid-column:1/-1; padding:22px; }
  .network-cta { display:block; }
  .network-cta .btn { margin-top:20px; }
  .sworn-review-page .os-section:nth-of-type(n):not(.os-hero) { padding:20px; }
  .official-institution-grid { grid-template-columns:1fr; }
  .official-institution-grid.language-school-grid { grid-template-columns:1fr; }
}
