/* =========================================================
   仕事カテゴリー：HERO・5テーマ・特集・テーマ別記事・実践ガイド・新着・締め
========================================================= */

/* =========================================================
   Replace this file in full. Hero, chapter cards, linked articles and closing share one responsive system.
========================================================= */

body.category-work-career .sf39-work-page {
  width: 100%;
  max-width: none;

  padding: 0;
  margin: 0;

  background: #f7f2e9;
}

.sf39-work {
  --wa-forest: #183e34;
  --wa-gold: #a8792f;
  --wa-terra: #a85135;
  --wa-line: #d8c7ad;
  --wa-ink: #243e35;
  --wa-muted: #59625a;
  --wa-paper: #fffaf2;

  color: var(--wa-ink);
  background: #f7f2e9;

  font: 16px/1.9 "Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;

  overflow: clip;
}

.sf39-work *,
.sf39-work *::before,
.sf39-work *::after {
  box-sizing: border-box;
}

.sf39-work :is(h1,h2,h3,p,figure,ul,ol) {
  margin: 0;
}

.sf39-work :is(h1,h2,h3) {
  color: var(--wa-ink);

  font-family: "Yu Mincho","Hiragino Mincho ProN",serif;
  font-weight: 500;
  letter-spacing: .02em;
  line-height: 1.6;
}

.sf39-work h2 {
  font-size: clamp(25px,2.5vw,36px);
}

.sf39-work a {
  color: inherit;

  text-decoration: none;
}

.sf39-work a:focus-visible,
.sf39-work summary:focus-visible {
  outline: 3px solid var(--wa-terra);
  outline-offset: 5px;
}

.sf39-work .wa-wrap {
  width: min(1180px,calc(100% - 64px));

  margin-inline: auto;
}

.sf39-work .wa-kicker {
  font: 600 11px/1.6 Arial,sans-serif;
  letter-spacing: .18em;

  color: var(--wa-terra);

  margin-bottom: 14px;
}

/* =========================================================
   Photograph spans the hero. A local left fade protects only the heading.
========================================================= */

.sf39-work .wa-hero {
  position: relative;
  isolation: isolate;

  max-width: 1600px;
  min-height: 570px;

  margin: auto;

  display: flex;

  align-items: center;

  background: #e5daca;

  overflow: hidden;

  border-bottom: 1px solid #d8c7ad;
}

.sf39-work .wa-hero-photo {
  position: absolute;
  inset: 0;
  z-index: -2;

  height: 100%;

  margin: 0;
}

.sf39-work .wa-hero-photo img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: 50% 47%;
}

.sf39-work .wa-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;

  background: linear-gradient(90deg,#f3e9d9 0%,rgba(243,233,217,.97) 21%,rgba(243,233,217,.86) 35%,rgba(243,233,217,.1) 48%,transparent 58%);

  pointer-events: none;
}

.sf39-work .wa-hero-copy {
  width: 47%;

  position: relative;

  padding: 70px 0 70px clamp(32px,5vw,80px);
}

.sf39-work .wa-hero h1 {
  font-size: clamp(38px,4.3vw,64px);
  font-weight: 600;
  line-height: 1.42;
  letter-spacing: -.025em;

  margin-bottom: 23px;
}

.sf39-work .wa-hero h1 span {
  display: block;

  white-space: nowrap;
}

.sf39-work .wa-hero-copy>p:last-child {
  font-size: 15px;

  max-width: 460px;

  line-height: 2;
}

.sf39-work .wa-rule {
  display: block;

  width: 46px;
  height: 2px;

  background: var(--wa-terra);

  margin: 0 0 25px;
}

.sf39-work .wa-hero-sign {
  position: absolute;
  top: 34px;
  right: clamp(24px,4vw,65px);

  font: italic 24px/1.45 Georgia,serif;

  color: #785529;

  transform: rotate(-7deg);

  text-align: center;

  padding: 10px 16px;

  border-bottom: 1px solid #a8792f;
  background: rgba(255,250,240,.55);

  max-width: 160px;
}

/* =========================================================
   Five balanced, warm chapter cards. The action occupies the same line on every card.
========================================================= */

.sf39-work .wa-themes {
  padding-top: 42px;
  padding-bottom: 46px;
}

.sf39-work .wa-themes>h2 {
  text-align: left;

  margin-bottom: 28px;
  padding-left: 20px;

  border-left: 3px solid #b87958;

  font-size: clamp(23px,2.3vw,32px);
}

.sf39-work .wa-themes em {
  font: normal 1.25em/1 Georgia,serif;

  color: var(--wa-terra);
}

.sf39-work .wa-theme-grid {
  display: grid;

  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 16px;
  align-items: stretch;
}

.sf39-work .wa-theme {
  display: flex;

  flex-direction: column;
  align-items: center;

  text-align: center;

  padding: 24px 10px 14px;

  border: 0;
  border-top: 2px solid #b87958;
  background: transparent;

  position: relative;

  transition: background .2s,
    transform .2s;
}

.sf39-work .wa-theme:nth-child(even) {
  background: transparent;
  border-top-color: #6f8b77;
}

.sf39-work .wa-theme svg {
  width: 42px;
  height: 44px;

  color: #8b6530;

  margin-bottom: 14px;
}

.sf39-work .wa-theme h3 {
  font-size: 18px;
  font-weight: 500;

  margin-bottom: 20px;

  letter-spacing: 0;
  line-height: 1.5;

  min-height: 2.2em;

  display: flex;

  align-items: center;
  justify-content: center;
}

.sf39-work .wa-theme p {
  font-size: 14px;
  line-height: 1.85;

  color: #4a584d;

  max-width: 180px;

  margin-bottom: 20px;
}

.sf39-work .wa-theme-action {
  display: flex;

  justify-content: center;
  align-items: center;
  gap: 18px;

  margin-top: auto;
  padding-top: 0;

  font-size: 13px;

  color: #80694c;

  min-height: 35px;
}

.sf39-work .wa-theme-action i {
  font: normal 21px/1 Arial,sans-serif;
}

/* =========================================================
   Featured story and its two companion stories: strong card surfaces, compact actions.
========================================================= */

.sf39-work .wa-feature {
  display: grid;

  grid-template-columns: 1.5fr 1fr;
  gap: 34px;

  padding-bottom: 44px;
}

.sf39-work .wa-feature-main {
  display: flex;

  flex-direction: column;

  min-width: 0;

  background: transparent;
  border: 0;
  box-shadow: none;
}

.sf39-work .wa-feature-main img {
  display: block;

  width: 100%;
  height: auto;
  aspect-ratio: 1.9;

  object-fit: cover;
  object-position: center;
}

.sf39-work .wa-feature-copy {
  display: flex;

  flex-direction: column;
  flex: 1;

  padding: 20px 0 0 20px;
  margin-top: 18px;

  border-left: 2px solid #d8b092;
}

.sf39-work .wa-feature-main h2 {
  font-size: clamp(25px,2.35vw,34px);
  line-height: 1.5;

  margin-bottom: 14px;
}

.sf39-work .wa-feature-main p:not(.wa-kicker) {
  font-size: 15px;
  line-height: 1.9;

  color: var(--wa-muted);

  margin-bottom: 16px;
}

.sf39-work .wa-card-action {
  display: inline-flex;

  align-items: center;
  justify-content: center;
  gap: 10px;
  align-self: flex-end;

  margin-top: auto;
  padding: 7px 0;

  color: #a76445;

  font: 500 13px/1.7 "Yu Gothic",sans-serif;
  white-space: nowrap;

  min-height: 42px;
}

.sf39-work .wa-card-action i {
  font: normal 19px/1 Arial,sans-serif;

  display: grid;

  place-items: center;

  width: 28px;
  height: 28px;

  flex: 0 0 28px;

  border: 1px solid #b87958;
  border-radius: 50%;
}

.sf39-work .wa-feature-side {
  display: grid;

  grid-template-rows: 1fr 1fr;
  gap: 24px;

  min-width: 0;

  border-left: 1px solid #d8c7ad;

  padding-left: 26px;
}

.sf39-work .wa-feature-side>a {
  display: flex;

  flex-direction: column;

  padding: 8px 0 22px;

  background: transparent;
  border: 0;
  border-bottom: 1px solid #cdbb9f;
}

.sf39-work .wa-feature-side>a+a {
  background: transparent;
  border: 0;

  padding: 0 0 0;
}

.sf39-work .wa-feature-side .wa-kicker {
  margin-bottom: 12px;
}

.sf39-work .wa-feature-side h3 {
  font-size: clamp(23px,2.1vw,29px);
  line-height: 1.6;

  margin-bottom: 15px;
}

.sf39-work .wa-feature-side p:not(.wa-kicker) {
  font-size: 15px;

  color: #425045;

  line-height: 1.9;

  margin-bottom: 20px;
}

/* =========================================================
   Three numbered steps remain the one numbered guide.
========================================================= */

.sf39-work .wa-question {
  background: var(--wa-forest);
  color: #f8f5ed;

  padding: 40px 0 44px;
}

.sf39-work .wa-question :is(h2,h3) {
  color: inherit;
}

.sf39-work .wa-question .wa-kicker {
  color: #e2bd76;

  margin-bottom: 10px;
}

.sf39-work .wa-question-head {
  display: grid;

  grid-template-columns: 1.9fr 1fr;
  gap: 32px;
  align-items: center;

  margin-bottom: 30px;
}

.sf39-work .wa-question-head h2 {
  font-size: clamp(25px,2.5vw,35px);
}

.sf39-work .wa-question-head>p {
  font-size: 14px;
  line-height: 1.9;

  border-left: 1px solid #7a907e;

  padding-left: 24px;
}

.sf39-work .wa-steps {
  display: grid;

  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 28px;

  list-style: none;

  padding: 0;
}

.sf39-work .wa-steps li {
  display: flex;

  gap: 17px;

  border-right: 1px solid #718979;

  padding-right: 26px;
}

.sf39-work .wa-steps li:last-child {
  border: 0;

  padding-right: 0;
}

.sf39-work .wa-steps b {
  font: normal 46px/1 Georgia,serif;

  color: #e2bd76;
}

.sf39-work .wa-steps h3 {
  font-size: 20px;

  margin-bottom: 6px;
}

.sf39-work .wa-steps p {
  font-size: 14px;
  line-height: 1.85;

  color: #e1e7dd;
}

/* =========================================================
   Foldout themes keep all existing article routes while gaining clear visual structure.
========================================================= */

.sf39-work .wa-library {
  padding-top: 46px;
  padding-bottom: 42px;
}

.sf39-work .wa-section-head {
  display: flex;

  justify-content: space-between;
  align-items: flex-end;
  gap: 30px;

  margin-bottom: 25px;
}

.sf39-work .wa-section-head .wa-kicker {
  margin-bottom: 7px;
}

.sf39-work .wa-section-head>p {
  font-size: 14px;

  color: var(--wa-muted);

  max-width: 300px;
}

.sf39-work .wa-topic {
  border: 0;
  border-bottom: 1px solid #d8c7ad;

  margin: 0;

  background: transparent;

  scroll-margin-top: 120px;
}

.sf39-work .wa-topic:nth-of-type(even) {
  background: transparent;
}

.sf39-work .wa-topic summary {
  cursor: pointer;

  display: flex;

  align-items: center;
  gap: 20px;

  padding: 22px 26px;

  list-style: none;

  transition: background .2s;
}

.sf39-work .wa-topic summary::-webkit-details-marker {
  display: none;
}

.sf39-work .wa-topic-icon {
  display: none;
}

.sf39-work .wa-topic-icon::before,
.sf39-work .wa-topic-icon::after {
  content: "";
  position: absolute;

  background: #98663e;

  left: 9px;
  right: 9px;

  height: 1px;

  top: 12px;
}

.sf39-work .wa-topic-icon::after {
  top: 19px;
  right: 13px;
}

.sf39-work .wa-topic-name {
  display: grid;

  grid-template-columns: 130px 240px minmax(0,1fr);
  gap: 20px;
  align-items: center;
  flex: 1;

  min-width: 0;
}

.sf39-work .wa-topic-name em {
  font: 600 10px/1.6 Arial,sans-serif;
  letter-spacing: .1em;

  color: #9b7350;

  word-break: normal;
  font-style: normal;
}

.sf39-work .wa-topic-name strong {
  font: 500 23px/1.5 "Yu Mincho","Hiragino Mincho ProN",serif;

  border-right: 1px solid #b87958;

  padding-right: 20px;
}

.sf39-work .wa-topic-name>span {
  font-size: 14px;

  color: #56604e;
}

.sf39-work .wa-topic summary small {
  display: none;
}

.sf39-work .wa-topic summary::after {
  content: "+";
  display: grid;

  place-items: center;
  flex: 0 0 32px;

  height: 32px;

  color: #fff8e8;
  background: var(--wa-forest);

  font: 22px/1 Arial;

  border-radius: 50%;
}

.sf39-work .wa-topic[open] summary {
  background: #ede5d7;
  border: 0;

  padding-inline: 26px;
}

.sf39-work .wa-topic[open] summary::after {
  content: "−";
}

.sf39-work .wa-topic-body {
  padding: 26px;

  background: #f0e9dc;
}

.sf39-work .sf-wr-category-head {
  margin-bottom: 24px;
}

.sf39-work .sf-wr-category-head h2 {
  font-size: 25px;

  margin: 5px 0 12px;
}

.sf39-work .sf-wr-category-head p {
  max-width: 820px;

  font-size: 15px;
  line-height: 1.9;
}

.sf39-work .sf-wr-section-label,
.sf39-work .sf-wr-tag {
  font-size: 11px;
  letter-spacing: .08em;

  color: #9a5738;
}

.sf39-work .sf-wr-article-grid {
  display: grid;

  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 20px;
}

.sf39-work .wa-reading-card {
  position: relative;
  display: flex;

  flex-direction: column;

  min-width: 0;

  padding: 24px;

  background: #fffbf3;
  border: 1px solid #d7c2a5;

  transition: box-shadow .2s,
    transform .2s,
    background .2s;
}

.sf39-work .sf-wr-article-pick {
  border-top: 3px solid var(--wa-terra);
}

.sf39-work .wa-topic-body h3 {
  font-size: 21px;

  margin: 12px 0;

  line-height: 1.65;
}

.sf39-work .wa-topic-body p {
  font-size: 15px;
  line-height: 1.9;

  margin: 8px 0 18px;
}

.sf39-work .wa-reading-card .wa-card-action {
  margin-top: auto;
}

.sf39-work .wa-topic-body>div:not(.sf-wr-category-head) {
  margin-bottom: 24px;
}

.sf39-work .sf-wr-subtopic {
  padding-top: 22px;

  border-top: 1px solid var(--wa-line);
}

.sf39-work .sf-wr-subtopic-head>span {
  font-size: 11px;
  letter-spacing: .12em;

  color: #8d6235;
}

.sf39-work .sf-wr-subtopic-links {
  display: grid;

  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
}

.sf39-work .sf-wr-subtopic-links>a {
  display: flex;

  flex-direction: column;

  padding: 18px 22px;

  background: #fffaf2;
  border: 1px solid #d7c2a5;
  border-left: 3px solid #9d613c;
}

.sf39-work .sf-wr-subtopic-links strong {
  font-size: 16px;
  font-weight: 500;
}

.sf39-work .sf-wr-subtopic-links span {
  font-size: 14px;

  color: var(--wa-muted);
}

.sf39-work .sf-wr-wide-link {
  margin-top: 24px;
}

/* =========================================================
   Practice cards fill the right side meaningfully, with one right-aligned final link.
========================================================= */

.sf39-work .wa-practice {
  display: grid;

  grid-template-columns: 320px minmax(0,1fr);
  align-items: center;
  gap: 36px;

  background: #e8ecdf;

  padding: 32px;
  margin-bottom: 45px;
}

.sf39-work .wa-practice figure {
  margin: 0;

  aspect-ratio: 1;

  box-shadow: none;
}

.sf39-work .wa-practice img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
}

.sf39-work .wa-practice>div {
  display: flex;

  flex-direction: column;

  min-width: 0;
}

.sf39-work .wa-practice h2 {
  font-size: clamp(25px,2.4vw,34px);

  margin-bottom: 15px;

  line-height: 1.5;
}

.sf39-work .wa-practice p:not(.wa-kicker) {
  font-size: 15px;
  line-height: 1.95;
}

.sf39-work .wa-practice ul {
  display: grid;

  grid-template-columns: repeat(3,minmax(0,1fr));

  list-style: none;

  gap: 14px;

  padding: 0;
  margin: 22px 0;
}

.sf39-work .wa-practice li {
  background: #faf8f0;
  border: 0;

  padding: 18px 16px;

  min-width: 0;
}

.sf39-work .wa-practice li svg {
  width: 28px;
  height: 30px;

  display: block;

  color: #8b6530;

  margin-bottom: 9px;
}

.sf39-work .wa-practice strong {
  display: block;

  font-size: 16px;
  font-weight: 600;

  margin-bottom: 6px;

  line-height: 1.5;
}

.sf39-work .wa-practice li span {
  font-size: 13px;
  line-height: 1.8;

  display: block;

  color: #4d6053;
}

.sf39-work .wa-inline-link {
  font-size: 14px;

  border-bottom: 1px solid var(--wa-terra);

  padding: 8px 0;

  display: inline-flex;

  gap: 20px;
  align-items: center;

  min-height: 42px;
}

.sf39-work .wa-inline-link span {
  font-size: 24px;

  color: #9a5738;
}

.sf39-work .wa-practice-link {
  align-self: flex-end;

  font-weight: 500;

  border: 0;
}

/* =========================================================
   Latest articles: title and date only, with clear reading labels.
========================================================= */

.sf39-work .wa-latest {
  padding-bottom: 44px;
}

.sf39-work .wa-latest-grid {
  display: grid;

  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 20px;
}

.sf39-work .wa-latest-card {
  display: flex;

  flex-direction: column;

  min-width: 0;

  background: transparent;
  border: 0;
  border-right: 1px solid #d8c7ad;

  padding: 0 16px 0 0;

  transition: transform .2s;
}

.sf39-work .wa-latest-card img {
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 1.65;

  object-fit: cover;

  display: block;

  margin: 0 0 15px;
}

.sf39-work .wa-latest-card time {
  font-size: 11px;

  color: #716952;

  margin-bottom: 8px;
}

.sf39-work .wa-latest-card h3 {
  font-size: 18px;
  line-height: 1.65;

  margin-bottom: 20px;

  overflow-wrap: anywhere;
}

.sf39-work .wa-latest-card .wa-card-action {
  gap: 9px;

  font-size: 13px;

  padding: 7px 0;

  align-self: flex-end;

  background: transparent;
  color: #a76445;
  border: 0;
}

/* =========================================================
   A vertical closing with a warm, distinct dark field; no repeated article-list CTA.
========================================================= */

body.category-work-career .sf-footer {
  margin-top: 0;
}

@media (hover:hover) {
  .sf39-work :is(.wa-theme,.wa-reading-card,.wa-latest-card):hover {
    transform: translateY(-3px);
  }

  .sf39-work .wa-theme:hover {
    background: #f0e8da;
  }

  .sf39-work .wa-topic summary:hover {
    background: #e8d2b3;
  }

  .sf39-work :is(.wa-feature-main,.wa-feature-side>a):hover .wa-card-action {
    color: #75492f;
  }

  .sf39-work .wa-reading-card:hover {
    background: #f8ecd7;
  }

  .sf39-work .wa-inline-link:hover {
    color: #9a5738;
  }
}

@media (max-width:1100px) {
  .sf39-work .wa-hero {
    min-height: 510px;
  }

  .sf39-work .wa-hero-copy {
    width: 48%;

    padding-left: 32px;
  }

  .sf39-work .wa-hero h1 {
    font-size: clamp(35px,4.2vw,48px);
  }

  .sf39-work .wa-hero-copy>p:last-child {
    font-size: 14px;

    padding-right: 20px;
  }

  .sf39-work .wa-hero-copy>p:last-child br {
    display: none;
  }

  .sf39-work .wa-theme {
    padding-inline: 12px;
  }

  .sf39-work .wa-theme h3 {
    font-size: 17px;
  }

  .sf39-work .wa-question-head {
    grid-template-columns: 1fr;
  }

  .sf39-work .wa-question-head>p {
    border: 0;

    padding: 0;
  }

  .sf39-work .wa-practice {
    grid-template-columns: 195px 1fr;
    gap: 28px;

    padding: 28px;
  }

  .sf39-work .wa-topic-name {
    grid-template-columns: 105px 190px minmax(0,1fr);
    gap: 12px;
  }

  .sf39-work .wa-topic-name>span {
    font-size: 13px;
  }

  .sf39-work .wa-latest-grid {
    gap: 15px;
  }

  .sf39-work .wa-latest-card {
    padding-right: 12px;
  }

  .sf39-work .wa-latest-card img {
    width: 100%;

    margin-inline: 0;
  }
}

@media (max-width:767px) {
  .sf39-work .wa-wrap {
    width: calc(100% - 36px);
  }

  .sf39-work .wa-hero {
    min-height: 610px;

    align-items: flex-start;
  }

  .sf39-work .wa-hero-copy {
    width: 100%;

    padding: 28px 24px 0;
  }

  .sf39-work .wa-hero h1 {
    font-size: clamp(36px,8.8vw,52px);
    line-height: 1.35;

    margin-bottom: 16px;

    max-width: 100%;
  }

  .sf39-work .wa-hero h1 span {
    white-space: nowrap;
  }

  .sf39-work .wa-hero .wa-kicker {
    margin-bottom: 10px;
  }

  .sf39-work .wa-hero-copy>p:last-child {
    font-size: 14px;
    line-height: 1.9;

    max-width: 420px;
  }

  .sf39-work .wa-rule {
    margin-bottom: 14px;
  }

  .sf39-work .wa-hero-photo {
    inset: 220px 0 0;

    height: calc(100% - 220px);
  }

  .sf39-work .wa-hero-photo img {
    object-position: 53% center;
  }

  .sf39-work .wa-hero::before {
    background: linear-gradient(180deg,#f3e9d9 0%,#f3e9d9 31%,rgba(243,233,217,.35) 42%,transparent 49%);
  }

  .sf39-work .wa-hero-sign {
    top: 295px;
    right: 18px;

    font-size: 17px;

    padding: 8px;

    max-width: 120px;

    background: rgba(255,250,240,.74);
  }

  .sf39-work .wa-themes {
    padding-top: 32px;
    padding-bottom: 35px;
  }

  .sf39-work .wa-themes>h2 {
    font-size: 24px;
  }

  .sf39-work .wa-theme-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
  }

  .sf39-work .wa-theme {
    padding: 20px 15px 16px;
  }

  .sf39-work .wa-theme:last-child {
    grid-column: 1/-1;
  }

  .sf39-work .wa-theme:last-child {
    width: 100%;
  }

  .sf39-work .wa-theme h3 {
    font-size: 19px;

    min-height: 2.2em;
  }

  .sf39-work .wa-theme-action {
    font-size: 13px;
  }

  .sf39-work .wa-feature {
    grid-template-columns: 1fr;
    gap: 22px;

    padding-bottom: 36px;
  }

  .sf39-work .wa-feature-copy {
    padding: 4px 0 0 16px;
  }

  .sf39-work .wa-feature-main h2 {
    font-size: 27px;
  }

  .sf39-work .wa-feature-side {
    padding-left: 0;

    border-left: 0;
  }

  .sf39-work .wa-feature-side>a {
    padding: 8px 0 22px;
  }

  .sf39-work .wa-feature-side h3 {
    font-size: 25px;
  }

  .sf39-work .wa-question {
    padding: 32px 0;
  }

  .sf39-work .wa-steps {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .sf39-work .wa-steps li {
    border: 0;

    padding: 0;
  }

  .sf39-work .wa-steps li+li {
    border-top: 1px solid #687e6d;

    padding-top: 20px;
  }

  .sf39-work .wa-question-head {
    gap: 12px;
  }

  .sf39-work .wa-question-head h2 {
    font-size: 27px;
  }

  .sf39-work .wa-library {
    padding-top: 35px;
    padding-bottom: 30px;
  }

  .sf39-work .wa-section-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }

  .sf39-work .wa-topic summary {
    padding: 18px 20px;

    gap: 13px;
  }

  .sf39-work .wa-topic-name {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .sf39-work .wa-topic-name strong {
    border: 0;

    padding: 0;
  }

  .sf39-work .wa-topic-name strong {
    font-size: 21px;
  }

  .sf39-work .wa-topic-name>span {
    font-size: 13px;
  }

  .sf39-work .wa-topic summary small {
    display: none;
  }

  .sf39-work .wa-topic-icon {
    flex-basis: 28px;

    height: 28px;
  }

  .sf39-work .wa-topic-icon::before {
    top: 9px;
    left: 7px;
    right: 7px;
  }

  .sf39-work .wa-topic-icon::after {
    top: 16px;
    left: 7px;
    right: 10px;
  }

  .sf39-work .wa-topic-body {
    padding: 22px 14px;
  }

  .sf39-work .sf-wr-article-grid,
  .sf39-work .sf-wr-subtopic-links {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .sf39-work .wa-reading-card {
    padding: 22px;
  }

  .sf39-work .wa-topic-body h3 {
    font-size: 21px;
  }

  .sf39-work .wa-practice {
    grid-template-columns: 1fr;
    gap: 30px;

    padding: 28px 22px;
  }

  .sf39-work .wa-practice figure {
    width: 220px;

    margin-inline: auto;
  }

  .sf39-work .wa-practice h2 {
    font-size: 27px;
  }

  .sf39-work .wa-practice p br {
    display: none;
  }

  .sf39-work .wa-practice ul {
    gap: 10px;
  }

  .sf39-work .wa-practice li {
    padding: 14px 10px;
  }

  .sf39-work .wa-practice strong {
    font-size: 14px;
  }

  .sf39-work .wa-practice li span {
    font-size: 12px;
  }

  .sf39-work .wa-practice-link {
    font-size: 13px;

    gap: 10px;

    max-width: 100%;

    white-space: normal;
    text-align: right;
  }

  .sf39-work .wa-latest-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 20px 14px;
  }

  .sf39-work .wa-latest-card h3 {
    font-size: 17px;
  }
}

@media (max-width:430px) {
  .sf39-work .wa-hero {
    min-height: 600px;
  }

  .sf39-work .wa-hero h1 {
    font-size: clamp(30px,8.5vw,36px);
  }

  .sf39-work .wa-hero-sign {
    top: 260px;

    font-size: 12px;
    line-height: 1.4;

    right: 12px;

    max-width: 80px;

    padding: 5px;

    transform: rotate(-5deg);
  }

  .sf39-work .wa-latest-grid {
    grid-template-columns: 1fr;
  }

  .sf39-work .wa-latest-card h3 {
    font-size: 20px;
  }

  .sf39-work .wa-latest-card img {
    aspect-ratio: 1.8;
  }

  .sf39-work .wa-practice ul {
    grid-template-columns: 1fr;
  }

  .sf39-work .wa-practice li {
    display: grid;

    grid-template-columns: 30px 1fr;
    gap: 5px 12px;
    align-items: center;
  }

  .sf39-work .wa-practice li svg {
    grid-row: 1/3;

    margin: 0;
  }

  .sf39-work .wa-practice strong {
    font-size: 16px;

    margin: 0;
  }

  .sf39-work .wa-practice li span {
    font-size: 14px;
  }

  .sf39-work .wa-theme p {
    font-size: 14px;
  }

  .sf39-work .wa-topic-name strong {
    font-size: 19px;
  }

  .sf39-work .wa-topic-name em {
    font-size: 9px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .sf39-work * {
    transition: none !important;

    scroll-behavior: auto !important;
  }
}

/* =========================================================
   Magazine marks: quiet separators and outline typography; no additional raster assets.
========================================================= */

.sf39-work .wa-theme:not(:last-child)::after {
  content: "";
  position: absolute;
  right: -8px;
  top: 36px;
  bottom: 8px;

  width: 1px;

  background: #ded3c0;
}

.sf39-work .wa-theme:nth-child(3) {
  border-top-color: #b59c62;
}

.sf39-work .wa-latest-card:last-child {
  border-right: 0;
}

@media (max-width:767px) {
  .sf39-work .wa-theme:nth-child(2n)::after,
  .sf39-work .wa-theme:last-child::after {
    display: none;
  }

  .sf39-work .wa-theme:nth-child(3)::after {
    display: block;
  }

  .sf39-work .wa-theme-grid {
    gap: 20px 16px;
  }

  .sf39-work .wa-theme:last-child {
    max-width: 340px;

    justify-self: center;
  }

  .sf39-work .wa-latest-card:nth-child(2n) {
    border-right: 0;

    padding-right: 0;
  }

  .sf39-work .wa-practice figure {
    width: min(100%,300px);
    aspect-ratio: 1.1;
  }
}

@media (max-width:430px) {
  .sf39-work .wa-latest-card {
    border-right: 0;

    padding-right: 0;
  }
}

/* =========================================================
   v5: HEROの英文・開閉見出しの余白・明るい全面の締め
========================================================= */

.sf39-work .wa-hero-sign {
  top: 55px;
  right: clamp(24px,4vw,64px);

  width: 22%;
  max-width: 300px;

  padding: 0 0 18px;

  background: none;
  border: 0;

  text-align: center;

  transform: rotate(-5deg);

  font: italic clamp(27px,3.1vw,46px)/1.15 Georgia,serif;

  color: #73532e;

  text-shadow: 0 1px 12px rgba(255,250,240,.8);
}

.sf39-work .wa-hero-sign::after {
  content: "";
  display: block;

  width: 68px;
  height: 1px;

  background: #a8792f;

  margin: 20px auto 0;
}

@media (max-width:1100px) and (min-width:768px) {
  .sf39-work .wa-hero-sign {
    top: 40px;
    right: 24px;

    width: 21%;

    font-size: clamp(24px,3.1vw,34px);
  }
}

@media (max-width:767px) {
  .sf39-work .wa-hero-sign {
    top: 295px;
    right: 16px;

    width: 24%;
    max-width: 130px;

    font-size: 20px;
    line-height: 1.2;

    padding: 8px;

    background: rgba(255,250,240,.7);
  }

  .sf39-work .wa-hero-sign::after {
    width: 35px;

    margin-top: 10px;
  }

  .sf39-work .wa-topic[open] summary {
    padding-inline: 20px;
  }

  .sf39-work .wa-latest-card:nth-child(2n) {
    padding-right: 12px;
  }
}

@media (max-width:430px) {
  .sf39-work .wa-hero-sign {
    top: 260px;
    right: 10px;

    width: 23%;
    max-width: 86px;

    font-size: 14px;

    padding: 6px;
  }

  .sf39-work .wa-latest-card,
  .sf39-work .wa-latest-card:nth-child(2n) {
    padding-right: 0;
  }
}

/* =========================================================
   YOUR NEXT CHAPTER — 明るい写真から既存フッターへ
========================================================= */

.sf39-work .wa-closing--journey {
  position: relative;
  isolation: isolate;
  overflow: hidden;

  width: 100%;
  max-width: none;

  margin: 0;
  padding: 0;

  background: #f3e8d5;
  color: #183e34;

  min-height: 620px;

  text-align: left;

  border: 0;
  box-shadow: none;
}

.sf39-work .wa-journey-photo {
  position: absolute;
  z-index: -2;
  inset: 0;

  width: 100%;
  height: 100%;

  margin: 0;
}

.sf39-work .wa-journey-photo img {
  display: block;

  width: 100%;
  height: 100%;
  max-width: none;

  object-fit: cover;
  object-position: 72% 25%;
}

.sf39-work .wa-closing--journey::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;

  background: linear-gradient(90deg,rgba(246,236,218,.45),rgba(246,236,218,.12) 44%,transparent 62%);

  pointer-events: none;
}

.sf39-work .wa-closing--journey::after {
  content: "";
  position: absolute;
  inset: auto 0 0;

  height: 150px;

  background: linear-gradient(180deg,transparent 0%,var(--wa-footer-color,#183e34) 100%);

  pointer-events: none;

  z-index: 1;
}

.sf39-work .wa-closing-inner {
  position: relative;

  width: min(650px,52%);
  max-width: none;

  margin: 0 0 0 var(--wa-footer-left,max(32px,calc((100% - 1320px)/2)));
  padding: 78px 0 170px;

  z-index: 2;
}

.sf39-work .wa-closing .wa-kicker {
  margin: 0 0 22px;

  color: #9b6538;

  font-size: 11px;
  letter-spacing: .26em;
}

.sf39-work .wa-closing-rule {
  display: block;

  width: 52px;
  height: 1px;

  background: #a8792f;

  margin: 0 0 32px;
}

.sf39-work .wa-closing h2 {
  margin: 0 0 30px;

  color: #183e34;

  font-size: clamp(30px,2.7vw,48px);
  font-weight: 500;
  line-height: 1.55;
  letter-spacing: .025em;
}

.sf39-work .wa-closing h2 span {
  display: block;
}

.sf39-work .wa-journey-lead {
  margin: 0;

  color: #2f453b;

  font-size: 16px;
  line-height: 2;

  max-width: 590px;
}

.sf39-work .wa-journey-note {
  margin: 36px 0 0;

  color: #2f453b;

  font-size: 15px;
  line-height: 1.9;
  letter-spacing: .035em;
}

body.category-work-career .sf-footer {
  margin-top: 0;
}

@media (min-width:768px) and (max-width:1100px) {
  .sf39-work .wa-closing-inner {
    width: 52%;

    padding-top: 62px;
  }

  .sf39-work .wa-closing h2 {
    font-size: clamp(27px,3.5vw,36px);
  }

  .sf39-work .wa-journey-lead {
    font-size: 14px;

    padding-right: 16px;
  }

  .sf39-work .wa-journey-lead br {
    display: none;
  }
}

@media (max-width:767px) {
  .sf39-work .wa-closing--journey {
    min-height: 0;

    padding-bottom: 340px;
  }

  .sf39-work .wa-closing-inner {
    width: calc(100% - var(--wa-footer-left,24px) - 24px);

    padding: 42px 0 34px;
    margin-left: var(--wa-footer-left,24px);
  }

  .sf39-work .wa-closing h2 {
    font-size: clamp(25px,5.6vw,36px);
    line-height: 1.6;

    margin-bottom: 22px;
  }

  .sf39-work .wa-closing-rule {
    margin-bottom: 24px;
  }

  .sf39-work .wa-journey-lead {
    font-size: 15px;
    line-height: 1.95;
  }

  .sf39-work .wa-journey-lead br {
    display: none;
  }

  .sf39-work .wa-journey-note {
    font-size: 14px;

    margin-top: 22px;
  }

  .sf39-work .wa-journey-photo {
    inset: auto 0 0;

    height: 380px;
  }

  .sf39-work .wa-journey-photo img {
    object-position: 82% center;
  }

  .sf39-work .wa-closing--journey::before {
    inset: auto 0 0;

    height: 380px;

    background: linear-gradient(180deg,#f3e8d5,rgba(243,232,213,.35) 12%,transparent 25%);
  }

  .sf39-work .wa-closing--journey::after {
    height: 90px;
  }

  .sf39-work .wa-closing .wa-kicker {
    font-size: 10px;
    letter-spacing: .2em;
  }
}

/* =========================================================
   EXPLORE YOUR OPTIONS — photograph-led editorial links only.
========================================================= */

.sf39-work .wa-library .wa-topic summary {
  gap: 24px;

  padding: 22px 26px;
}

.sf39-work .wa-library .wa-topic-photo {
  display: block;

  flex: 0 0 76px;

  width: 76px;
  height: 76px;

  object-fit: cover;

  aspect-ratio: 1;
}

.sf39-work .wa-library .wa-topic-name {
  grid-template-columns: 190px minmax(0,1fr);
  gap: 5px 24px;
}

.sf39-work .wa-library .wa-topic-name em {
  grid-column: 1;
  align-self: end;
}

.sf39-work .wa-library .wa-topic-name strong {
  grid-column: 1;
  grid-row: 2;

  border: 0;

  padding: 0;

  align-self: start;
}

.sf39-work .wa-library .wa-topic-name>span {
  grid-column: 2;
  grid-row: 1/3;

  border-left: 1px solid #c4aa8c;

  padding-left: 24px;

  line-height: 1.9;
  font-size: 15px;
}

.sf39-work .wa-library :is(.wa-reading-card,.sf-wr-subtopic-links>a) {
  display: grid;

  grid-template-columns: 124px minmax(0,1fr);
  gap: 22px;

  padding: 22px;

  align-items: start;
}

.sf39-work .wa-library .wa-reading-photo {
  display: block;

  width: 124px;
  height: 124px;

  object-fit: cover;

  aspect-ratio: 1;
}

.sf39-work .wa-library .wa-reading-copy {
  display: flex;

  flex-direction: column;

  height: 100%;
  min-width: 0;
}

.sf39-work .wa-library .wa-reading-copy h3 {
  font-size: 20px;
  line-height: 1.65;

  margin: 10px 0;
}

.sf39-work .wa-library .wa-reading-copy p {
  font-size: 14px;
  line-height: 1.9;

  margin: 0 0 20px;
}

.sf39-work .wa-library .wa-reading-copy>strong {
  font-size: 18px;
  line-height: 1.75;
  font-weight: 500;

  margin-bottom: 12px;
}

.sf39-work .wa-library .wa-reading-copy>span:not(.wa-card-action):not(.sf-wr-tag) {
  font-size: 14px;
  line-height: 1.85;

  margin-bottom: 20px;
}

.sf39-work .wa-library .wa-reading-copy .wa-card-action {
  display: flex;

  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  align-self: stretch;

  margin-top: auto;
  padding-top: 10px;

  font-size: 13px;
}

@media (min-width:768px) and (max-width:1100px) {
  .sf39-work .wa-library .wa-topic-name {
    grid-template-columns: 165px minmax(0,1fr);
  }

  .sf39-work .wa-library :is(.wa-reading-card,.sf-wr-subtopic-links>a) {
    grid-template-columns: 90px minmax(0,1fr);
    gap: 16px;

    padding: 18px;
  }

  .sf39-work .wa-library .wa-reading-photo {
    width: 90px;
    height: 90px;
  }
}

@media (max-width:767px) {
  .sf39-work .wa-library .wa-topic summary,
  .sf39-work .wa-library .wa-topic[open] summary {
    padding: 18px 14px;

    gap: 14px;
  }

  .sf39-work .wa-library .wa-topic-photo {
    flex-basis: 64px;

    width: 64px;
    height: 64px;
  }

  .sf39-work .wa-library .wa-topic-name {
    grid-template-columns: 1fr;
    gap: 3px;
  }

  .sf39-work .wa-library .wa-topic-name em,
  .sf39-work .wa-library .wa-topic-name strong,
  .sf39-work .wa-library .wa-topic-name>span {
    grid-column: 1;
    grid-row: auto;

    border: 0;

    padding: 0;
  }

  .sf39-work .wa-library .wa-topic-name strong {
    font-size: 20px;
    line-height: 1.5;
  }

  .sf39-work .wa-library .wa-topic-name>span {
    font-size: 13px;
    line-height: 1.7;
  }

  .sf39-work .wa-library .wa-topic summary::after {
    flex-basis: 28px;

    height: 28px;

    font-size: 20px;
  }

  .sf39-work .wa-library :is(.wa-reading-card,.sf-wr-subtopic-links>a) {
    grid-template-columns: 96px minmax(0,1fr);
    gap: 16px;

    padding: 18px 15px;
  }

  .sf39-work .wa-library .wa-reading-photo {
    width: 96px;
    height: 96px;
  }

  .sf39-work .wa-library .wa-reading-copy h3,
  .sf39-work .wa-library .wa-reading-copy>strong {
    font-size: 18px;
    line-height: 1.7;
  }
}

@media (max-width:380px) {
  .sf39-work .wa-library .wa-topic-photo {
    flex-basis: 52px;

    width: 52px;
    height: 52px;
  }

  .sf39-work .wa-library :is(.wa-reading-card,.sf-wr-subtopic-links>a) {
    grid-template-columns: 72px minmax(0,1fr);
    gap: 12px;

    padding: 16px 12px;
  }

  .sf39-work .wa-library .wa-reading-photo {
    width: 72px;
    height: 72px;
  }

  .sf39-work .wa-library .wa-reading-copy h3,
  .sf39-work .wa-library .wa-reading-copy>strong {
    font-size: 17px;
  }
}

/* =========================================================
   Full-page magazine rhythm and the photo-cover topic selector.
========================================================= */

.sf39-work {
  background: #fffdf9;

  --wa-paper: #fffdf9;
}

body.category-work-career .sf39-work-page {
  background: #fffdf9;
}

.sf39-work .wa-themes {
  padding-top: 58px;
  padding-bottom: 64px;
}

.sf39-work .wa-feature {
  padding-bottom: 78px;

  gap: 34px;
}

.sf39-work .wa-question {
  padding-block: 48px;
  margin-bottom: 0;
}

.sf39-work .wa-library.wmt-library {
  padding-block: 78px 80px;
}

.sf39-work .wmt-library-head {
  text-align: center;

  margin-bottom: 34px;
}

.sf39-work .wmt-library-head h2 {
  font-size: clamp(27px,2.8vw,38px);

  margin: 10px 0 14px;

  line-height: 1.6;
}

.sf39-work .wmt-library-head>p:last-child {
  font-size: 16px;

  color: #59675f;

  line-height: 1.9;
}

.sf39-work .wmt-selectors {
  display: grid;

  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 18px;

  margin-bottom: 50px;

  align-items: stretch;
}

.sf39-work .wmt-tab {
  position: relative;
  display: flex;

  flex-direction: column;

  background: #fff;
  border: 1px solid #e4dace;
  border-bottom: 3px solid #b77a61;

  transition: box-shadow .22s,
    transform .22s;
}

.sf39-work .wmt-tab:nth-child(3) {
  border-bottom-color: #bd9c56;
}

.sf39-work .wmt-tab:nth-child(4) {
  border-bottom-color: #8b9e86;
}

.sf39-work .wmt-tab img {
  display: block;

  width: 100%;
  height: auto;
  aspect-ratio: 1.2;

  object-fit: cover;
}

.sf39-work .wmt-tab>span {
  display: grid;

  place-items: center;
  flex: 1;

  min-height: 65px;

  padding: 13px 8px;

  font: 500 clamp(15px,1.5vw,20px)/1.6 "Yu Mincho","Hiragino Mincho ProN",serif;
  text-align: center;
}

.sf39-work .wmt-tab[aria-selected="true"] {
  background: #173f38;
  color: #fffdf5;
  border-color: #173f38;
}

.sf39-work .wmt-tab[aria-selected="true"]::after {
  content: "";
  position: absolute;
  left: calc(50% - 8px);
  bottom: -13px;

  border: 8px solid transparent;
  border-top-color: #173f38;
  border-bottom: 0;
}

.sf39-work .wmt-panel[hidden] {
  display: none !important;
}

.sf39-work .wmt-panel {
  scroll-margin-top: 120px;

  margin-bottom: 62px;
}

.sf39-work .is-enhanced .wmt-panel {
  margin-bottom: 0;
}

.sf39-work .wmt-panel-head {
  margin-bottom: 28px;
}

.sf39-work .wmt-panel-head h3 {
  font-size: clamp(23px,2.2vw,30px);
  line-height: 1.7;

  margin: 8px 0 0;
}

.sf39-work .wmt-story-grid {
  display: grid;

  grid-template-columns: minmax(0,1.1fr) minmax(0,1fr);
  gap: 26px;
  align-items: stretch;
}

.sf39-work .wmt-story {
  min-width: 0;

  display: grid;

  grid-template-columns: 126px minmax(0,1fr);
  align-items: start;
  gap: 20px;

  padding: 21px;

  background: #fff;
  border: 1px solid #e8e0d4;

  transition: transform .22s,
    box-shadow .22s;
}

.sf39-work .wmt-story .wa-reading-photo {
  display: block;

  width: 100%;
  height: auto;
  aspect-ratio: 1;

  object-fit: cover;
}

.sf39-work .wmt-story .wa-reading-copy {
  min-width: 0;

  display: flex;

  flex-direction: column;

  height: 100%;
}

.sf39-work .wmt-story .wa-reading-copy h3,
.sf39-work .wmt-story .wa-reading-copy>strong {
  font: 500 20px/1.7 "Yu Mincho","Hiragino Mincho ProN",serif;

  margin: 9px 0 12px;
}

.sf39-work .wmt-story .wa-reading-copy p,
.sf39-work .wmt-story .wa-reading-copy>span:not(.sf-wr-tag):not(.wa-card-action) {
  font-size: 14px;
  line-height: 1.9;

  margin: 0 0 18px;

  color: #58655d;
}

.sf39-work .wmt-story .wa-card-action {
  display: flex;

  justify-content: flex-end;
  align-items: center;
  align-self: stretch;

  margin-top: auto;
  padding-top: 12px;

  gap: 12px;

  font-size: 13px;
  line-height: 1.6;

  color: #a35e40;
}

.sf39-work .wmt-story .wa-card-action i {
  font-style: normal;
  font-size: 20px;
}

.sf39-work .wmt-story:nth-child(-n+3) {
  display: flex;

  flex-direction: column;

  padding: 0;

  gap: 0;
}

.sf39-work .wmt-story:nth-child(-n+3) .wa-reading-photo {
  aspect-ratio: 2.2;
}

.sf39-work .wmt-story:nth-child(-n+3) .wa-reading-copy {
  padding: 20px 23px 22px;

  flex: 1;

  width: 100%;
}

.sf39-work .wmt-story--lead {
  grid-row: span 2;
}

.sf39-work .wmt-story--lead .wa-reading-photo {
  aspect-ratio: 1.3 !important;
}

.sf39-work .wmt-story--lead .wa-reading-copy h3,
.sf39-work .wmt-story--lead .wa-reading-copy>strong {
  font-size: clamp(25px,2.5vw,34px);
  line-height: 1.55;
}

.sf39-work .wmt-story--lead .wa-reading-copy p {
  font-size: 15px;
}

/* =========================================================
   With just two stories, give both cards the same editorial weight.
========================================================= */

.sf39-work .wmt-story-grid:has(>.wmt-story:last-child:nth-child(2)) .wmt-story {
  grid-row: auto;
}

.sf39-work .wmt-story-grid:has(>.wmt-story:last-child:nth-child(2)) .wa-reading-photo {
  aspect-ratio: 1.6 !important;
}

.sf39-work .wmt-story-grid:has(>.wmt-story:last-child:nth-child(2)) .wa-reading-copy h3 {
  font-size: 25px;
}

.sf39-work .wa-practice {
  margin-top: 0;
  margin-bottom: 80px;

  gap: 42px;

  padding: 38px;

  background: #f4eee3;
  border: 0;
}

.sf39-work .wa-practice figure img {
  aspect-ratio: 1.4;

  object-fit: cover;
}

.sf39-work .wa-latest {
  padding-top: 0;
  padding-bottom: 76px;
}

.sf39-work .wa-latest-grid {
  gap: 25px;

  margin-top: 30px;
  margin-bottom: 32px;
}

.sf39-work .wa-latest-card {
  padding: 0 0 20px;

  border: 1px solid #e8e0d4;
  background: #fff;
}

.sf39-work .wa-latest-card img {
  width: 100%;

  margin: 0 0 20px;

  aspect-ratio: 1.2;

  object-fit: cover;
}

.sf39-work .wa-latest-card h3,
.sf39-work .wa-latest-card time,
.sf39-work .wa-latest-card .wa-card-action {
  margin-inline: 16px;
}

.sf39-work .wa-latest-card h3 {
  font-size: 19px;
  line-height: 1.8;

  margin-top: 8px;
  margin-bottom: 18px;
}

.sf39-work .wa-latest-card .wa-card-action {
  align-self: stretch;
  justify-content: flex-end;

  display: flex;
}

.sf39-work .wa-closing h2 {
  font-size: clamp(27px,2.7vw,38px);
}

@media (hover:hover) {
  .sf39-work .wmt-tab:hover,
  .sf39-work .wmt-story:hover {
    transform: translateY(-3px);

    box-shadow: 0 9px 25px rgba(23,63,56,.08);
  }
}

@media (min-width:768px) and (max-width:1020px) {
  .sf39-work .wmt-selectors {
    gap: 12px;
  }

  .sf39-work .wmt-tab>span {
    font-size: 16px;

    min-height: 68px;
  }

  .sf39-work .wmt-story {
    grid-template-columns: 95px minmax(0,1fr);
    gap: 15px;

    padding: 17px;
  }

  .sf39-work .wmt-story-grid {
    gap: 20px;
  }

  .sf39-work .wmt-story .wa-reading-copy h3 {
    font-size: 19px;
  }
}

@media (max-width:767px) {
  .sf39-work .wa-themes {
    padding-block: 38px 44px;
  }

  .sf39-work .wa-feature {
    padding-bottom: 48px;

    gap: 30px;
  }

  .sf39-work .wa-question {
    padding-block: 36px;
  }

  .sf39-work .wa-library.wmt-library {
    padding-block: 48px 50px;
  }

  .sf39-work .wmt-library-head {
    margin-bottom: 25px;
  }

  .sf39-work .wmt-library-head h2 {
    font-size: 27px;
  }

  .sf39-work .wmt-library-head>p:last-child {
    font-size: 15px;
  }

  .sf39-work .wmt-selectors {
    display: flex;

    gap: 12px;

    overflow-x: auto;

    margin-inline: -18px;
    padding: 0 18px 17px;
    margin-bottom: 31px;

    scrollbar-width: thin;
    scroll-snap-type: x proximity;
  }

  .sf39-work .wmt-tab {
    flex: 0 0 138px;

    scroll-snap-align: start;
  }

  .sf39-work .wmt-tab>span {
    font-size: 17px;

    min-height: 65px;
  }

  .sf39-work .wmt-story-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .sf39-work .wmt-story--lead {
    grid-row: auto;
  }

  .sf39-work .wmt-story:nth-child(-n+3) {
    display: grid;

    grid-template-columns: 105px minmax(0,1fr);

    padding: 18px;

    gap: 16px;
  }

  .sf39-work .wmt-story:nth-child(-n+3) .wa-reading-photo {
    aspect-ratio: 1;
  }

  .sf39-work .wmt-story:nth-child(-n+3) .wa-reading-copy {
    padding: 0;

    width: auto;
  }

  .sf39-work .wmt-story--lead:first-child {
    display: flex;

    padding: 0;

    gap: 0;
  }

  .sf39-work .wmt-story--lead:first-child .wa-reading-photo {
    aspect-ratio: 1.65 !important;
  }

  .sf39-work .wmt-story--lead:first-child .wa-reading-copy {
    padding: 23px;
  }

  .sf39-work .wmt-story {
    grid-template-columns: 105px minmax(0,1fr);

    padding: 18px;

    gap: 16px;
  }

  .sf39-work .wmt-story .wa-reading-copy h3,
  .sf39-work .wmt-story .wa-reading-copy>strong {
    font-size: 19px;
  }

  .sf39-work .wmt-story--lead:first-child .wa-reading-copy h3 {
    font-size: 27px;
  }

  .sf39-work .wmt-story .wa-reading-copy p {
    font-size: 14px;
    line-height: 1.85;
  }

  .sf39-work .wmt-panel-head {
    margin-bottom: 23px;
  }

  .sf39-work .wmt-panel-head h3 {
    font-size: 23px;
  }

  .sf39-work .wmt-story-grid:has(>.wmt-story:last-child:nth-child(2)) .wa-reading-photo {
    aspect-ratio: 1 !important;
  }

  .sf39-work .wmt-story-grid:has(>.wmt-story:last-child:nth-child(2)) .wmt-story--lead .wa-reading-photo {
    aspect-ratio: 1.65 !important;
  }

  .sf39-work .wa-practice {
    margin-bottom: 50px;
    padding: 27px 22px;

    gap: 25px;
  }

  .sf39-work .wa-practice figure {
    width: 100%;
    max-width: 300px;
  }

  .sf39-work .wa-latest {
    padding-bottom: 48px;
  }

  .sf39-work .wa-latest-grid {
    gap: 23px 16px;

    margin-top: 25px;
  }

  .sf39-work .wa-latest-card h3 {
    font-size: 17px;
  }

  .sf39-work .wa-latest-card:nth-child(2n) {
    padding-right: 0;
  }

  .sf39-work .wa-closing h2 {
    font-size: 28px;
  }
}

@media (max-width:380px) {
  .sf39-work .wmt-story,
  .sf39-work .wmt-story:nth-child(-n+3) {
    grid-template-columns: 78px minmax(0,1fr);
    gap: 13px;

    padding: 16px 13px;
  }

  .sf39-work .wmt-story--lead:first-child {
    display: flex;

    padding: 0;
  }

  .sf39-work .wmt-story .wa-reading-copy h3 {
    font-size: 18px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .sf39-work .wmt-tab,
  .sf39-work .wmt-story {
    transition: none;
  }

  .sf39-work .wmt-tab:hover,
  .sf39-work .wmt-story:hover {
    transform: none;
  }
}

/* =========================================================
   Small spacing adjustment — 2026-10-05.
========================================================= */

.sf39-work .wa-library.wmt-library {
  padding-top: 68px;
  padding-bottom: 70px;
}

.sf39-work .wa-practice {
  margin-bottom: 70px;
}

.sf39-work .wa-latest {
  padding-bottom: 66px;
}

/* =========================================================
   Let the large story finish after its copy instead of stretching to two rows.
========================================================= */

.sf39-work .wmt-story--lead {
  align-self: stretch;
}

.sf39-work .wmt-story--lead .wa-reading-copy {
  height: auto;

  flex: 1 1 auto;
}

.sf39-work .wmt-story--lead .wa-card-action {
  margin-top: auto;
}

@media (min-width:768px) {
  .sf39-work .wa-closing--journey {
    min-height: 560px;
  }

  .sf39-work .wa-closing-inner {
    padding-bottom: 120px;
  }
}

@media (max-width:767px) {
  .sf39-work .wa-library.wmt-library {
    padding-top: 38px;
    padding-bottom: 40px;
  }

  .sf39-work .wa-practice {
    margin-bottom: 40px;
  }

  .sf39-work .wa-latest {
    padding-bottom: 38px;
  }

  .sf39-work .wa-closing--journey {
    padding-bottom: 300px;
  }

  .sf39-work .wa-journey-photo {
    height: 340px;
  }

  .sf39-work .wa-closing--journey::before {
    height: 340px;
  }
}

/* =========================================================
   Balanced magazine cards: one lead / two compact side stories.
========================================================= */

@media (min-width:768px) {
  .sf39-work .wmt-story:nth-child(2) .wa-reading-photo,
  .sf39-work .wmt-story:nth-child(3) .wa-reading-photo {
    aspect-ratio: 2.8;
  }

  .sf39-work .wmt-story:nth-child(2) .wa-reading-copy,
  .sf39-work .wmt-story:nth-child(3) .wa-reading-copy {
    padding: 16px 20px 18px;
  }

  .sf39-work .wmt-story:nth-child(2) .wa-reading-copy h3,
  .sf39-work .wmt-story:nth-child(3) .wa-reading-copy h3 {
    margin-top: 7px;
    margin-bottom: 9px;
  }

  .sf39-work .wmt-story:nth-child(2) .wa-reading-copy p,
  .sf39-work .wmt-story:nth-child(3) .wa-reading-copy p {
    margin-bottom: 12px;
  }

  .sf39-work .wmt-story:nth-child(n+4) {
    grid-template-columns: 110px minmax(0,1fr);

    min-height: 170px;
  }

  .sf39-work .wmt-story:nth-child(n+4) .wa-reading-photo {
    width: 110px;
    height: 110px;
    aspect-ratio: 1;
  }

  /* =========================================================
     Two-story topics retain equally sized photo cards.
  ========================================================= */

  .sf39-work .wmt-story-grid:has(>.wmt-story:last-child:nth-child(2)) .wa-reading-copy {
    padding: 20px 23px 22px;
  }
}

@media (max-width:767px) {
  .sf39-work .wmt-story--lead {
    align-self: stretch;
  }

  .sf39-work .wmt-story:nth-child(n+4) {
    min-height: 145px;
  }
}

/* =========================================================
   HERO below: clear theme entrances and two photo-led editorial stories.
========================================================= */

.sf39-work .wa-theme-grid {
  gap: 14px;
}

.sf39-work .wa-theme {
  padding: 22px 12px 20px;

  background: #f6f0e5;

  min-height: 215px;

  border-top: 2px solid #b99a62;
}

.sf39-work .wa-theme:nth-child(2),
.sf39-work .wa-theme:nth-child(4) {
  background: #eef2e9;
}

.sf39-work .wa-theme:not(:last-child)::after {
  display: none;
}

.sf39-work .wa-theme h3 {
  font-size: 21px;
  font-weight: 600;

  margin: 14px 0 9px;

  min-height: 0;
}

.sf39-work .wa-theme-description {
  font-size: 14px;
  line-height: 1.75;

  color: #536158;

  margin: 0 0 17px;
}

.sf39-work .wa-theme-action {
  margin-top: auto;

  font-size: 13px;

  color: #775c38;
}

.sf39-work .wa-theme:last-child h3 {
  font-size: 18px;
}

.sf39-work .wa-feature-side {
  padding-left: 24px;

  gap: 24px;
  grid-template-rows: 1fr 1fr;
}

.sf39-work .wa-feature-side>a,
.sf39-work .wa-feature-side>a+a {
  display: grid;

  grid-template-columns: clamp(110px,12vw,165px) minmax(0,1fr);
  grid-template-rows: auto auto 1fr auto;
  column-gap: 22px;
  row-gap: 0;

  padding: 12px 0 22px;

  align-content: start;
}

.sf39-work .wa-feature-side>a:last-child {
  padding-bottom: 0;
}

.sf39-work .wa-feature-side .wa-feature-side-photo {
  grid-column: 1;
  grid-row: 1/4;

  display: block;

  width: 100%;
  height: auto;
  aspect-ratio: 1;

  object-fit: cover;

  margin: 0;
}

.sf39-work .wa-feature-side .wa-kicker,
.sf39-work .wa-feature-side h3,
.sf39-work .wa-feature-side p:not(.wa-kicker) {
  grid-column: 2;
}

.sf39-work .wa-feature-side .wa-kicker {
  font-size: 10px;

  margin-bottom: 9px;
}

.sf39-work .wa-feature-side h3 {
  font-size: clamp(21px,1.85vw,26px);
  line-height: 1.6;

  margin-bottom: 12px;
}

.sf39-work .wa-feature-side p:not(.wa-kicker) {
  font-size: 14px;
  line-height: 1.9;

  margin-bottom: 15px;
}

.sf39-work .wa-feature-side .wa-card-action {
  grid-column: 1/-1;
  justify-self: end;

  margin-top: 14px;

  align-self: end;
}

@media (min-width:768px) and (max-width:1020px) {
  .sf39-work .wa-theme h3 {
    font-size: 19px;
  }

  .sf39-work .wa-theme:last-child h3 {
    font-size: 16px;
  }

  .sf39-work .wa-theme-description {
    font-size: 13px;
  }

  .sf39-work .wa-feature-side {
    padding-left: 18px;
  }

  .sf39-work .wa-feature-side>a,
  .sf39-work .wa-feature-side>a+a {
    grid-template-columns: 100px minmax(0,1fr);
    column-gap: 16px;
  }

  .sf39-work .wa-feature-side h3 {
    font-size: 21px;
  }
}

@media (max-width:767px) {
  .sf39-work .wa-theme-grid {
    gap: 12px;
  }

  .sf39-work .wa-theme {
    padding: 19px 12px 17px;

    min-height: 195px;
  }

  .sf39-work .wa-theme h3 {
    font-size: 21px;
  }

  .sf39-work .wa-theme:last-child h3 {
    font-size: 20px;
  }

  .sf39-work .wa-theme-description {
    font-size: 14px;
  }

  .sf39-work .wa-feature-side {
    padding-left: 0;

    border-left: 0;

    gap: 24px;
    grid-template-rows: auto auto;
  }

  .sf39-work .wa-feature-side>a,
  .sf39-work .wa-feature-side>a+a {
    grid-template-columns: 105px minmax(0,1fr);
    column-gap: 18px;

    padding-top: 0;
    padding-bottom: 24px;
  }

  .sf39-work .wa-feature-side h3 {
    font-size: 23px;
  }

  .sf39-work .wa-feature-side .wa-card-action {
    margin-top: 5px;
  }
}

@media (max-width:380px) {
  .sf39-work .wa-feature-side>a,
  .sf39-work .wa-feature-side>a+a {
    grid-template-columns: 85px minmax(0,1fr);
    column-gap: 14px;
  }

  .sf39-work .wa-feature-side h3 {
    font-size: 21px;
  }
}

/* =========================================================
   Photo-led editorial entrances: scope limited to the five cards below HERO.
========================================================= */

.sf39-work .wa-themes--editorial {
  padding-block: 42px 48px;
}

.sf39-work .wa-themes--editorial .wa-theme-heading {
  display: flex;

  justify-content: space-between;
  align-items: end;
  gap: 28px;

  margin-bottom: 26px;
}

.sf39-work .wa-themes--editorial .wa-theme-heading .wa-kicker {
  margin: 0 0 12px;

  color: #8b704e;

  font-size: 11px;
  letter-spacing: .16em;
}

.sf39-work .wa-themes--editorial .wa-theme-heading h2 {
  margin: 0;
  padding: 0;

  border: 0;

  font-size: clamp(25px,2.45vw,34px);
  line-height: 1.5;
}

.sf39-work .wa-themes--editorial .wa-theme-heading>p {
  margin: 0;

  color: #566259;

  font-size: 14px;
  line-height: 1.85;

  flex-shrink: 0;
}

.sf39-work .wa-themes--editorial .wa-theme-grid {
  gap: 18px;
  align-items: stretch;
}

.sf39-work .wa-themes--editorial .wa-theme {
  display: flex;

  align-items: stretch;
  flex-direction: column;

  padding: 0;

  min-height: 0;
  max-width: none;
  width: 100%;

  text-align: left;

  background: #fffdf9;
  border: 1px solid #e2d9c9;
  border-top: 0;

  overflow: hidden;

  color: #173f38;
  box-shadow: 0 3px 12px rgba(40,52,39,.035);

  text-decoration: none;

  transition: transform .22s,
    box-shadow .22s,
    border-color .22s;
}

.sf39-work .wa-themes--editorial .wa-theme:nth-child(even) {
  background: #f3f5ee;
  border-color: #dbe1d3;
}

.sf39-work .wa-themes--editorial .wa-theme::after {
  display: none;
}

.sf39-work .wa-themes--editorial .wa-theme-photo {
  display: block;

  flex: none;

  position: relative;

  margin: 0;

  aspect-ratio: 4/3;

  overflow: hidden;

  border-bottom: 3px solid #b99a62;
}

.sf39-work .wa-themes--editorial .wa-theme:nth-child(even) .wa-theme-photo {
  border-bottom-color: #799083;
}

.sf39-work .wa-themes--editorial .wa-theme-photo img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;

  transition: transform .3s;
}

.sf39-work .wa-themes--editorial .wa-theme-copy {
  display: flex;

  flex-direction: column;
  flex: 1;

  min-width: 0;

  padding: 20px 17px 16px;
}

.sf39-work .wa-themes--editorial .wa-theme h3 {
  display: block;

  min-height: 0;

  margin: 0 0 10px;

  font-size: clamp(19px,1.6vw,23px);
  font-weight: 600;
  line-height: 1.5;
  text-align: left;
  letter-spacing: 0;
}

.sf39-work .wa-themes--editorial .wa-theme:last-child h3 {
  font-size: clamp(17px,1.28vw,19px);
  line-height: 1.65;
}

.sf39-work .wa-themes--editorial .wa-theme-description {
  max-width: none;

  margin: 0 0 20px;

  font-size: 14px;
  line-height: 1.8;

  color: #4a5a50;
}

.sf39-work .wa-themes--editorial .wa-theme-action {
  justify-content: flex-end;
  gap: 12px;

  min-height: 32px;

  margin-top: auto;
  padding-top: 12px;

  border-top: 1px solid #dfd9cd;

  font-size: 13px;

  color: #885c3e;
}

.sf39-work .wa-themes--editorial .wa-theme-action i {
  display: flex;

  align-items: center;
  justify-content: center;

  width: 27px;
  height: 27px;

  border: 1px solid #bd9980;
  border-radius: 50%;

  font: normal 18px/1 Arial,sans-serif;
}

@media (hover:hover) {
  .sf39-work .wa-themes--editorial .wa-theme:hover {
    background: #fffdf9;
    border-color: #b99a62;
    box-shadow: 0 8px 20px rgba(40,52,39,.09);

    transform: translateY(-3px);
  }

  .sf39-work .wa-themes--editorial .wa-theme:hover img {
    transform: scale(1.025);
  }
}

@media (min-width:768px) and (max-width:1050px) {
  .sf39-work .wa-themes--editorial .wa-theme-grid {
    gap: 12px;
  }

  .sf39-work .wa-themes--editorial .wa-theme-copy {
    padding: 16px 12px 13px;
  }

  .sf39-work .wa-themes--editorial .wa-theme-heading>p {
    font-size: 13px;
  }

  .sf39-work .wa-themes--editorial .wa-theme-description {
    font-size: 13px;
  }
}

@media (max-width:767px) {
  .sf39-work .wa-themes--editorial {
    padding-block: 32px 36px;
  }

  .sf39-work .wa-themes--editorial .wa-theme-heading {
    display: block;

    margin-bottom: 22px;
  }

  .sf39-work .wa-themes--editorial .wa-theme-heading h2 {
    font-size: 25px;
  }

  .sf39-work .wa-themes--editorial .wa-theme-heading>p {
    margin-top: 12px;

    font-size: 14px;
  }

  .sf39-work .wa-themes--editorial .wa-theme-heading>p br {
    display: none;
  }

  .sf39-work .wa-themes--editorial .wa-theme-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 16px 12px;
  }

  .sf39-work .wa-themes--editorial .wa-theme-copy {
    padding: 16px 13px 14px;
  }

  .sf39-work .wa-themes--editorial .wa-theme h3 {
    font-size: 21px;
  }

  .sf39-work .wa-themes--editorial .wa-theme-description {
    font-size: 14px;

    margin-bottom: 16px;
  }

  .sf39-work .wa-themes--editorial .wa-theme:last-child {
    grid-column: 1/-1;

    display: grid;

    grid-template-columns: 42% minmax(0,1fr);
    justify-self: stretch;
  }

  .sf39-work .wa-themes--editorial .wa-theme:last-child .wa-theme-photo {
    aspect-ratio: auto;
    height: 100%;
    min-height: 190px;

    border-bottom: 0;
    border-right: 3px solid #b99a62;
  }

  .sf39-work .wa-themes--editorial .wa-theme:last-child h3 {
    font-size: 20px;
  }

  .sf39-work .wa-themes--editorial .wa-theme-action {
    font-size: 12px;

    gap: 8px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .sf39-work .wa-themes--editorial .wa-theme,
  .sf39-work .wa-themes--editorial .wa-theme img {
    transition: none;
  }

  .sf39-work .wa-themes--editorial .wa-theme:hover,
  .sf39-work .wa-themes--editorial .wa-theme:hover img {
    transform: none;
  }
}

/* =========================================================
   WORK PHOTO TONE / 2026-10-05
   Display-only grading. Keep the original photo files and all layouts.
   The same treatment applies on desktop and mobile.
========================================================= */

/* =========================================================
   Cooler entrance photos: slightly warm whites and soften strong blues.
========================================================= */

.sf39-work .wa-themes--editorial .wa-theme-photo img {
  filter: none;
}

/* =========================================================
   Existing warm photographs: reduce yellow/brown intensity without a tint.
========================================================= */

.sf39-work .wa-feature-main > img,
.sf39-work .wa-feature-side .wa-feature-side-photo,
.sf39-work .wmt-tab > img,
.sf39-work .wmt-story .wa-reading-photo,
.sf39-work .wa-practice figure > img,
.sf39-work .wa-latest-card > img {
  filter: none;
}

/* =========================================================
   Large backgrounds: a gentler adjustment preserves skin and sky colors.
========================================================= */

.sf39-work .wa-hero-photo > img,
.sf39-work .wa-journey-photo > img {
  filter: none;
}

/* =========================================================
   FIRST SMALL STEP — editorial feature / footer transition
========================================================= */

.sf39-work .wa-practice--editorial {
  display: grid;

  grid-template-columns: minmax(0,.9fr) minmax(0,1.35fr);
  gap: 0;
  align-items: stretch;

  padding: 0;

  background: #eee4d4;
  border-top: 3px solid #b9985d;

  overflow: hidden;

  margin-bottom: 70px;
}

.sf39-work .wa-practice--editorial>figure {
  position: relative;
  isolation: isolate;

  width: 100%;
  max-width: none;

  margin: 0;

  min-height: 490px;
  aspect-ratio: auto;

  overflow: hidden;

  box-shadow: none;
}

.sf39-work .wa-practice--editorial>figure img {
  position: absolute;
  inset: 0;
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: 48% center;
}

.sf39-work .wa-practice--editorial>figure::after {
  content: "";
  position: absolute;
  inset: 45% 0 0;

  background: linear-gradient(180deg,transparent,rgba(19,52,44,.84));

  pointer-events: none;
}

.sf39-work .wa-practice--editorial figcaption {
  position: absolute;
  z-index: 1;
  left: 30px;
  right: 24px;
  bottom: 30px;

  color: #fffdf5;
}

.sf39-work .wa-practice--editorial figcaption>span {
  display: block;

  font: 600 10px/1.5 Arial,sans-serif;
  letter-spacing: .18em;

  color: #f0d6a5;

  margin-bottom: 12px;
}

.sf39-work .wa-practice--editorial figcaption>strong {
  display: block;

  font-family: 'Yu Mincho','Hiragino Mincho ProN',serif;
  font-size: clamp(22px,2vw,29px);
  font-weight: 500;
  line-height: 1.6;
}

.sf39-work .wa-practice--editorial>.wa-practice-copy {
  display: flex;

  flex-direction: column;

  min-width: 0;

  padding: 38px clamp(26px,3vw,44px) 32px;
}

.sf39-work .wa-practice--editorial .wa-kicker {
  font-size: 11px;
  letter-spacing: .19em;

  color: #9c633f;

  margin-bottom: 15px;
}

.sf39-work .wa-practice--editorial h2 {
  font-size: clamp(28px,2.65vw,38px);
  line-height: 1.55;
  font-weight: 600;

  margin: 0 0 22px;

  color: #173f38;
}

.sf39-work .wa-practice--editorial p:not(.wa-kicker) {
  font-size: 16px;
  line-height: 1.9;

  color: #42574c;

  margin: 0;
}

.sf39-work .wa-practice--editorial ul {
  display: grid;

  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 0;

  margin: 26px 0 24px;
  padding: 20px 0;

  border-block: 1px solid #c7b99f;
}

.sf39-work .wa-practice--editorial li {
  display: block;

  padding: 0 16px;

  background: transparent;
  border: 0;
  border-right: 1px solid #c7b99f;

  min-width: 0;
}

.sf39-work .wa-practice--editorial li:first-child {
  padding-left: 0;
}

.sf39-work .wa-practice--editorial li:last-child {
  padding-right: 0;

  border-right: 0;
}

.sf39-work .wa-practice--editorial li svg {
  width: 29px;
  height: 31px;

  color: #8f703b;

  margin: 0 0 12px;
}

.sf39-work .wa-practice--editorial li strong {
  display: block;

  font-size: 17px;
  line-height: 1.55;
  font-weight: 600;

  color: #173f38;

  margin: 0 0 7px;
}

.sf39-work .wa-practice--editorial li span {
  display: block;

  font-size: 13px;
  line-height: 1.8;

  color: #4a5e52;
}

.sf39-work .wa-practice--editorial .wa-practice-link {
  align-self: flex-end;

  display: flex;

  justify-content: center;
  align-items: center;
  gap: 16px;

  padding: 13px 19px;
  margin-top: auto;

  background: #24544b;
  color: #fffdf5;
  border: 1px solid #24544b;
  border-radius: 2px;

  font-size: 14px;
  line-height: 1.65;
  text-align: left;
  white-space: normal;

  min-height: 48px;
  max-width: 100%;
}

.sf39-work .wa-practice--editorial .wa-practice-link span {
  flex-shrink: 0;

  font-size: 21px;
}

@media (hover:hover) {
  .sf39-work .wa-practice--editorial .wa-practice-link:hover {
    background: #173f38;
    color: #fffdf5;
    border-color: #173f38;
  }
}

/* =========================================================
   A gradual fade into the real footer color read by the existing script.
========================================================= */

.sf39-work .wa-closing--journey::after {
  height: 200px;

  background: linear-gradient(180deg,transparent 0%,var(--wa-footer-color,#183e34) 100%);
  background: linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--wa-footer-color,#183e34) 8%,transparent) 25%,color-mix(in srgb,var(--wa-footer-color,#183e34) 25%,transparent) 45%,color-mix(in srgb,var(--wa-footer-color,#183e34) 56%,transparent) 65%,color-mix(in srgb,var(--wa-footer-color,#183e34) 86%,transparent) 84%,var(--wa-footer-color,#183e34) 100%);
}

.sf39-work .wa-closing--journey .wa-closing-inner {
  padding-bottom: 165px;
}

.sf39-work .wa-closing--journey .wa-journey-photo img {
  object-position: 72% 30%;
}

body.category-work-career .sf-footer {
  margin-top: 0;
  padding-top: 44px;
}

@media (min-width:768px) and (max-width:1050px) {
  .sf39-work .wa-practice--editorial {
    grid-template-columns: minmax(0,.8fr) minmax(0,1.4fr);
  }

  .sf39-work .wa-practice--editorial>.wa-practice-copy {
    padding: 30px 26px;
  }

  .sf39-work .wa-practice--editorial p:not(.wa-kicker) br {
    display: none;
  }

  .sf39-work .wa-practice--editorial li {
    padding-inline: 10px;
  }

  .sf39-work .wa-practice--editorial li strong {
    font-size: 16px;
  }

  .sf39-work .wa-practice--editorial .wa-practice-link {
    font-size: 13px;

    padding-inline: 15px;
  }
}

@media (max-width:767px) {
  .sf39-work .wa-practice--editorial {
    grid-template-columns: 1fr;
    gap: 0;

    padding: 0;
    margin-bottom: 40px;
  }

  .sf39-work .wa-practice--editorial>figure {
    width: 100%;
    max-width: none;
    min-height: 0;
    aspect-ratio: 4/3;
  }

  .sf39-work .wa-practice--editorial figcaption {
    left: 22px;
    bottom: 22px;
  }

  .sf39-work .wa-practice--editorial figcaption>strong {
    font-size: 25px;
  }

  .sf39-work .wa-practice--editorial>.wa-practice-copy {
    padding: 27px 22px 28px;
  }

  .sf39-work .wa-practice--editorial h2 {
    font-size: 28px;
  }

  .sf39-work .wa-practice--editorial ul {
    grid-template-columns: 1fr;

    padding: 0;

    gap: 0;

    margin-block: 24px;
  }

  .sf39-work .wa-practice--editorial li {
    display: grid;

    grid-template-columns: 32px minmax(0,1fr);
    column-gap: 14px;

    border-right: 0;
    border-bottom: 1px solid #c7b99f;

    padding: 16px 0;
  }

  .sf39-work .wa-practice--editorial li:last-child {
    border-bottom: 0;
  }

  .sf39-work .wa-practice--editorial li svg {
    grid-row: 1/3;

    margin: 0;
  }

  .sf39-work .wa-practice--editorial li strong {
    font-size: 18px;

    margin: 0 0 4px;
  }

  .sf39-work .wa-practice--editorial li span {
    font-size: 14px;
  }

  .sf39-work .wa-practice--editorial .wa-practice-link {
    width: 100%;

    box-sizing: border-box;

    justify-content: space-between;
    align-self: stretch;

    font-size: 14px;
  }

  .sf39-work .wa-closing--journey .wa-closing-inner {
    padding-bottom: 34px;
  }

  .sf39-work .wa-closing--journey::after {
    height: 140px;
  }

  .sf39-work .wa-closing--journey .wa-journey-photo img {
    object-position: 82% center;
  }

  body.category-work-career .sf-footer {
    padding-top: 32px;
  }
}

/* =========================================================
   CAREER PERSPECTIVE: give the title its full editorial column width.
========================================================= */

.sf39-work .wa-feature-side>a.wa-feature-career {
  grid-template-columns: clamp(110px,10vw,145px) minmax(0,1fr);
  grid-template-rows: auto auto minmax(0,1fr) auto;
  column-gap: 22px;
}

.sf39-work .wa-feature-side>a.wa-feature-career .wa-kicker {
  grid-column: 1/-1;
  grid-row: 1;

  margin-bottom: 10px;
}

.sf39-work .wa-feature-side>a.wa-feature-career h3 {
  grid-column: 1/-1;
  grid-row: 2;

  font-size: clamp(23px,1.85vw,26px);
  line-height: 1.6;

  margin: 0 0 18px;

  letter-spacing: 0;
}

.sf39-work .wa-feature-side>a.wa-feature-career h3 span {
  display: block;

  white-space: nowrap;
}

.sf39-work .wa-feature-side>a.wa-feature-career .wa-feature-side-photo {
  grid-column: 1;
  grid-row: 3;
  align-self: start;

  width: 100%;
  height: auto;
  aspect-ratio: 1;
}

.sf39-work .wa-feature-side>a.wa-feature-career p:not(.wa-kicker) {
  grid-column: 2;
  grid-row: 3;

  min-width: 0;

  margin-bottom: 12px;
}

.sf39-work .wa-feature-side>a.wa-feature-career .wa-card-action {
  grid-column: 1/-1;
  grid-row: 4;

  margin-top: 14px;
}

@media (max-width:767px) {
  .sf39-work .wa-feature-side>a.wa-feature-career {
    grid-template-columns: 105px minmax(0,1fr);
    column-gap: 18px;
  }

  .sf39-work .wa-feature-side>a.wa-feature-career h3 {
    font-size: 23px;

    margin-bottom: 16px;
  }
}

@media (max-width:380px) {
  .sf39-work .wa-feature-side>a.wa-feature-career {
    grid-template-columns: 85px minmax(0,1fr);
    column-gap: 14px;
  }

  .sf39-work .wa-feature-side>a.wa-feature-career h3 {
    font-size: 21px;
  }
}

/* =========================================================
   CONFIDENT WORK PHOTOS — natural colour, clear copy and lively work scenes.
========================================================= */

.sf39-work .wa-theme-description {
  color: #40574e;

  font-size: 15px;
  line-height: 1.8;
}

.sf39-work .wa-hero-photo img {
  object-position: 50% center;
}

.sf39-work .wa-closing--journey .wa-journey-photo img {
  object-position: 70% center;
}

@media (max-width:767px) {
  .sf39-work .wa-hero-photo img {
    object-position: 52% center;
  }

  .sf39-work .wa-theme-description {
    font-size: 14px;
  }

  .sf39-work .wa-closing--journey .wa-journey-photo img {
    object-position: 82% center;
  }
}

@media (min-width:768px) {
  .sf39-work .wa-hero-photo {
    left: 18%;
  }
}

/* =========================================================
   Single/empty automatic theme panels retain a balanced layout.
========================================================= */

.sf39-work .wmt-story-grid:has(>.wmt-story:only-child) {
  grid-template-columns: minmax(0,1fr);
}

.sf39-work .wmt-story-grid>.wmt-story:only-child {
  grid-row: auto;

  display: grid;

  grid-template-columns: minmax(0,.85fr) minmax(0,1fr);
  gap: 0;
}

.sf39-work .wmt-story-grid>.wmt-story:only-child .wa-reading-photo {
  height: 100%;
  aspect-ratio: 1.5 !important;
}

.sf39-work .wmt-empty {
  padding: 24px;

  background: #fff;
  border: 1px solid #e8e0d4;

  grid-column: 1/-1;

  color: #58655d;
}

@media (max-width:767px) {
  .sf39-work .wmt-story-grid>.wmt-story:only-child {
    display: flex;
  }

  .sf39-work .wmt-story-grid>.wmt-story:only-child .wa-reading-photo {
    height: auto;
    aspect-ratio: 1.65 !important;
  }
}

/* =========================================================
   6ページ共通の余白基準：PC / スマホ
   セクション間は次のセクション側だけに設定し、二重の余白を防ぐ。
========================================================= */

body .sf39-work {
  --sf39-section-space: 64px;
  --sf39-heading-space: 28px;
  --sf39-card-space: 24px;
  --sf39-feature-space: 56px;
  --sf39-closing-space: 64px;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  display: flow-root;
}

/* 通常のセクション：外側の余白と内側の上下余白を整理 */

body .sf39-work > :is(.wa-themes, .wa-feature, .wa-question, .wa-library, .wa-practice, .wa-latest, .wa-closing) {
  margin-block: 0 !important;
  padding-block: 0 !important;
}

body .sf39-work > * + :is(.wa-themes, .wa-feature, .wa-question, .wa-library, .wa-practice, .wa-latest, .wa-closing) {
  margin-top: var(--sf39-section-space) !important;
}

/* 見出しからカード・本文まで */

body .sf39-work .wa-theme-heading,
body .sf39-work .wa-section-head,
body .sf39-work .wmt-library-head,
body .sf39-work .wmt-panel-head,
body .sf39-work .wa-question-head {
  margin-bottom: var(--sf39-heading-space) !important;
}

/* カード同士：写真やカードの寸法は既存の指定を使用 */

body .sf39-work .wa-theme-grid,
body .sf39-work .wa-feature,
body .sf39-work .wa-feature-side,
body .sf39-work .wmt-story-grid,
body .sf39-work .wa-latest-grid {
  gap: var(--sf39-card-space) !important;
}

/* 背景色が変わる特集：内側の上下余白 */

body .sf39-work .wa-question,
body .sf39-work .wa-practice {
  padding-block: var(--sf39-feature-space) !important;
}

/* 最後の締め：内側の上下余白 */

body .sf39-work .wa-closing-inner {
  padding-block: var(--sf39-closing-space) !important;
}

body .sf39-work .wa-closing--journey {
  min-height: 0 !important;
}

/* フッターとの接続：締めの外側に白い余白を残さない */

body:has(.sf39-work) :is(.sf-footer, .sf-site-footer) {
  margin-top: 0 !important;
}

body:has(.sf39-work) :is(.sf-site, #content, .site-content) {
  padding-bottom: 0 !important;
}

@media (max-width: 767px) {
  body .sf39-work {
    --sf39-section-space: 40px;
    --sf39-heading-space: 22px;
    --sf39-card-space: 18px;
    --sf39-feature-space: 36px;
    --sf39-closing-space: 40px;
  }


  /* 背景写真の表示領域：上下の文章余白とは別に確保 */
  body .sf39-work > .wa-closing--journey {
    padding-bottom: 300px !important;
  }
}

/* 写真の下端のフェード：本文の下余白に収める */

@media (min-width: 768px) {
  body .sf39-work .wa-closing--journey::after {
    height: var(--sf39-closing-space) !important;
  }
}

/* =========================================================
   仕事：大きな上下余白を整え、誌面のゆとりを保つ
   実践ガイドの外側と本文側の二重余白を軽減する。
========================================================= */

body .sf39-work > .wa-practice.wa-practice--editorial {
  padding-block: 24px !important;
}

/* テーマ一覧と新着記事の前後：通常の64pxから少しだけ縮める */

body .sf39-work > :is(.wa-library, .wa-latest) {
  margin-top: 56px !important;
}

body .sf39-work > .wa-library + .wa-practice {
  margin-top: 56px !important;
}

/* 最後の締め：写真とフッターの接続を保ち、本文の上下を短く */

body .sf39-work .wa-closing-inner {
  padding-block: 52px !important;
}

@media (max-width: 767px) {
  /* 縦並びでは写真をカード上端に揃え、本文の余白を活かす */
  body .sf39-work > .wa-practice.wa-practice--editorial {
    padding-block: 0 !important;
  }

  body .sf39-work > :is(.wa-library, .wa-latest),
  body .sf39-work > .wa-library + .wa-practice {
    margin-top: 34px !important;
  }

  body .sf39-work .wa-closing-inner {
    padding-block: 34px !important;
  }
}
