:root {
      --color-bg: #f7f6f5;
      --color-surface: #ffffff;
      --color-surface-muted: #efedeb;
      --color-text: #1f1b20;
      --color-text-muted: #4f4950;
      --color-text-faint: #6f6870;
      --color-gold: #d19900;
      --color-accent: #ae2220;
      --color-logo-accent: #ae2220;
      --color-accent-contrast: #ffffff;
      --color-border: oklch(0.42 0.01 325 / 0.12);
      --color-shadow: oklch(0.3 0.02 325 / 0.16);

      --font-display: "Cabinet Grotesk", "Segoe UI", Arial, sans-serif;
      --font-body: "Satoshi", "Segoe UI", Arial, sans-serif;
      --font-size-12: 0.75rem;
      --font-size-14: 0.875rem;
      --font-size-16: 1rem;
      --font-size-18: 1.125rem;
      --font-size-20: 1.25rem;
      --font-size-24: 1.5rem;
      --font-size-32: 2rem;
      --font-size-40: 2.5rem;
      --line-height-tight: 1.2;
      --line-height-normal: 1.5;

      --space-1: 0.25rem;
      --space-2: 0.5rem;
      --space-3: 0.75rem;
      --space-4: 1rem;
      --space-5: 1.25rem;
      --space-6: 1.5rem;
      --space-8: 2rem;
      --space-10: 2.5rem;
      --space-12: 3rem;
      --space-16: 4rem;
      --space-20: 5rem;

      --radius-sm: 0.5rem;
      --radius-md: 0.75rem;
      --radius-lg: 1rem;
      --radius-pill: 999px;
      --shadow-sm: 0 6px 20px var(--color-shadow);
      --shadow-md: 0 12px 32px var(--color-shadow);

      --transition-fast: 180ms cubic-bezier(0.16, 1, 0.3, 1);
      --transition-base: 260ms cubic-bezier(0.16, 1, 0.3, 1);

      --container-max: 80rem;
      --content-width: min(100% - (var(--space-4) * 2), var(--container-max));
      --tap-min: 44px;
      --header-height: 72px;
      --badge-size: 160px;
      --map-dim: 1;
    }

    [data-theme="dark"] {
      --color-bg: #1f1b20;
      --color-bg-paint: oklch(0.11 0.008 300);
      --color-surface: #2a252b;
      --color-surface-muted: #342f35;
      --color-text: #f7f6f5;
      --color-text-muted: #d5cfd4;
      --color-text-faint: #a39ca3;
      --color-gold: #e8af34;
      --color-accent: #d44240;
      --color-logo-accent: #d44240;
      --color-accent-contrast: #ffffff;
      --color-border: oklch(0.86 0.01 325 / 0.12);
      --color-shadow: oklch(0.08 0.01 325 / 0.46);
      --map-dim: 0.88;
    }

    * {
      box-sizing: border-box;
    }

    .dellendoc-page {
      scroll-behavior: smooth;
    }

    .dellendoc-page {
      margin: 0;
      background: transparent;
      color: var(--color-text);
      font-family: var(--font-body);
      font-size: var(--font-size-14);
      line-height: var(--line-height-normal);
    }

    body.dellendoc-page {
      background:
        radial-gradient(
      ellipse 80% 60% at 50% 20%,
      oklch(0.19 0.014 295) 0%,
      oklch(0.12 0.009 300) 45%,
      oklch(0.075 0.006 305) 100%
    );
      position: relative;
    }

    body.dellendoc-page::before {
      content: "";
      position: fixed;
      inset: 0;
      pointer-events: none;
      z-index: 0;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='1' fill='white'/%3E%3C/svg%3E");
      background-size: 160px 160px;
      background-repeat: repeat;
      mix-blend-mode: soft-light;
      opacity: 0.17;
    }

    .dellendoc-page img, .dellendoc-page iframe {
      max-width: 100%;
      display: block;
      border: 0;
    }

    .dellendoc-page a, .dellendoc-page button, .dellendoc-page input, .dellendoc-page select, .dellendoc-page textarea {
      min-height: var(--tap-min);
      font: inherit;
    }

    .dellendoc-page a,
    .dellendoc-page a:link,
    .dellendoc-page a:visited,
    .dellendoc-page a:hover,
    .dellendoc-page a:focus,
    .dellendoc-page a:active {
      color: inherit;
      text-decoration: none;
    }

    .dellendoc-page .container {
      width: var(--content-width);
      margin-inline: auto;
    }

    .dellendoc-page .section {
      padding-block: var(--space-10);
    }

    .dellendoc-page > *,
    .dellendoc-page > .section,
    .dellendoc-page .site-footer,
    .dellendoc-page main,
    .dellendoc-page .site-header {
      position: relative;
      z-index: 1;
    }

    .dellendoc-page .section-title {
      margin: 0 0 var(--space-4);
      font-family: var(--font-display);
      font-size: var(--font-size-24);
      line-height: var(--line-height-tight);
      letter-spacing: 0.01em;
    }

    .dellendoc-page .section-title,
    .dellendoc-page h1,
    .dellendoc-page h2,
    .dellendoc-page h3,
    .dellendoc-page h4 {
      color: var(--color-text);
    }

    .dellendoc-page .muted {
      color: var(--color-text-muted);
    }

    .dellendoc-page .surface {
      background: var(--color-surface);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-lg);
      box-shadow: var(--shadow-sm);
    }

    .dellendoc-page .button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: var(--space-2);
      border: 1px solid transparent;
      border-radius: var(--radius-pill);
      padding: 0 var(--space-5);
      font-weight: 700;
      transition: background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);
      cursor: pointer;
    }

    .dellendoc-page .button,
    .dellendoc-page .button:hover,
    .dellendoc-page .button:focus,
    .dellendoc-page .button:focus-visible,
    .dellendoc-page .button:visited,
    .dellendoc-page .button:active {
      text-decoration: none;
    }

    .dellendoc-page .button:hover, .dellendoc-page .button:focus-visible {
      transform: translateY(-1px);
    }

    /* Lock all interactive states against Kadence/UA color bleed */
    .dellendoc-page .button-primary,
    .dellendoc-page .button-primary:link,
    .dellendoc-page .button-primary:visited,
    .dellendoc-page .button-primary:hover,
    .dellendoc-page .button-primary:focus,
    .dellendoc-page .button-primary:focus-visible,
    .dellendoc-page .button-primary:active {
      color: var(--color-accent-contrast) !important;
      background: var(--color-accent);
    }

    .dellendoc-page .button-primary:hover,
    .dellendoc-page .button-primary:focus-visible {
      background: color-mix(in oklch, var(--color-accent) 85%, black);
    }

    .dellendoc-page .button-secondary,
    .dellendoc-page .button-secondary:link,
    .dellendoc-page .button-secondary:visited,
    .dellendoc-page .button-secondary:hover,
    .dellendoc-page .button-secondary:focus,
    .dellendoc-page .button-secondary:focus-visible,
    .dellendoc-page .button-secondary:active {
      color: var(--color-text) !important;
    }

    /* FAQ question buttons */
    .dellendoc-page .faq-question,
    .dellendoc-page .faq-question:hover,
    .dellendoc-page .faq-question:focus,
    .dellendoc-page .faq-question:focus-visible {
      color: var(--color-text) !important;
    }

    /* Switcher buttons (До/После in cases) */
    .dellendoc-page .switcher button,
    .dellendoc-page .switcher button:hover,
    .dellendoc-page .switcher button:focus {
      color: var(--color-text) !important;
    }

    .dellendoc-page .switcher button[aria-pressed="true"],
    .dellendoc-page .switcher button[aria-pressed="true"]:hover {
      color: var(--color-accent-contrast) !important;
    }

    /* theme-toggle button */
    .dellendoc-page .theme-toggle,
    .dellendoc-page .theme-toggle:hover,
    .dellendoc-page .theme-toggle:focus {
      color: var(--color-text) !important;
    }

    .dellendoc-page .button-primary {
      background: var(--color-accent);
      color: var(--color-accent-contrast);
    }

    .dellendoc-page .button-secondary {
      border-color: var(--color-border);
      background: transparent;
      color: var(--color-text);
    }

    .dellendoc-page .button-secondary:hover, .dellendoc-page .button-secondary:focus-visible {
      background: var(--color-surface-muted);
    }

    /* Fallback: на случай, если Kadence/FSE всё ещё рендерит внешний header. */
    .dellendoc-landing-template .wp-site-blocks > header:not(#top),
    .dellendoc-landing-template #masthead,
    .dellendoc-grad-template .wp-site-blocks > header:not(#top),
    .dellendoc-grad-template #masthead {
      display: none !important;
    }

    /* Усиливаем контраст secondary-кнопки в тёмной теме. */
    [data-theme="dark"] .button-secondary {
      color: var(--color-text);
      border: 1.5px solid oklch(from var(--color-text) l c h / 0.40);
      background: transparent;
    }
    [data-theme="dark"] .button-secondary:hover,
    [data-theme="dark"] .button-secondary:focus-visible {
      background: oklch(from var(--color-text) l c h / 0.08);
      border-color: oklch(from var(--color-text) l c h / 0.60);
    }

    .dellendoc-page .site-header {
      position: sticky;
      top: 0;
      z-index: 20;
      min-height: var(--header-height);
      background: color-mix(in oklch, var(--color-bg) 88%, transparent);
      backdrop-filter: blur(8px);
      overflow: visible;
    }

    .dellendoc-page .site-header::after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      height: 1px;
      background: linear-gradient(
        90deg,
        transparent 0%,
        oklch(1 0 0 / 0.25) 25%,
        oklch(1 0 0 / 0.42) 50%,
        oklch(1 0 0 / 0.25) 75%,
        transparent 100%
      );
    }

    .dellendoc-page .site-nav {
      min-height: var(--header-height);
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: var(--space-3);
    }

    .dellendoc-page .logo-link {
      display: inline-flex;
      align-items: center;
      min-height: var(--tap-min);
      padding: var(--space-1) 0;
    }

    /* Inline SVG логотип — currentColor наследует цвет от темы */
    .dellendoc-page .logo-svg {
      display: inline-flex;
      align-items: center;
      color: var(--color-text);
      min-height: var(--tap-min);
    }

    /* SVG внутри .logo-svg получает currentColor автоматически */
    .dellendoc-page .logo-svg svg {
      width: 168px;
      height: 44px;
      display: block;
    }

    .dellendoc-page .menu {
      display: none;
      gap: var(--space-3);
      align-items: center;
    }

    .dellendoc-page .menu a {
      display: inline-flex;
      align-items: center;
      padding: 0 var(--space-3);
      border-radius: var(--radius-pill);
      min-height: var(--tap-min);
    }

    .dellendoc-page .menu a:hover, .dellendoc-page .menu a:focus-visible {
      background: var(--color-surface-muted);
    }

    /* Длинная подпись «Вопросы и ответы»: плотный хедер 768–1024px без переполнения */
    @media (min-width: 768px) and (max-width: 1024px) {
      .dellendoc-page .site-nav {
        gap: var(--space-2);
      }

      .dellendoc-page .menu {
        gap: var(--space-2);
      }

      .dellendoc-page .menu a {
        padding-inline: var(--space-2);
        font-size: var(--font-size-14);
      }
    }

    .dellendoc-page .nav-actions {
      display: flex;
      align-items: center;
      gap: var(--space-2);
    }

    .dellendoc-page .theme-toggle {
      width: var(--tap-min);
      min-width: var(--tap-min);
      padding: 0;
      border: 1px solid var(--color-border);
      border-radius: 50%;
      background: var(--color-surface);
      color: var(--color-text);
    }

    .dellendoc-page .theme-toggle svg {
      width: 1.125rem;
      height: 1.125rem;
    }

    .dellendoc-page .hero-grid {
      display: grid;
      gap: var(--space-6);
      align-items: center;
    }

    .dellendoc-page h1 {
      margin: 0 0 var(--space-4);
      font-family: var(--font-display);
      font-size: var(--font-size-32);
      line-height: var(--line-height-tight);
      letter-spacing: 0.01em;
      color: var(--color-text);
    }

    .dellendoc-page .hero-grid .muted {
      color: var(--color-text-muted);
    }

    .dellendoc-page .hero-actions {
      display: flex;
      flex-wrap: wrap;
      gap: var(--space-3);
      margin-top: var(--space-5);
    }

    .dellendoc-page .hero-promo {
      margin-top: var(--space-2);
      font-size: var(--font-size-14);
      color: var(--color-text-muted);
    }

    .dellendoc-page .placeholder {
      width: 100%;
      border: 1px solid var(--color-border);
      border-radius: var(--radius-lg);
      background: var(--color-surface-muted);
      color: var(--color-text-muted);
      display: grid;
      place-items: center;
      text-align: center;
      padding: var(--space-4);
    }

    .dellendoc-page .hero-placeholder {
      min-height: 18rem;
    }

    .dellendoc-page .trust-list {
      list-style: none;
      margin: 0;
      padding: var(--space-5);
      display: grid;
      grid-template-columns: var(--badge-size) 1fr;
      gap: var(--space-6);
      align-items: center;
    }

    .dellendoc-page .trust-badge-cell,
    .dellendoc-page .trust-badge-yandex {
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: var(--badge-size);
    }

    .dellendoc-page .trust-badge {
      width: var(--badge-size);
      min-height: var(--badge-size);
      border: none;
      border-radius: var(--radius-lg);
      background: var(--color-surface-muted);
      box-shadow: none;
      display: grid;
      justify-items: center;
      align-content: center;
      gap: var(--space-2);
      padding: var(--space-4);
      text-align: center;
      transition: transform var(--transition-fast);
    }

    .dellendoc-page .trust-badge:hover,
    .dellendoc-page .trust-badge:focus-visible {
      transform: translateY(-2px);
    }

    .dellendoc-page .trust-badge__brand {
      width: 2.25rem;
      height: 2.25rem;
      display: grid;
      place-items: center;
    }

    .dellendoc-page .trust-badge__title {
      font-family: var(--font-display);
      font-size: var(--font-size-20);
      line-height: var(--line-height-tight);
      color: var(--color-text);
      font-weight: 700;
    }

    .dellendoc-page .trust-badge__year {
      font-size: var(--font-size-12);
      letter-spacing: 0.06em;
      text-transform: uppercase;
      color: var(--color-text-muted);
    }

    .dellendoc-page .trust-badge__rating {
      display: inline-flex;
      align-items: center;
      gap: var(--space-2);
      color: var(--color-gold);
    }

    .dellendoc-page .trust-badge__rating strong {
      font-size: var(--font-size-24);
      line-height: var(--line-height-tight);
      color: var(--color-text);
    }

    .dellendoc-page .trust-facts-list {
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-direction: column;
      gap: var(--space-3);
    }

    .dellendoc-page .trust-facts-list li + li {
      border-top: 1px solid var(--color-border);
      padding-top: var(--space-3);
    }

    .dellendoc-page .trust-fact-label {
      font-size: var(--font-size-12);
      color: var(--color-text-faint);
      text-transform: uppercase;
      letter-spacing: 0.06em;
      display: block;
      margin-bottom: var(--space-1);
    }

    .dellendoc-page .trust-fact-value {
      font-size: var(--font-size-18);
      color: var(--color-text);
      font-weight: 600;
    }

    .dellendoc-page .case-grid, .dellendoc-page .price-grid, .dellendoc-page .review-grid {
      display: grid;
      gap: var(--space-4);
    }

    .dellendoc-page .case-card, .dellendoc-page .price-item, .dellendoc-page .review-card {
      padding: var(--space-4);
    }

    .dellendoc-page .switcher {
      display: inline-flex;
      gap: var(--space-2);
      margin-bottom: var(--space-3);
      padding: var(--space-1);
      border-radius: var(--radius-pill);
      background: var(--color-surface-muted);
    }

    .dellendoc-page .switcher button {
      border: 0;
      border-radius: var(--radius-pill);
      padding: 0 var(--space-4);
      background: transparent;
      color: var(--color-text);
    }

    .dellendoc-page .switcher button[aria-pressed="true"] {
      background: var(--color-accent);
      color: var(--color-accent-contrast);
    }

    .dellendoc-page .switcher button:focus-visible {
      outline: 2px solid var(--color-accent) !important;
      outline-offset: 2px;
    }

    .dellendoc-page button:focus,
    .dellendoc-page button:focus-visible {
      outline-color: var(--color-accent) !important;
    }

    .dellendoc-page a:focus-visible {
      outline-color: var(--color-accent) !important;
    }

    .dellendoc-page #dents {
      overflow: visible;
    }

    .dellendoc-page #dents .container {
      overflow: visible;
    }

    .dellendoc-page .timeline {
      list-style: none;
      margin: 0;
      padding: 0;
      display: grid;
      gap: var(--space-3);
    }

    .dellendoc-page .timeline li {
      display: grid;
      grid-template-columns: 2.75rem 1fr;
      gap: var(--space-3);
      align-items: start;
      padding: var(--space-3);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-md);
      background: var(--color-surface);
    }

    .dellendoc-page .timeline-number {
      display: grid;
      place-items: center;
      font-family: var(--font-display);
      font-size: var(--font-size-24);
      line-height: 1;
      color: var(--color-accent);
      border-right: 1px solid var(--color-border);
      padding-right: var(--space-2);
    }

    .dellendoc-page .section-lead {
      margin-bottom: var(--space-6);
      font-size: var(--font-size-16);
      color: var(--color-text-muted);
      max-width: 52ch;
    }

    .dellendoc-page .dent-grid {
      display: grid;
      gap: var(--space-4);
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    @media (min-width: 640px) {
      .dellendoc-page .dent-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
    }

    .dellendoc-page .dent-card {
      box-sizing: border-box;
      background: var(--color-surface);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-lg);
      padding: var(--space-5);
    }

    .dellendoc-page .dent-card__icon {
      display: block;
      font-size: var(--font-size-20);
      line-height: 1;
      margin-bottom: var(--space-2);
    }

    .dellendoc-page .dent-card__title {
      font-family: var(--font-display);
      font-size: var(--font-size-16);
      font-weight: 600;
      margin: 0 0 var(--space-1);
    }

    .dellendoc-page .dent-card__desc {
      margin: 0;
      font-size: var(--font-size-14);
      color: var(--color-text-muted);
      max-width: none;
    }

    .dellendoc-page .dent-card__more {
      display: inline-flex;
      align-items: center;
      margin-top: var(--space-3);
      font-size: var(--font-size-14);
      font-weight: 600;
      color: var(--color-accent);
    }

    .dellendoc-page .master-quote {
      margin-top: var(--space-4);
      padding: var(--space-4) var(--space-5);
      background: var(--color-surface-muted);
      border-radius: var(--radius-md);
      border: 1px solid var(--color-border);
      position: relative;
    }

    .dellendoc-page .master-quote::before {
      content: "\201C";
      font-family: var(--font-display);
      font-size: var(--font-size-40);
      line-height: 1;
      color: var(--color-accent);
      position: absolute;
      top: -0.5rem;
      left: var(--space-3);
      opacity: 0.4;
    }

    .dellendoc-page cite {
      color: var(--color-text-faint);
      font-style: normal;
      font-size: var(--font-size-12);
      display: block;
      margin-top: var(--space-2);
    }

    .dellendoc-page .price-value {
      font-family: var(--font-display);
      font-size: var(--font-size-24);
      line-height: var(--line-height-tight);
      color: var(--color-accent);
    }

    /* ===== Секция отзывов: бар рейтинга, карточки, бейдж ===== */
    .dellendoc-page .section-reviews {
      padding-block: clamp(var(--space-12), 6vw, var(--space-20));
    }

    /* Шапка: рейтинг и ссылки на площадки */
    .dellendoc-page .reviews-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: var(--space-4);
      margin-bottom: var(--space-8);
    }

    .dellendoc-page .reviews-score {
      display: flex;
      align-items: baseline;
      gap: var(--space-3);
    }

    .dellendoc-page .reviews-score-number {
      font-family: var(--font-display);
      font-size: var(--font-size-40);
      font-weight: 700;
      line-height: 1;
      color: var(--color-text);
    }

    .dellendoc-page .reviews-score-meta {
      display: flex;
      flex-direction: column;
      gap: var(--space-1);
    }

    .dellendoc-page .reviews-stars {
      color: var(--color-gold);
      font-size: var(--font-size-14);
      letter-spacing: 0.05em;
    }

    .dellendoc-page .reviews-count {
      font-size: var(--font-size-12);
      color: var(--color-text-muted);
    }

    .dellendoc-page .reviews-sources {
      display: flex;
      gap: var(--space-3);
      flex-wrap: wrap;
    }

    .dellendoc-page .reviews-source-link,
    .dellendoc-page .reviews-source-link:link,
    .dellendoc-page .reviews-source-link:visited {
      display: inline-flex;
      align-items: center;
      min-height: var(--tap-min);
      font-size: var(--font-size-12);
      color: var(--color-text-muted) !important;
      text-decoration: none;
      border: 1px solid var(--color-border);
      border-radius: var(--radius-pill);
      padding: 0 var(--space-3);
      transition: color var(--transition-fast), border-color var(--transition-fast);
    }

    .dellendoc-page .reviews-source-link:hover,
    .dellendoc-page .reviews-source-link:focus-visible {
      color: var(--color-text) !important;
      border-color: oklch(from var(--color-text) l c h / 0.35);
    }

    /* Карточки: 1 / 2 / 3 колонки — без горизонтального overflow */
    .dellendoc-page .reviews-cards {
      list-style: none;
      padding: 0;
      margin: 0 0 var(--space-8);
      display: grid;
      grid-template-columns: 1fr;
      gap: var(--space-4);
    }

    .dellendoc-page .reviews-cards__item {
      min-width: 0;
    }

    @media (min-width: 640px) {
      .dellendoc-page .reviews-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (min-width: 1024px) {
      .dellendoc-page .reviews-cards {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
    }

    .dellendoc-page .review-card {
      height: 100%;
      box-sizing: border-box;
      background: var(--color-surface);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-lg);
      padding: var(--space-5);
      display: flex;
      flex-direction: column;
      gap: var(--space-3);
    }

    .dellendoc-page .review-card__header {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: var(--space-3);
    }

    .dellendoc-page .review-card__meta {
      display: flex;
      flex-direction: column;
      gap: var(--space-1);
      min-width: 0;
    }

    .dellendoc-page .review-card__author {
      font-size: var(--font-size-14);
      font-weight: 600;
      color: var(--color-text);
    }

    .dellendoc-page .review-card__badge {
      font-size: var(--font-size-12);
      color: var(--color-text-muted);
    }

    .dellendoc-page .review-card__stars {
      display: flex;
      gap: var(--space-1);
      flex-shrink: 0;
      color: var(--color-gold);
    }

    .dellendoc-page .review-card__stars svg {
      flex-shrink: 0;
      display: block;
    }

    .dellendoc-page .review-card__text {
      margin: 0;
      font-size: var(--font-size-14);
      color: var(--color-text);
      line-height: 1.6;
      flex: 1;
      max-width: 100%;
      overflow-wrap: break-word;
      word-break: break-word;
    }

    .dellendoc-page .review-card__footer {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: var(--space-2);
      margin-top: auto;
      padding-top: var(--space-3);
      border-top: 1px solid var(--color-border);
    }

    .dellendoc-page .review-card__date {
      font-size: var(--font-size-12);
      color: var(--color-text-muted);
    }

    .dellendoc-page .review-card__source {
      font-size: var(--font-size-12);
      color: var(--color-text-faint);
    }

    .dellendoc-page .reviews-footer {
      display: flex;
      align-items: center;
      gap: var(--space-6);
      flex-wrap: wrap;
    }

    /* Официальный бейдж Яндекса (#trust и #reviews) */
    .dellendoc-page .yandex-rating-badge {
      display: block;
      width: 150px;
      height: 50px;
      border: none;
      border-radius: var(--radius-md);
      overflow: hidden;
      flex-shrink: 0;
    }

    .dellendoc-page .twogis-rating-badge {
      display: block;
      width: 150px;
      height: 50px;
      border: none;
      border-radius: var(--radius-md);
      overflow: hidden;
      flex-shrink: 0;
    }

    .dellendoc-page .about-grid, .dellendoc-page .contacts-grid {
      display: grid;
      gap: var(--space-4);
    }

    .dellendoc-page .about-photo {
      min-height: 16rem;
    }

    .dellendoc-page .faq-list {
      display: grid;
      gap: var(--space-3);
    }

    .dellendoc-page .faq-item {
      border: 1px solid var(--color-border);
      border-radius: var(--radius-md);
      background: var(--color-surface);
      overflow: clip;
    }

    .dellendoc-page .faq-question {
      width: 100%;
      text-align: left;
      border: 0;
      background: transparent;
      color: var(--color-text);
      padding: 0 var(--space-4);
      font-weight: 700;
    }

    .dellendoc-page .faq-answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height var(--transition-base);
    }

    .dellendoc-page .faq-answer-inner {
      padding: 0 var(--space-4) var(--space-4);
      color: var(--color-text-muted);
    }

    .dellendoc-page .estimate-form {
      display: grid;
      gap: var(--space-3);
      padding: var(--space-4);
    }

    /* Согласие на обработку ПДн: чекбокс + ссылка на политику */
    .dellendoc-page .field.field--consent {
      gap: var(--space-2);
    }

    .dellendoc-page .field.field--consent .consent-label {
      display: flex;
      align-items: center;
      gap: var(--space-3);
      min-height: var(--tap-min);
      margin: 0;
      font-size: var(--font-size-14);
      font-weight: 400;
      color: var(--color-text-muted);
      line-height: var(--line-height-normal);
      cursor: pointer;
    }

    .dellendoc-page .field.field--consent .consent-label input[type="checkbox"] {
      width: var(--space-5);
      height: var(--space-5);
      min-width: var(--space-5);
      min-height: var(--space-5);
      margin: 0;
      flex-shrink: 0;
      accent-color: var(--color-accent);
      cursor: pointer;
    }

    .dellendoc-page .field.field--consent .consent-label input[type="checkbox"]:focus-visible {
      outline: 2px solid var(--color-accent);
      outline-offset: var(--space-1);
    }

    .dellendoc-page .field.field--consent .consent-link {
      color: var(--color-accent);
      text-decoration: underline;
      text-underline-offset: var(--space-1);
      transition: color var(--transition-fast);
    }

    .dellendoc-page .field.field--consent .consent-link:hover {
      color: var(--color-text);
    }

    .dellendoc-page .field.field--consent .consent-link:focus-visible {
      outline: 2px solid var(--color-accent);
      outline-offset: var(--space-1);
      border-radius: var(--radius-sm);
    }

    @media (prefers-reduced-motion: reduce) {
      .dellendoc-page .field.field--consent .consent-link {
        transition: none;
      }
    }

    [data-theme="dark"] .dellendoc-page .field.field--consent .consent-link:hover {
      color: var(--color-text);
    }

    /* Пояснение под формой заявки (вне form) */
    .dellendoc-page .form-privacy-note {
      font-size: var(--font-size-12);
      color: var(--color-text-muted);
      max-width: 52ch;
      margin-top: var(--space-2);
      line-height: var(--line-height-normal);
    }

    .dellendoc-page .field {
      display: grid;
      gap: var(--space-1);
    }

    .dellendoc-page .field label {
      font-size: var(--font-size-14);
      font-weight: 600;
      color: var(--color-text);
      display: block;
    }

    .dellendoc-page .field input, .dellendoc-page .field select {
      width: 100%;
      border: 1px solid var(--color-border);
      border-radius: var(--radius-md);
      background: var(--color-surface);
      color: var(--color-text);
      padding: 0 var(--space-3);
    }

    .dellendoc-page .field input:focus,
    .dellendoc-page .field input:focus-visible,
    .dellendoc-page .field select:focus,
    .dellendoc-page .field select:focus-visible {
      color: var(--color-text);
      background: var(--color-surface);
      outline: 2px solid var(--color-accent);
      outline-offset: 0;
      border-color: var(--color-accent);
    }

    /* Плейсхолдеры полей; стрелка native select скрыта — своя иконка */
    .dellendoc-page .field input::placeholder,
    .dellendoc-page .field select::placeholder {
      color: var(--color-text-faint);
      opacity: 1;
    }

    .dellendoc-page .field select {
      appearance: none;
      -webkit-appearance: none;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234f4950' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: right var(--space-3) center;
      padding-right: var(--space-8);
      cursor: pointer;
    }

    .dellendoc-page .field select:focus,
    .dellendoc-page .field select:focus-visible {
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234f4950' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: right var(--space-3) center;
    }

    [data-theme="dark"] .dellendoc-page .field select {
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23d5cfd4' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    }

    [data-theme="dark"] .dellendoc-page .field select:focus,
    [data-theme="dark"] .dellendoc-page .field select:focus-visible {
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23d5cfd4' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    }

    [data-theme="dark"] .dellendoc-page .field select option {
      background: var(--color-surface);
      color: var(--color-text);
    }

    [data-theme="dark"] .dellendoc-page .field select option:disabled {
      color: var(--color-text-faint);
    }

    /* Sprint 8: без JS показывается только нативный select; с классом .js — кастомный combobox */
    .dellendoc-page #estimate-form .custom-select-ui {
      display: none;
    }

    .js .dellendoc-page #estimate-form .custom-select-ui {
      display: block;
    }

    /* Обертка для нативного select + прилипающего listbox */
    .dellendoc-page #estimate-form .part-select-field {
      position: relative;
      width: 100%;
    }

    /* Нативный select: скрыт только при .js — для required и отправки формы */
    .js .dellendoc-page #estimate-form .select-native {
      position: absolute;
      opacity: 0;
      pointer-events: none;
      width: 1px;
      height: 1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      margin: -1px;
      padding: 0;
      border: 0;
      min-height: 1px;
    }

    .dellendoc-page #estimate-form .custom-select-trigger {
      position: relative;
      width: 100%;
      margin: 0;
      cursor: pointer;
      text-align: left;
      display: flex;
      align-items: center;
      min-height: var(--tap-min);
      padding-block: var(--space-2);
      padding-inline: var(--space-3) var(--space-8);
      font-size: var(--font-size-14);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-md);
      background: var(--color-surface);
      color: var(--color-text);
    }

    /* Шеврон: тот же SVG, что у нативного select раздела полей */
    .dellendoc-page #estimate-form .custom-select-trigger::after {
      content: "";
      position: absolute;
      right: var(--space-3);
      top: 50%;
      width: var(--space-4);
      height: var(--space-4);
      translate: 0 -50%;
      rotate: 0deg;
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234f4950' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
      transition: rotate var(--transition-fast);
    }

    .dellendoc-page #estimate-form .custom-select-trigger[aria-expanded="true"]::after {
      rotate: 180deg;
    }

    [data-theme="dark"] .dellendoc-page #estimate-form .custom-select-trigger::after {
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23d5cfd4' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    }

    .dellendoc-page #estimate-form .custom-select-trigger:focus-visible {
      outline: 2px solid var(--color-accent);
      outline-offset: 2px;
    }

    .dellendoc-page #estimate-form .custom-select-trigger.custom-select-trigger--placeholder .custom-select-value {
      color: var(--color-text-faint);
    }

    .dellendoc-page #estimate-form .custom-select-value {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .dellendoc-page #estimate-form .custom-select-list {
      position: absolute;
      z-index: 20;
      left: 0;
      right: 0;
      top: calc(100% + var(--space-1));
      margin: 0;
      padding: var(--space-1) 0;
      max-height: 16rem;
      overflow-y: auto;
      list-style: none;
      background: var(--color-surface);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-md);
      box-shadow: var(--shadow-md);
      box-sizing: border-box;
    }

    .dellendoc-page #estimate-form .custom-select-option {
      margin: 0;
      padding: var(--space-3) var(--space-4);
      font-size: var(--font-size-14);
      min-height: var(--tap-min);
      display: flex;
      align-items: center;
      cursor: pointer;
      color: var(--color-text);
    }

    .dellendoc-page #estimate-form .custom-select-option:hover:not(.is-selected) {
      background: var(--color-surface-muted);
    }

    /* Выбранный пункт в выпадающем списке (не путать с клавиатурным активным) */
    .dellendoc-page #estimate-form .custom-select-option.is-selected {
      background: var(--color-accent);
      color: var(--color-accent-contrast);
    }

    /* Активный кандидат при навигации стрелками */
    .dellendoc-page #estimate-form .custom-select-option.is-active-option {
      background: var(--color-surface-muted);
    }

    .dellendoc-page #estimate-form .custom-select-option.is-active-option.is-selected {
      background: var(--color-accent);
      color: var(--color-accent-contrast);
    }

    @media (min-width: 640px) {
      .dellendoc-page #estimate-form .custom-select-list {
        max-height: 18rem;
      }
    }

    /* Высота: десктоп — объём iframe под карточку org (~320px) + контекст карты; мобила ≤640px — 420px */
    .dellendoc-page .map-frame {
      width: 100%;
      min-height: 560px;
      border-radius: var(--radius-md);
      border: 1px solid var(--color-border);
      overflow: hidden;
      position: relative;
    }

    @media (max-width: 640px) {
      .dellendoc-page .map-frame {
        min-height: 420px;
      }
    }

    .dellendoc-page .map-frame iframe {
      border-radius: 0;
      width: 100%;
      min-height: 560px;
      height: 560px;
      display: block;
    }

    @media (max-width: 640px) {
      .dellendoc-page .map-frame iframe {
        min-height: 420px;
        height: 420px;
      }
    }

    .dellendoc-page .map-frame::after {
      content: '';
      position: absolute;
      inset: 0;
      z-index: 1;
      cursor: pointer;
      background: transparent;
      transition: opacity 180ms;
    }

    .dellendoc-page .map-frame.is-active::after {
      display: none;
    }

    .dellendoc-page .map-frame .map-click-hint {
      position: absolute;
      bottom: var(--space-3);
      left: 50%;
      transform: translateX(-50%);
      background: oklch(from var(--color-text) l c h / 0.75);
      color: var(--color-bg);
      font-size: var(--font-size-12);
      padding: var(--space-1) var(--space-3);
      border-radius: var(--radius-pill);
      pointer-events: none;
      z-index: 2;
      white-space: nowrap;
      transition: opacity 300ms;
    }

    .dellendoc-page .map-frame.is-active .map-click-hint {
      opacity: 0;
    }

    [data-theme="dark"] .dellendoc-page .map-frame {
      opacity: var(--map-dim, 0.88);
      filter: brightness(0.9) saturate(0.85);
    }

    .dellendoc-page .site-footer {
      margin-top: var(--space-10);
      padding-block: var(--space-10);
      background: var(--color-surface);
      position: relative;
    }

    .dellendoc-page .site-footer::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 1px;
      background: linear-gradient(
        90deg,
        transparent 0%,
        oklch(1 0 0 / 0.18) 30%,
        oklch(1 0 0 / 0.28) 50%,
        oklch(1 0 0 / 0.18) 70%,
        transparent 100%
      );
    }

    .dellendoc-page .footer-grid {
      display: grid;
      gap: var(--space-8);
      align-items: start;
    }

    /* Брендовая колонка */
    .dellendoc-page .footer-brand {
      display: flex;
      flex-direction: column;
      gap: var(--space-3);
    }

    .dellendoc-page .footer-logo svg {
      width: 140px;
      height: 36px;
      display: block;
      opacity: 0.7;
    }

    .dellendoc-page .footer-copy {
      font-size: var(--font-size-12);
      color: var(--color-text-faint);
      line-height: var(--line-height-normal);
    }

    /* Навигация подвала */
    .dellendoc-page .footer-nav {
      display: flex;
      flex-direction: column;
      gap: 0;
    }

    .dellendoc-page .footer-nav a {
      font-size: var(--font-size-14);
      color: var(--color-text-muted);
      transition: color var(--transition-fast);
      min-height: var(--tap-min);
      display: inline-flex;
      align-items: center;
      padding-block: var(--space-1);
      line-height: var(--line-height-tight);
    }

    .dellendoc-page .footer-nav a:hover,
    .dellendoc-page .footer-nav a:focus-visible {
      color: var(--color-text);
    }

    /* Контакты подвала */
    .dellendoc-page .footer-contacts {
      display: flex;
      flex-direction: column;
      gap: var(--space-2);
    }

    /* Выше базового .footer-contacts a — телефон как акцентная строка */
    .dellendoc-page .footer-contacts a.footer-contacts-phone {
      font-family: var(--font-display);
      font-size: var(--font-size-20);
      font-weight: 700;
      color: var(--color-text);
      transition: color var(--transition-fast);
      display: inline-flex;
      align-items: center;
      min-height: var(--tap-min);
      line-height: var(--line-height-tight);
    }

    .dellendoc-page .footer-contacts a.footer-contacts-phone:hover,
    .dellendoc-page .footer-contacts a.footer-contacts-phone:focus-visible {
      color: var(--color-accent);
    }

    .dellendoc-page .footer-contacts a {
      font-size: var(--font-size-14);
      color: var(--color-text-muted);
      transition: color var(--transition-fast);
      display: inline-flex;
      align-items: center;
      min-height: var(--tap-min);
    }

    .dellendoc-page .footer-contacts a:hover,
    .dellendoc-page .footer-contacts a:focus-visible {
      color: var(--color-text);
    }

    .dellendoc-page .footer-address {
      font-size: var(--font-size-12);
      color: var(--color-text-faint);
      display: block;
      line-height: var(--line-height-normal);
      margin-top: var(--space-1);
    }

    .dellendoc-page .footer-contacts-group + .footer-contacts-group {
      padding-top: var(--space-3);
      border-top: 1px solid var(--color-border);
      margin-top: var(--space-1);
    }

    @media (min-width: 640px) {
      .dellendoc-page .footer-grid {
        grid-template-columns: 1fr 1fr;
      }

      .dellendoc-page .footer-brand {
        grid-column: 1 / -1;
        flex-direction: row;
        align-items: flex-end;
        justify-content: space-between;
      }
    }

    @media (min-width: 768px) {
      .dellendoc-page .footer-grid {
        grid-template-columns: 1.4fr 1fr 1.2fr;
        gap: var(--space-10);
      }

      .dellendoc-page .footer-brand {
        grid-column: auto;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
      }
    }

    @media (min-width: 768px){
      :root {
        --content-width: min(100% - (var(--space-6) * 2), var(--container-max));
      }

      .dellendoc-page h1 {
        font-size: var(--font-size-40);
      }

      .dellendoc-page .menu {
        display: flex;
      }

      .dellendoc-page .hero-grid, .dellendoc-page .about-grid, .dellendoc-page .contacts-grid {
        grid-template-columns: 1fr 1fr;
      }

      .dellendoc-page .case-grid, .dellendoc-page .price-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .dellendoc-page .review-grid {
        grid-template-columns: 1fr 1fr;
      }
    }

    @media (min-width: 1280px){
      :root {
        --content-width: min(100% - (var(--space-8) * 2), var(--container-max));
      }

      .dellendoc-page .section {
        padding-block: var(--space-12);
      }

      .dellendoc-page .case-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .dellendoc-page .price-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
      }
    }

    /* 1.0.8: одинокая карточка в неполном последнем ряду кейсов — по центру (только 2 и 3 колонки; телефоны без изменений) */
    @media (min-width: 768px) and (max-width: 1279px) {
      .dellendoc-page .case-grid > .case-card:last-child:nth-child(odd) {
        grid-column: 1 / -1;
        justify-self: center;
        width: calc((100% - var(--space-4)) / 2);
      }
    }

    @media (min-width: 1280px) {
      .dellendoc-page .case-grid > .case-card:last-child:nth-child(3n+1) {
        grid-column: 2;
      }
    }

    /* ACF photos — hero, about, cases */
    .dellendoc-page .hero-photo {
      width: 100%;
      height: auto;
      border-radius: var(--radius-lg);
      object-fit: cover;
      aspect-ratio: 4 / 3;
      display: block;
    }

    .dellendoc-page .about-photo-img {
      width: 100%;
      height: auto;
      border-radius: var(--radius-lg);
      object-fit: cover;
      aspect-ratio: 4 / 3;
      display: block;
    }

    .dellendoc-page .case-image-wrap {
      width: 100%;
      margin-bottom: var(--space-3);
      border-radius: var(--radius-md);
      overflow: hidden;
      aspect-ratio: 4 / 3;
      background: var(--color-surface-muted);
      position: relative;
    }

    .dellendoc-page .case-photo {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    /* Наш display:block перебивал UA [hidden]; возвращаем скрытие для переключателя до/после */
    .dellendoc-page .case-photo[hidden] {
      display: none;
    }

    /* Заглушки до/после внутри обёртки кейса */
    .dellendoc-page .case-image-wrap > .placeholder.case-photo--before,
    .dellendoc-page .case-image-wrap > .placeholder.case-photo--after {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      margin: 0;
      padding: var(--space-4);
      display: grid;
      place-items: center;
      border: 0;
      border-radius: 0;
      min-height: 0;
    }

    @media (prefers-reduced-motion: reduce){
      .dellendoc-page {
        scroll-behavior: auto;
      }

      * {
        animation: none !important;
        transition: none !important;
      }
    }

    @media (max-width: 480px) {
      .dellendoc-page .trust-list {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
      }

      .dellendoc-page .trust-badge {
        margin-inline: auto;
      }

      .dellendoc-page .trust-facts-list li {
        display: flex;
        flex-direction: column;
        align-items: center;
      }

      .dellendoc-page .reviews-header {
        flex-direction: column;
        align-items: flex-start;
      }

      .dellendoc-page .reviews-footer {
        flex-direction: column;
        align-items: flex-start;
      }
    }

    /* Sprint 8: file field, preview, inline error, loading button состояния */
    .dellendoc-page .form-field {
      display: grid;
      gap: var(--space-1);
    }

    .dellendoc-page .form-label {
      font-size: var(--font-size-14);
      font-weight: 600;
      color: var(--color-text);
      display: flex;
      gap: var(--space-1);
      align-items: baseline;
      flex-wrap: wrap;
    }

    .dellendoc-page .form-label__optional {
      font-size: var(--font-size-12);
      color: var(--color-text-muted);
      font-weight: 400;
    }

    .dellendoc-page .file-drop-area {
      position: relative;
      border: 1px dashed var(--color-border);
      border-radius: var(--radius-md);
      padding: var(--space-3);
      min-height: var(--tap-min);
      display: flex;
      align-items: center;
    }

    .dellendoc-page .file-drop-area:focus-within {
      border-color: var(--color-accent);
    }

    .dellendoc-page .file-input {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      cursor: pointer;
      z-index: 1;
    }

    .dellendoc-page .file-drop-prompt {
      font-size: var(--font-size-14);
      color: var(--color-text-muted);
    }

    .dellendoc-page .file-preview:empty {
      display: none;
    }

    .dellendoc-page .file-preview[hidden] {
      display: none;
    }

    .dellendoc-page .file-preview {
      display: flex;
      gap: var(--space-3);
      align-items: center;
      min-height: var(--tap-min);
    }

    .dellendoc-page .file-preview__thumb {
      width: 72px;
      height: 72px;
      object-fit: cover;
      border-radius: var(--radius-md);
      flex: 0 0 auto;
      overflow: hidden;
      position: relative;
      background: var(--color-surface-2, var(--color-surface));
      border: 1px solid oklch(from var(--color-text) l c h / 0.10);
      display: block;
    }

    .dellendoc-page .file-preview__name {
      font-size: var(--font-size-14);
      color: var(--color-text);
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      flex: 1 1 auto;
      min-width: 0;
    }

    .dellendoc-page .file-preview__remove {
      font-size: var(--font-size-16);
      line-height: 1;
      min-width: var(--tap-min);
      min-height: var(--tap-min);
      border: 0;
      border-radius: var(--radius-pill);
      background: transparent;
      color: var(--color-text-muted);
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0;
    }

    .dellendoc-page .file-preview__remove:hover,
    .dellendoc-page .file-preview__remove:focus-visible {
      color: var(--color-accent);
      outline: 2px solid var(--color-accent);
      outline-offset: 1px;
    }

    .dellendoc-page .form-field-error {
      margin: var(--space-1) 0 0;
      font-size: var(--font-size-14);
      color: var(--color-error, #c0392b);
    }

    @keyframes dd-spin {
      to {
        transform: rotate(360deg);
      }
    }

    .dellendoc-page .button .btn-spinner,
    .dellendoc-page .btn .btn-spinner {
      display: none;
      align-items: center;
      justify-content: center;
      line-height: 1;
    }

    .dellendoc-page .button .btn-text,
    .dellendoc-page .btn .btn-text {
      display: inline;
    }

    .dellendoc-page .button[data-loading="true"] .btn-text,
    .dellendoc-page .btn[data-loading="true"] .btn-text {
      display: none;
    }

    .dellendoc-page .button[data-loading="true"] .btn-spinner,
    .dellendoc-page .btn[data-loading="true"] .btn-spinner {
      display: inline-flex;
    }

    .dellendoc-page .btn-spinner svg {
      animation: dd-spin 0.8s linear infinite;
    }

    .dellendoc-page .button[data-loading="true"],
    .dellendoc-page .btn[data-loading="true"] {
      opacity: 0.65;
      pointer-events: none;
      cursor: not-allowed;
    }

    @media (prefers-reduced-motion: reduce) {
      .dellendoc-page .btn-spinner svg {
        animation: none;
      }

      .dellendoc-page .button[data-loading="true"] .btn-spinner,
      .dellendoc-page .btn[data-loading="true"] .btn-spinner {
        display: none;
      }

      .dellendoc-page .button[data-loading="true"] .btn-text,
      .dellendoc-page .btn[data-loading="true"] .btn-text {
        display: inline;
      }
    }

    /* ── Privacy page ── */
    .dellendoc-page .privacy-main {
      padding-block: var(--space-16) var(--space-20);
    }

    .dellendoc-page .container.privacy-container {
      width: min(var(--content-width), 42rem);
      max-width: 42rem;
      margin-inline: auto;
      padding-inline: var(--space-4);
    }

    .dellendoc-page .privacy-content {
      border-radius: var(--radius-lg);
      padding: var(--space-8) var(--space-6);
    }

    .dellendoc-page .privacy-content h1 {
      font-family: var(--font-display);
      font-size: var(--font-size-32);
      margin-bottom: var(--space-6);
    }

    .dellendoc-page .privacy-content h2 {
      font-family: var(--font-display);
      font-size: var(--font-size-24);
      margin-top: var(--space-8);
      margin-bottom: var(--space-3);
    }

    .dellendoc-page .privacy-content p,
    .dellendoc-page .privacy-content li {
      font-size: var(--font-size-16);
      color: var(--color-text-muted);
      line-height: 1.7;
      margin-bottom: var(--space-3);
    }

    .dellendoc-page .privacy-content ul {
      padding-inline-start: var(--space-5);
    }

    .dellendoc-page .privacy-content a {
      color: var(--color-accent);
      text-decoration: underline;
      text-underline-offset: 0.15em;
    }

    .dellendoc-page .privacy-content a:hover {
      color: color-mix(in oklch, var(--color-accent) 88%, black);
    }

    .dellendoc-page .footer-inner {
      display: flex;
      flex-direction: column;
      gap: var(--space-4);
      align-items: flex-start;
    }

    @media (max-width: 640px) {
      .dellendoc-page .privacy-content {
        padding: var(--space-5) var(--space-4);
      }
    }

    .dellendoc-page .text-display {
      font-family: var(--font-display);
      font-size: clamp(6rem, 20vw, 12rem);
      line-height: 1;
      letter-spacing: -0.02em;
      color: var(--color-text-faint);
    }

    /* Grad page */
    .dellendoc-page .hero-grid--solo {
      grid-template-columns: 1fr;
      max-width: 40rem;
    }

    .dellendoc-page .grad-answer-snippet {
      margin-top: var(--space-5);
      padding: var(--space-5);
      display: grid;
      gap: var(--space-2);
    }

    .dellendoc-page .grad-answer-snippet__label {
      margin: 0;
      font-size: var(--font-size-14);
      font-weight: 600;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      color: var(--color-text-faint);
    }

    .dellendoc-page .grad-answer-snippet__text {
      margin: 0;
      font-size: var(--font-size-16);
      line-height: 1.55;
      color: var(--color-text);
      max-width: 52ch;
    }


    .dellendoc-page .trust-facts-list.surface {
      padding: var(--space-5);
    }

    .dellendoc-page .grad-master-note {
      margin-top: var(--space-6);
      margin-bottom: 0;
    }

    .dellendoc-page .grad-prose {
      padding: var(--space-5);
      display: grid;
      gap: var(--space-3);
    }

    .dellendoc-page .grad-prose p {
      margin: 0;
      font-size: var(--font-size-16);
    }

    .dellendoc-page .grad-pdr-list {
      list-style: none;
      margin: 0;
      padding: var(--space-5);
      display: grid;
      gap: var(--space-3);
    }

    .dellendoc-page .grad-pdr-list__item {
      display: grid;
      grid-template-columns: auto 1fr;
      gap: var(--space-3);
      align-items: start;
      padding-top: var(--space-3);
    }

    .dellendoc-page .grad-pdr-list__item:first-child {
      padding-top: 0;
    }

    .dellendoc-page .grad-pdr-list__item + .grad-pdr-list__item {
      border-top: 1px solid var(--color-border);
    }

    .dellendoc-page .grad-pdr-list__mark {
      display: grid;
      place-items: center;
      min-width: var(--tap-min);
      min-height: var(--tap-min);
      font-family: var(--font-display);
      font-size: var(--font-size-20);
      line-height: 1;
    }

    .dellendoc-page .grad-pdr-list__item--yes .grad-pdr-list__mark {
      color: var(--color-accent);
    }

    .dellendoc-page .grad-pdr-list__item--no .grad-pdr-list__mark {
      color: var(--color-text-faint);
    }

    .dellendoc-page .grad-pdr-list__item p {
      margin: 0;
      font-size: var(--font-size-16);
      color: var(--color-text);
      padding-top: calc((var(--tap-min) - 1em) / 2);
    }

    .dellendoc-page .grad-cta {
      padding: var(--space-6);
      display: grid;
      gap: var(--space-4);
      justify-items: start;
    }

    .dellendoc-page .grad-cta .section-title {
      margin-bottom: 0;
    }

    .dellendoc-page .grad-cta__address {
      margin: 0;
      font-size: var(--font-size-16);
      color: var(--color-text-muted);
    }

    .dellendoc-page .dent-card--link {
      display: block;
      color: inherit;
      transition: border-color var(--transition-fast), transform var(--transition-fast);
    }

    .dellendoc-page .dent-card--link:hover,
    .dellendoc-page .dent-card--link:focus-visible {
      border-color: color-mix(in oklch, var(--color-accent) 40%, var(--color-border));
      transform: translateY(-1px);
    }

    @media (min-width: 768px) {
      .dellendoc-page .grad-cta {
        padding: var(--space-8);
      }
    }

    .dellendoc-grad-template .faq-list {
      display: flex;
      flex-direction: column;
      gap: var(--space-3);
      margin: 0;
    }

    .dellendoc-grad-template .faq-item {
      padding: var(--space-4) var(--space-5);
      border-radius: var(--radius-lg);
    }

    .dellendoc-grad-template .faq-item dt {
      font-weight: 600;
      color: var(--color-text);
      margin-bottom: var(--space-2);
    }

    .dellendoc-grad-template .faq-item dd {
      color: var(--color-text-muted);
      margin: 0;
    }

    /* ── Хлебные крошки (grad) — совпадают с BreadcrumbList ── */
    .dellendoc-page .breadcrumbs {
      margin-bottom: var(--space-4);
    }

    .dellendoc-page .breadcrumbs__list {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: var(--space-2);
      margin: 0;
      padding: 0;
      list-style: none;
      font-size: var(--font-size-14);
      line-height: var(--line-height-normal);
      color: var(--color-text-faint);
    }

    .dellendoc-page .breadcrumbs__item + .breadcrumbs__item::before {
      content: "/";
      margin-inline-end: var(--space-2);
      color: var(--color-text-faint);
    }

    .dellendoc-page .breadcrumbs__item a {
      color: var(--color-text-muted);
      transition: color var(--transition-fast);
    }

    .dellendoc-page .breadcrumbs__item a:hover,
    .dellendoc-page .breadcrumbs__item a:focus-visible {
      color: var(--color-text);
    }

    .dellendoc-page .breadcrumbs__item[aria-current="page"] {
      color: var(--color-text-faint);
    }

    /* Текущая страница в навигации подвала */
    .dellendoc-page .footer-nav a[aria-current="page"] {
      color: var(--color-text);
    }

    @media (prefers-reduced-motion: reduce) {
      .dellendoc-page .breadcrumbs__item a {
        transition: none;
      }
    }

    /* Часы работы в подвале — как адрес */
    .dellendoc-page .footer-hours {
      font-size: var(--font-size-12);
      color: var(--color-text-faint);
      display: block;
      line-height: var(--line-height-normal);
      margin-top: var(--space-1);
    }

    /* ── Страницы услуг (1.0.3): та же раскладка, что у grad ── */
    .dellendoc-service-template .wp-site-blocks > header:not(#top),
    .dellendoc-service-template #masthead {
      display: none !important;
    }

    .dellendoc-service-template .faq-list {
      display: flex;
      flex-direction: column;
      gap: var(--space-3);
      margin: 0;
    }

    .dellendoc-service-template .faq-item {
      padding: var(--space-4) var(--space-5);
      border-radius: var(--radius-lg);
    }

    .dellendoc-service-template .faq-item dt {
      font-weight: 600;
      color: var(--color-text);
      margin-bottom: var(--space-2);
    }

    .dellendoc-service-template .faq-item dd {
      color: var(--color-text-muted);
      margin: 0;
    }

    .dellendoc-page .service-hero-price {
      margin: var(--space-3) 0 0;
      font-family: var(--font-display);
      font-size: var(--font-size-24);
      line-height: var(--line-height-tight);
      color: var(--color-accent);
    }

    .dellendoc-page .service-list {
      margin: 0;
      padding-left: 1.25em;
      display: grid;
      gap: var(--space-1);
      font-size: var(--font-size-16);
    }

    .dellendoc-page .service-prose + .timeline,
    .dellendoc-page .grad-pdr-list + .service-prose {
      margin-top: var(--space-4);
    }

    .dellendoc-page .grad-cta .hero-actions {
      margin-top: 0;
    }

    /* Ссылки внутри текста: видимые, как акцент */
    .dellendoc-page .service-prose a,
    .dellendoc-page .faq-item dd a,
    .dellendoc-page .timeline p a,
    .dellendoc-page .grad-cta__address a,
    .dellendoc-page a.price-item__link {
      color: var(--color-accent);
      text-decoration: underline;
      text-underline-offset: 0.18em;
      text-decoration-thickness: 1px;
    }

    .dellendoc-page .service-prose a:hover,
    .dellendoc-page .faq-item dd a:hover,
    .dellendoc-page .timeline p a:hover,
    .dellendoc-page .grad-cta__address a:hover,
    .dellendoc-page a.price-item__link:hover {
      text-decoration-thickness: 2px;
    }

    .dellendoc-page .price-links-note {
      margin-top: var(--space-3);
    }

    @media (min-width: 1280px) {
      .dellendoc-page .price-grid--5 {
        grid-template-columns: repeat(5, minmax(0, 1fr));
      }
    }

    /* Подвал: группы «Услуги» и «Навигация» */
    .dellendoc-page .footer-navs {
      display: grid;
      gap: var(--space-4);
    }

    .dellendoc-page .footer-nav__title {
      font-size: var(--font-size-12);
      color: var(--color-text-faint);
      text-transform: uppercase;
      letter-spacing: 0.06em;
    }

    /* Номера телефонов не переносим посередине */
    .dellendoc-page a[href^="tel:"] {
      white-space: nowrap;
    }

    /* Подвал: два телефона — друг под другом */
    .dellendoc-page .footer-contacts-group {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
    }

    /* ===== 1.0.10: таблица цен, фото работ, группы ссылок ===== */
    .dellendoc-page .dd-price-table-wrap {
      overflow-x: auto;
      padding: 0;
      margin-block: var(--space-4);
    }

    .dellendoc-page .dd-price-table {
      width: 100%;
      border-collapse: collapse;
      font-size: var(--font-size-14);
    }

    .dellendoc-page .dd-price-table caption {
      text-align: left;
      padding: var(--space-3) var(--space-4) 0;
      color: var(--color-text-muted);
      font-size: var(--font-size-12);
    }

    .dellendoc-page .dd-price-table th,
    .dellendoc-page .dd-price-table td {
      padding: var(--space-3) var(--space-4);
      border-bottom: 1px solid var(--color-border);
      text-align: left;
      vertical-align: top;
    }

    .dellendoc-page .dd-price-table tr:last-child th,
    .dellendoc-page .dd-price-table tr:last-child td {
      border-bottom: 0;
    }

    .dellendoc-page .dd-price-table__name {
      display: block;
      font-weight: 600;
    }

    .dellendoc-page .dd-price-table__desc {
      display: block;
      color: var(--color-text-muted);
      font-size: var(--font-size-12);
    }

    .dellendoc-page .dd-price-table__price {
      white-space: nowrap;
      font-weight: 600;
      text-align: right;
    }

    .dellendoc-page .dd-photo-grid {
      display: grid;
      gap: var(--space-4);
      grid-template-columns: 1fr;
      margin-block: var(--space-4);
    }

    @media (min-width: 640px) {
      .dellendoc-page .dd-photo-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (min-width: 1024px) {
      .dellendoc-page .dd-photo-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
    }

    .dellendoc-page .dd-photo {
      margin: 0;
      padding: 0;
      overflow: hidden;
    }

    .dellendoc-page .dd-photo img {
      display: block;
      width: 100%;
      height: auto;
      aspect-ratio: 4 / 3;
      object-fit: cover;
    }

    .dellendoc-page .dd-photo figcaption {
      padding: var(--space-2) var(--space-3);
      font-size: var(--font-size-12);
      color: var(--color-text-muted);
      line-height: var(--line-height-normal);
    }

    .dellendoc-page #services .dent-grid + .section-title {
      margin-top: var(--space-10);
    }

    .dellendoc-page .case-grid {
      margin-block: var(--space-4);
    }

    @media (min-width: 640px) {
      .dellendoc-page .footer-navs {
        grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
      }
    }

    /* ── 1.0.12: статьи (/stati/) ── */
    .dellendoc-page .article-main {
      padding-block: var(--space-12) var(--space-20);
    }

    .dellendoc-page .container.article-container {
      width: min(var(--content-width), 48rem);
      max-width: 48rem;
      margin-inline: auto;
      padding-inline: var(--space-4);
    }

    .dellendoc-page .article-content {
      padding: var(--space-10) var(--space-10);
    }

    .dellendoc-page .article-content h1 {
      font-family: var(--font-display);
      font-size: clamp(1.75rem, 1.2rem + 2.2vw, var(--font-size-40));
      line-height: var(--line-height-tight);
      margin: 0 0 var(--space-6);
    }

    .dellendoc-page .article-content h2 {
      font-family: var(--font-display);
      font-size: clamp(1.375rem, 1.1rem + 1vw, var(--font-size-32));
      line-height: 1.25;
      margin: var(--space-10) 0 var(--space-4);
    }

    .dellendoc-page .article-content h3 {
      font-family: var(--font-display);
      font-size: var(--font-size-20);
      line-height: 1.3;
      margin: var(--space-6) 0 var(--space-2);
    }

    .dellendoc-page .article-content p,
    .dellendoc-page .article-content li {
      font-size: 1.0625rem;
      line-height: 1.7;
      color: var(--color-text-muted);
    }

    .dellendoc-page .article-content p {
      margin: 0 0 var(--space-4);
    }

    .dellendoc-page .article-content ul,
    .dellendoc-page .article-content ol {
      margin: 0 0 var(--space-5);
      padding-inline-start: var(--space-6);
    }

    .dellendoc-page .article-content li {
      margin-bottom: var(--space-2);
    }

    .dellendoc-page .article-content strong {
      color: var(--color-text);
    }

    .dellendoc-page .article-content a:not(.button) {
      color: var(--color-accent);
      text-decoration: underline;
      text-underline-offset: 0.15em;
    }

    .dellendoc-page .article-content a:not(.button):hover {
      color: color-mix(in oklch, var(--color-accent) 85%, white);
    }

    .dellendoc-page .article-lead {
      font-size: var(--font-size-18) !important;
      color: var(--color-text) !important;
    }

    .dellendoc-page .article-table-wrap {
      overflow-x: auto;
      margin: var(--space-5) 0 var(--space-6);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-md);
    }

    .dellendoc-page .article-table {
      width: 100%;
      border-collapse: collapse;
      font-size: var(--font-size-16);
      line-height: var(--line-height-normal);
    }

    .dellendoc-page .article-table th,
    .dellendoc-page .article-table td {
      padding: var(--space-3) var(--space-4);
      text-align: left;
      vertical-align: top;
      border-bottom: 1px solid var(--color-border);
      color: var(--color-text-muted);
    }

    .dellendoc-page .article-table thead th {
      background: var(--color-surface-muted);
      color: var(--color-text);
      font-weight: 700;
    }

    .dellendoc-page .article-table tbody tr:last-child td {
      border-bottom: 0;
    }

    .dellendoc-page .article-table td:last-child {
      white-space: nowrap;
      color: var(--color-text);
      font-weight: 700;
    }

    .dellendoc-page .article-cta {
      margin: var(--space-10) 0;
      padding: var(--space-6);
      border-radius: var(--radius-md);
      border: 1px solid var(--color-border);
      border-left: 4px solid var(--color-accent);
      background: var(--color-surface-muted);
    }

    .dellendoc-page .article-cta h2 {
      margin-top: 0;
    }

    .dellendoc-page .article-cta__actions {
      display: flex;
      flex-wrap: wrap;
      gap: var(--space-3);
      margin: var(--space-5) 0 var(--space-4) !important;
    }

    .dellendoc-page .article-cta__actions .button {
      min-height: var(--tap-min);
      padding-block: var(--space-2);
      line-height: 1.3;
      text-align: center;
    }

    .dellendoc-page .article-faq__item {
      border-top: 1px solid var(--color-border);
      padding-top: var(--space-4);
      margin-top: var(--space-4);
    }

    .dellendoc-page .article-faq__item h3 {
      margin-top: 0;
    }

    .dellendoc-page .article-list {
      list-style: none;
      margin: var(--space-6) 0 0 !important;
      padding: 0 !important;
      display: grid;
      gap: var(--space-4);
    }

    .dellendoc-page .article-list li {
      margin: 0;
      padding: var(--space-5);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-md);
      background: var(--color-surface-muted);
    }

    .dellendoc-page .article-list h2 {
      font-size: var(--font-size-20);
      margin: 0 0 var(--space-2);
    }

    .dellendoc-page .article-list p {
      margin: 0;
    }

    @media (max-width: 640px) {
      .dellendoc-page .article-main {
        padding-block: var(--space-8) var(--space-16);
      }

      .dellendoc-page .article-content {
        padding: var(--space-6) var(--space-4);
      }

      .dellendoc-page .article-cta {
        padding: var(--space-5) var(--space-4);
      }

      .dellendoc-page .article-cta__actions .button {
        width: 100%;
      }

      .dellendoc-page .article-table th,
      .dellendoc-page .article-table td {
        padding: var(--space-3);
        font-size: var(--font-size-14);
      }
    }
