/* Compact, screenshot-led homepage treatment layered over the core theme. */
body.home { background: #eef1f2; }
.home .dv-header { position: relative; top: auto; padding-top: 14px; background: transparent; box-shadow: none; }
.home .dv-header__inner { min-height: 64px; padding-inline: 24px; border-radius: 12px 12px 0 0; background: #111c23; }
.home .dv-brand { min-width: 158px; }
.home .dv-brand__name { font-size: 1.55rem; }
.home .dv-brand small { margin-top: .25rem; font-size: .5rem; }
.home .dv-menu { gap: clamp(.8rem, 1.6vw, 1.6rem); }
.home .dv-menu a { padding-block: 1.25rem; font-size: .78rem; }
.home .dv-header__actions { gap: .75rem; }
.home .dv-header__actions .dv-button--small { min-height: 34px; padding: .42rem .78rem; border-radius: 5px; font-size: .72rem; }
.home .dv-hero { width: min(calc(100% - 40px), var(--dv-max)); min-height: 0; margin-inline: auto; border-radius: 0 0 12px 12px; background: #111c23; }
.home .dv-hero__grid { width: 100%; grid-template-columns: minmax(0, .95fr) minmax(420px, 1.05fr); gap: clamp(2rem, 5vw, 5.5rem); padding: 52px 56px 58px; }
.home .dv-hero__copy h1 { max-width: 700px; font-size: clamp(2.4rem, 4.1vw, 4.35rem); letter-spacing: -.04em; }
.home .dv-hero__copy > p:not(.dv-eyebrow) { max-width: 620px; color: #bac4cb; font-size: 1rem; }
.home .dv-hero .dv-eyebrow { font-size: .7rem; }
.home .dv-hero .dv-actions { margin-top: 1.35rem; }
.home .dv-hero .dv-button { min-height: 42px; padding: .58rem 1rem; border-radius: 5px; font-size: .8rem; }
.dv-hero-product-stage { position: relative; min-height: 330px; overflow: hidden; border: 1px solid #d8dde0; background: radial-gradient(circle at 50% 48%, rgba(216,222,225,.62), transparent 38%), #fff; }
.dv-hero-product-stage::after { position: absolute; right: 10%; bottom: 9%; left: 10%; height: 12%; border-radius: 50%; background: rgba(15,24,30,.15); filter: blur(14px); content: ""; }
.dv-hero-product-stage__device { position: absolute; z-index: 1; width: 74%; height: 56%; object-fit: contain; filter: drop-shadow(0 13px 10px rgba(17,28,35,.2)); }
.dv-hero-product-stage__device--1 { top: 10%; left: 13%; }
.dv-hero-product-stage__device--2 { top: 29%; left: 6%; width: 88%; }
.dv-hero-product-stage__device--3 { top: 49%; left: 10%; width: 80%; }
.dv-hero-product-stage__device--1,
.dv-hero-product-stage__device--2 { display: none; }
.dv-hero-product-stage__device--3 { inset: 0; width: 100%; height: 100%; padding: 3%; object-fit: contain; }

.dv-platforms { padding: 34px 0 42px; border-bottom: 1px solid #d7dcdf; background: #eef1f2; }
.dv-platforms .dv-section-heading { align-items: center; margin-bottom: 20px; }
.dv-platforms .dv-section-heading h2 { margin-bottom: .35rem; font-size: clamp(1.7rem, 2.35vw, 2.55rem); }
.dv-platforms .dv-section-heading p:not(.dv-eyebrow) { max-width: 700px; margin-bottom: 0; font-size: .9rem; }
.dv-platforms .dv-category-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.dv-platforms .dv-category-card { display: grid; min-height: 150px; grid-template-columns: 38% 1fr; grid-template-rows: auto auto 1fr auto; column-gap: 15px; padding: 16px; border-color: #e0e4e6; border-radius: 6px; box-shadow: 0 1px 2px rgba(17,28,35,.03); }
.dv-platforms .dv-category-card__image { height: auto; min-height: 108px; grid-row: 1 / 5; margin: 0; }
.dv-platforms .dv-category-card__icon { display: none; }
.dv-platforms .dv-category-card h3 { align-self: end; margin: 0 0 .3rem; font-size: 1rem; }
.dv-platforms .dv-category-card p { display: -webkit-box; margin: 0 0 .55rem; overflow: hidden; color: #6a757d; font-size: .76rem; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.dv-platforms .dv-category-card strong { align-self: end; font-size: .72rem; }

@media (max-width: 1100px) {
  .home .dv-hero__grid { grid-template-columns: 1fr 1fr; padding-inline: 36px; }
  .dv-platforms .dv-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 860px) {
  .home .dv-header { padding-top: 0; }
  .home .dv-header__inner, .home .dv-hero { border-radius: 0; }
  .home .dv-hero { width: 100%; }
  .home .dv-hero__grid { grid-template-columns: 1fr; padding: 46px 24px; }
  .dv-hero-product-stage { min-height: 310px; }
}

@media (max-width: 560px) {
  .home .dv-hero__copy h1 { font-size: 2.25rem; }
  .dv-platforms .dv-category-grid { grid-template-columns: 1fr; }
  .dv-platforms .dv-category-card { min-height: 138px; }
  .dv-hero-product-stage { min-height: 240px; }
}

/* Customer success stories: editorial structure inspired by enterprise case-study pages. */
.dv-case-library-hero { color: #fff; background: linear-gradient(120deg, #111c23, #283842); }
.dv-case-library-hero p { color: #c7d0d6; }
.dv-case-library--stories { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.dv-case-story-card { overflow: hidden; border: 1px solid #dce2e6; border-radius: 8px; background: #fff; transition: transform .2s ease, box-shadow .2s ease; }
.dv-case-story-card:hover { box-shadow: 0 16px 34px rgba(17,28,35,.12); transform: translateY(-4px); }
.dv-case-story-card__image { display: grid; height: 230px; place-items: center; overflow: hidden; color: #fff; background: linear-gradient(135deg, #1a2933, #435761); font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.dv-case-story-card__image img { width: 100%; height: 100%; object-fit: cover; }
.dv-case-story-card__body { padding: 1.4rem; }
.dv-case-story-card__body h2 { font-size: 1.45rem; }
.dv-case-story-card__footer { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-top: 1.25rem; color: #68757e; font-size: .78rem; }
.dv-case-story-card__footer strong { color: var(--dv-orange-dark); white-space: nowrap; }
.dv-case-empty { max-width: 760px; padding: 3rem; border-left: 4px solid var(--dv-orange); background: #fff; box-shadow: 0 12px 30px rgba(17,28,35,.07); }
.dv-case-cover.dv-case-library-cover { min-height: clamp(480px, 64vh, 680px); }
.dv-case-library-cover .dv-case-cover__content { min-height: clamp(480px, 64vh, 680px); }
.dv-case-library-cover .dv-case-cover__content > p:last-child { max-width: 760px; }
.dv-case-index { min-height: 0; background: #f3f6f7; }
.dv-case-empty--centered { max-width: 820px; margin-inline: auto; padding: 1rem 2rem 2.5rem; border: 0; background: transparent; box-shadow: none; text-align: center; }
.dv-case-empty--centered .dv-case-section-title { margin-bottom: 1.5rem; }
.dv-case-empty--centered h2 { font-size: clamp(1.8rem, 3vw, 2.8rem); }
.dv-case-empty--centered p { max-width: 650px; margin: 0 auto 1.5rem; }

.dv-case-hero { padding: 5rem 0; color: #fff; background: #111c23; }
.dv-case-hero__grid { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(280px, .7fr); align-items: end; gap: 5rem; }
.dv-case-hero h1 { max-width: 980px; font-size: clamp(2.7rem, 5vw, 5.2rem); }
.dv-case-hero .dv-lead { max-width: 850px; color: #c6d0d6; font-size: 1.15rem; }
.dv-case-hero .dv-breadcrumbs { color: #aeb9c0; }
.dv-case-facts { margin: 0; padding: 1.5rem; border-top: 3px solid var(--dv-orange); background: rgba(255,255,255,.06); }
.dv-case-facts div + div { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.14); }
.dv-case-facts dt { color: #9fabb3; font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.dv-case-facts dd { margin: .2rem 0 0; color: #fff; font-weight: 750; }
.dv-case-visual { margin: 0; padding: 0 0 4rem; background: linear-gradient(#111c23 0 45%, #fff 45%); }
.dv-case-visual img { display: block; width: 100%; max-height: 680px; object-fit: cover; box-shadow: 0 22px 50px rgba(10,18,23,.2); }
.dv-case-editorial-grid, .dv-case-split { display: grid; grid-template-columns: minmax(260px, .75fr) minmax(0, 1.25fr); gap: clamp(3rem, 8vw, 8rem); }
.dv-case-editorial-grid h2, .dv-case-split h2 { font-size: clamp(2rem, 3vw, 3.2rem); }
.dv-case-challenge { padding: 5.5rem 0; color: #fff; background: #1a2831; }
.dv-case-challenge p { color: #c8d1d6; }
.dv-case-number { display: block; margin-bottom: 1.2rem; color: var(--dv-orange); font-size: 3.5rem; font-weight: 850; line-height: 1; }
.dv-case-long-copy { color: #34424b; font-size: 1.08rem; line-height: 1.85; }
.dv-case-flow { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 1px; margin-top: 3.5rem; background: #d7dee2; }
.dv-case-flow div { position: relative; min-height: 130px; padding: 1.25rem; background: #f3f6f7; }
.dv-case-flow span { display: block; color: var(--dv-orange-dark); font-size: .72rem; font-weight: 850; }
.dv-case-flow strong { display: block; margin-top: 1.6rem; font-size: .95rem; }
.dv-case-results { color: #fff; background: #111c23; }
.dv-case-results h2 { max-width: 780px; }
.dv-case-results__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin-top: 2.2rem; background: #44525b; }
.dv-case-results__grid article { min-height: 190px; padding: 1.5rem; background: #1b2932; }
.dv-case-results__grid strong { display: block; color: #fff; font-size: 1.5rem; }
.dv-case-results__grid p { margin-top: .75rem; color: #bec8ce; }
.dv-case-quote { padding: 5rem 0; background: #f0f3f4; }
.dv-case-quote blockquote { max-width: 980px; margin: 0 auto; padding-left: 2rem; border-left: 6px solid var(--dv-orange); }
.dv-case-quote p { color: #17242d; font-size: clamp(1.55rem, 3vw, 2.5rem); font-weight: 700; line-height: 1.35; }
.dv-case-quote cite { color: #67737b; font-size: .88rem; font-style: normal; }

@media (max-width: 1000px) {
  .dv-case-library--stories { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dv-case-hero__grid { grid-template-columns: 1fr; gap: 2rem; }
  .dv-case-facts { display: grid; grid-template-columns: repeat(3, 1fr); }
  .dv-case-facts div + div { margin: 0; padding: 0 0 0 1rem; border-top: 0; border-left: 1px solid rgba(255,255,255,.14); }
  .dv-case-results__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .dv-case-library--stories { grid-template-columns: 1fr; }
  .dv-case-hero { padding: 3.5rem 0; }
  .dv-case-hero h1 { font-size: 2.55rem; }
  .dv-case-facts { display: block; }
  .dv-case-facts div + div { margin-top: 1rem; padding: 1rem 0 0; border-top: 1px solid rgba(255,255,255,.14); border-left: 0; }
  .dv-case-editorial-grid, .dv-case-split { grid-template-columns: 1fr; gap: 1.5rem; }
  .dv-case-results__grid { grid-template-columns: 1fr; }
  .dv-case-empty { padding: 2rem; }
	.dv-case-empty--centered { padding-inline: 0; }
}

/* Approved visual case layout: long-form cover, cards, quote, diagram and contact form. */
.dv-success-story--visual { position: relative; background: #fff; }
.dv-success-story--visual::after { position: absolute; top: 660px; right: max(22px, calc((100vw - var(--dv-max)) / 2 + 12px)); bottom: 540px; border-right: 3px dotted #bbc3c8; content: ""; pointer-events: none; }
.dv-case-cover { position: relative; min-height: clamp(500px, 72vh, 760px); overflow: hidden; color: #fff; background-color: #243640; background-image: var(--dv-case-cover); background-position: center; background-size: cover; }
.dv-case-cover__overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5,20,29,.35), rgba(5,20,29,.55)); }
.dv-case-cover__content { position: relative; z-index: 2; display: flex; min-height: clamp(500px, 72vh, 760px); align-items: center; justify-content: center; flex-direction: column; padding-bottom: 4rem; text-align: center; }
.dv-case-cover .dv-breadcrumbs { position: absolute; top: 2rem; left: 0; color: rgba(255,255,255,.8); }
.dv-case-cover h1 { max-width: 1050px; font-size: clamp(2.6rem, 5vw, 5.4rem); text-shadow: 0 3px 20px rgba(0,0,0,.35); }
.dv-case-cover__content > p:last-child { color: #eef2f4; font-weight: 700; }
.dv-case-cover__cut { position: absolute; right: -2%; bottom: -1px; left: -2%; z-index: 3; height: clamp(70px, 11vw, 155px); background: #fff; clip-path: polygon(0 42%, 50% 100%, 100% 38%, 100% 100%, 0 100%); }
.dv-case-introduction { padding-top: 3rem; }
.dv-case-introduction__grid { display: grid; max-width: 1120px; grid-template-columns: 1.1fr .9fr; align-items: center; gap: clamp(2.5rem, 8vw, 7rem); }
.dv-case-introduction h2 { color: #2e6178; font-size: clamp(1.8rem, 3vw, 3rem); }
.dv-case-introduction figure { margin: 0; }
.dv-case-introduction figure img { display: block; width: 100%; max-height: 420px; object-fit: cover; border-radius: 4px; box-shadow: 0 16px 30px rgba(16,25,35,.2); }
.dv-case-needs, .dv-case-products { background: #f1f4f5; }
.dv-case-section-title { position: relative; width: fit-content; margin: 0 auto 2.6rem; color: #2b667f; font-size: clamp(1.75rem, 3vw, 2.65rem); font-weight: 500; line-height: 1.2; text-align: center; }
.dv-case-section-title::after { position: absolute; right: 0; bottom: -.35rem; left: 0; height: 3px; background: linear-gradient(90deg, transparent 0 12%, #8cc63f 12% 88%, transparent 88%); content: ""; }
.dv-case-card-row { display: grid; gap: 1.5rem; max-width: 1180px; margin-inline: auto; }
.dv-case-card-row--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.dv-case-card-row--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.dv-case-card-row article { min-height: 235px; padding: 1.6rem; border: 1px solid #dfe4e7; border-radius: 8px; background: #fff; box-shadow: 0 8px 20px rgba(17,28,35,.08); text-align: center; }
.dv-case-card-row h3 { margin-top: 1rem; color: #384750; font-size: 1.02rem; }
.dv-case-card-row p { margin-top: .8rem; font-size: .84rem; line-height: 1.7; }
.dv-case-line-icon { display: inline-grid; width: 54px; height: 44px; place-items: center; border: 2px solid #8cc63f; border-radius: 8px; color: #78ae31; font-weight: 850; }
.dv-case-testimonial { padding: 4.8rem 0; color: #fff; background: linear-gradient(rgba(12,25,36,.88), rgba(12,25,36,.88)), linear-gradient(120deg, #233746, #0d1821); }
.dv-case-testimonial blockquote { max-width: 1080px; margin: 0 auto; padding-inline: 2rem; }
.dv-case-testimonial blockquote p { color: #fff; font-size: clamp(1.45rem, 2.7vw, 2.4rem); line-height: 1.6; }
.dv-case-testimonial cite { display: block; margin-top: 1.5rem; color: #c7d0d5; text-align: right; font-size: .9rem; font-style: normal; }
.dv-case-advantages { background: #fff; }
.dv-case-connection figure { max-width: 1180px; margin: 0 auto; }
.dv-case-connection figure img { display: block; width: 100%; max-height: 760px; object-fit: contain; }
.dv-case-connection__caption { max-width: 900px; margin: 2rem auto 0; color: #69767e; text-align: center; }
.dv-case-product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.dv-case-product-grid .dv-product-card { border-radius: 0; box-shadow: 0 2px 5px rgba(17,28,35,.09); }
.dv-case-contact { background: #fff; }
.dv-case-contact__heading { max-width: 820px; margin: 0 auto 2rem; text-align: center; }
.dv-case-contact__heading .dv-case-section-title { margin-bottom: 1.2rem; }
.dv-case-contact__form { max-width: 980px; margin-inline: auto; }

@media (max-width: 1000px) {
  .dv-case-card-row--four, .dv-case-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dv-success-story--visual::after { display: none; }
}

@media (max-width: 720px) {
  .dv-case-cover, .dv-case-cover__content { min-height: 520px; }
  .dv-case-cover .dv-breadcrumbs { position: static; align-self: flex-start; margin-bottom: auto; padding-top: 1rem; }
  .dv-case-cover__content { justify-content: flex-start; padding-top: 1rem; }
  .dv-case-cover h1 { margin-top: auto; font-size: 2.45rem; }
  .dv-case-cover__content > p:last-child { margin-bottom: auto; }
  .dv-case-introduction__grid { grid-template-columns: 1fr; }
  .dv-case-card-row--three, .dv-case-card-row--four, .dv-case-product-grid { grid-template-columns: 1fr; }
  .dv-case-card-row article { min-height: 0; }
  .dv-case-testimonial blockquote { padding-inline: 0; }
}

/* Resource shortcut buttons and filtered document results. */
.dv-resource-shortcuts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.dv-resource-shortcut { position: relative; display: flex; min-height: 112px; align-items: flex-start; justify-content: center; flex-direction: column; padding: 1.25rem 3rem 1.25rem 1.35rem; border: 1px solid #d7dee3; border-left: 4px solid var(--dv-orange); border-radius: 8px; color: var(--dv-ink); background: #fff; text-align: left; cursor: pointer; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.dv-resource-shortcut strong { display: block; margin-bottom: .35rem; font-size: 1rem; }
.dv-resource-shortcut span { color: #52606a; font-size: .88rem; }
.dv-resource-shortcut i { position: absolute; top: 50%; right: 1.15rem; color: var(--dv-orange-dark); font-size: 1.25rem; font-style: normal; opacity: 0; transform: translate(-6px, -50%); transition: opacity .2s ease, transform .2s ease; }
.dv-resource-shortcut:hover, .dv-resource-shortcut:focus-visible, .dv-resource-shortcut.is-active { border-color: var(--dv-orange); box-shadow: 0 12px 26px rgba(17,28,35,.1); transform: translateY(-2px); }
.dv-resource-shortcut:hover i, .dv-resource-shortcut:focus-visible i, .dv-resource-shortcut.is-active i { opacity: 1; transform: translate(0, -50%); }
.dv-resource-shortcut:focus-visible { outline: 3px solid rgba(255,107,0,.25); outline-offset: 3px; }
.dv-resource-shortcut.is-active { color: #fff; background: #17242d; }
.dv-resource-shortcut.is-active span { color: #c7d0d5; }
.dv-resource-results { scroll-margin-top: 24px; background: #f3f6f7; }
.dv-resource-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin-bottom: 1.25rem; }
.dv-resource-toolbar .dv-resource-search { flex: 1; }
.dv-resource-toolbar p { margin: 0; white-space: nowrap; font-size: .84rem; }
.dv-resource-action { color: var(--dv-orange-dark); font-weight: 800; }
.dv-resource-empty { margin-top: 1.25rem; padding: 2rem; border-left: 4px solid var(--dv-orange); background: #fff; }

@media (max-width: 1000px) {
  .dv-resource-shortcuts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
  .dv-resource-shortcuts { grid-template-columns: 1fr; }
  .dv-resource-shortcut { min-height: 96px; }
  .dv-resource-toolbar { align-items: stretch; flex-direction: column; }
  .dv-resource-toolbar p { white-space: normal; }
}

/* SEO article hub and long-form article pages. */
.dv-insights-hero { border-bottom: 1px solid #dce2e7; background: linear-gradient(120deg, #fff 0%, #f4f6f7 62%, #e8ecee 100%); }
.dv-topic-nav { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1.7rem; }
.dv-topic-nav a { display: inline-flex; align-items: center; gap: .5rem; padding: .48rem .75rem; border: 1px solid #d5dce0; border-radius: 999px; background: #fff; font-size: .84rem; font-weight: 700; }
.dv-topic-nav a:hover { border-color: var(--dv-orange); color: var(--dv-orange-dark); }
.dv-topic-nav span { min-width: 1.45rem; padding: .05rem .35rem; border-radius: 999px; color: #fff; background: #25333d; text-align: center; font-size: .7rem; }
.dv-article-grid--seo { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.dv-article-card--seo { overflow: hidden; padding: 0; border: 1px solid var(--dv-line); border-radius: 8px; background: #fff; }
.dv-article-card__image { display: grid; min-height: 190px; place-items: center; overflow: hidden; color: #fff; background: linear-gradient(135deg, #111c23, #354653); font-weight: 800; letter-spacing: .06em; }
.dv-article-card__image img { width: 100%; height: 190px; object-fit: cover; transition: transform .25s ease; }
.dv-article-card--seo:hover .dv-article-card__image img { transform: scale(1.025); }
.dv-article-card__body { padding: 1.25rem; }
.dv-article-card__body h2 { font-size: 1.25rem; }
.dv-article-card__meta, .dv-seo-article__meta { display: flex; flex-wrap: wrap; gap: .55rem 1rem; color: #68757e; font-size: .76rem; }
.dv-article-card__meta span:first-child { color: var(--dv-orange-dark); font-weight: 800; text-transform: uppercase; }
.dv-pagination { display: flex; justify-content: center; gap: .45rem; margin-top: 2rem; }
.dv-pagination .page-numbers { display: inline-grid; min-width: 40px; height: 40px; place-items: center; border: 1px solid #d4dade; border-radius: 5px; background: #fff; }
.dv-pagination .current, .dv-pagination a:hover { border-color: #111c23; color: #fff; background: #111c23; }
.dv-archive-description { max-width: 760px; color: var(--dv-slate); }

.dv-seo-article__header { padding: 4.5rem 0 3.2rem; color: #fff; background: #111c23; }
.dv-seo-article__header .dv-breadcrumbs { color: #aab5bc; }
.dv-seo-article__header-inner { max-width: 1040px; }
.dv-seo-article__header h1 { max-width: 960px; font-size: clamp(2.45rem, 4.8vw, 4.8rem); }
.dv-seo-article__dek { max-width: 820px; margin-top: 1.15rem; color: #c5ced4; font-size: 1.14rem; }
.dv-seo-article__meta { margin-top: 1.4rem; color: #b6c0c6; }
.dv-seo-article__cover { max-width: 1120px; margin: 2.5rem auto 0; overflow: hidden; border-radius: 8px; background: #e9edef; }
.dv-seo-article__cover img { display: block; width: 100%; max-height: 620px; object-fit: cover; }
.dv-seo-article__layout { display: grid; max-width: 1180px; grid-template-columns: 240px minmax(0, 780px); justify-content: center; gap: 4rem; padding-block: 4.5rem; }
.dv-article-toc { position: sticky; top: 24px; align-self: start; padding: 1.15rem; border-left: 3px solid var(--dv-orange); background: #f3f6f7; }
.dv-article-toc > strong { display: block; margin-bottom: .65rem; font-size: .84rem; text-transform: uppercase; }
.dv-article-toc ol { margin: 0; padding: 0; list-style: none; }
.dv-article-toc li + li { margin-top: .45rem; }
.dv-article-toc a { color: #4f5c65; font-size: .82rem; line-height: 1.35; }
.dv-article-toc a:hover { color: var(--dv-orange-dark); }
.dv-article-toc__level-3 { padding-left: .8rem; }
.dv-seo-article__content { max-width: 780px; color: #202b33; font-size: 1.04rem; line-height: 1.78; }
.dv-seo-article__content h2, .dv-seo-article__content h3 { scroll-margin-top: 24px; }
.dv-seo-article__content h2 { margin-top: 2.5rem; font-size: 2rem; }
.dv-seo-article__content h3 { margin-top: 2rem; font-size: 1.4rem; }
.dv-seo-article__content a { color: var(--dv-orange-dark); text-decoration: underline; text-underline-offset: 3px; }
.dv-seo-article__content blockquote { margin: 1.8rem 0; padding: 1rem 1.4rem; border-left: 4px solid var(--dv-orange); background: #f3f6f7; }
.dv-seo-article__content table { width: 100%; border-collapse: collapse; font-size: .92rem; }
.dv-seo-article__content th, .dv-seo-article__content td { padding: .8rem; border: 1px solid #d9e0e4; text-align: left; }
.dv-seo-article__content th { background: #eef2f4; }
.dv-related-articles { background: #eef1f2; }

@media (max-width: 900px) {
  .dv-article-grid--seo { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dv-seo-article__layout { grid-template-columns: 1fr; gap: 2rem; }
  .dv-article-toc { position: static; }
}

@media (max-width: 560px) {
  .dv-article-grid--seo { grid-template-columns: 1fr; }
  .dv-seo-article__header { padding: 3.5rem 0 2.5rem; }
  .dv-seo-article__header h1 { font-size: 2.35rem; }
  .dv-seo-article__layout { padding-block: 3rem; }
  .dv-seo-article__content { font-size: 1rem; }
  .dv-seo-article__content table { display: block; overflow-x: auto; }
}
