/* DD Digital specialist studio candidate — shared page layer.
 * Publication blocked until ADR-007 source reconciliation passes.
 */
body:has(.ddstudio) main { padding-block-start: 0; }
body:has(.ddstudio) .entry-content { max-width: none; }

.ddstudio {
  --dds-ink: #15211e;
  --dds-copy: #40504b;
  --dds-muted: #687670;
  --dds-line: #cbd7d2;
  --dds-paper: #fffefd;
  --dds-soft: #edf4f0;
  --dds-accent: #087f65;
  --dds-accent-dark: #05634f;
  --dds-night: #071923;
  --dds-night-copy: #d9e7e3;
  --dds-grid-line: #36505a;
  --dds-cta-bg: #dceee7;
  --dds-max: 1280px;
  background: var(--dds-paper);
  color: var(--dds-ink);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 18px;
  line-height: 1.62;
  overflow-x: clip;
}
.dds-build { --dds-cta-bg: #f0e3d1; }
.dds-find { --dds-cta-bg: #dceee7; }
.dds-protect { --dds-cta-bg: #f1dfdb; }

.ddstudio,
.ddstudio * { box-sizing: border-box; }
.ddstudio h1,
.ddstudio h2,
.ddstudio h3 { margin-top: 0; color: inherit !important; font-family: inherit; text-wrap: balance; }
.ddstudio h1 { max-width: 950px; margin-bottom: 28px; font-size: clamp(3.15rem, 6.2vw, 6.25rem); font-weight: 780; line-height: .96; letter-spacing: -.06em; }
.ddstudio h2 { font-size: clamp(2.15rem, 4.3vw, 4.4rem); font-weight: 760; line-height: 1.03; letter-spacing: -.045em; }
.ddstudio h3 { font-size: 1.22rem; line-height: 1.28; }
.ddstudio p { color: inherit; }
.ddstudio a { color: inherit; text-underline-offset: .2em; }
.ddstudio a:focus-visible { outline: 3px solid color-mix(in srgb, var(--dds-accent) 38%, transparent); outline-offset: 4px; }
.dds-wrap { width: min(calc(100% - 56px), var(--dds-max)); margin-inline: auto; }
.dds-section { padding: clamp(76px, 8vw, 124px) 0; border-bottom: 1px solid var(--dds-line); }
.dds-soft { background: var(--dds-soft); }
.dds-dark { background: var(--dds-night); color: #fff; }
.dds-dark p, .dds-dark li { color: var(--dds-night-copy); }
.dds-eyebrow, .dds-label, .dds-meta, .dds-route-code {
  margin: 0 0 18px;
  color: var(--dds-accent) !important;
  font: 500 .72rem/1.2 "DM Mono", ui-monospace, monospace;
  letter-spacing: .105em;
  text-transform: uppercase;
}
.dds-eyebrow { font-size: .8rem; }
.dds-dark .dds-label, .dds-dark .dds-route-code { color: #73dec8 !important; }

.dds-hero { padding: clamp(80px, 9vw, 145px) 0 clamp(70px, 8vw, 118px); border-bottom: 1px solid var(--dds-line); }
.dds-hero-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(280px, .55fr); gap: clamp(46px, 7vw, 112px); align-items: end; }
.dds-lead { max-width: 830px; margin: 0 0 34px; color: var(--dds-copy) !important; font-size: clamp(1.12rem, 1.8vw, 1.42rem); }
.dds-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.dds-button { display: inline-flex; min-height: 52px; padding: 0 22px; align-items: center; justify-content: center; border: 1px solid var(--dds-ink); font-weight: 760; text-decoration: none; }
.dds-button:hover { border-color: var(--dds-accent); color: var(--dds-accent-dark); }
.dds-button-primary { border-color: var(--dds-accent); background: var(--dds-accent); color: #fff !important; }
.dds-button-primary:hover { background: var(--dds-accent-dark); color: #fff !important; }
.dds-proof-card { padding: 28px 0 8px 30px; border-left: 4px solid var(--dds-accent); }
.dds-proof-card strong { display: block; margin-bottom: 18px; font-size: clamp(1.35rem, 2.2vw, 2rem); line-height: 1.18; }
.dds-proof-card p:last-child { margin-bottom: 0; color: var(--dds-copy) !important; font-size: .95rem; }

.dds-local-nav { position: relative; border-bottom: 1px solid var(--dds-line); background: var(--dds-paper); }
.dds-local-nav .dds-wrap { display: flex; overflow-x: auto; scrollbar-width: thin; }
.dds-local-nav a { min-height: 52px; display: inline-flex; padding: 14px 23px; align-items: center; border-inline-end: 1px solid var(--dds-line); font-size: .8rem; font-weight: 760; text-decoration: none; white-space: nowrap; }
.dds-local-nav a:hover, .dds-local-nav a[aria-current="page"] { background: var(--dds-soft); color: var(--dds-accent-dark); }

.dds-split { display: grid; grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr); gap: clamp(52px, 8vw, 118px); }
.dds-split > * { min-width: 0; }
.ddstudio h1, .ddstudio h2 { overflow-wrap: normal; hyphens: none; word-break: normal; }
.ddstudio h3 { overflow-wrap: break-word; hyphens: auto; }
.dds-split h2 { font-size: clamp(2.15rem, 3.6vw, 3.8rem); }
.dds-prose { max-width: 820px; }
.dds-prose p { color: var(--dds-copy) !important; }
.dds-dark .dds-prose p { color: var(--dds-night-copy) !important; }
.dds-heading { display: grid; grid-template-columns: minmax(220px, .48fr) minmax(0, 1.1fr) minmax(220px, .55fr); gap: 32px; align-items: start; margin-bottom: 54px; }
.dds-heading .dds-label { padding-top: 12px; }
.dds-heading h2, .dds-heading p { margin-bottom: 0; }
.dds-heading > p:last-child { color: var(--dds-copy); }
.dds-checks { margin: 28px 0 0; padding: 0; border-top: 1px solid var(--dds-line); list-style: none; }
.dds-checks li { position: relative; padding: 15px 10px 15px 30px; border-bottom: 1px solid var(--dds-line); }
.dds-checks li::before { content: "✓"; position: absolute; left: 2px; color: var(--dds-accent); font-weight: 800; }

.dds-route-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 2px solid var(--dds-ink); border-bottom: 1px solid var(--dds-line); }
.dds-route { min-height: 330px; display: flex; padding: 30px; flex-direction: column; border-inline-end: 1px solid var(--dds-line); }
.dds-route:last-child { border-inline-end: 0; }
.dds-route h3 { font-size: clamp(1.35rem, 2vw, 1.8rem); }
.dds-route p:not(.dds-route-code) { color: var(--dds-copy); }
.dds-route a { margin-top: auto; padding-top: 28px; font-weight: 780; }

.dds-method { margin: 0; padding: 0; border-top: 2px solid currentColor; list-style: none; }
.dds-method li { display: grid; grid-template-columns: 60px 1fr; gap: 12px; padding: 23px 0; border-bottom: 1px solid var(--dds-line); }
.dds-method li > span { color: var(--dds-accent); font: 500 .75rem/1.3 "DM Mono", ui-monospace, monospace; }
.dds-dark .dds-method li > span { color: #73dec8; }
.dds-method h3 { margin-bottom: 4px; }
.dds-method p { margin: 0; color: var(--dds-copy); }
.dds-dark .dds-method p { color: var(--dds-night-copy); }

.dds-product-grid, .dds-control-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: #36505a; border: 1px solid #36505a; }
.dds-product-grid article, .dds-control-grid article { min-height: 260px; padding: 28px; background: var(--dds-night); }
.dds-product-grid span, .dds-control-grid span { color: #73dec8; font: 500 .72rem/1.2 "DM Mono", ui-monospace, monospace; letter-spacing: .09em; }
.dds-product-grid p, .dds-control-grid p { color: var(--dds-night-copy); }
.dds-product-grid a { margin-top: 12px; display: inline-block; color: #73dec8; font-weight: 760; }
.dds-control-grid { background: var(--dds-line); border-color: var(--dds-line); }
.dds-control-grid article { background: var(--dds-paper); }
.dds-control-grid span { color: var(--dds-accent); }
.dds-control-grid p { color: var(--dds-copy); }

.dds-work-grid, .dds-deliverables { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px; }
.dds-work-grid > article, .dds-deliverables > article { padding: 34px; border: 1px solid var(--dds-line); background: var(--dds-paper); }
.dds-work-grid h3, .dds-deliverables h3 { font-size: 1.65rem; }
.dds-work-grid dl { margin: 28px 0; }
.dds-work-grid dl div { display: grid; grid-template-columns: 92px 1fr; gap: 14px; padding: 12px 0; border-top: 1px solid var(--dds-line); }
.dds-work-grid dt { color: var(--dds-accent); font-weight: 800; }
.dds-work-grid dd { margin: 0; color: var(--dds-copy); }
.dds-work-grid a { font-weight: 780; }
.dds-deliverables ul { margin: 20px 0 0; padding-left: 20px; }
.dds-deliverables li { margin-bottom: 10px; color: var(--dds-copy); }

.dds-boundary { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(42px, 7vw, 100px); }
.dds-boundary > div + div { padding-left: clamp(34px, 5vw, 70px); border-left: 1px solid var(--dds-line); }
.dds-boundary ul { padding-left: 20px; }
.dds-boundary li { margin-bottom: 10px; }
.dds-status { display: inline-block; padding: 9px 12px; border: 1px solid var(--dds-accent); color: var(--dds-accent-dark) !important; font: 500 .72rem/1.2 "DM Mono", ui-monospace, monospace; letter-spacing: .06em; }

.dds-table-wrap { overflow-x: auto; border-top: 2px solid var(--dds-ink); }
.ddstudio table { width: 100%; min-width: 760px; border-collapse: collapse; text-align: left; }
.ddstudio th, .ddstudio td { padding: 18px; border-bottom: 1px solid var(--dds-line); border-inline-end: 1px solid var(--dds-line); vertical-align: top; }
.ddstudio th { color: var(--dds-accent-dark); font-weight: 800; }
.ddstudio td:last-child, .ddstudio th:last-child { border-inline-end: 0; }

.dds-price-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(48px, 8vw, 110px); }
.dds-prices { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--dds-grid-line); border: 1px solid var(--dds-grid-line); }
.dds-prices article { display: flex; padding: 28px; flex-direction: column; background: var(--dds-night); }
.dds-prices span { color: #73dec8; font-size: .8rem; font-weight: 800; text-transform: uppercase; }
.dds-prices strong { margin: 18px 0 8px; font-size: 3.5rem; line-height: 1; }
.dds-prices small { color: var(--dds-night-copy); }

.dds-contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(50px, 8vw, 110px); }
.dds-form-slot { padding-left: clamp(32px, 5vw, 72px); border-left: 1px solid var(--dds-line); }
.dds-route-list { margin: 0; border-top: 1px solid var(--dds-line); }
.dds-route-list div { display: grid; grid-template-columns: minmax(145px,.35fr) 1fr; gap: 24px; padding: 18px 0; border-bottom: 1px solid var(--dds-line); }
.dds-route-list dt { font-weight: 800; }
.dds-route-list dd { margin: 0; color: var(--dds-copy); }
.dds-privacy-note { margin-top: 26px; padding: 22px; border-inline-start: 3px solid var(--dds-accent); background: var(--dds-paper); }
.dds-specimen { margin: 34px 0 0; }
.dds-specimen img { display: block; width: 100%; height: auto; border: 1px solid var(--dds-line); }
.dds-specimen figcaption, .dds-table-wrap caption { padding: 12px 0; color: var(--dds-copy); font-size: .9rem; text-align: start; }
.dds-finding { margin-top: 32px; padding: clamp(24px,4vw,42px); border: 1px solid var(--dds-line); background: var(--dds-paper); }
.dds-finding dl { display: grid; grid-template-columns: minmax(120px,.3fr) 1fr; margin: 0; }
.dds-finding dt, .dds-finding dd { margin: 0; padding: 10px 0; border-bottom: 1px solid var(--dds-line); }
.dds-finding dt { font-weight: 800; }

.dds-cta { padding: clamp(78px, 8vw, 120px) 0; background: var(--dds-cta-bg); }
.dds-cta-grid { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 60px; align-items: end; }
.dds-cta h2 { max-width: 900px; margin-bottom: 16px; }
.dds-cta p:not(.dds-label) { max-width: 780px; margin-bottom: 0; color: var(--dds-copy); }
.dds-route a, .dds-work-grid a, .dds-product-grid a { display: inline-flex; min-height: 44px; align-items: center; }

.dds-build { --dds-accent: #9a5b19; --dds-accent-dark: #74410f; --dds-soft: #f6f0e7; }
.dds-find { --dds-accent: #087f65; --dds-accent-dark: #05634f; --dds-soft: #edf5f1; }
.dds-protect { --dds-accent: #a2453f; --dds-accent-dark: #7d302c; --dds-soft: #f6eeeb; }

@media (max-width: 960px) {
  .dds-hero-grid, .dds-split, .dds-heading, .dds-price-grid, .dds-contact-grid { grid-template-columns: 1fr; }
  .dds-heading { gap: 14px; }
  .dds-heading .dds-label { padding-top: 0; }
  .dds-route-grid, .dds-product-grid, .dds-control-grid { grid-template-columns: 1fr; }
  .dds-route { min-height: auto; border-inline-end: 0; border-bottom: 1px solid var(--dds-line); }
  .dds-route:last-child { border-bottom: 0; }
  .dds-product-grid article, .dds-control-grid article { min-height: auto; }
  .dds-form-slot { padding: 42px 0 0; border-top: 1px solid var(--dds-line); border-left: 0; }
}

@media (max-width: 680px) {
  .ddstudio { font-size: 16px; }
  .dds-wrap { width: min(calc(100% - 28px), var(--dds-max)); }
  .ddstudio h1 { font-size: clamp(2.65rem, 13vw, 4.2rem); }
  .dds-hero { padding-block: 58px 52px; }
  .dds-section { padding-block: 62px; }
  .dds-actions .dds-button, .dds-cta .dds-button { width: 100%; }
  .dds-work-grid, .dds-deliverables, .dds-prices, .dds-boundary { grid-template-columns: 1fr; }
  .dds-work-grid > article, .dds-deliverables > article { padding: 24px; }
  .dds-boundary > div + div { padding: 28px 0 0; border-top: 1px solid var(--dds-line); border-left: 0; }
  .dds-cta-grid { grid-template-columns: 1fr; gap: 32px; }
}

@media (prefers-reduced-motion: reduce) {
  .ddstudio *, .ddstudio *::before, .ddstudio *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}

@media (forced-colors: active) {
  .dds-button, .dds-route, .dds-work-grid > article, .dds-deliverables > article { border: 1px solid CanvasText; }
}

html[data-theme="dark"] .ddstudio {
  --dds-ink: #eef7f4;
  --dds-copy: #c6d4cf;
  --dds-muted: #aab9b4;
  --dds-line: #355049;
  --dds-paper: #102521;
  --dds-soft: #122522;
  --dds-accent: #65d5bc;
  --dds-accent-dark: #8be3d0;
  --dds-night: #031012;
  --dds-night-copy: #cbdad5;
}
html[data-theme="dark"] .dds-button-primary { color: #052019 !important; }
html[data-theme="dark"] .ddstudio { --dds-cta-bg: #17332d; }
html[data-theme="dark"] .dds-control-grid, html[data-theme="dark"] .dds-work-grid > article, html[data-theme="dark"] .dds-deliverables > article { background: var(--dds-paper); }
