/* : preserve alignment, containment and article-navigation behavior while replacing the visual layer. */
.editorial-detail {
  overflow: visible;
  padding: 0;
}

.editorial-detail__hero {
  position: relative;
  min-height: 480px;
  background-color: var(--c-ink);
  background-image: var(--editorial-detail-image);
  background-position: center;
  background-size: cover;
  color: #fff;
}

.editorial-detail__hero::before {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.82), rgba(0, 0, 0, 0.18));
  content: "";
}

.editorial-detail__hero-inner {
  position: relative;
  display: flex;
  min-height: 480px;
  align-items: center;
}

.editorial-detail__hero-copy {
  width: min(760px, 76%);
}

.editorial-detail__hero h1 {
  margin: 16px 0 22px;
  font-size: clamp(44px, 5vw, 72px);
  line-height: 1;
}

.editorial-detail__hero-copy > p {
  max-width: 767px;
  color: rgba(255, 255, 255, 0.74);
}

.editorial-detail__meta {
  display: flex;
  gap: 24px;
  margin-top: 28px;
  font-size: 12px;
}

.editorial-detail__breadcrumb {
  padding: 20px 0;
  border-bottom: 1px solid var(--c-line);
}

.editorial-detail__breadcrumb .container {
  display: flex;
  gap: 10px;
  align-items: center;
  overflow: hidden;
  white-space: nowrap;
}

.editorial-detail__article {
  padding: 80px 0 110px;
}

.editorial-detail__layout {
  display: grid;
  grid-template-columns: 240px minmax(0, 840px);
  gap: clamp(56px, 7vw, 96px);
  justify-content: start;
}

.editorial-detail__aside {
  position: sticky;
  top: 110px;
  align-self: start;
  padding-right: 28px;
  border-right: 1px solid var(--c-line);
}

.editorial-detail__back {
  display: inline-block;
  margin-bottom: 36px;
}

.editorial-detail__toc {
  padding-top: 20px;
  border-top: 1px solid var(--c-line);
}

.editorial-detail__toc strong {
  display: block;
  margin-bottom: 12px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.editorial-detail__toc a {
  display: block;
  padding: 7px 0 7px 14px;
  color: var(--c-muted);
  font-size: 12px;
  line-height: 1.45;
}

.editorial-detail__toc a[data-depth="h3"] {
  padding-left: 28px;
  font-size: 11px;
}

.editorial-detail__toc a.is-active {
  color: var(--c-accent);
}

.editorial-detail__body {
  max-width: 840px;
  font-size: 17px;
  line-height: 1.85;
}

.editorial-detail__body h2,
.editorial-detail__body h3 {
  scroll-margin-top: 120px;
}

.editorial-detail__body h2 {
  margin: 58px 0 18px;
  font-size: clamp(34px, 3vw, 46px);
  line-height: 1.08;
}

.editorial-detail__body > h2:first-child,
.editorial-detail__body > h3:first-child {
  margin-top: 0;
}

.editorial-detail__body h3 {
  margin: 42px 0 14px;
  font-size: 28px;
}

.editorial-detail__terms {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 56px;
  padding-top: 24px;
  border-top: 1px solid var(--c-line);
}

.editorial-detail__related {
  padding: 80px 0 100px;
  background: var(--c-surface);
}

.editorial-detail__related-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.editorial-detail__cta {
  padding: 72px 0;
  background: var(--c-ink);
  color: #fff;
}

.editorial-detail__cta .container {
  display: flex;
  gap: 40px;
  align-items: center;
  justify-content: space-between;
}

@media (max-width: 760px) {
  .editorial-detail__hero-copy {
    width: 100%;
  }

  .editorial-detail__layout {
    grid-template-columns: 1fr;
    gap: 42px;
  }

  .editorial-detail__aside {
    position: static;
    padding-right: 0;
    border-right: 0;
  }

  .editorial-detail__related-grid {
    grid-template-columns: 1fr;
  }

  .editorial-detail__cta .container {
    display: block;
  }
}

/* Brand Center article: long-form reading column with a reference-style sidebar. */
.news-detail { overflow: visible; background: #fff; }
.news-detail > .breadcrumb-strip.breadcrumb-strip--brand { padding: 20px 0; border-top: 0; border-bottom: 1px solid #e4dfeb; background: #f9f9f9; }
.news-detail > .breadcrumb-strip.breadcrumb-strip--brand .deyee-container { gap: 9px; }
.news-detail__header { width: min(calc(100% - 48px), 1200px); padding-top: 80px; text-align: center; }
.news-detail__header .deyee-eyebrow { font-size: 16px; }
.news-detail__header h1 { max-width: 1120px; margin: 14px auto 22px; font-size: 50px; font-weight: 500; line-height: 1.02; letter-spacing: -.04em; }
.news-detail__meta { display: flex; justify-content: center; gap: 24px; color: var(--c-muted); font-size: 16px; text-transform: uppercase; letter-spacing: .08em; }
.news-detail__meta > * + *::before { margin-right: 24px; color: #aaa4ad; content: "•"; }
.news-detail__lead-media { aspect-ratio: 16 / 8; margin: 54px 0 0; overflow: hidden; border-radius: 22px; background: var(--c-surface); }
.news-detail__lead-media img { width: 100%; height: 100%; object-fit: cover; }
.news-detail__layout { display: grid; grid-template-columns: minmax(0, 900px) minmax(260px, 340px); gap: clamp(64px, 8vw, 128px); align-items: start; padding-top: 86px; padding-bottom: 0; }
.news-detail > .aib-product-related { padding-top: 120px; }
.news-detail__body { min-width: 0; font-size: 17px; line-height: 1.9; }
.news-detail__body > p:first-child { margin-top: 0; color: #4d4851; font-size: 20px; line-height: 1.7; }
.news-detail__body h2 { margin: 58px 0 18px; font-size: clamp(30px, 3vw, 42px); font-weight: 600; line-height: 1.12; letter-spacing: -.025em; }
.news-detail__body h3 { margin: 38px 0 14px; font-size: 25px; line-height: 1.25; }
.news-detail__body h2, .news-detail__body h3 { scroll-margin-top: 120px; }
.news-detail__body p, .news-detail__body li { color: #5f5964; }
.news-detail__body blockquote { margin: 40px 0; padding: 4px 0 4px 26px; border-left: 3px solid var(--c-accent); color: #38333d; font-size: 19px; line-height: 1.75; }
.news-detail__body figure { margin: 48px 0; }
.news-detail__body img { width: 100%; height: auto; border-radius: 18px; }
.news-detail__body .article-switcher { width: 100%; margin: 36px 0 0; }
.news-detail__aside { position: static; display: grid; gap: 28px; align-self: start; padding: 4px; }
.news-detail__search { display: flex; align-items: center; margin: 0; padding: 3px 20px; border-bottom: 2px solid #343039; border-radius: 14px; background: #fff; box-shadow: 0 10px 32px rgba(42, 30, 59, .08); }
.news-detail__search input { width: 100%; min-width: 0; padding: 14px 4px; border: 0; outline: 0; background: transparent; color: #24202a; font-size: 16px; }
.news-detail__search button { width: 48px; border: 0; background: transparent; color: #343039; cursor: pointer; font-size: 22px; }
.news-detail__aside-section { padding: 28px; border: 0; border-radius: 14px; background: #fff; box-shadow: 0 10px 32px rgba(42, 30, 59, .08); }
.news-detail__aside-section h2 { margin: 0 0 20px; font-size: 28px; font-weight: 600; }
.news-detail__aside .editorial-detail__toc { border-top: 0; }
.news-detail__aside [data-article-toc] a, .news-detail__categories a { display: flex; justify-content: space-between; gap: 16px; padding: 9px 0; color: #4e4855; font-size: 16px; line-height: 1.5; }
.news-detail__categories small { color: var(--c-muted); font-size: 14px; }
.news-detail__aside [data-article-toc] a[data-depth="h3"] { padding-left: 16px; }
.news-detail__aside [data-article-toc] a.is-active { color: var(--c-accent); }
.news-detail__related a { display: grid; grid-template-columns: 84px 1fr; gap: 16px; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--c-line); color: #2d2832; }
.news-detail__related img { width: 84px; height: 54px; border-radius: 0; object-fit: cover; }
.news-detail__related strong, .news-detail__related small { display: block; }
.news-detail__related strong { font-size: 16px; font-weight: 500; line-height: 1.35; }
.news-detail__related small { display: none; }
.news-detail__aside-section > p { color: var(--c-muted); font-size: 14px; line-height: 1.6; }
.news-detail__faq details { margin: 0; padding: 22px 20px; border: 0; border-bottom: 1px solid #cbc7ce; border-radius: 0; }
.news-detail__faq summary { position: relative; padding-right: 32px; color: #17131b; font-size: 18px; line-height: 1.45; cursor: pointer; list-style: none; }
.news-detail__faq summary::-webkit-details-marker { display: none; }
.news-detail__faq summary::after { position: absolute; top: 50%; right: 0; transform: translateY(-50%); color: #3b373e; font-size: 24px; font-weight: 600; line-height: 1; content: "+"; }
.news-detail__faq details[open] summary::after { content: "−"; }
.news-detail__faq details p { margin: 20px 0 0; padding: 0; background: transparent; color: #4f4954; font-size: 16px; line-height: 1.55; }

@media (min-width:1025px) and (max-width: 1400px) {
  .news-detail__layout {
    padding-right: 92px;
  }
}

@media (max-width:1024px) {
  .news-detail__layout { grid-template-columns: 1fr; gap: 64px; }
  .news-detail__aside { position: static; grid-row: 1; max-height: none; overflow: visible; }
}

@media (max-width: 767px) {
  .news-detail__header { padding-top: 56px; }
  .news-detail__header h1 { font-size: 40px; }
  .news-detail__lead-media { aspect-ratio: 4 / 3; margin-top: 36px; border-radius: 14px; }
  .news-detail__layout { padding-top: 60px; padding-bottom: 0; }
}

/* Shared previous/next navigation for editorial detail pages. */
.article-switcher { display: grid; grid-template-columns: 1fr 1fr; margin-top: 72px; margin-bottom: 72px; padding-top: 28px; border-top: 1px solid var(--c-line); }
.article-switcher a, .article-switcher > .is-disabled { display: flex; gap: 22px; align-items: center; min-width: 0; padding: 10px 0; color: #17131b; }
.article-switcher__next { justify-content: flex-end; border-left: 1px solid var(--c-line); text-align: right; }
.article-switcher a > span, .article-switcher > .is-disabled > span { color: #777184; font-size: 42px; font-weight: 300; line-height: 1; }
.article-switcher a div { min-width: 0; }
.article-switcher small, .article-switcher strong { display: block; }
.article-switcher small { margin-bottom: 10px; color: #716b76; font-size: 16px; font-weight: 600; text-transform: uppercase; }
.article-switcher strong { overflow: hidden; font-size: 14px; font-weight: 500; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.article-switcher .is-disabled { opacity: .42; }

@media (max-width: 767px) {
  .article-switcher { grid-template-columns: 1fr; margin-top: 52px; margin-bottom: 52px; }
  .article-switcher__next { border-top: 1px solid var(--c-line); border-left: 0; }
}

/* Case study detail: sequential editorial content with a compact reference sidebar. */
.case-detail-v2 { overflow: visible; background: #fff; }
.case-detail-v2__breadcrumb { padding: 20px 0; border-bottom: 1px solid #e4dfeb; background: #f9f9f9; }
.case-detail-v2__breadcrumb .deyee-container { display: flex; gap: 9px; overflow: hidden; white-space: nowrap; }
.case-detail-v2__grid { display: grid; grid-template-columns: minmax(0, 900px) minmax(280px, 340px); gap: clamp(60px, 7vw, 110px); align-items: start; padding-top: 72px; padding-bottom: 120px; }
.case-detail-v2__main { min-width: 0; }
.case-detail-v2__header { max-width: 820px; margin-bottom: 42px; }
.case-detail-v2 .eyebrow { color: var(--c-accent); font-size: 16px; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; }
.case-detail-v2__header h1 { margin: 16px 0; font-size: 50px; font-weight: 500; line-height: 1.02; letter-spacing: -.04em; }
.case-detail-v2__header > p { max-width: 700px; color: #777184; font-size: 16px; line-height: 1.45; }
.case-detail-v2__meta { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 26px; color: var(--c-muted); font-size: 16px; text-transform: uppercase; letter-spacing: .08em; }
.case-detail-v2__meta > * + *::before { margin-right: 24px; color: #aaa4ad; content: "•"; }
.case-detail-v2__hero { aspect-ratio: 16 / 9; margin: 0 0 58px; overflow: hidden; border-radius: 14px; background: var(--c-surface); }
.case-detail-v2__hero img { width: 100%; height: 100%; object-fit: cover; }
.case-detail-v2__body { color: #656071; font-size: 16px; line-height: 1.82; }
.case-detail-v2__body > h2 { position: relative; margin: 64px 0 20px; color: #17131b; font-size: clamp(30px, 3vw, 40px); font-weight: 500; line-height: 1.15; letter-spacing: -.025em; }
.case-detail-v2__body > h2:first-of-type { margin-top: 0; }
.case-detail-v2__body h3 { margin: 38px 0 14px; color: #17131b; font-size: 24px; }
.case-detail-v2__body p { margin: 0 0 18px; }
.case-detail-v2__body strong { color: #332d3c; font-weight: 600; }
.case-detail-v2__body figure, .case-detail-v2__body img { display: none; }
.case-detail-v2__main .article-switcher { width: 100%; margin: 36px 0 0; }
.case-detail-v2__aside { position: static; align-self: start; }
.case-detail-v2__aside .eyebrow { font-size: 28px; letter-spacing: .12em; }
.case-detail-v2__facts { padding: 28px; border: 1px solid #eeeaf3; border-radius: 14px; background: linear-gradient(145deg, #faf9fc, #fff); box-shadow: 0 10px 32px rgba(130, 109, 175, .16); }
.case-detail-v2__facts dl { margin: 18px 0 0; }
.case-detail-v2__facts dl div { display: grid; grid-template-columns: minmax(90px, .9fr) 1.1fr; gap: 14px; padding: 13px 0; border-top: 1px solid #ece8f0; }
.case-detail-v2__facts dt { color: #888293; font-size: 16px; line-height: 1.45; }
.case-detail-v2__facts dd { margin: 0; color: #302a38; font-size: 16px; font-weight: 500; line-height: 1.45; }
.case-detail-v2__toc { margin-top: 28px; padding: 28px; border-radius: 14px; box-shadow: 0 10px 32px rgba(42, 30, 59, .08); }
.case-detail-v2__related { margin-top: 28px; padding: 28px; border-top: 1px solid var(--c-line); border-radius: 14px; box-shadow: 0 10px 32px rgba(42, 30, 59, .08); }
.case-detail-v2__related > a { display: grid; grid-template-columns: 104px 1fr; gap: 18px; align-items: center; padding: 18px 0; border-bottom: 1px solid var(--c-line); color: #27222d; }
.case-detail-v2__related img { width: 104px; height: 72px; border-radius: 0; object-fit: cover; }
.case-detail-v2__related strong, .case-detail-v2__related small { display: block; line-height: 1.35; }
.case-detail-v2__related strong { font-size: 16px; font-weight: 500; }
.case-detail-v2__related small { margin-top: 5px; color: var(--c-muted); font-size: 14px; }
.case-detail-v2__aside .editorial-detail__toc strong { font-size: 28px; }
.case-detail-v2__aside .editorial-detail__toc a { padding-top: 9px; padding-bottom: 9px; font-size: 16px; }

/* ULTIMATE case study: six document-led chapters. */
.case-study { --case-purple:var(--deyee-purple,#826daf); overflow:hidden; background:#fff; color:#17131d }
.case-study__hero { position:relative; padding:120px 0; overflow:hidden; background:linear-gradient(rgba(255,255,255,.7),rgba(255,255,255,.7)),#faf9fe url('../images/case/soft-purple-background.png') center/cover no-repeat }
.case-study__hero-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:72px; align-items:center }
.case-study__hero-copy { position:relative }
.case-study__hero-copy::before { display:none }
.case-study__hero-copy>p { margin:0 0 28px; color:#121212; font-size:16px; font-weight:700; letter-spacing:0; text-transform:uppercase }
.case-study__hero-copy h1 { max-width:650px; margin:0; color:var(--case-purple); font-size:50px; font-weight:700; line-height:1.28; letter-spacing:-.02em }
.case-study__hero-copy>span { display:block; max-width:620px; margin-top:24px; color:#2f2935; font-size:17px; line-height:1.65 }
.case-study__hero-meta { display:flex; gap:38px; margin-top:38px }
.case-study__hero-meta span { position:relative; min-height:58px; padding:5px 0 0 76px; color:#6f6681; font-size:12px; letter-spacing:.14em; text-transform:uppercase }
.case-study__hero-meta span+span { padding-left:104px; border-left:1px solid #d9d1e4 }
.case-study__hero-meta i { position:absolute; top:0; left:0; display:grid; width:58px; height:58px; place-items:center; border-radius:50%; background:#f0ebfb; color:#7956cf }
.case-study__hero-meta span+span i { left:28px }
.case-study__hero-meta svg { width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round }
.case-study__hero-meta strong { display:block; margin-top:7px; color:#30284a; font-size:16px; font-weight:600; letter-spacing:0; text-transform:none }
.case-study__hero-media { position:relative; aspect-ratio:17/10; margin:0; overflow:hidden; border-radius:20px; background:#f4f1f8 }
.case-study__hero-media img { width:100%; height:100%; border-radius:20px; object-fit:cover; object-position:center }
.case-study__hero-media figcaption { position:absolute; right:32px; bottom:32px; left:32px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:15px 18px; border:1px solid rgba(255,255,255,.7); border-radius:14px; background:rgba(255,255,255,.86); box-shadow:0 10px 28px rgba(34,26,44,.12); backdrop-filter:blur(10px) }
.case-study__hero-media figcaption span { color:#756d7d; font-size:11px; letter-spacing:.1em; text-transform:uppercase }
.case-study__hero-media figcaption strong { color:var(--case-purple); font-size:14px; font-weight:600 }
.case-study__section { position:relative; padding:120px 0 }
.case-study__section .deyee-dual-heading { max-width:1000px; margin-bottom:58px }
.case-study__section .deyee-dual-heading__eyebrow { color:#121212 }
.case-study__section .deyee-dual-heading__title { color:var(--case-purple) }
.case-study__summary { overflow:hidden; background:radial-gradient(ellipse at 66% 42%,rgba(151,122,220,.07),transparent 43%),linear-gradient(135deg,#fff 0%,#fcfbff 100%) }
.case-study__summary::after { position:absolute; right:-170px; bottom:-270px; width:560px; height:560px; border:72px solid rgba(139,101,232,.055); border-radius:50%; content:""; pointer-events:none }
.case-study__summary>.deyee-container { position:relative; z-index:1; padding:0; overflow:visible; border:0; border-radius:0; background:transparent; box-shadow:none }
.case-study__summary-grid { display:grid; grid-template-columns:1fr .82fr; gap:90px; align-items:start }
.case-study__summary-copy p,.case-study__profile-grid>div>p { margin:0 0 20px; color:#665f6d; font-size:17px; line-height:1.75 }
.case-study__summary dl { margin:0; border-top:1px solid #e7e2ec }
.case-study__summary dl div { display:grid; grid-template-columns:150px 1fr; gap:25px; padding:22px 0; border-bottom:1px solid #e7e2ec }
.case-study__summary dt { color:#817a87; font-size:13px; text-transform:uppercase }
.case-study__summary dd { margin:0; font-size:16px; font-weight:500 }
.case-study__summary dd strong { color:var(--case-purple); font-size:34px }
.case-study__profile { overflow:hidden; background:#fff }
.case-study__profile-grid { display:grid; grid-template-columns:1.15fr .85fr; column-gap:50px; align-items:center; padding:0; border-radius:0; background:transparent; box-shadow:none }
.case-study__profile-media { grid-column:1; height:650px; margin:0; overflow:hidden; border-radius:20px }
.case-study__profile-media img { width:100%; height:100%; object-fit:cover; object-position:center }
.case-study__profile-copy { grid-column:2 }
.case-study__profile .deyee-dual-heading { margin-bottom:30px }
.case-study__profile .deyee-dual-heading__eyebrow { color:#121212; font-size:16px; font-weight:700; letter-spacing:0 }
.case-study__profile .deyee-dual-heading__title { color:var(--case-purple); font-size:50px; font-weight:700; line-height:1.28; letter-spacing:-.02em }
.case-study__profile .case-study__rich { align-self:start }
.case-study__profile .case-study__rich p { position:relative; min-height:0; margin:0; padding:24px 0 24px 28px; border-bottom:1px solid #ded8e9; color:#69647a; font-size:16px; line-height:1.55 }
.case-study__profile .case-study__rich p::before { position:absolute; top:32px; left:2px; width:8px; height:8px; border-radius:50%; background:#8464d2; content:"" }
.case-study__profile .case-study__rich strong { color:#30284a; font-weight:600 }
.case-study__profile-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:36px }
.case-study__profile-stats span { position:relative; padding:24px 18px; overflow:hidden; border:1px solid #e4deec; border-radius:18px; background:linear-gradient(145deg,#fff,#f5f1fb); color:#6c6574; font-size:13px }
.case-study__profile-stats span::after { position:absolute; width:54px; height:54px; right:-20px; bottom:-24px; border-radius:50%; background:rgba(130,109,175,.12); content:"" }
.case-study__profile-stats strong { display:block; margin-bottom:8px; color:var(--case-purple); font-size:26px }
.case-study__challenges { background:#fff }
.case-study__challenge-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px }
.case-study__challenge-grid article { position:relative; min-height:350px; padding:32px; overflow:hidden; border:1px solid #e4deeb; border-radius:24px; background:linear-gradient(160deg,#fff 0%,#f8f5fc 100%); box-shadow:0 18px 44px rgba(52,39,69,.06) }
.case-study__challenge-grid article::before { position:absolute; top:0; right:0; left:0; height:5px; background:linear-gradient(90deg,var(--case-purple),#bca9dc); content:"" }
.case-study__challenge-grid article::after { position:absolute; width:150px; height:150px; right:-72px; bottom:-85px; border:28px solid rgba(130,109,175,.08); border-radius:50%; content:"" }
.case-study__challenge-grid article>span { color:var(--case-purple); font-size:12px }
.case-study__challenge-grid h3 { margin:92px 0 16px; font-size:26px; font-weight:500; line-height:1.2 }
.case-study__challenge-grid p,.case-study__challenge-note { color:#736c7b; font-size:15px; line-height:1.7 }
.case-study__challenge-note { max-width:100%; margin:40px 0 0; padding:25px 28px; border:1px solid #e1daea; border-left:5px solid var(--case-purple); border-radius:0 16px 16px 0; background:#faf8fc }
.case-study__solution { overflow:hidden; background:#fff; color:#17131d }
.case-study__solution>.deyee-container { display:grid; grid-template-columns:.62fr 1.38fr; gap:80px; align-items:start; padding:0; border-radius:0; background:transparent; box-shadow:none; backdrop-filter:none }
.case-study__solution-list { overflow:hidden; border:1px solid #e5dfeb; border-radius:20px; background:rgba(255,255,255,.8) }
.case-study__solution-list article { display:grid; grid-template-columns:100px .7fr 1fr; padding:30px; border-bottom:1px solid #e5dfeb }
.case-study__solution-list article:last-child { border-bottom:0 }
.case-study__solution-list article>span { display:grid; width:48px; height:48px; place-items:center; border-radius:14px; background:#eee8f8; color:var(--case-purple); font-size:13px; font-weight:600 }
.case-study__solution-list article>div { grid-column:2 / 4; display:grid; grid-template-columns:.75fr 1.25fr; gap:80px }
.case-study__solution-list h3 { margin:0; color:#211b29; font-size:23px; font-weight:500 }
.case-study__solution-list p { margin:0; color:#716979; font-size:15px; line-height:1.65 }
.case-study__results { overflow:hidden; background:#f9f9f9 }
.case-study__metric-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px }
.case-study__metric-grid article { position:relative; min-height:190px; padding:28px; overflow:hidden; border:1px solid #e3ddeb; border-radius:20px; background:#fff; box-shadow:0 16px 38px rgba(52,39,69,.06) }
.case-study__metric-grid article::after { position:absolute; width:100px; height:100px; right:-50px; bottom:-58px; border-radius:50%; background:rgba(130,109,175,.1); content:"" }
.case-study__metric-grid strong { display:block; color:var(--case-purple); font-size:40px; line-height:1 }
.case-study__metric-grid span { display:block; margin-top:54px; color:#665f6d; font-size:14px }
.case-study__roadmap { display:grid; grid-template-columns:180px 1fr; gap:50px; margin-top:28px; padding:34px; border:1px solid #ddd5e7; border-radius:20px; background:rgba(255,255,255,.72) }
.case-study__roadmap span { color:var(--case-purple); font-size:24px; font-weight:600 }
.case-study__roadmap p { margin:0; color:#625b69; line-height:1.7 }
.case-study__testimonial { padding:120px 0; background:radial-gradient(circle at 14% 40%,rgba(137,104,223,.045),transparent 24%),radial-gradient(circle at 86% 58%,rgba(137,104,223,.055),transparent 26%),#fff; text-align:left }
.case-study__testimonial>.deyee-container { position:relative; display:grid; grid-template-columns:280px 1fr; gap:36px 50px; padding:0; overflow:visible; border:0; border-radius:0; background:transparent; box-shadow:none }
.case-study__testimonial>.deyee-container::before { display:none }
.case-study__testimonial blockquote { margin:0; color:#4f4960; font-size:18px; font-weight:400; line-height:1.65; letter-spacing:0 }
.case-study__testimonial cite { display:block; margin-top:24px; color:#171442; font-size:16px; font-weight:600; font-style:normal; letter-spacing:0; text-transform:none }
.case-study__rich { color:#665f6d; font-size:17px; line-height:1.75 }
.case-study__rich p { margin:0 0 20px }
.case-study__rich p:last-child { margin-bottom:0 }
.case-study__summary>.deyee-container { display:grid; grid-template-columns:minmax(0,1fr) minmax(420px,.78fr); gap:0 120px }
.case-study__summary .deyee-dual-heading { grid-column:1; margin-bottom:24px }
.case-study__summary .deyee-dual-heading__eyebrow { display:block; color:#121212; font-size:16px; font-weight:700; letter-spacing:0 }
.case-study__summary .deyee-dual-heading__title { max-width:620px; font-size:50px; font-weight:700; line-height:1.28; letter-spacing:-.02em }
.case-study__summary .case-study__rich { grid-column:1; color:#2f2935; font-size:17px; line-height:1.65 }
.case-study__summary .case-study__rich p { margin-bottom:20px }
.case-study__summary .case-study__rich p:nth-child(-n+2) { font-size:18px; font-weight:500 }
.case-study__summary .case-study__rich p:nth-child(n+3) { font-size:16px; font-weight:400 }
.case-study__summary .case-study__rich p:nth-child(2) { margin-bottom:24px; padding-bottom:22px; border-bottom:1px solid #dfd9ea }
.case-study__facts { grid-column:2; grid-row:1/3; align-self:center; margin:0; border-top:0 }
.case-study__summary .case-study__facts div { position:relative; display:block; min-height:104px; padding:24px 0 22px 92px; border-bottom:1px solid #ded8e9 }
.case-study__summary .case-study__facts dt { color:#8b76bd; font-size:14px; letter-spacing:.02em; text-transform:uppercase }
.case-study__summary .case-study__facts dt::before { position:absolute; top:17px; left:0; display:block; width:64px; height:64px; border-radius:50%; background:#f0ebfb center/28px 28px no-repeat; content:"" }
.case-study__summary .case-study__facts div:nth-child(1) dt::before { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237959c1' stroke-width='1.7'%3E%3Cpath d='m12 3 7 4v10l-7 4-7-4V7Z M5 7l7 4 7-4 M12 11v10'/%3E%3C/svg%3E") }
.case-study__summary .case-study__facts div:nth-child(2) dt::before { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237959c1' stroke-width='1.7'%3E%3Cellipse cx='12' cy='6' rx='7' ry='3'/%3E%3Cpath d='M5 6v6c0 1.7 3.1 3 7 3s7-1.3 7-3V6 M5 12v6c0 1.7 3.1 3 7 3s7-1.3 7-3v-6'/%3E%3C/svg%3E") }
.case-study__summary .case-study__facts div:nth-child(3) dt::before { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237959c1' stroke-width='1.7'%3E%3Ccircle cx='9' cy='8' r='4'/%3E%3Cpath d='M2 21v-2c0-4 3-7 7-7s7 3 7 7v2M16 5a4 4 0 010 7M18 14c3 1 4 3 4 7'/%3E%3C/svg%3E") }
.case-study__summary .case-study__facts div:nth-child(4) dt::before { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237959c1' stroke-width='1.7'%3E%3Cpath d='M20 10c0 5-8 12-8 12S4 15 4 10a8 8 0 1116 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E") }
.case-study__summary .case-study__facts div:nth-child(5) dt::before { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237959c1' stroke-width='1.7'%3E%3Crect x='3' y='3' width='7' height='7' rx='3'/%3E%3Crect x='14' y='3' width='7' height='7' rx='3'/%3E%3Crect x='3' y='14' width='7' height='7' rx='3'/%3E%3Crect x='14' y='14' width='7' height='7' rx='3'/%3E%3C/svg%3E") }
.case-study__summary .case-study__facts dd { margin:7px 0 0; color:#333; font-size:18px; font-weight:500 }
.case-study__profile-grid .case-study__rich { align-self:center }
.case-study__challenges .case-study__rich { display:grid; grid-template-columns:repeat(3,1fr); gap:20px }
.case-study__challenges .case-study__rich>p { padding:26px; border:1px solid #e4deeb; border-radius:20px; background:linear-gradient(160deg,#fff,#f8f5fc); box-shadow:0 18px 44px rgba(52,39,69,.05) }
.case-study__challenges .case-study__rich>p:first-child,.case-study__challenges .case-study__rich>p:last-child { grid-column:1/-1; padding:0; border:0; background:none; box-shadow:none }
.case-study__challenges .case-study__rich strong { color:#28212e; font-weight:500 }
.case-study__challenges { overflow:hidden; background:#f9f9f9 }
.case-study__challenge-split { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:50px; align-items:stretch; padding:0 }
.case-study__challenge-copy { grid-column:1 }
.case-study__challenge-media { grid-column:2; height:auto; margin:0; overflow:hidden; border-radius:20px }
.case-study__challenge-media img { width:100%; height:100%; object-fit:cover }
.case-study__challenges .deyee-dual-heading { margin-bottom:24px }
.case-study__challenges .case-study__rich { display:block }
.case-study__challenges .case-study__challenge-intro { margin:0 0 14px; color:#6b6680; font-size:16px; line-height:1.6 }
.case-study__challenge-cards { display:grid; grid-template-columns:1fr; gap:0 }
.case-study__challenge-cards article { position:relative; min-height:0; padding:22px 0 22px 82px; border:0; border-bottom:1px solid #ded8e9; border-radius:0; background:transparent; box-shadow:none }
.case-study__challenge-cards article::before { position:absolute; top:22px; left:0; width:60px; height:60px; border-radius:50%; background:#f0ebfb center/30px 30px no-repeat; content:"" }
.case-study__challenge-cards article:nth-child(1)::before { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%237959c1' stroke-width='2.6'%3E%3Ccircle cx='18' cy='15' r='7'/%3E%3Cpath d='M6 40v-5c0-7 5-12 12-12s12 5 12 12v5M31 10a7 7 0 010 14M34 27c6 1 9 5 9 11v2'/%3E%3C/svg%3E") }
.case-study__challenge-cards article:nth-child(2)::before { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%237959c1' stroke-width='2.6'%3E%3Cellipse cx='24' cy='13' rx='13' ry='6'/%3E%3Cpath d='M11 13v10c0 3 6 6 13 6s13-3 13-6V13M11 23v10c0 3 6 6 13 6s13-3 13-6V23'/%3E%3C/svg%3E") }
.case-study__challenge-cards article:nth-child(3)::before { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%237959c1' stroke-width='2.6'%3E%3Cpath d='M8 40V29h8v11M20 40V20h8v20M32 40V9h8v31M5 40h38'/%3E%3C/svg%3E") }
.case-study__challenge-cards span { display:none }
.case-study__challenge-cards h3 { margin:0 0 8px; color:#171442; font-size:20px; line-height:1.3 }
.case-study__challenge-cards h3::after { display:none }
.case-study__challenge-cards p { margin:0; color:#6b6680; font-size:15px; line-height:1.55 }
.case-study__opportunity { display:grid; grid-template-columns:1fr; gap:8px; align-items:center; margin-top:22px; padding:20px 22px; border-radius:14px; background:#f5f1fc }
.case-study__opportunity strong { color:#8262ca!important; font-size:14px; letter-spacing:.16em; text-transform:uppercase }
.case-study__opportunity p { margin:0; color:#625d72; font-size:16px; line-height:1.6 }
.case-study__solution .deyee-dual-heading { max-width:none; margin:0 }
.case-study__solution .deyee-dual-heading__eyebrow { font-size:15px; letter-spacing:.12em; text-transform:uppercase }
.case-study__solution .deyee-dual-heading__title { margin-top:30px; color:var(--case-purple); font-size:50px; font-weight:700; line-height:1.28; letter-spacing:-.02em }
.case-study__solution .deyee-dual-heading__title span,.case-study__solution .deyee-dual-heading__title em { color:inherit; font-style:normal }
.case-study__solution .case-study__rich { overflow:visible; border:0; border-radius:0; background:transparent }
.case-study__solution-accordion { border-top:1px solid #ddd7eb }
.case-study__solution-accordion details { border-bottom:1px solid #ddd7eb }
.case-study__solution-accordion summary { position:relative; display:grid; grid-template-columns:58px 1fr 24px; gap:18px; align-items:center; padding:30px 10px; cursor:pointer; list-style:none }
.case-study__solution-accordion summary::-webkit-details-marker { display:none }
.case-study__solution-accordion summary span { color:#7952da; font-size:22px; font-weight:700 }
.case-study__solution-accordion summary strong { color:#11133f; font-size:20px; font-weight:600; line-height:1.35 }
.case-study__solution-accordion summary::after { color:#7952da; font-size:30px; font-weight:300; line-height:1; content:"+" }
.case-study__solution-accordion details[open] summary::after { content:"−" }
.case-study__solution-accordion p { margin:0; padding:0 52px 30px 86px; color:#706a82; font-size:16px; line-height:1.65 }
.case-study__results .deyee-dual-heading { margin-bottom:38px }
.case-study__results .case-study__rich { padding:0; border:0; border-radius:0; background:transparent; box-shadow:none }
.case-study__result-list { display:grid; gap:10px }
.case-study__result-list article { display:grid; grid-template-columns:55px 435px 1fr; gap:20px; align-items:center; min-height:126px; padding:22px 34px; border:1px solid rgba(130,109,175,.06); border-radius:8px; background:rgba(255,255,255,.72); box-shadow:0 8px 24px rgba(75,55,116,.035) }
.case-study__result-list span { padding-right:16px; border-right:2px solid #ddd4f0; color:#b9a7ed; font-size:50px; font-weight:700; line-height:1 }
.case-study__result-list h3 { margin:0; color:#11133f; font-size:22px; line-height:1.3 }
.case-study__result-list p { margin:0 0 0 40px; color:#6b6680; font-size:16px; line-height:1.55 }
.case-study__result-list p strong { color:#40375b; font-weight:700 }
.case-study__testimonial .deyee-dual-heading { grid-column:1/-1; margin:0 0 8px; text-align:left }
.case-study__testimonial-partner { display:flex; align-items:flex-start; flex-direction:column; min-height:420px; padding:34px 30px; border-radius:22px; background:rgba(255,255,255,.72); box-shadow:0 16px 40px rgba(75,55,116,.11),0 2px 8px rgba(75,55,116,.05) }
.case-study__testimonial-partner i { display:grid; width:110px; height:110px; margin-bottom:28px; place-items:center; border-radius:50%; background:radial-gradient(circle,#f8f5ff 0 38%,#f1ebff 39% 56%,#f7f4ff 57% 72%,rgba(247,244,255,.35) 73% 100%); box-shadow:0 12px 28px rgba(126,91,218,.12); color:#8968df }
.case-study__testimonial-partner svg { width:52px; fill:none; stroke:currentColor; stroke-width:2 }
.case-study__testimonial-partner strong { margin-top:14px; color:#171442; font-size:20px }
.case-study__testimonial-partner span { margin-top:6px; color:#6b6680; font-size:16px; line-height:1.45 }
.case-study__testimonial-partner small { margin-top:auto; padding-top:24px; border-top:1px solid #d8d1e8; color:#8a76bd; font-size:12px; line-height:1.6; letter-spacing:.14em; text-transform:uppercase }
.case-study__testimonial .case-study__rich { position:relative; display:block; max-width:none; margin:0; padding:36px 58px 36px 72px; border-radius:22px; background:rgba(255,255,255,.72); box-shadow:0 16px 40px rgba(75,55,116,.11),0 2px 8px rgba(75,55,116,.05); color:#4f4960; font-size:18px; font-weight:400; line-height:1.65; text-align:left }
.case-study__testimonial .case-study__rich::before { position:absolute; top:50%; left:50%; z-index:0; color:rgba(137,104,223,.06); font-family:Georgia,serif; font-size:360px; line-height:.75; content:'“'; transform:translate(-50%,-38%); pointer-events:none }
.case-study__testimonial .case-study__rich::after { display:none }
.case-study__testimonial .case-study__rich p { position:relative; z-index:1; margin:0 0 18px }
.case-study__testimonial .case-study__rich p:last-child { margin-bottom:0 }
.case-study__testimonial-partner+.case-study__rich p:last-child { display:none }
.case-study__testimonial>.deyee-container:has(.case-study__testimonial-slider) { display:block; max-width:1440px }
.case-study__testimonial:has(.case-study__testimonial-slider) .deyee-dual-heading { width:100%; max-width:none; margin:0 0 42px; text-align:center }
.case-study__testimonial:has(.case-study__testimonial-slider) .deyee-dual-heading__eyebrow { color:#121212; font-size:16px; font-weight:700; letter-spacing:0 }
.case-study__testimonial:has(.case-study__testimonial-slider) .deyee-dual-heading__title { margin-inline:auto; font-size:50px; font-weight:700; line-height:1.28; letter-spacing:-.02em }
.case-study__testimonial-slider { box-sizing:border-box; padding:14px 16px 64px }
.case-study__testimonial-card { position:relative; display:flex; flex-direction:column; height:auto; box-sizing:border-box; padding-bottom:42px; text-align:center }
.case-study__testimonial-card::before { position:absolute; top:0; left:50%; z-index:3; width:84px; height:3px; border-radius:0 0 4px 4px; background:linear-gradient(90deg,#bda9ec,#8060dc,#bda9ec); content:''; transform:translateX(-50%) }
.case-study__testimonial-card blockquote { position:relative; flex:1; height:auto; min-height:340px; box-sizing:border-box; margin:0; padding:62px 38px 86px; overflow:hidden; border:1px solid #e5deef; border-radius:12px; background:radial-gradient(circle at 100% 100%,rgba(137,104,223,.055),transparent 34%),radial-gradient(circle at 0 0,rgba(137,104,223,.025),transparent 30%),#fff; box-shadow:0 22px 34px -18px rgba(75,55,116,.14),0 4px 8px rgba(75,55,116,.035),inset 0 1px 0 #fff; color:#6b6680; font-size:16px; line-height:1.55; text-align:center }
.case-study__testimonial-card blockquote::before { position:absolute; top:18px; left:50%; color:#e5ddfb; font-family:Georgia,serif; font-size:82px; line-height:1; content:'“'; transform:translateX(-50%) }
.case-study__testimonial-card blockquote::after { display:none }
.case-study__testimonial-card blockquote p { position:relative; z-index:1; margin:0 0 16px }
.case-study__testimonial-card blockquote p:last-child { margin-bottom:0 }
.case-study__testimonial-card>img { position:relative; z-index:2; width:92px; height:92px; margin:-52px auto 10px; border:3px solid #fff; border-radius:50%; outline:1px solid #9a78e8; background:#f5f1ff; box-shadow:0 10px 24px rgba(75,55,116,.16); object-fit:cover }
.case-study__testimonial-card h3 { margin:0; color:#171442; font-size:19px; font-weight:600 }
.case-study__testimonial-card h3::before { display:block; width:28px; height:2px; margin:0 auto 10px; border-radius:2px; background:#9a78e8; content:'' }
.case-study__testimonial-card>p { margin:5px 0 0; color:#857d95; font-size:14px }
.case-study__testimonial-slider .swiper-pagination { --swiper-pagination-bullet-horizontal-gap:4.5px; bottom:0 }
.case-study__testimonial-slider .swiper-pagination-bullet { width:9px; height:9px; background:#d8d1e8; opacity:1 }
.case-study__testimonial-slider .swiper-pagination-bullet-active { width:28px; border-radius:999px; background:#826daf }
@media(max-width:1024px){
  .case-study__hero-grid { grid-template-columns:1fr; gap:52px }
  .case-study__hero-copy { max-width:720px }
  .case-study__hero-media { width:100% }
  .case-study__summary>.deyee-container,.case-study__profile-grid,.case-study__challenge-split,.case-study__solution>.deyee-container,.case-study__testimonial>.deyee-container { padding:48px }
  .case-study__summary-grid,.case-study__profile-grid,.case-study__challenge-split { grid-template-columns:1fr; gap:45px }
  .case-study__solution>.deyee-container { grid-template-columns:1fr; gap:42px }
  .case-study__solution .deyee-dual-heading__title { margin-top:32px }
  .case-study__profile-media,.case-study__profile-copy { grid-column:1; grid-row:auto }
  .case-study__profile-media { width:100%; height:520px }
  .case-study__challenge-copy,.case-study__challenge-media { grid-column:1; grid-row:auto }
  .case-study__challenge-media { width:100%; height:520px }
  .case-study__challenge-grid { grid-template-columns:1fr }
  .case-study__challenge-grid article { min-height:240px }
  .case-study__challenge-grid h3 { margin-top:52px }
  .case-study__solution-list article>div { grid-template-columns:1fr; gap:12px }
  .case-study__metric-grid { grid-template-columns:repeat(2,1fr) }
  .case-study__summary>.deyee-container { grid-template-columns:1fr; gap:32px }
  .case-study__testimonial>.deyee-container { grid-template-columns:1fr; gap:28px }
  .case-study__testimonial-partner { min-height:0 }
  .case-study__testimonial-card blockquote { min-height:380px }
  .case-study__facts { grid-column:1; grid-row:auto }
  .case-study__challenges .case-study__rich { grid-template-columns:1fr }
  .case-study__challenge-cards { grid-template-columns:1fr }
  .case-study__challenge-cards article { min-height:0 }
  .case-study__opportunity { grid-template-columns:1fr; gap:12px }
  .case-study__result-list article { grid-template-columns:55px 255px 1fr; gap:20px; padding:22px 26px }
  .case-study__result-list span { font-size:42px }
  .case-study__challenges .case-study__rich>p:first-child,.case-study__challenges .case-study__rich>p:last-child { grid-column:auto }
}
@media(max-width:767px){
  .case-study__hero { padding:58px 0 72px }
  .case-study__hero-grid { gap:38px }
  .case-study__hero-copy { padding-left:0 }
  .case-study__hero-copy h1 { font-size:42px }
  .case-study__hero-copy>span { margin-top:22px; font-size:16px }
  .case-study__hero-meta { align-items:flex-start; flex-direction:column; gap:22px; margin-top:28px }
  .case-study__hero-meta span+span { padding-left:76px; border-left:0 }
  .case-study__hero-meta span+span i { left:0 }
  .case-study__hero-media { padding:0; border-radius:20px }
  .case-study__hero-media img { border-radius:20px }
  .case-study__hero-media figcaption { right:18px; bottom:18px; left:18px; padding:12px 14px }
  .case-study__section { padding:72px 0 }
  .case-study__summary>.deyee-container,.case-study__profile-grid,.case-study__challenge-split,.case-study__solution>.deyee-container,.case-study__testimonial>.deyee-container { padding:34px 22px; border-radius:22px }
  .case-study__summary .deyee-dual-heading__title { font-size:42px }
  .case-study__solution .deyee-dual-heading__title { font-size:40px }
  .case-study__solution-accordion summary { grid-template-columns:42px 1fr 20px; gap:10px; padding:24px 0 }
  .case-study__solution-accordion summary strong { font-size:17px }
  .case-study__solution-accordion p { padding:0 30px 24px 52px; font-size:15px }
  .case-study__result-list article { grid-template-columns:56px 1fr; gap:12px; padding:22px 18px }
  .case-study__result-list span { grid-row:1/3; align-self:stretch; padding-right:12px; font-size:28px }
  .case-study__result-list h3 { font-size:18px }
  .case-study__result-list p { grid-column:2; margin-left:0; font-size:15px }
  .case-study__profile-stats,.case-study__metric-grid { grid-template-columns:1fr }
  .case-study__profile-media { height:360px }
  .case-study__challenge-media { height:360px }
  .case-study__solution-list article { grid-template-columns:52px 1fr }
  .case-study__solution-list article>div { grid-column:2 }
  .case-study__roadmap { grid-template-columns:1fr; gap:15px }
  .case-study__testimonial blockquote { font-size:16px }
  .case-study__testimonial .case-study__rich { padding:54px 24px 34px; font-size:16px }
  .case-study__testimonial .case-study__rich::before { top:50%; left:50%; font-size:240px }
  .case-study__testimonial:has(.case-study__testimonial-slider) .deyee-dual-heading { margin-bottom:32px }
  .case-study__testimonial-card blockquote { padding:58px 24px 78px; font-size:15px }
}

@media (min-width:1025px) and (max-width: 1400px) { .case-detail-v2__grid { padding-right: 88px; } }
@media (max-width:1024px) {
  .case-detail-v2__grid { grid-template-columns: 1fr; gap: 52px; }
  .case-detail-v2__aside { position: static; display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
  .case-detail-v2__toc { display: none; }
  .case-detail-v2__related { margin-top: 0; padding-top: 26px; }
}
@media (max-width: 767px) {
  .case-detail-v2__grid { padding-top: 52px; padding-bottom: 88px; }
  .case-detail-v2__header h1 { font-size: 40px; }
  .case-detail-v2__header > p { font-size: 17px; }
  .case-detail-v2__hero { margin-bottom: 44px; border-radius: 10px; }
  .case-detail-v2__aside { display: block; }
  .case-detail-v2__related { margin-top: 28px; }
}

/* Solution detail: centered long-form editorial layout. */
.solution-article { overflow: hidden; background: #fff; }
.solution-article__breadcrumb { padding: 20px 0; border-bottom: 1px solid #e4dfeb; background: #f9f9f9; }
.solution-article__breadcrumb .deyee-container { display: flex; gap: 9px; overflow: hidden; white-space: nowrap; }
.solution-article__header { width: min(1440px, calc(100% - 96px)); margin: 0 auto; padding: 88px 0 48px; text-align: center; }
.solution-article__tag { display: inline-flex; padding: 7px 13px; border: 1px solid #e2ddea; border-radius: 999px; color: #625b69; font-size: 14px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.solution-article__header h1 { margin: 22px auto 18px; font-size: 50px; font-weight: 500; line-height: 1.02; letter-spacing: -.04em; }
.solution-article__meta { display: flex; justify-content: center; gap: 24px; color: var(--c-muted); font-size: 16px; text-transform: uppercase; letter-spacing: .08em; }
.solution-article__meta span::before { margin-right: 24px; color: #aaa4ad; content: "•"; }
.solution-article__hero { width: min(1440px, calc(100% - 96px)); aspect-ratio: 16 / 9; margin: 0 auto 70px; overflow: hidden; border-radius: 18px; background: #f9f9f9; }
.solution-article__hero img { width: 100%; height: 100%; object-fit: cover; }
.solution-article__body { width: min(1440px, calc(100% - 96px)); margin: 0 auto; color: #58525e; font-size: 16px; line-height: 1.8; }
.solution-article__body > h2 { margin: 62px 0 18px; color: #17131b; font-size: clamp(30px, 3.3vw, 44px); font-weight: 600; line-height: 1.12; letter-spacing: -.03em; }
.solution-article__body > h2:first-child { margin-top: 0; }
.solution-article__body p { margin: 0 0 14px; }
.solution-article__body h2 + p { color: #39333f; font-size: 18px; }
.solution-article__body figure { width: 100%; margin: 46px 0; }
.solution-article__body img { width: 100%; height: auto; border-radius: 18px; }
.solution-article__related { width: min(1440px, calc(100% - 96px)); margin: 92px auto 110px; }
.solution-article__related h2 { margin: 0 0 24px; color: #17151a; font-size: 28px; font-weight: 700; line-height: 1.2; text-transform: uppercase; letter-spacing: .08em; }
.solution-article__related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.solution-article__related-grid a { position: relative; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 10px; background: #1e172a; color: #fff; }
.solution-article__related-grid a::after { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(12, 8, 18, .72), transparent 70%); content: ""; }
.solution-article__related-grid img { width: 100%; height: 100%; object-fit: cover; opacity: .82; transition: transform .35s ease; }
.solution-article__related-grid a:hover img { transform: scale(1.04); }
.solution-article__related-grid strong { position: absolute; z-index: 1; right: 18px; bottom: 18px; left: 18px; font-size: 22px; line-height: 1.25; }

@media (max-width: 767px) {
  .solution-article__header, .solution-article__hero, .solution-article__body, .solution-article__related { width: calc(100% - 40px); }
  .solution-article__header { padding: 58px 0 36px; }
  .solution-article__header h1 { font-size: 40px; }
  .solution-article__hero { margin-bottom: 52px; border-radius: 12px; }
  .solution-article__body { font-size: 15px; }
  .solution-article__body > h2 { margin-top: 48px; }
  .solution-article__related { margin-top: 70px; margin-bottom: 80px; }
  .solution-article__related-grid { grid-template-columns: 1fr; gap: 12px; }
}
