main .seo-guide-toc,main .ep-question-links{position:static!important;inset:auto!important;width:auto!important;max-width:100%;min-height:0;display:flex!important;flex-wrap:wrap;flex-direction:row!important;justify-content:flex-start;align-items:center;gap:12px 20px;background:transparent!important;box-shadow:none!important}main .seo-guide-toc a,main .ep-question-links a{display:inline-flex!important;width:auto!important;max-width:100%;margin:0;padding:4px 0;min-height:0;line-height:1.6;overflow-wrap:anywhere}main .seo-guide-toc a:after,main .ep-question-links a:after{display:none!important;content:none!important}main #apex-ep-service-design .tax-stat-row{flex-wrap:wrap;align-items:baseline;gap:8px 20px}main #apex-ep-service-design .tax-stat-row>strong,main #apex-ep-service-design .tax-hero-stat{flex:0 0 auto;white-space:nowrap;overflow-wrap:normal;word-break:normal;font-variant-numeric:tabular-nums}main #apex-ep-service-design .tax-stat-row>span{flex:1 1 160px;min-width:0;overflow-wrap:break-word;word-break:normal}main #apex-ep-service-design .tax-table-wrap :is(th,td){overflow-wrap:normal;word-break:normal}main :is(.seo-related-links,.ep-related){min-width:0;max-width:100%}main :is(.seo-related-links,.ep-related)>a{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal}main #licence-service-design .licence-service-card a{max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal}main.ica-page>.ica-hero>.wrap{padding-inline:0}main .service-strip .strip-grid a>span:last-child{min-width:0}@media(max-width:520px){html[lang=en] main .service-strip .strip-grid{grid-template-columns:minmax(0,1fr)}}

/* Shared navigation repair: keep article links in their own document flow. */
body > header.refresh-reveal,
body > .utility.refresh-reveal {
  animation: none !important;
  transform: none;
  filter: none;
  opacity: 1;
}
body > header .header > .brand {
  width: 245px;
  height: 83px;
  overflow: visible;
  transform: none;
  flex: 0 0 auto;
}
body > header .header > .brand img.brand-logo {
  position: static;
  inset: auto;
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: 100%;
  object-fit: contain;
  object-position: left center;
}
body > header .menu-toggle {
  color: #40566b;
  -webkit-text-fill-color: #40566b;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  min-width: 44px;
  min-height: 44px;
  padding: 6px;
  line-height: 1;
  flex: 0 0 auto;
}
body > header .menu-toggle:focus-visible {
  outline: 2px solid #a17c32;
  outline-offset: 3px;
  border-radius: 6px;
}
@media (max-width: 1100px) {
  body > header.scroll-pill-header { height: 80px; }
  body > header.scroll-pill-header .header,
  body > header.scroll-pill-header .header > .brand { transition: none; }
  body > header .header,
  body > header.nav-scrolled .header {
    width: 100%;
    max-width: 1240px;
    min-height: 80px;
    margin: 0 auto;
    padding: 0 20px;
    border: 0;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
    gap: 16px;
    transition: none;
  }
  body > header.nav-scrolled {
    background: #fff !important;
    border-bottom: 1px solid #eee9df !important;
  }
  body > header .header > .brand,
  body > header.nav-scrolled .header > .brand {
    width: 210px;
    max-width: calc(100% - 60px);
    min-width: 0;
    height: 71px;
    transform: none;
    transition: none;
    flex: 0 1 210px;
  }
  body > header .menu-toggle { display: block; }
  body > header .header > nav,
  body > header.nav-scrolled .header > nav {
    display: none;
    position: absolute;
    inset: 100% 0 auto;
    margin: 0;
    padding: 16px 20px;
    background: #fff;
    border-radius: 0 0 14px 14px;
    box-shadow: 0 12px 24px #40566b20;
    align-items: stretch;
    flex-direction: column;
    gap: 12px;
    max-height: calc(100vh - 210px);
    max-height: calc(100dvh - 210px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  body > header .header > nav.open { display: flex; }
  body > header .header > nav > a,
  body > header .header > nav > details > summary {
    min-height: 44px;
    padding: 10px 4px;
    box-sizing: border-box;
  }
  body > header .mega-panel,
  body > header.nav-scrolled .mega-panel {
    position: static;
    inset: auto;
    width: 100%;
    max-width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 12px 0;
    box-shadow: none;
    border-radius: 8px;
  }
}
@media (max-width: 640px) {
  .utility .wrap {
    padding: 8px 20px;
    gap: 7px;
  }
  .utility .utility-slogan {
    font-size: 11px;
    line-height: 1.5;
    white-space: normal;
    text-align: center;
  }
  .utility .top-contacts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px 12px;
    font-size: 11px;
    line-height: 1.5;
    min-width: 0;
  }
  html .utility .top-contacts .top-contact-link:not(.top-whatsapp),
  html .utility .top-contacts > * { grid-column: auto; min-width: 0; }
  .utility .top-contacts .top-contact-link { gap: 5px; }
  .utility .top-contacts .top-contact-link span {
    white-space: normal;
    overflow-wrap: anywhere;
  }
  .utility .top-contacts svg { width: 15px; height: 15px; }
  .utility .top-wechat summary { font-size: 11px; gap: 5px; }
  body > header .mega-panel { grid-template-columns: minmax(0, 1fr); }
  body > a.floating {
    position: static;
    display: table;
    width: fit-content;
    max-width: calc(100% - 40px);
    margin: 20px auto calc(24px + env(safe-area-inset-bottom, 0px));
    inset: auto;
    padding: 14px 24px;
    text-align: center;
  }
  main .hero .hero-copy { padding: 32px 0; }
  main .hero h1 { font-size: clamp(30px, 8vw, 36px); line-height: 1.35; }
  main .hero .actions { gap: 12px; }
  main .text-link.acg-gold-action {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
    line-height: 1.6;
  }
}
