/* =========================================================
   5カテゴリーの見出し・カード・余白の最終調整
========================================================= */

/* =========================================================
   Start From 39 — five category interaction polish v1.17.93
========================================================= */

/* =========================================================
   Remove browser-blue visited states and keep the editorial palette.
========================================================= */

:where(
  .sf-family-topic,
  .sf-family-feature__inner,
  .sf-family-expert-route__inner,
  .sf-family-article > a,
  .sf-planning-topic,
  .sf-planning-feature__inner,
  .sf-planning-article > a
),
:where(
  .sf-family-topic,
  .sf-family-feature__inner,
  .sf-family-expert-route__inner,
  .sf-family-article > a,
  .sf-planning-topic,
  .sf-planning-feature__inner,
  .sf-planning-article > a
):visited {
  color: inherit !important;

  text-decoration: none !important;
}

/* =========================================================
   Consistent tap feedback on all five category card systems.
========================================================= */

:where(
  .sf-life-path-card,.sf-life-feature-card,.sf-life-article-card,
  .sf-money-path-card,.sf-money-feature-card,.sf-money-article-card,
  .sf-work-path-card,.sf-work-feature-card,.sf-work-article-card,
  .sf-family-topic,.sf-family-feature__inner,.sf-family-expert-route__inner,.sf-family-article>a,
  .sf-planning-topic,.sf-planning-feature__inner,.sf-planning-article>a
) {
  -webkit-tap-highlight-color: rgba(181,151,92,.18);
}

:where(
  .sf-life-path-card,.sf-life-feature-card,.sf-life-article-card,
  .sf-money-path-card,.sf-money-feature-card,.sf-money-article-card,
  .sf-work-path-card,.sf-work-feature-card,.sf-work-article-card,
  .sf-family-topic,.sf-family-feature__inner,.sf-family-expert-route__inner,.sf-family-article>a,
  .sf-planning-topic,.sf-planning-feature__inner,.sf-planning-article>a
):active {
  filter: brightness(.965);
}

/* =========================================================
   Family and planning: make the already full-card links visibly interactive.
========================================================= */

:where(.sf-family-topic,.sf-family-feature__inner,.sf-family-expert-route__inner,.sf-family-article>a),
:where(.sf-planning-topic,.sf-planning-feature__inner,.sf-planning-article>a) {
  cursor: pointer;
}

:where(.sf-family-topic,.sf-family-feature__inner,.sf-family-expert-route__inner,.sf-family-article>a):focus-visible,
:where(.sf-planning-topic,.sf-planning-feature__inner,.sf-planning-article>a):focus-visible {
  outline: 2px solid #b7975c;
  outline-offset: 4px;
}

/* =========================================================
   Work & Career: reduce visual density without removing any route.
========================================================= */

.sf-work-hub .sf-work-category-section {
  padding-top: 76px;
  padding-bottom: 78px;
}

.sf-work-hub .sf-work-subtopic {
  margin-top: 36px;
  padding-top: 26px;
}

.sf-work-hub .sf-work-subtopic-head {
  margin-bottom: 14px;
}

.sf-work-hub .sf-work-subtopic-links {
  gap: 8px;
}

.sf-work-hub .sf-work-subtopic-links a {
  display: flex;

  flex-direction: column;
  justify-content: center;

  min-height: 68px;

  padding: 14px 43px 14px 18px;

  background: rgba(255,255,255,.72);
  box-shadow: none;
}

.sf-work-hub .sf-work-subtopic-links strong {
  margin-bottom: 2px;

  font-size: 13px;
  line-height: 1.55;
}

.sf-work-hub .sf-work-subtopic-links span {
  font-size: 11px;
  line-height: 1.55;
}

.sf-work-hub .sf-work-subtopic-links a::after {
  right: 16px;
}

.sf-work-hub .sf-work-wide-link {
  margin-top: 38px;
}

@media (max-width:767px) {
  .sf-work-hub .sf-work-category-section {
    padding-top: 64px;
    padding-bottom: 67px;
  }

  .sf-work-hub .sf-work-subtopic {
    margin-top: 30px;
    padding-top: 23px;
  }

  .sf-work-hub .sf-work-subtopic-links {
    gap: 7px;
  }

  .sf-work-hub .sf-work-subtopic-links a {
    min-height: 64px;

    padding: 13px 41px 13px 16px;
  }
}

@media (prefers-reduced-motion:reduce) {
  :where(
    .sf-life-hub,.sf-money-hub,.sf-work-hub,
    .sf-family-page,.sf-planning-page
  ) * {
    scroll-behavior: auto !important;
  }
}
