body.expertise-page {
  background: #0b0b10;
  color: #f3f2f5;
}

.expertise-page main { overflow: clip; }
.expertise-page a:focus-visible,
.expertise-page button:focus-visible {
  outline: 2px solid #f5bc45;
  outline-offset: 4px;
}

.expertise-hero {
  position: relative;
  isolation: isolate;
  padding: calc(var(--nav-h) + 110px) 0 92px;
  background: radial-gradient(ellipse 68% 90% at 84% 14%, rgba(240,165,30,.13), transparent 72%),
              radial-gradient(ellipse 48% 80% at 8% 72%, rgba(91,126,153,.12), transparent 75%),
              #0b0b10;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.expertise-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
              linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(90deg, transparent, #000 28%, #000 80%, transparent);
}
.expertise-hero__inner { max-width: 850px; }
.expertise-kicker {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #f5bc45;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.expertise-kicker::before { content: ""; width: 20px; height: 1px; background: currentColor; }
.expertise-hero h1 {
  margin: 18px 0 18px;
  max-width: 780px;
  color: #fff;
  font-size: clamp(42px, 6.3vw, 78px);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -.055em;
}
.expertise-hero h1 span { color: #f5bc45; }
.expertise-hero__intro {
  max-width: 660px;
  color: #b9b8c5;
  font-size: clamp(16px, 1.7vw, 19px);
  line-height: 1.7;
}
.expertise-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.expertise-hero__note {
  max-width: 740px;
  margin-top: 30px;
  padding: 15px 18px;
  border-left: 2px solid rgba(240,165,30,.7);
  background: rgba(255,255,255,.045);
  color: #c4c3cf;
  font-size: 13px;
  line-height: 1.65;
}

.expertise-section { padding: 84px 0 92px; }
.expertise-section__head { max-width: 720px; margin-bottom: 34px; }
.expertise-section__head h2 {
  margin: 13px 0 12px;
  color: #f6f5f8;
  font-size: clamp(28px, 3.2vw, 40px);
  letter-spacing: -.035em;
  line-height: 1.12;
}
.expertise-section__head p { color: #aaa9ba; font-size: 16px; line-height: 1.7; }
.expertise-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; }
.expertise-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 25px 25px 23px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(255,255,255,.065), rgba(255,255,255,.025));
  box-shadow: 0 16px 35px rgba(0,0,0,.13);
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.expertise-card:hover { transform: translateY(-3px); border-color: rgba(240,165,30,.4); background: linear-gradient(145deg, rgba(240,165,30,.085), rgba(255,255,255,.03)); }
.expertise-card__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 27px; }
.expertise-card__number { color: #f5bc45; font-size: 12px; font-weight: 800; letter-spacing: .1em; }
.expertise-card__type { color: #8e8d9e; font-size: 10px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.expertise-card h3 { margin: 0 0 11px; color: #fff; font-size: 21px; line-height: 1.22; letter-spacing: -.025em; }
.expertise-card__summary { min-height: 66px; color: #aaa9b9; font-size: 13px; line-height: 1.6; }
.expertise-card__label {
  margin: 24px 0 10px;
  padding-top: 17px;
  border-top: 1px solid rgba(255,255,255,.095);
  color: #f5bc45;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.expertise-card ul { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.expertise-card li { position: relative; padding-left: 15px; color: #e0dfe6; font-size: 13px; line-height: 1.35; }
.expertise-card li::before { content: ""; position: absolute; left: 0; top: .54em; width: 5px; height: 5px; border-radius: 50%; background: #f0a51e; }
.expertise-card__boundary { margin-top: auto; padding-top: 24px; color: #9392a3; font-size: 12px; line-height: 1.55; }
.expertise-card__boundary strong { color: #c8c7d0; }

.expertise-card__icon {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: rgba(240,165,30,.12);
  color: #f5bc45;
}
.expertise-card__icon svg { width: 22px; height: 22px; }
.expertise-card__guide { margin-top: 14px; color: #f5bc45; font-size: 13px; font-weight: 700; text-decoration: none; }
.expertise-card__guide:hover { text-decoration: underline; text-underline-offset: 3px; }

.expertise-scope { padding: 80px 0 8px; }
.expertise-scope__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px; }
.expertise-tier--review { grid-column: 1 / -1; }
.expertise-tier {
  display: flex;
  flex-direction: column;
  gap: 11px;
  min-width: 0;
  padding: 25px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 18px;
  background: rgba(255,255,255,.035);
}
.expertise-tier--core {
  border-color: rgba(240,165,30,.45);
  background: linear-gradient(145deg, rgba(240,165,30,.13), rgba(255,255,255,.03));
}
.expertise-tier__tag {
  align-self: flex-start;
  padding: 5px 11px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: #e7e6ee;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.expertise-tier--core .expertise-tier__tag { background: rgba(240,165,30,.18); color: #f5bc45; }
.expertise-tier--review .expertise-tier__tag { background: rgba(91,126,153,.24); color: #bcd5e8; }
.expertise-tier h3 { margin: 3px 0 0; color: #fff; font-size: 19px; line-height: 1.25; letter-spacing: -.02em; }
.expertise-tier p { margin: 0; color: #aaa9b9; font-size: 13.5px; line-height: 1.65; }
.expertise-tier__link { margin-top: auto; padding-top: 6px; color: #f5bc45; font-size: 13px; font-weight: 700; text-decoration: none; }
.expertise-tier__link:hover { text-decoration: underline; text-underline-offset: 3px; }
.expertise-chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 2px 0 0; padding: 0; list-style: none; }
.expertise-chips li { padding: 5px 10px; border: 1px solid rgba(255,255,255,.13); border-radius: 999px; color: #d8d7e0; font-size: 12px; line-height: 1.3; }
.expertise-scope__note { margin: 20px 0 0; color: #8e8d9e; font-size: 13px; line-height: 1.6; }

.expertise-process { padding: 70px 0; background: #111118; border-top: 1px solid rgba(255,255,255,.08); border-bottom: 1px solid rgba(255,255,255,.08); }
.expertise-process__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; margin-top: 32px; }
.expertise-process__step { padding-top: 18px; border-top: 1px solid rgba(240,165,30,.42); }
.expertise-process__step span { color: #f5bc45; font-size: 11px; font-weight: 800; letter-spacing: .1em; }
.expertise-process__step h3 { margin: 13px 0 7px; color: #f3f2f5; font-size: 18px; }
.expertise-process__step p { color: #a9a8b8; font-size: 13px; line-height: 1.65; }
.expertise-limit {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .7fr);
  gap: 34px;
  align-items: center;
  margin-top: 47px;
  padding: 26px 30px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 16px;
  background: rgba(255,255,255,.035);
}
.expertise-limit h3 { margin: 0 0 8px; color: #f3f2f5; font-size: 17px; }
.expertise-limit p { margin: 0; color: #aaa9b8; font-size: 13px; line-height: 1.65; }
.expertise-limit > div:last-child { justify-self: end; }
.expertise-limit__tag { color: #f5bc45; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }

.expertise-cta { padding: 90px 0; background: radial-gradient(ellipse at 20% 0%, rgba(240,165,30,.13), transparent 48%), #0b0b10; }
.expertise-cta__inner { max-width: 760px; margin: 0 auto; text-align: center; }
.expertise-cta h2 { margin: 13px 0 14px; color: #fff; font-size: clamp(28px, 3.6vw, 42px); line-height: 1.13; letter-spacing: -.035em; }
.expertise-cta p { color: #b3b2c0; font-size: 16px; line-height: 1.7; }
.expertise-cta__actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; margin-top: 26px; }

html.light-mode body.expertise-page { background: #f7f7f9; color: #17171e; }
html.light-mode .expertise-hero { background: radial-gradient(ellipse 68% 90% at 84% 14%, rgba(240,165,30,.16), transparent 72%), #faf9f6; border-color: rgba(17,17,22,.11); }
html.light-mode .expertise-hero::after { background-image: linear-gradient(rgba(17,17,22,.028) 1px, transparent 1px), linear-gradient(90deg, rgba(17,17,22,.028) 1px, transparent 1px); }
html.light-mode .expertise-hero h1, html.light-mode .expertise-section__head h2, html.light-mode .expertise-card h3, html.light-mode .expertise-process__step h3, html.light-mode .expertise-limit h3, html.light-mode .expertise-cta h2 { color: #17171e; }
html.light-mode .expertise-hero h1 span, html.light-mode .expertise-kicker, html.light-mode .expertise-card__number, html.light-mode .expertise-card__label, html.light-mode .expertise-process__step span, html.light-mode .expertise-limit__tag { color: #8a5a00; }
html.light-mode .expertise-hero__intro, html.light-mode .expertise-section__head p, html.light-mode .expertise-process__step p, html.light-mode .expertise-cta p { color: #565669; }
html.light-mode .expertise-hero__note, html.light-mode .expertise-card, html.light-mode .expertise-limit { background: #fff; border-color: rgba(17,17,22,.13); box-shadow: 0 16px 35px rgba(17,17,22,.055); }
html.light-mode .expertise-hero__note, html.light-mode .expertise-card__summary, html.light-mode .expertise-limit p { color: #565669; }
html.light-mode .expertise-card__type, html.light-mode .expertise-card__boundary { color: #69697d; }
html.light-mode .expertise-card__label { border-color: rgba(17,17,22,.12); }
html.light-mode .expertise-card li, html.light-mode .expertise-card__boundary strong { color: #292935; }
html.light-mode .expertise-process { background: #efeff3; border-color: rgba(17,17,22,.11); }
html.light-mode .expertise-tier { background: #fff; border-color: rgba(17,17,22,.13); box-shadow: 0 16px 35px rgba(17,17,22,.055); }
html.light-mode .expertise-tier--core { background: linear-gradient(145deg, rgba(240,165,30,.13), #fff); border-color: rgba(168,99,0,.35); }
html.light-mode .expertise-tier h3 { color: #17171e; }
html.light-mode .expertise-tier p, html.light-mode .expertise-scope__note { color: #565669; }
html.light-mode .expertise-tier__tag { background: rgba(17,17,22,.06); color: #3b3b48; }
html.light-mode .expertise-tier--core .expertise-tier__tag { background: rgba(240,165,30,.18); color: #8a5200; }
html.light-mode .expertise-tier--review .expertise-tier__tag { background: rgba(91,126,153,.16); color: #2f5470; }
html.light-mode .expertise-chips li { border-color: rgba(17,17,22,.14); color: #292935; }
html.light-mode .expertise-card__icon { background: rgba(240,165,30,.15); color: #8a5a00; }
/* Outranks page-polish.css's site-wide link colour (.pp main a:not(...)). */
html.light-mode body.expertise-page .expertise-tier a.expertise-tier__link,
html.light-mode body.expertise-page .expertise-card a.expertise-card__guide { color: #8a5a00; }
html.light-mode .expertise-cta { background: radial-gradient(ellipse at 20% 0%, rgba(240,165,30,.14), transparent 48%), #faf9f6; }

@media (max-width: 940px) {
  .expertise-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .expertise-scope__grid { grid-template-columns: 1fr; }
  .expertise-card__summary { min-height: 0; }
}
@media (max-width: 640px) {
  .expertise-hero { padding: calc(var(--nav-h) + 65px) 0 62px; }
  .expertise-section { padding: 62px 0 70px; }
  .expertise-grid, .expertise-process__grid, .expertise-limit { grid-template-columns: 1fr; }
  .expertise-card, .expertise-tier { padding: 22px 20px; }
  .expertise-scope { padding-top: 60px; }
  .expertise-process { padding: 58px 0; }
  .expertise-limit { gap: 16px; padding: 22px; }
  .expertise-limit > div:last-child { justify-self: start; }
  .expertise-cta { padding: 70px 0; }
}
@media (prefers-reduced-motion: reduce) { .expertise-card { transition: none; } .expertise-card:hover { transform: none; } }
