+/* Search-focused service pages, built on the DS Sight design system. */
+:root {
+  --seo-max: 1160px;
+  --seo-narrow: 760px;
+}
+
+html { scroll-behavior: smooth; }
+body.seo-page {
+  margin: 0;
+  min-height: 100%;
+  background: #060608;
+  color: var(--text-primary, #e8eaf2);
+  font-family: var(--font-body, Inter, sans-serif);
+}
+
+.seo-skip {
+  position: absolute;
+  left: 16px;
+  top: -64px;
+  z-index: 100;
+  padding: 12px 16px;
+  border-radius: 8px;
+  background: #fff;
+  color: #060608;
+  transition: top 180ms ease;
+}
+.seo-skip:focus { top: 16px; }
+
+.seo-hero {
+  position: relative;
+  overflow: hidden;
+  padding: 118px 32px 88px;
+  border-bottom: 1px solid rgba(255,255,255,.08);
+}
+.seo-hero::before {
+  content: "";
+  position: absolute;
+  inset: 0;
+  pointer-events: none;
+  background:
+    radial-gradient(56% 72% at 72% 18%, rgba(59,158,255,.15), transparent 72%),
+    radial-gradient(58% 68% at 18% 84%, rgba(154,163,184,.08), transparent 70%);
+}
+.seo-hero-inner,
+.seo-section-inner,
+.seo-breadcrumbs,
+.seo-footer-inner {
+  position: relative;
+  width: min(100%, var(--seo-max));
+  margin: 0 auto;
+}
+.seo-hero-copy { max-width: 860px; }
+.seo-eyebrow {
+  display: inline-flex;
+  align-items: center;
+  gap: 10px;
+  margin-bottom: 24px;
+  font-family: var(--font-ui, Montserrat, sans-serif);
+  font-size: 11px;
+  font-weight: 500;
+  letter-spacing: .22em;
+  text-transform: uppercase;
+  color: var(--blue-bright, #66b6ff);
+}
+.seo-eyebrow::before {
+  content: "";
+  width: 6px;
+  height: 6px;
+  border-radius: 50%;
+  background: var(--blue, #3b9eff);
+  box-shadow: 0 0 18px rgba(59,158,255,.8);
+}
+.seo-hero h1,
+.seo-section h2,
+.seo-cta h2 {
+  margin: 0;
+  font-family: var(--font-display, Cinzel, serif);
+  font-weight: 400;
+  line-height: 1.06;
+  letter-spacing: .03em;
+  text-transform: uppercase;
+}
+.seo-hero h1 {
+  max-width: 16ch;
+  font-size: clamp(44px, 7vw, 82px);
+}
+.seo-hero-lede {
+  max-width: 720px;
+  margin: 30px 0 0;
+  color: var(--text-secondary, #b0b6c8);
+  font-size: clamp(17px, 2vw, 20px);
+  line-height: 1.65;
+}
+.seo-actions {
+  display: flex;
+  flex-wrap: wrap;
+  gap: 16px 28px;
+  margin-top: 34px;
+}
+.seo-primary,
+.seo-secondary {
+  display: inline-flex;
+  align-items: center;
+  justify-content: center;
+  min-height: 48px;
+  padding: 0 22px;
+  border-radius: 999px;
+  font-family: var(--font-ui, Montserrat, sans-serif);
+  font-size: 11px;
+  font-weight: 500;
+  letter-spacing: .17em;
+  text-transform: uppercase;
+  text-decoration: none;
+  transition: transform 200ms ease, border-color 200ms ease, box-shadow 200ms ease;
+}
+.seo-primary {
+  background: linear-gradient(180deg, #66b6ff, #3b9eff);
+  color: #05101d;
+  box-shadow: inset 0 1px 0 rgba(255,255,255,.46), 0 0 24px rgba(59,158,255,.24);
+}
+.seo-secondary {
+  border: 1px solid rgba(255,255,255,.16);
+  color: var(--text-heading, #fff);
+}
+.seo-primary:hover,
+.seo-secondary:hover { transform: translateY(-2px); }
+.seo-primary:hover { box-shadow: inset 0 1px 0 rgba(255,255,255,.55), 0 0 32px rgba(59,158,255,.42); }
+.seo-secondary:hover { border-color: rgba(59,158,255,.55); }
+
+.seo-proof {
+  display: grid;
+  grid-template-columns: repeat(3, minmax(0, 1fr));
+  gap: 1px;
+  max-width: 760px;
+  margin-top: 58px;
+  overflow: hidden;
+  border: 1px solid rgba(255,255,255,.08);
+  border-radius: 12px;
+  background: rgba(255,255,255,.08);
+}
+.seo-proof div { padding: 22px; background: rgba(10,14,22,.9); }
+.seo-proof strong {
+  display: block;
+  font-family: var(--font-display, Cinzel, serif);
+  font-size: 24px;
+  font-weight: 400;
+  color: var(--text-heading, #fff);
+}
+.seo-proof span {
+  display: block;
+  margin-top: 6px;
+  color: var(--text-muted, #8a91a4);
+  font-size: 13px;
+}
+
+.seo-breadcrumbs {
+  padding: 18px 32px;
+  color: var(--text-muted, #8a91a4);
+  font-size: 12px;
+}
+.seo-breadcrumbs a { color: var(--text-secondary, #b0b6c8); text-decoration: none; }
+
+.seo-section { padding: 92px 32px; }
+.seo-section:nth-of-type(even) { background: rgba(14,17,23,.62); }
+.seo-section-header { max-width: 800px; margin-bottom: 40px; }
+.seo-section h2 { font-size: clamp(34px, 5vw, 58px); }
+.seo-section-header > p,
+.seo-richtext p {
+  color: var(--text-secondary, #b0b6c8);
+  font-size: 17px;
+  line-height: 1.75;
+}
+.seo-section-header > p { margin: 22px 0 0; }
+.seo-richtext { max-width: var(--seo-narrow); }
+.seo-richtext p { margin: 0 0 22px; }
+.seo-richtext a,
+.seo-card a,
+.seo-note a,
+.seo-footer a { color: var(--blue-bright, #66b6ff); }
+
+.seo-grid {
+  display: grid;
+  grid-template-columns: repeat(3, minmax(0, 1fr));
+  gap: 16px;
+}
+.seo-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
+.seo-card {
+  position: relative;
+  padding: 30px;
+  border: .5px solid var(--border-card, #3a3d50);
+  border-radius: 12px;
+  background: linear-gradient(160deg, rgba(24,32,48,.68), rgba(26,30,42,.72));
+  box-shadow: var(--shadow-md, 0 20px 50px rgba(0,0,0,.28));
+}
+.seo-card::before {
+  content: "";
+  position: absolute;
+  left: 0;
+  right: 0;
+  top: 0;
+  height: 1px;
+  background: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent);
+}
+.seo-card-label {
+  color: var(--blue-bright, #66b6ff);
+  font-family: var(--font-ui, Montserrat, sans-serif);
+  font-size: 10px;
+  letter-spacing: .2em;
+  text-transform: uppercase;
+}
+.seo-card h3 {
+  margin: 16px 0 12px;
+  font-family: var(--font-display, Cinzel, serif);
+  font-size: 23px;
+  font-weight: 400;
+  letter-spacing: .04em;
+  text-transform: uppercase;
+}
+.seo-card p,
+.seo-card li {
+  color: var(--text-secondary, #b0b6c8);
+  font-size: 15px;
+  line-height: 1.7;
+}
+.seo-card p { margin: 0; }
+.seo-card ul { margin: 14px 0 0; padding-left: 18px; }
+
+.seo-process { counter-reset: process; }
+.seo-process .seo-card { counter-increment: process; }
+.seo-process .seo-card::after {
+  content: "0" counter(process);
+  position: absolute;
+  right: 22px;
+  top: 18px;
+  color: rgba(255,255,255,.12);
+  font-family: var(--font-display, Cinzel, serif);
+  font-size: 32px;
+}
+
+.seo-note {
+  display: grid;
+  grid-template-columns: minmax(0, 1.3fr) minmax(260px, .7fr);
+  gap: 40px;
+  align-items: center;
+  padding: 38px;
+  border: 1px solid rgba(59,158,255,.24);
+  border-radius: 12px;
+  background: radial-gradient(70% 150% at 100% 0%, rgba(59,158,255,.12), transparent 64%), #0e1117;
+}
+.seo-note h3 {
+  margin: 0 0 14px;
+  font-family: var(--font-display, Cinzel, serif);
+  font-size: clamp(25px, 4vw, 38px);
+  font-weight: 400;
+  text-transform: uppercase;
+}
+.seo-note p { margin: 0; color: var(--text-secondary, #b0b6c8); line-height: 1.75; }
+
+.seo-faq { max-width: 860px; }
+.seo-faq details { border-top: 1px solid rgba(255,255,255,.1); }
+.seo-faq details:last-child { border-bottom: 1px solid rgba(255,255,255,.1); }
+.seo-faq summary {
+  padding: 22px 2px;
+  cursor: pointer;
+  color: var(--text-heading, #fff);
+  font-size: 17px;
+  font-weight: 500;
+}
+.seo-faq details p {
+  max-width: 720px;
+  margin: 0 0 24px;
+  color: var(--text-secondary, #b0b6c8);
+  font-size: 15px;
+  line-height: 1.75;
+}
+
+.seo-cta {
+  padding: 100px 32px;
+  text-align: center;
+  border-top: 1px solid rgba(255,255,255,.08);
+  background: radial-gradient(50% 80% at 50% 50%, rgba(59,158,255,.1), transparent 70%);
+}
+.seo-cta > div { width: min(100%, 820px); margin: 0 auto; }
+.seo-cta h2 { font-size: clamp(38px, 6vw, 68px); }
+.seo-cta p { margin: 24px auto 0; color: var(--text-secondary, #b0b6c8); font-size: 17px; line-height: 1.7; }
+.seo-cta .seo-actions { justify-content: center; }
+
+.seo-footer {
+  padding: 42px 32px;
+  border-top: 1px solid rgba(255,255,255,.08);
+  background: #000;
+}
+.seo-footer-inner {
+  display: flex;
+  justify-content: space-between;
+  gap: 24px;
+  flex-wrap: wrap;
+  color: var(--text-muted, #8a91a4);
+  font-size: 12px;
+}
+.seo-footer-links { display: flex; flex-wrap: wrap; gap: 16px 24px; }
+.seo-footer a { text-decoration: none; }
+
+@media (max-width: 800px) {
+  .seo-hero { padding: 92px 22px 70px; }
+  .seo-section { padding: 70px 22px; }
+  .seo-breadcrumbs { padding-left: 22px; padding-right: 22px; }
+  .seo-grid,
+  .seo-grid.two,
+  .seo-note { grid-template-columns: 1fr; }
+  .seo-proof { grid-template-columns: 1fr; }
+  .seo-card { padding: 24px; }
+}
+
+@media (prefers-reduced-motion: reduce) {
+  html { scroll-behavior: auto; }
+  .seo-primary,
+  .seo-secondary { transition: none; }
+}
+
