/* DivLine Apps ecosystem refresh — shared public and customer surfaces */
:root {
  --dla-ink: #0d1830;
  --dla-ink-2: #26344f;
  --dla-muted: #667085;
  --dla-line: #d9e2ec;
  --dla-paper: #f8fafc;
  --dla-surface: #ffffff;
  --dla-blue: #3157d5;
  --dla-blue-dark: #2444af;
  --dla-blue-soft: #eaf0ff;
  --dla-green: #166c48;
  --dla-green-soft: #ddf9ea;
  --dla-red: #b42318;
  --dla-red-soft: #fff0ee;
  --dla-shadow: 0 18px 60px rgba(13, 24, 48, .09);
  --dla-shadow-sm: 0 8px 26px rgba(13, 24, 48, .07);
  --dla-radius: 20px;
  --dla-radius-sm: 12px;
  --dla-wrap: 1180px;
  --dl140-ink: var(--dla-ink);
  --dl140-blue: var(--dla-blue);
  --dl140-blue-dark: var(--dla-blue-dark);
  --dl140-text: var(--dla-ink-2);
  --dl140-muted: var(--dla-muted);
  --dl140-line: var(--dla-line);
  --dl140-soft: var(--dla-paper);
  --dl140-max: var(--dla-wrap);
}

html { scroll-behavior: smooth; }
body.divline-signal-system {
  background: var(--dla-paper);
  color: var(--dla-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.58;
  -webkit-font-smoothing: antialiased;
}
body.divline-signal-system h1,
body.divline-signal-system h2,
body.divline-signal-system h3 { letter-spacing: -.032em; }
body.divline-signal-system a,
body.divline-signal-system button,
body.divline-signal-system input,
body.divline-signal-system select,
body.divline-signal-system textarea { transition: border-color .18s ease, background-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease; }
body.divline-signal-system :focus-visible { outline: 3px solid rgba(49,87,213,.28); outline-offset: 3px; }

/* Shared public navigation */
body.divline-signal-system .divline-site-header {
  background: rgba(246,247,244,.9) !important;
  border-color: rgba(13,24,48,.09) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px);
}
body.divline-signal-system .divline-header-inner { width: min(calc(100% - 40px), var(--dla-wrap)); padding: 14px 0 !important; }
body.divline-signal-system .divline-logo { max-height: 38px; width: auto; }
body.divline-signal-system .dl140-brandmark { gap: 10px; color: var(--dla-ink); font-size: 1.06rem; }
body.divline-signal-system .dl140-brandmark i { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 11px; background: var(--dla-ink); }
body.divline-signal-system .dl140-brandmark i::after { content: "D"; color: #fff; font-style: normal; font-weight: 900; }
body.divline-signal-system .dl140-brandmark b { font-weight: 850; letter-spacing: -.03em; }
body.divline-signal-system .divline-site-header nav { gap: 1.45rem; }
body.divline-signal-system .divline-site-header nav a { color: var(--dla-ink-2); font-size: .875rem; font-weight: 700; }
body.divline-signal-system .divline-site-header nav a:hover { color: var(--dla-blue); }
body.divline-signal-system #mb { border-color: var(--dla-line); border-radius: 10px; background: #fff; color: var(--dla-ink); }
body.divline-signal-system #mm { border-color: var(--dla-line); background: var(--dla-surface); }
body.divline-signal-system #mm a { padding: 10px 12px; border-radius: 9px; }
body.divline-signal-system #mm a:hover { background: var(--dla-blue-soft); }
body.divline-signal-system #themeToggle { border-radius: 50% !important; }

/* Homepage */
body.divline-v140-home,
body.divline-v140-home .dl140-home { background: var(--dla-paper) !important; }
body.divline-v140-home .dl140-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(76px,10vw,126px) 0 86px;
  background: var(--dla-paper) !important;
  border-color: rgba(13,24,48,.09);
}
body.divline-v140-home .dl140-hero::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: -330px;
  left: 55%;
  width: 760px;
  height: 760px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(49,87,213,.12), transparent 66%);
  pointer-events: none;
}
body.divline-v140-home .dl140-hero-grid { position: relative; z-index: 1; grid-template-columns: 1.05fr .95fr; gap: clamp(48px,7vw,92px); }
body.divline-v140-home .dl140-kicker { color: var(--dla-blue); font-size: .72rem; font-weight: 850; letter-spacing: .13em; }
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-hero h1 {
  max-width: 820px;
  font-size: clamp(3.35rem,7.2vw,5.9rem) !important;
  line-height: .96 !important;
  font-weight: 780 !important;
  letter-spacing: -.068em !important;
  color: var(--dla-ink) !important;
}
body.divline-v140-home .dl140-lead { margin-top: 26px; color: var(--dla-ink-2); font-size: clamp(1.05rem,1.8vw,1.3rem); line-height: 1.65; }
body.divline-v140-home .dl140-actions { margin-top: 30px; }
body.divline-v140-home .dl140-btn { min-height: 49px; padding: 11px 18px; border-color: var(--dla-line); border-radius: var(--dla-radius-sm); font-size: .9rem; font-weight: 800; }
body.divline-v140-home .dl140-btn:hover { transform: translateY(-2px); box-shadow: var(--dla-shadow-sm); }
body.divline-v140-home .dl140-btn.primary { border-color: var(--dla-blue); background: var(--dla-blue); }
body.divline-v140-home .dl140-btn.primary:hover { border-color: var(--dla-blue-dark); background: var(--dla-blue-dark); }
body.divline-v140-home .dl140-text-link { color: var(--dla-blue); font-weight: 800; text-decoration: none !important; }
body.divline-v140-home .dl140-text-link:hover { gap: 11px; }
body.divline-v140-home .dl140-note { margin-top: 19px; font-size: .82rem; }
body.divline-v140-home .dl140-diagnostic {
  padding: 28px;
  border: 1px solid rgba(13,24,48,.1);
  border-radius: 28px;
  background: rgba(255,255,255,.92);
  box-shadow: var(--dla-shadow);
}
body.divline-v140-home .dl140-diagnostic > p { color: var(--dla-blue); }
body.divline-v140-home .dl140-diagnostic article { position: relative; padding: 18px 0 18px 54px; border-color: var(--dla-line); }
body.divline-v140-home .dl140-diagnostic article::before { position: absolute; left: 0; top: 18px; display: grid; width: 38px; height: 38px; place-items: center; border-radius: 12px; color: var(--dla-blue-dark); background: var(--dla-blue-soft); font-size: .75rem; font-weight: 850; }
body.divline-v140-home .dl140-diagnostic article:nth-of-type(1)::before { content: "01"; }
body.divline-v140-home .dl140-diagnostic article:nth-of-type(2)::before { content: "02"; color: #855500; background: #fff3d6; }
body.divline-v140-home .dl140-diagnostic article:nth-of-type(3)::before { content: "03"; color: var(--dla-green); background: var(--dla-green-soft); }
body.divline-v140-home .dl140-diagnostic article:last-child { border-bottom: 0; padding-bottom: 0; }
body.divline-v140-home .dl140-diagnostic h2 { font-weight: 780; }
body.divline-v140-home .dl140-trust { padding: 23px 0; background: rgba(255,255,255,.66); }
body.divline-v140-home .dl140-trust p { color: var(--dla-ink-2); font-size: .86rem; font-weight: 700; }
body.divline-v140-home .dl140-section { padding: clamp(78px,10vw,118px) 0; }
body.divline-v140-home .dl140-section.soft { background: #f1f5f9; }
body.divline-v140-home .dl140-head { grid-template-columns: 1.05fr .95fr; align-items: end; gap: 60px; margin-bottom: 48px; }
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-head h2 { font-size: clamp(2.35rem,4.8vw,4rem) !important; line-height: 1.02 !important; font-weight: 760 !important; letter-spacing: -.052em !important; }
body.divline-v140-home .dl140-head > div:last-child,
body.divline-v140-home .dl140-head > p { font-size: 1.05rem; }
body.divline-v140-home .dl140-pillars { gap: 16px; border: 0; }
body.divline-v140-home .dl140-pillar,
body.divline-v140-home .dl140-pillar + .dl140-pillar {
  min-height: 320px;
  padding: 28px;
  border: 1px solid var(--dla-line);
  border-radius: var(--dla-radius);
  background: var(--dla-surface);
}
body.divline-v140-home .dl140-pillar:hover { transform: translateY(-5px); box-shadow: var(--dla-shadow-sm); }
body.divline-v140-home .dl140-pillar .num { margin-bottom: 62px; }
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-pillar h3 { font-size: 1.65rem !important; letter-spacing: -.035em !important; }
body.divline-v140-home .dl140-process { border-block: 1px solid var(--dla-line); }
body.divline-v140-home .dl140-step { min-height: 270px; padding: 28px 24px; }
body.divline-v140-home .dl140-step + .dl140-step { padding-left: 24px; }
body.divline-v140-home .dl140-step span { margin-bottom: 72px; }
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-step h3 { font-size: 1.28rem !important; letter-spacing: -.025em !important; }
body.divline-v140-home .dl140-case { padding: clamp(32px,6vw,66px); border: 1px solid #cfe0f5; border-radius: 20px; color: var(--dla-ink); background: #edf5ff; }
body.divline-v140-home .dl140-case strong,
body.divline-v140-home .dl140-case h3 { color: var(--dla-ink); }
body.divline-v140-home .dl140-case small,
body.divline-v140-home .dl140-case p { color: var(--dla-muted); }
body.divline-v140-home .dl140-case a { color: var(--dla-blue); }
body.divline-v140-home .dl140-work-grid { gap: 18px; }
body.divline-v140-home .dl140-work-card { overflow: hidden; border: 1px solid var(--dla-line); border-radius: var(--dla-radius); background: #fff; }
body.divline-v140-home .dl140-work-media { border: 0; aspect-ratio: 16/10; }
body.divline-v140-home .dl140-work-overlay { padding: 26px; background: linear-gradient(180deg,transparent 20%,rgba(13,24,48,.94)); }
body.divline-v140-home .dl140-work-meta { padding: 19px 20px 21px; }
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-work-meta h3 { font-size: 1.16rem !important; font-weight: 780 !important; }
body.divline-v140-home .dl140-approaches { gap: 60px; }
body.divline-v140-home .dl140-approach { padding: 28px 0; }
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-approach h3 { font-size: 1.18rem !important; font-weight: 780 !important; }
body.divline-v140-home .dl140-final { padding: clamp(64px,9vw,96px) 0; border-block: 1px solid #cfe0f5; color: var(--dla-ink); background: #eaf2ff; }
body.divline-v140-home .dl140-final .dl140-kicker { color: var(--dla-blue); }
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-final h2 { color: var(--dla-ink) !important; font-size: clamp(2.7rem,5.5vw,4.7rem) !important; font-weight: 760 !important; letter-spacing: -.06em !important; }
body.divline-v140-home .dl140-final p { color: var(--dla-muted); }
body.divline-v140-home .dl140-final .dl140-btn { min-width: 190px; border-color: var(--dla-blue); color: #fff; background: var(--dla-blue); }
body.divline-v140-home .dl140-modal { border-radius: var(--dla-radius); box-shadow: 0 32px 100px rgba(7,13,28,.35); }
body.divline-v140-home .dl140-modal-head { padding: 26px 28px 0; }
body.divline-v140-home .dl140-modal-body { padding: 18px 28px 28px; }
body.divline-v140-home .dl140-form input,
body.divline-v140-home .dl140-form select,
body.divline-v140-home .dl140-form textarea { min-height: 46px; border-radius: 10px; }
body.divline-v140-home .dl140-compact-footer { color: var(--dla-muted); background: #fff; border-color: var(--dla-line); }
body.divline-v140-home .dl140-footer-brand b { color: var(--dla-ink); }
body.divline-v140-home .dl140-footer-links a { color: var(--dla-muted); }
body.divline-v140-home .dl140-footer-links a:hover { color: var(--dla-blue); }
body.divline-v140-home .divline-site-header nav a[href="#contact"] { min-height: 42px; padding: 0 15px; border: 1px solid var(--dla-blue); border-radius: 11px; background: var(--dla-blue) !important; }

/* General frontend surfaces */
body.divline-signal-system:not(.divline-v140-home) main { min-height: 60vh; }
body.divline-signal-system:not(.divline-v140-home) main > section,
body.divline-signal-system:not(.divline-v140-home) main > div { position: relative; }
body.divline-signal-system [class*="rounded-3xl"][class*="bg-white"],
body.divline-signal-system [class*="rounded-2xl"][class*="bg-white"] { border-color: var(--dla-line) !important; box-shadow: 0 8px 28px rgba(13,24,48,.055) !important; }
body.divline-signal-system input:not([type="checkbox"]):not([type="radio"]),
body.divline-signal-system select,
body.divline-signal-system textarea { border-color: #cfd6e2 !important; background: #fff; color: var(--dla-ink); }
body.divline-signal-system input:focus,
body.divline-signal-system select:focus,
body.divline-signal-system textarea:focus { border-color: var(--dla-blue) !important; box-shadow: 0 0 0 4px rgba(49,87,213,.12); outline: 0; }
.dla-request-steps { display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; margin: 0; padding: 0; list-style: none; }
.dla-request-steps li { display: flex; min-width: 0; align-items: center; gap: 9px; padding: 11px; border: 1px solid var(--dla-line); border-radius: 10px; color: var(--dla-muted); background: #f8fafc; font-size: .72rem; font-weight: 760; }
.dla-request-steps b { display: grid; flex: 0 0 26px; width: 26px; height: 26px; place-items: center; border-radius: 50%; color: var(--dla-blue); background: var(--dla-blue-soft); font-size: .7rem; }
.dla-attachment-field input[type="file"] { min-height: 52px; cursor: pointer; }

/* Customer account */
body.divline-account-ui { background: #f5f7fb; }
body.divline-account-ui .divline-site-header { background: rgba(255,255,255,.92) !important; }
body.divline-account-ui > .bg-blue-50.border-y { border-color: var(--dla-line); background: #fff; }
body.divline-account-ui main { width: min(calc(100% - 32px), 1180px); }
body.divline-account-ui main.mx-auto { max-width: 1180px !important; }
body.divline-account-ui nav[aria-label="Customer account navigation"] { margin-top: 1.25rem; padding: 6px; border-color: var(--dla-line); border-radius: 14px; box-shadow: 0 5px 18px rgba(13,24,48,.045); }
body.divline-account-ui nav[aria-label="Customer account navigation"] a { border-radius: 9px; font-size: .82rem; font-weight: 720; }
body.divline-account-ui nav[aria-label="Customer account navigation"] a[aria-current="page"] { background: var(--dla-blue) !important; }
body.divline-account-ui .account-nav { overflow: visible; }
body.divline-account-ui .account-nav-row { position: relative; display: flex; align-items: center; gap: 6px; }
body.divline-account-ui .account-nav-primary { display: flex; min-width: 0; gap: 5px; overflow-x: auto; scrollbar-width: none; }
body.divline-account-ui .account-nav-primary::-webkit-scrollbar { display: none; }
body.divline-account-ui .account-nav-more { position: relative; flex: 0 0 auto; }
body.divline-account-ui .account-nav-more summary { display: flex; min-height: 40px; align-items: center; gap: 7px; padding: 8px 13px; border-radius: 9px; color: var(--dla-ink-2); cursor: pointer; font-size: .82rem; font-weight: 740; list-style: none; }
body.divline-account-ui .account-nav-more summary::-webkit-details-marker { display: none; }
body.divline-account-ui .account-nav-more summary:hover,
body.divline-account-ui .account-nav-more summary.is-active { color: var(--dla-blue); background: var(--dla-blue-soft); }
body.divline-account-ui .account-nav-more-menu { position: absolute; z-index: 60; top: calc(100% + 9px); right: 0; display: grid; grid-template-columns: repeat(2,minmax(190px,1fr)); width: min(460px,calc(100vw - 32px)); max-height: min(520px,70vh); overflow: auto; padding: 8px; border: 1px solid var(--dla-line); border-radius: 14px; background: #fff; box-shadow: var(--dla-shadow); }
body.divline-account-ui .account-nav-more-menu a { display: flex; align-items: center; gap: 9px; padding: 10px 11px; border-radius: 8px; color: var(--dla-ink-2); font-size: .77rem; font-weight: 670; }
body.divline-account-ui .account-nav-more-menu a:hover,
body.divline-account-ui .account-nav-more-menu a.is-active { color: var(--dla-blue); background: var(--dla-blue-soft); }
body.divline-account-ui [class*="rounded-3xl"],
body.divline-account-ui [class*="rounded-2xl"] { border-radius: var(--dla-radius-sm) !important; }
body.divline-account-ui [class*="font-serif"] { font-family: inherit !important; }
body.divline-account-ui .font-black { font-weight: 760 !important; }
body.divline-account-ui a[class*="bg-slate-9"],
body.divline-account-ui button[class*="bg-slate-9"] { background: var(--dla-blue) !important; }
body.divline-account-ui a[class*="bg-slate-9"]:hover,
body.divline-account-ui button[class*="bg-slate-9"]:hover { background: var(--dla-blue-dark) !important; }
body.divline-account-ui [class*="from-slate-950"] { background-image: none !important; background-color: var(--dla-ink) !important; }
body.divline-account-ui table { border-collapse: separate; border-spacing: 0; }
body.divline-account-ui table th { color: var(--dla-muted); background: #f7f9fc; font-size: .7rem; letter-spacing: .06em; text-transform: uppercase; }
body.divline-account-ui table td { border-color: #edf0f5; }

/* Dark mode retains hierarchy rather than inverting every accent. */
html.dark body.divline-signal-system { background: #091122 !important; color: #edf2fb !important; }
html.dark body.divline-signal-system .divline-site-header { background: rgba(9,17,34,.92) !important; border-color: #263248 !important; }
html.dark body.divline-signal-system .dl140-brandmark { color: #f5f7fb; }
html.dark body.divline-signal-system .dl140-brandmark i { background: var(--dla-blue); }
html.dark body.divline-signal-system #mm { background: #0d172a; }
html.dark body.divline-v140-home,
html.dark body.divline-v140-home .dl140-home,
html.dark body.divline-v140-home .dl140-hero { background: #091122 !important; }
html.dark body.divline-v140-home .dl140-diagnostic,
html.dark body.divline-v140-home .dl140-pillar,
html.dark body.divline-v140-home .dl140-work-card { background: #0e1a30; border-color: #2a3850; }
html.dark body.divline-v140-home .dl140-section.soft { background: #0c1628; }
html.dark body.divline-v140-home .dl140-trust { background: #0e1a30; }
html.dark body.divline-v140-home .dl140-compact-footer { background: #060c18; }

@media (max-width: 900px) {
  body.divline-v140-home .dl140-hero-grid,
  body.divline-v140-home .dl140-head,
  body.divline-v140-home .dl140-approaches { grid-template-columns: 1fr; gap: 38px; }
  body.divline-v140-home .dl140-pillars { grid-template-columns: 1fr 1fr; }
  body.divline-v140-home .dl140-pillar:last-child { grid-column: 1 / -1; }
  body.divline-v140-home .dl140-final-grid { align-items: start; }
}

@media (max-width: 640px) {
  .dla-request-steps { grid-template-columns: 1fr 1fr; }
  body.divline-signal-system .divline-header-inner { width: min(calc(100% - 28px), var(--dla-wrap)); }
  body.divline-v140-home .dl140-hero { padding-top: 64px; }
  body.divline-signal-system.divline-v140-home main.dl140-home .dl140-hero h1 { font-size: clamp(2.9rem,14vw,4.35rem) !important; }
  body.divline-v140-home .dl140-pillars { grid-template-columns: 1fr; }
  body.divline-v140-home .dl140-pillar:last-child { grid-column: auto; }
  body.divline-v140-home .dl140-pillar,
  body.divline-v140-home .dl140-pillar + .dl140-pillar { min-height: 270px; padding: 24px; }
  body.divline-v140-home .dl140-pillar .num { margin-bottom: 45px; }
  body.divline-v140-home .dl140-process { border-bottom: 0; }
  body.divline-v140-home .dl140-step,
  body.divline-v140-home .dl140-step + .dl140-step { min-height: auto; padding: 24px 0; }
  body.divline-v140-home .dl140-step span { margin-bottom: 36px; }
  body.divline-v140-home .dl140-final .dl140-btn { width: 100%; }
  body.divline-account-ui main { width: min(calc(100% - 24px), 1180px); padding-inline: 0 !important; }
  body.divline-account-ui .account-nav-more-menu { position: fixed; inset: auto 12px 82px; grid-template-columns: 1fr; width: auto; }
}

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

/* 2026-09 white network canvas — shared by every public and customer page. */
html,
html.dark { background: #fff !important; }

body.divline-signal-system,
html.dark body.divline-signal-system {
  --dla-paper: #fff;
  --dla-ink: #10213a;
  --dla-ink-2: #334155;
  --dla-muted: #64748b;
  --dla-line: #d7e2f0;
  --dla-blue: #2459d3;
  --dla-blue-dark: #1744ad;
  --dla-blue-soft: #edf4ff;
  --dl140-ink: #10213a;
  --dl140-text: #334155;
  --dl140-muted: #64748b;
  --dl140-soft: rgba(247,250,255,.88);
  color: var(--dla-ink) !important;
  background-color: #fff !important;
  background-image:
    repeating-linear-gradient(28deg, rgba(145,213,219,.105) 0 1px, transparent 1px 92px),
    repeating-linear-gradient(152deg, rgba(243,172,86,.075) 0 1px, transparent 1px 108px),
    repeating-linear-gradient(90deg, rgba(152,152,152,.035) 0 1px, transparent 1px 184px),
    radial-gradient(circle at 9% 14%, transparent 0 72px, rgba(36,89,211,.075) 73px 74px, transparent 75px 140px, rgba(145,213,219,.06) 141px 142px, transparent 143px),
    radial-gradient(circle at 91% 64%, transparent 0 82px, rgba(243,172,86,.07) 83px 84px, transparent 85px 158px, rgba(36,89,211,.04) 159px 160px, transparent 161px) !important;
  background-size: 360px 220px, 410px 250px, 520px 300px, 620px 620px, 720px 720px !important;
  background-position: 0 0, 0 0, 0 0, -120px -80px, calc(100% + 180px) 38% !important;
  background-attachment: fixed !important;
}

body.divline-signal-system main,
body.divline-v140-home,
body.divline-v140-home .dl140-home,
body.divline-v140-home .dl140-hero,
body.divline-v140-home .dl140-section,
body.divline-v140-home .dl140-section.soft,
html.dark body.divline-v140-home,
html.dark body.divline-v140-home .dl140-home,
html.dark body.divline-v140-home .dl140-hero,
html.dark body.divline-v140-home .dl140-section.soft {
  background-color: transparent !important;
  background-image: none !important;
}

body.divline-signal-system .divline-site-header,
html.dark body.divline-signal-system .divline-site-header {
  color: var(--dla-ink) !important;
  background: rgba(255,255,255,.92) !important;
  border-color: rgba(37,99,235,.14) !important;
}

body.divline-signal-system .divline-site-header .dl140-brandmark,
body.divline-signal-system .divline-site-header .dl140-brandmark b,
body.divline-signal-system .divline-site-title,
body.divline-signal-system .divline-site-tagline {
  color: #10213a !important;
}

body.divline-signal-system .divline-site-header nav a,
body.divline-signal-system #mm a {
  color: #27364e !important;
}

body.divline-signal-system .divline-site-header nav a:hover,
body.divline-signal-system .divline-site-header nav a:focus-visible,
body.divline-signal-system #mm a:hover,
body.divline-signal-system #mm a:focus-visible {
  color: #1744ad !important;
  background-color: #edf4ff !important;
}

body.divline-signal-system #mb {
  color: #1744ad !important;
  background: #edf4ff !important;
  border-color: #b8cdf5 !important;
}

body.divline-signal-system .signal-public-strip,
html.dark body.divline-signal-system .signal-public-strip {
  color: var(--dla-ink-2) !important;
  background: rgba(255,255,255,.94) !important;
  border-block: 1px solid rgba(37,99,235,.12);
}

body.divline-signal-system .divline-footer,
html.dark body.divline-signal-system .divline-footer,
body.divline-v140-home .dl140-compact-footer,
html.dark body.divline-v140-home .dl140-compact-footer {
  color: var(--dla-ink-2) !important;
  background: rgba(255,255,255,.96) !important;
  border-color: rgba(37,99,235,.14) !important;
}

body.divline-signal-system .divline-footer h2,
body.divline-signal-system .divline-footer h3,
body.divline-signal-system .divline-footer p,
body.divline-signal-system .divline-footer span { color: #334155 !important; }
body.divline-signal-system .divline-footer h2,
body.divline-signal-system .divline-footer h3 { color: #10213a !important; }
body.divline-signal-system .divline-footer a { color: #2459d3 !important; }
body.divline-signal-system .divline-footer a:hover,
body.divline-signal-system .divline-footer a:focus-visible { color: #1744ad !important; text-decoration: underline; text-underline-offset: 3px; }
body.divline-signal-system .divline-footer [class*="border-white"] { border-color: rgba(37,99,235,.2) !important; }

/* The public experience is intentionally light-only. Theme switching markup is not rendered. */

body.divline-signal-system #cookieBanner,
body.divline-signal-system #cookiePreferences > div {
  color: #334155 !important;
  background: #fff !important;
  border-color: #cbd9ec !important;
}
body.divline-signal-system #cookieBanner h3,
body.divline-signal-system #cookiePreferences h2 { color: #10213a !important; }
body.divline-signal-system #cookieBanner button,
body.divline-signal-system #cookiePreferences button { color: #10213a; }
body.divline-signal-system #cookieBanner button[class*="bg-slate-900"],
body.divline-signal-system #cookiePreferences button[class*="bg-slate-900"] { color: #fff !important; background: #2459d3 !important; }

@media (max-width: 640px) {
  body.divline-signal-system,
  html.dark body.divline-signal-system {
    background-size: 260px 170px, 260px 170px, 430px 430px, 500px 500px !important;
    background-position: 0 0, 0 0, -130px -30px, calc(100% + 170px) 48% !important;
  }
}

/* 2026-09-08 consultancy foundation — restrained scale, high contrast, light surfaces. */
body.divline-signal-system,
html.dark body.divline-signal-system {
  color-scheme: light !important;
  color: #14233b !important;
}

body.divline-signal-system main:not(.dl130-home) h1,
html.dark body.divline-signal-system main:not(.dl130-home) h1 {
  color: #10213a !important;
  font-size: clamp(2.1rem, 4.2vw, 3.65rem) !important;
  line-height: 1.06 !important;
  font-weight: 740 !important;
  letter-spacing: -.045em !important;
}

body.divline-signal-system main:not(.dl130-home) h2,
html.dark body.divline-signal-system main:not(.dl130-home) h2 {
  color: #10213a !important;
  font-size: clamp(1.55rem, 2.8vw, 2.5rem) !important;
  line-height: 1.12 !important;
  font-weight: 720 !important;
  letter-spacing: -.035em !important;
}

body.divline-signal-system .divline-site-header,
html.dark body.divline-signal-system .divline-site-header {
  background: rgba(255,255,255,.96) !important;
  border-bottom: 1px solid rgba(36,89,211,.14) !important;
  box-shadow: 0 8px 30px rgba(16,33,58,.045) !important;
}

body.divline-signal-system .divline-header-inner {
  min-height: 68px !important;
  padding-block: 10px !important;
}

body.divline-signal-system .dl140-brandmark i,
html.dark body.divline-signal-system .dl140-brandmark i { background: #2459d3 !important; }

body.divline-signal-system .divline-site-header nav,
html.dark body.divline-signal-system .divline-site-header nav {
  gap: 4px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.divline-signal-system .divline-site-header nav a,
html.dark body.divline-signal-system .divline-site-header nav a {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  padding: 0 11px !important;
  border: 1px solid transparent !important;
  border-radius: 9px !important;
  color: #263750 !important;
  background: transparent !important;
  font-size: .84rem !important;
  font-weight: 690 !important;
  letter-spacing: -.005em !important;
}

body.divline-signal-system .divline-site-header nav a::after,
html.dark body.divline-signal-system .divline-site-header nav a::after { display: none !important; }

body.divline-signal-system .divline-site-header nav a:hover,
body.divline-signal-system .divline-site-header nav a:focus-visible,
body.divline-signal-system .divline-site-header nav a.is-current,
html.dark body.divline-signal-system .divline-site-header nav a:hover,
html.dark body.divline-signal-system .divline-site-header nav a:focus-visible,
html.dark body.divline-signal-system .divline-site-header nav a.is-current {
  color: #1744ad !important;
  background: #edf4ff !important;
}

body.divline-signal-system .divline-site-header nav a[data-primary-nav="1"],
body.divline-signal-system .divline-site-header nav a[href*="website-request.php"],
html.dark body.divline-signal-system .divline-site-header nav a[data-primary-nav="1"],
html.dark body.divline-signal-system .divline-site-header nav a[href*="website-request.php"] {
  padding-inline: 15px !important;
  border-color: #2459d3 !important;
  color: #fff !important;
  background: #2459d3 !important;
}

body.divline-signal-system .divline-site-header nav a[data-primary-nav="1"]:hover,
body.divline-signal-system .divline-site-header nav a[href*="website-request.php"]:hover,
html.dark body.divline-signal-system .divline-site-header nav a[data-primary-nav="1"]:hover,
html.dark body.divline-signal-system .divline-site-header nav a[href*="website-request.php"]:hover {
  border-color: #1744ad !important;
  color: #fff !important;
  background: #1744ad !important;
}

body.divline-v140-home .dl140-hero,
html.dark body.divline-v140-home .dl140-hero {
  padding: clamp(62px, 7vw, 88px) 0 clamp(58px, 6vw, 78px) !important;
  background: transparent !important;
}

body.divline-v140-home .dl140-hero::after,
html.dark body.divline-v140-home .dl140-hero::after {
  top: -360px;
  left: 58%;
  width: 680px;
  height: 680px;
  background: radial-gradient(circle, rgba(36,89,211,.105), transparent 67%);
}

body.divline-v140-home .dl140-hero-grid { grid-template-columns: minmax(0,1.08fr) minmax(340px,.92fr); gap: clamp(42px, 5vw, 68px); }

body.divline-signal-system.divline-v140-home main.dl140-home .dl140-hero h1,
html.dark body.divline-signal-system.divline-v140-home main.dl140-home .dl140-hero h1 {
  max-width: 700px;
  color: #10213a !important;
  font-size: clamp(2.45rem, 4.4vw, 4rem) !important;
  line-height: 1.035 !important;
  font-weight: 740 !important;
  letter-spacing: -.052em !important;
}

body.divline-v140-home .dl140-kicker,
html.dark body.divline-v140-home .dl140-kicker { color: #2459d3 !important; }

body.divline-v140-home .dl140-lead,
html.dark body.divline-v140-home .dl140-lead {
  max-width: 660px;
  margin-top: 22px;
  color: #42526a !important;
  font-size: clamp(1rem, 1.35vw, 1.14rem);
  line-height: 1.68;
}

body.divline-v140-home .dl140-note,
html.dark body.divline-v140-home .dl140-note,
body.divline-v140-home .dl140-trust p,
html.dark body.divline-v140-home .dl140-trust p { color: #5b6b81 !important; }

body.divline-v140-home .dl140-diagnostic,
html.dark body.divline-v140-home .dl140-diagnostic {
  padding: 25px 26px;
  border: 1px solid #d7e2f0;
  border-radius: 16px;
  color: #14233b !important;
  background: rgba(255,255,255,.95) !important;
  box-shadow: 0 16px 46px rgba(16,33,58,.075);
}

body.divline-v140-home .dl140-diagnostic h2,
html.dark body.divline-v140-home .dl140-diagnostic h2 {
  color: #14233b !important;
  font-size: 1rem !important;
  line-height: 1.35 !important;
  letter-spacing: -.015em !important;
}

body.divline-v140-home .dl140-diagnostic article p,
html.dark body.divline-v140-home .dl140-diagnostic article p { color: #5b6b81 !important; }

body.divline-v140-home .dl140-trust,
html.dark body.divline-v140-home .dl140-trust {
  padding: 18px 0;
  background: rgba(247,250,255,.82) !important;
  border-color: #dce6f2 !important;
}

body.divline-v140-home .dl140-section { padding: clamp(64px, 7vw, 86px) 0; }
body.divline-v140-home .dl140-section.soft,
html.dark body.divline-v140-home .dl140-section.soft { background: rgba(247,250,255,.86) !important; }
body.divline-v140-home .dl140-head { grid-template-columns: minmax(280px,.85fr) minmax(0,1.15fr); gap: clamp(36px,5vw,64px); margin-bottom: 38px; }

body.divline-signal-system.divline-v140-home main.dl140-home .dl140-head h2,
html.dark body.divline-signal-system.divline-v140-home main.dl140-home .dl140-head h2 {
  max-width: 610px;
  color: #10213a !important;
  font-size: clamp(1.85rem, 3vw, 2.75rem) !important;
  line-height: 1.09 !important;
  font-weight: 720 !important;
  letter-spacing: -.04em !important;
}

body.divline-v140-home .dl140-head > div:last-child,
body.divline-v140-home .dl140-head > p,
html.dark body.divline-v140-home .dl140-head > div:last-child,
html.dark body.divline-v140-home .dl140-head > p { color: #53647a !important; font-size: .98rem; line-height: 1.72; }

body.divline-v140-home .dl140-pillars { gap: 14px; }
body.divline-v140-home .dl140-pillar,
body.divline-v140-home .dl140-pillar + .dl140-pillar,
html.dark body.divline-v140-home .dl140-pillar,
html.dark body.divline-v140-home .dl140-pillar + .dl140-pillar {
  min-height: 252px;
  padding: 25px;
  border: 1px solid #d7e2f0;
  border-radius: 14px;
  color: #14233b !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 6px 22px rgba(16,33,58,.035);
}

body.divline-v140-home .dl140-pillar .num { margin-bottom: 34px; }
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-pillar h3,
html.dark body.divline-signal-system.divline-v140-home main.dl140-home .dl140-pillar h3 {
  color: #14233b !important;
  font-size: 1.22rem !important;
  line-height: 1.25 !important;
  letter-spacing: -.025em !important;
}
body.divline-v140-home .dl140-pillar p,
html.dark body.divline-v140-home .dl140-pillar p { color: #5a6a80 !important; }

body.divline-v140-home .dl140-process { border-color: #d7e2f0 !important; }
body.divline-v140-home .dl140-step,
html.dark body.divline-v140-home .dl140-step { min-height: 220px; padding: 25px 22px; border-color: #d7e2f0 !important; }
body.divline-v140-home .dl140-step span { margin-bottom: 42px; }
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-step h3,
html.dark body.divline-signal-system.divline-v140-home main.dl140-home .dl140-step h3 { color: #14233b !important; font-size: 1.08rem !important; }
body.divline-v140-home .dl140-step p,
html.dark body.divline-v140-home .dl140-step p { color: #5a6a80 !important; }

body.divline-v140-home .dl140-case,
html.dark body.divline-v140-home .dl140-case,
body.divline-v140-home .dl140-work-card,
html.dark body.divline-v140-home .dl140-work-card {
  color: #14233b !important;
  background: rgba(255,255,255,.96) !important;
  border-color: #d7e2f0 !important;
}

body.divline-v140-home .dl140-case strong,
body.divline-v140-home .dl140-case h3,
body.divline-v140-home .dl140-work-meta h3,
html.dark body.divline-v140-home .dl140-case strong,
html.dark body.divline-v140-home .dl140-case h3,
html.dark body.divline-v140-home .dl140-work-meta h3 { color: #14233b !important; }

body.divline-v140-home .dl140-approach,
html.dark body.divline-v140-home .dl140-approach { border-color: #d7e2f0 !important; }
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-approach h3,
html.dark body.divline-signal-system.divline-v140-home main.dl140-home .dl140-approach h3 { color: #14233b !important; font-size: 1.08rem !important; }
body.divline-v140-home .dl140-approach p,
html.dark body.divline-v140-home .dl140-approach p { color: #5a6a80 !important; }

body.divline-v140-home .dl140-final,
html.dark body.divline-v140-home .dl140-final {
  padding: clamp(58px,7vw,80px) 0;
  color: #14233b !important;
  background: rgba(237,244,255,.9) !important;
  border-color: #cfe0f5 !important;
}
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-final h2,
html.dark body.divline-signal-system.divline-v140-home main.dl140-home .dl140-final h2 {
  max-width: 720px;
  color: #10213a !important;
  font-size: clamp(2rem, 3.5vw, 3.15rem) !important;
  line-height: 1.07 !important;
  font-weight: 730 !important;
  letter-spacing: -.045em !important;
}
body.divline-v140-home .dl140-final p,
html.dark body.divline-v140-home .dl140-final p { color: #53647a !important; }

body.divline-v140-home .dl140-compact-footer,
html.dark body.divline-v140-home .dl140-compact-footer { background: rgba(255,255,255,.97) !important; }
body.divline-v140-home .dl140-compact-footer .inner { padding-block: 27px; }
body.divline-v140-home .dl140-footer-brand b,
html.dark body.divline-v140-home .dl140-footer-brand b { color: #10213a !important; }
body.divline-v140-home .dl140-footer-brand span,
html.dark body.divline-v140-home .dl140-footer-brand span { color: #64748b !important; }

body.divline-signal-system #cookieBanner button,
body.divline-signal-system #cookiePreferences button,
html.dark body.divline-signal-system #cookieBanner button,
html.dark body.divline-signal-system #cookiePreferences button {
  border: 1px solid #cbd9ec !important;
  color: #263750 !important;
  background: #fff !important;
}
body.divline-signal-system #cookieBanner button[class*="bg-slate-200"] { background: #edf2f8 !important; }
body.divline-signal-system #cookieBanner button[class*="bg-slate-900"],
body.divline-signal-system #cookiePreferences button[class*="bg-slate-900"] { border-color: #2459d3 !important; color: #fff !important; background: #2459d3 !important; }

@media (max-width: 900px) {
  body.divline-v140-home .dl140-hero-grid,
  body.divline-v140-home .dl140-head { grid-template-columns: 1fr; gap: 34px; }
  body.divline-v140-home .dl140-diagnostic { max-width: 680px; }
}

@media (max-width: 640px) {
  body.divline-signal-system .divline-header-inner { min-height: 62px !important; }
  body.divline-signal-system.divline-v140-home main.dl140-home .dl140-hero h1,
  html.dark body.divline-signal-system.divline-v140-home main.dl140-home .dl140-hero h1 { font-size: clamp(2.15rem, 10.5vw, 3rem) !important; }
  body.divline-v140-home .dl140-section { padding-block: 56px; }
  body.divline-v140-home .dl140-pillar,
  body.divline-v140-home .dl140-pillar + .dl140-pillar,
  html.dark body.divline-v140-home .dl140-pillar,
  html.dark body.divline-v140-home .dl140-pillar + .dl140-pillar { min-height: 0; padding: 22px; }
  body.divline-v140-home .dl140-pillar .num { margin-bottom: 24px; }
  body.divline-v140-home .dl140-step span { margin-bottom: 24px; }
}

/* September 2026 refinement: a quieter consultancy, compact project showcase. */
body.divline-signal-system.divline-v140-home,
html.dark body.divline-signal-system.divline-v140-home {
  background-color: #fff !important;
  background-image: repeating-linear-gradient(28deg,rgba(145,213,219,.085) 0 1px,transparent 1px 110px),repeating-linear-gradient(148deg,rgba(243,172,86,.055) 0 1px,transparent 1px 165px),repeating-linear-gradient(90deg,rgba(152,152,152,.025) 0 1px,transparent 1px 230px) !important;
}
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-hero h1,
html.dark body.divline-signal-system.divline-v140-home main.dl140-home .dl140-hero h1 {
  font-size: clamp(2rem,3.8vw,3rem) !important; line-height:1.14 !important; letter-spacing:-.035em !important; max-width:590px;
}
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-head h2,
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-approaches h2,
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-final h2 {
  font-size:clamp(1.5rem,2.5vw,2rem) !important; line-height:1.25 !important; letter-spacing:-.025em !important;
}
body.divline-v140-home .dl140-wrap { max-width:1160px; }
body.divline-v140-home .dl140-hero { padding-block:64px !important; }
body.divline-v140-home .dl140-section { padding-block:56px; }
body.divline-v140-home .dl140-head { margin-bottom:26px; align-items:end; }
body.divline-v140-home .dl140-lead { font-size:1.05rem; line-height:1.75; max-width:590px; }
body.divline-v140-home .dl140-diagnostic { padding:24px; box-shadow:0 8px 30px rgba(16,33,58,.035) !important; }
body.divline-v140-home .dl140-diagnostic article { padding-block:17px; }
body.divline-v140-home .dl140-diagnostic article::after { content:none !important; }
body.divline-v140-home .dl140-pillar .num { margin-bottom:24px; }
body.divline-v140-home .dl140-step { min-height:190px; }
body.divline-v140-home .dl140-step span { margin-bottom:26px; }
body.divline-v140-home .dl140-trust { font-size:.82rem; }
body.divline-v140-home .dl140-compact-footer nav { gap:12px 22px; }
.dl190-showcase { min-width:0; }
.dl190-showcase-toolbar { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:14px; color:#52647a; font-size:.8rem; }
.dl190-showcase-toolbar button { border:1px solid #cfdbec; border-radius:6px; padding:8px 12px; color:#244a91; background:#fff; cursor:pointer; font:inherit; }
.dl190-showcase-toolbar button[hidden] { display:none; }
.dl190-work-window { position:relative; overflow-x:auto; padding:4px 0 10px; scrollbar-width:thin; scrollbar-color:#a9bfdf #f0f5fc; }
.dl190-work-track { display:flex; width:max-content; }
.dl190-work-group { position:relative; display:flex; align-items:stretch; gap:18px; padding-right:18px; }
.dl190-work-card { position:relative; flex:0 0 auto; width:284px; min-height:208px; overflow:hidden; border:1px solid #d9e3ef; border-radius:10px; background:#fff; color:#10213a; isolation:isolate; }
.dl190-work-image { height:132px; overflow:hidden; border-bottom:1px solid #e4ebf4; background:#f0f5fc; display:grid; place-items:center; }
.dl190-work-image img { display:block; width:100%; height:100%; object-fit:cover; object-position:top; }
.dl190-work-caption { padding:13px 15px; }
.dl190-work-caption>span,.dl190-work-detail>span { color:#2459d3; font-size:.7rem; font-weight:650; letter-spacing:.035em; }
body.divline-v140-home .dl190-work-card h3 { margin:7px 0 0; color:#10213a !important; font:650 1rem/1.4 Inter,system-ui,sans-serif !important; letter-spacing:-.012em; }
.dl190-work-detail { position:absolute; inset:0; z-index:2; display:flex; flex-direction:column; padding:20px; overflow-y:auto; background:#f7faff; opacity:0; transform:translateY(8px); transition:opacity .18s,transform .18s; pointer-events:none; }
.dl190-work-detail p { margin:12px 0 18px; color:#41546e; font-size:.82rem; line-height:1.65; }
.dl190-work-detail a { margin-top:auto; display:block; padding:10px 0 0; border-top:1px solid #d9e3ef; color:#194cae; font-size:.82rem; font-weight:650; }
.dl190-work-card:hover .dl190-work-detail,.dl190-work-card:focus-within .dl190-work-detail { opacity:1; transform:none; pointer-events:auto; }
.dl190-work-card:focus-visible,.dl190-work-window:focus-visible,.dl190-work-detail a:focus-visible { outline:3px solid #2459d3; outline-offset:-3px; }
.dl190-showcase.has-motion .dl190-work-window { overflow-x:hidden; }
.dl190-showcase.has-motion .dl190-work-track { animation:dl190-travel 48s linear infinite; will-change:transform; }
.dl190-showcase:hover .dl190-work-track,.dl190-showcase:focus-within .dl190-work-track,.dl190-showcase.is-paused .dl190-work-track { animation-play-state:paused; }
.dl190-showcase.is-browsing .dl190-work-track { animation:none; transform:none; }
.dl190-showcase.is-browsing .dl190-work-window { overflow-x:auto; }
.dl190-showcase.is-browsing [data-repeat] { visibility:hidden; }
@keyframes dl190-travel { from { transform:translateX(0); } to { transform:translateX(-50%); } }
@media (max-width:640px) and (hover:none),(prefers-reduced-motion:reduce) {
  .dl190-showcase .dl190-work-track { animation:none !important; transform:none !important; }
  .dl190-showcase [data-repeat],.dl190-showcase [data-portfolio-pause] { display:none !important; }
  .dl190-showcase .dl190-work-window { overflow-x:auto !important; scroll-snap-type:x proximity; }
  .dl190-work-card { scroll-snap-align:start; }
  .dl190-work-caption { display:none; }
  .dl190-work-detail { position:relative; opacity:1; transform:none; pointer-events:auto; }
}
@media (max-width:640px) {
  body.divline-v140-home .dl140-hero { padding-block:38px !important; }
  body.divline-v140-home .dl140-section { padding-block:40px; }
  .dl190-work-card { width:min(300px,80vw); }
  .dl190-showcase-toolbar>span { max-width:180px; }
}


/* R4 specialist tabs and stepped request flow. */
.dlr4-approach-tabs { min-width:0; }
.dlr4-approach-tablist { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; border:1px solid #d7e2f0; border-radius:12px; overflow:hidden; background:rgba(255,255,255,.9); }
.dlr4-approach-tablist button { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:10px; min-height:64px; padding:12px 16px; border:0; border-right:1px solid #d7e2f0; color:#52647a; background:transparent; text-align:left; cursor:pointer; font:inherit; }
.dlr4-approach-tablist button:last-child { border-right:0; }
.dlr4-approach-tablist button span { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; color:#2459d3; background:#edf4ff; font-size:.68rem; font-weight:800; }
.dlr4-approach-tablist button b { font-size:.82rem; line-height:1.3; font-weight:700; }
.dlr4-approach-tablist button[aria-selected="true"] { color:#10213a; background:linear-gradient(135deg,rgba(145,213,219,.16),rgba(243,172,86,.10)); box-shadow:inset 0 -3px 0 #2459d3; }
.dlr4-approach-panels { min-height:230px; }
body.divline-v140-home .dlr4-approach-panel { padding:32px 2px 10px; border:0 !important; }
.dlr4-approach-panel[hidden] { display:none !important; }

.dla-request-steps li { padding:0; }
.dla-request-steps button { width:100%; min-height:52px; display:flex; align-items:center; gap:9px; padding:11px; border:0; border-radius:10px; color:inherit; background:transparent; text-align:left; cursor:pointer; font:inherit; font-weight:760; }
.dla-request-steps li.active { border-color:#91d5db; color:#10213a; background:linear-gradient(135deg,#eaf7f8 0%,#fdf4ea 100%); box-shadow:0 0 0 2px rgba(36,89,211,.06); }
.dla-request-steps li.done { border-color:#c9dbe3; background:#f7fbfb; }
.dla-request-steps li.active b { color:#fff; background:#2459d3; }
.dla-request-steps li.done b { color:#10213a; background:#91d5db; }
.dla-request-step-panel { display:grid; gap:16px; margin-top:22px; }
.dla-request-step-panel[hidden] { display:none !important; }
.dla-step-actions { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:4px; padding-top:18px; border-top:1px solid #e4ebf4; }
.dla-step-next,.dla-step-back { min-height:44px; border-radius:8px; padding:10px 16px; font:700 .84rem/1.2 Inter,system-ui,sans-serif; cursor:pointer; }
.dla-step-next { margin-left:auto; border:1px solid #2459d3; color:#fff; background:#2459d3; }
.dla-step-back { border:1px solid #cad8e8; color:#334155; background:#fff; }
.dla-step-next:hover { background:#1744ad; }
.dla-step-back:hover { border-color:#91d5db; background:#f6fbfc; }

@media(max-width:720px){
 .dlr4-approach-tablist { grid-template-columns:1fr; }
 .dlr4-approach-tablist button { border-right:0; border-bottom:1px solid #d7e2f0; }
 .dlr4-approach-tablist button:last-child { border-bottom:0; }
 .dla-step-actions { flex-wrap:wrap; }
 .dla-step-next,.dla-step-back { flex:1 1 160px; }
}

/* R4.2 brand slogan, full-width request, and full-screen contract review */
.divline-logo-stack{display:inline-flex;flex-direction:column;align-items:stretch;line-height:1}.divline-logo-slogan{display:block;width:100%;margin-top:4px;color:#52647a;font-family:"Segoe Script","Bradley Hand","Brush Script MT","URW Chancery L",cursive;font-size:clamp(18px,1.55vw,22px);font-weight:600;line-height:1.05;letter-spacing:.10em;text-align:center;text-transform:none;white-space:nowrap}.dl190-request-layout{max-width:none!important;width:100%}.dl190-request-layout>.dl190-request-flow{width:100%;max-width:1480px;margin:0 auto}.dla-request-steps button{cursor:pointer}.dla-request-steps button:focus-visible{outline:3px solid rgba(36,89,211,.28);outline-offset:3px}.dl-contract-dialog{width:100vw;height:100dvh;max-width:none!important;max-height:none!important;margin:0;border:0;padding:0;background:#f8fafc}.dl-contract-dialog::backdrop{background:rgba(15,23,42,.76)}.dl-contract-shell{display:flex;height:100%;flex-direction:column}.dl-contract-toolbar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #d7e2f0;background:rgba(255,255,255,.97);padding:14px 20px}.dl-contract-scroll{flex:1;overflow:auto;padding:24px}.dl-contract-doc{max-width:980px;margin:0 auto;background:#fff;border:1px solid #d7e2f0;border-radius:18px;padding:clamp(20px,4vw,44px);box-shadow:0 16px 50px rgba(16,33,58,.08)}.dl-contract-doc h2,.dl-contract-doc h3{color:#10213a}.dl-contract-section{margin-top:22px;padding-top:20px;border-top:1px solid #e6edf5}.dl-contract-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:18px 0}.dl-contract-summary>div{border:1px solid #d7e2f0;border-radius:12px;padding:14px;background:#f8fbff}.dl-contract-confirm{position:sticky;bottom:0;z-index:3;border-top:1px solid #d7e2f0;background:rgba(255,255,255,.98);padding:14px 20px}.dl-contract-confirm-inner{max-width:980px;margin:0 auto}.dl-contract-dialog.is-minimized{width:min(680px,calc(100vw - 24px));height:auto;max-height:none!important;inset:auto 12px 12px auto;margin:0;border:1px solid #d7e2f0;border-radius:16px;overflow:hidden}.dl-contract-dialog.is-minimized .dl-contract-scroll,.dl-contract-dialog.is-minimized .dl-contract-confirm{display:none}.dl-contract-dialog.is-minimized .dl-contract-toolbar{border:0}.dl-antispam-before-review{margin-top:4px}
@media(max-width:700px){.divline-logo-slogan{font-size:10px}.dl-contract-toolbar{align-items:flex-start}.dl-contract-scroll{padding:12px}.dl-contract-dialog.is-minimized{left:12px;right:12px;width:auto}}

/* R4.3 logo-colour network visibility and tighter selected work. */
body:not(.admin-body),body.divline-v140-home{background-color:#fff;background-image:repeating-linear-gradient(28deg,rgba(145,213,219,.16) 0 1px,transparent 1px 96px),repeating-linear-gradient(152deg,rgba(243,172,86,.12) 0 1px,transparent 1px 150px),repeating-linear-gradient(90deg,rgba(152,152,152,.055) 0 1px,transparent 1px 210px),radial-gradient(circle at 13% 16%,rgba(36,89,211,.105) 0 1.5px,transparent 2px),radial-gradient(circle at 84% 28%,rgba(145,213,219,.15) 0 1.5px,transparent 2px),radial-gradient(circle at 68% 76%,rgba(243,172,86,.12) 0 1.5px,transparent 2px);background-size:auto,auto,auto,130px 130px,160px 160px,180px 180px;}
body.divline-v140-home #selected-work{padding-block:30px;}
body.divline-v140-home #selected-work .dl140-section-head{margin-bottom:12px;}
body.divline-v140-home #selected-work .dl140-section-head h2{margin-top:8px;}
@media(max-width:640px){.divline-logo-slogan{font-size:15px}body.divline-v140-home #selected-work{padding-block:24px}.dl190-work-card{width:min(278px,80vw)}}

/* R4.3 FINAL footer, brand script and network visibility */
.divline-footer-slogan{display:block;width:180px;max-width:60vw;margin:0 auto 6px;text-align:center;color:#52647a;font-family:"Segoe Script","Bradley Hand","Brush Script MT","URW Chancery L",cursive;font-size:17px;font-weight:600;line-height:1;letter-spacing:.06em;white-space:nowrap}.divline-footer-slogan-dark{width:210px;max-width:100%;margin:0 0 8px;color:#91d5db}.divline-footer-copyright{display:block;margin-top:5px;white-space:nowrap}.dl140-compact-footer .inner{align-items:center;gap:18px}.dl140-compact-footer .dl140-footer-brand{min-width:255px}.dl140-compact-footer .dl140-footer-links{align-items:center}.divline-logo-slogan{font-size:clamp(20px,1.8vw,26px)!important;letter-spacing:.035em!important;font-weight:600!important}.divline-signal-system{background-image:linear-gradient(26deg,transparent 0 47%,rgba(145,213,219,.17) 47.1% 47.35%,transparent 47.45%),linear-gradient(154deg,transparent 0 53%,rgba(243,172,86,.12) 53.1% 53.35%,transparent 53.45%),linear-gradient(92deg,transparent 0 67%,rgba(36,89,211,.075) 67.1% 67.3%,transparent 67.4%),linear-gradient(8deg,transparent 0 72%,rgba(158,158,158,.075) 72.1% 72.28%,transparent 72.38%)!important;background-size:560px 410px,680px 520px,920px 680px,760px 610px!important;background-attachment:fixed!important}body.divline-v140-home #selected-work{padding-top:22px!important;padding-bottom:22px!important}body.divline-v140-home #selected-work .dl140-head{margin-bottom:8px!important}@media(max-width:800px){.divline-footer-copyright{white-space:normal}.dl140-compact-footer .inner{align-items:flex-start}.divline-footer-slogan{margin-left:0}.divline-logo-slogan{font-size:17px!important}.divline-signal-system{background-attachment:scroll!important}}


/* R4.4.3 shared control surface for request steps. */
.dla-request-steps li{border-color:#91d5db;background:linear-gradient(135deg,#eaf7f8 0%,#fdf4ea 100%);color:#10213a}
.dla-request-steps li.done,.dla-request-steps li.active{background:linear-gradient(135deg,#eaf7f8 0%,#fdf4ea 100%)}


/* R4.4.4 visible DivLine spider/network lines and control consistency. */
body.divline-signal-system,html.dark body.divline-signal-system{background-color:#fff!important;background-image:linear-gradient(rgba(255,255,255,.70),rgba(255,255,255,.70)),url('../img/divline-spider-lines.svg')!important;background-repeat:repeat!important;background-size:auto,1200px 800px!important;background-attachment:fixed!important}
body.divline-signal-system main>section,body.divline-signal-system main>div{background-color:rgba(255,255,255,.82)}
body.divline-signal-system .divline-site-header{background:rgba(255,255,255,.96)!important}
body.divline-signal-system button:not([class*="bg-red"]):not([class*="bg-green"]):not([class*="bg-amber"]),body.divline-signal-system a.dla-control-surface{border-color:#91d5db!important;color:#10213a!important;background:linear-gradient(135deg,#eaf7f8 0%,#fdf4ea 100%)!important}


/* R4.4.5: visible network canvas, request-step parity, logo refinement and footer alignment. */
body.divline-signal-system,html.dark body.divline-signal-system{
  background-color:#f8fbfc!important;
  background-image:linear-gradient(90deg,rgba(255,255,255,.30) 0%,rgba(255,255,255,.84) 34%,rgba(255,255,255,.94) 50%,rgba(255,255,255,.84) 66%,rgba(255,255,255,.30) 100%),url('../img/divline-spider-lines.svg')!important;
  background-repeat:no-repeat,repeat!important;background-size:100% 100%,1050px 700px!important;background-attachment:fixed!important;
}
body.divline-signal-system main>section,body.divline-signal-system main>div{background-color:rgba(255,255,255,.74)}
body.divline-consultancy-page main>section,body.divline-consultancy-page main>div{background-color:rgba(255,255,255,.68)}
body.divline-signal-system .divline-site-header{background:rgba(255,255,255,.94)!important}
body.divline-signal-system .divline-logo{max-height:48px!important;max-width:min(282px,44vw)!important;width:auto!important}
body.divline-signal-system .divline-logo-stack{align-items:center!important}
body.divline-signal-system .divline-logo-slogan{margin-top:1px!important;font-size:clamp(13px,1.05vw,16px)!important;font-weight:600!important;letter-spacing:.055em!important;color:#52647a!important;transform:rotate(-1.4deg)}
body.divline-v140-home .divline-logo{max-height:48px!important;max-width:min(282px,44vw)!important}
body.divline-consultancy-page .dla-request-steps>li,
body.divline-consultancy-page .dla-request-steps>li.active,
body.divline-consultancy-page .dla-request-steps>li.done{
  border:1px solid #91d5db!important;color:#10213a!important;background:linear-gradient(135deg,#eaf7f8 0%,#fdf4ea 100%)!important;box-shadow:none!important;
}
body.divline-consultancy-page .dla-request-steps>li:hover{background:linear-gradient(135deg,#ddf2f4 0%,#faead8 100%)!important;border-color:#69c4cd!important}
body.divline-consultancy-page .dla-request-steps>li b{background:#d9f0f2!important;color:#10213a!important}
body.divline-consultancy-page .dla-request-steps>li.active b{background:#2459d3!important;color:#fff!important}
.dl140-compact-footer .inner{display:grid!important;gap:14px!important}
.dl140-compact-footer .dl140-footer-links{order:1!important;justify-content:center!important}
.dl140-compact-footer .dl140-footer-logo{order:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.dl140-compact-footer .dl140-footer-logo img{display:block;width:170px;max-width:55vw;height:auto}
.dl140-compact-footer .dl140-footer-bottom{order:2;display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding-top:13px;border-top:1px solid rgba(148,163,184,.26);color:#64748b}
.dl140-compact-footer .dl140-powered{margin-left:auto;text-align:right}
.divline-footer-bottomline{display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left!important}
.divline-footer-powered{margin-left:auto;text-align:right}
@media(max-width:640px){.dl140-compact-footer .dl140-footer-bottom,.divline-footer-bottomline{align-items:flex-start;flex-direction:column}.dl140-compact-footer .dl140-powered,.divline-footer-powered{margin-left:0;text-align:left}}

/* R4.4.7 brand lockup: trimmed logo asset + slogan balanced to visible logo width. */
body.divline-signal-system .divline-logo-stack{width:min(282px,46vw);container-type:inline-size;align-items:center!important}body.divline-signal-system .divline-logo{display:block;width:100%;max-width:none!important;height:auto!important}body.divline-signal-system .divline-logo-slogan{width:90%!important;margin:1px auto 0!important;font-size:clamp(13px,5.2cqi,16px)!important;letter-spacing:.035em!important;text-align:center!important;white-space:nowrap}@media(max-width:700px){body.divline-signal-system .divline-logo-stack{width:min(220px,62vw)}body.divline-signal-system .divline-logo-slogan{width:92%!important;font-size:clamp(12px,5.1cqi,15px)!important}}


/* R4.5.1 corrective brand lockup.
   Respect Admin > Appearance & Branding sizing instead of overriding it with fixed R4.4.x widths.
   The slogan tracks the visible logo width and sits tightly below the artwork. */
body.divline-signal-system .divline-logo-stack{
  width:min(var(--dl-logo-desktop-width,320px),48vw)!important;
  max-width:100%;
  display:inline-flex!important;
  flex-direction:column;
  align-items:center!important;
  justify-content:center;
  line-height:0;
  container-type:inline-size;
}
body.divline-signal-system .divline-logo-stack picture{display:block;width:100%;line-height:0}
body.divline-signal-system .divline-logo{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  max-height:var(--dl-logo-max-height,92px)!important;
  height:auto!important;
  object-fit:contain;
}
body.divline-signal-system .divline-logo-slogan{
  display:block;
  width:91%!important;
  margin:-1px auto 0!important;
  padding:0!important;
  line-height:1.02!important;
  font-size:clamp(12px,5cqi,16px)!important;
  letter-spacing:.025em!important;
  text-align:center!important;
  white-space:nowrap;
}
@media(max-width:700px){
  body.divline-signal-system .divline-logo-stack{
    width:min(var(--dl-logo-mobile-width,210px),64vw)!important;
  }
  body.divline-signal-system .divline-logo-slogan{
    width:92%!important;
    font-size:clamp(11px,5cqi,15px)!important;
  }
}
/* Keep request progress controls readable and equal on all four states. */
body.divline-consultancy-page .dla-request-steps{align-items:stretch}
body.divline-consultancy-page .dla-request-steps>li{min-height:56px;display:flex!important;align-items:center;gap:10px;border-radius:12px!important;font-weight:800!important}


/* R4.5.2 — 2026-09-21 16:29 request completion */
.divline-logo-slogan,.divline-footer-slogan,.dla-admin-login-slogan{font-family:var(--dl-logo-slogan-font,"Segoe Script","Bradley Hand","Brush Script MT",cursive)!important}
.dl140-functional-footer{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px 28px!important;width:100%;align-items:start!important}
.dl140-footer-group{display:grid;gap:6px}.dl140-footer-group b{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#10213a}.dl140-footer-group a{font-size:.82rem;color:#52647a;text-decoration:none}.dl140-footer-group a:hover{color:#2459d3}
.dl140-compact-footer .dl140-footer-bottom{width:100%;padding-left:0;padding-right:0}.dl140-compact-footer .dl140-powered{margin-left:auto;margin-right:0;text-align:right}
.divline-fde-brief{position:relative;overflow:hidden;isolation:isolate}.divline-fde-brief>*:not(.divline-fde-network){position:relative;z-index:2}.divline-fde-network{position:absolute;inset:0;z-index:1;opacity:.30;pointer-events:none}.divline-fde-network svg{width:100%;height:100%;display:block}.divline-fde-network line,.divline-fde-network path{stroke:#91d5db;stroke-width:1.3;fill:none}.divline-fde-network circle{fill:#f3ac56}.divline-process-strip{background:linear-gradient(105deg,#eaf7f8 0%,#fdf4ea 48%,#eef3ff 100%)!important;border-color:#91d5db!important;width:100%}.divline-process-item span{background:#10213a!important}.divline-process-arrow{color:#2459d3!important}.divline-process-item h3{color:#10213a!important}
body.divline-consultancy-page .dla-request-steps{gap:0!important;border:1px solid #91d5db!important;border-radius:14px!important;overflow:hidden!important;background:linear-gradient(105deg,#eaf7f8 0%,#fdf4ea 50%,#eef3ff 100%)!important;width:100%!important}body.divline-consultancy-page .dla-request-steps>li,body.divline-consultancy-page .dla-request-steps>li.active,body.divline-consultancy-page .dla-request-steps>li.done{border:0!important;border-right:1px solid rgba(145,213,219,.9)!important;border-radius:0!important;background:transparent!important;width:100%!important}body.divline-consultancy-page .dla-request-steps>li:last-child{border-right:0!important}
@media(max-width:700px){.dl140-functional-footer{grid-template-columns:1fr 1fr}.dl140-compact-footer .dl140-powered{margin-left:0;text-align:left}body.divline-consultancy-page .dla-request-steps{grid-template-columns:1fr 1fr!important}body.divline-consultancy-page .dla-request-steps>li:nth-child(2){border-right:0!important}body.divline-consultancy-page .dla-request-steps>li:nth-child(-n+2){border-bottom:1px solid rgba(145,213,219,.9)!important}}

/* R4.5.2 consolidated live-runtime network override.
   Imported from the live corrective line. Kept intentionally after legacy network rules,
   while the newer R4.5.2 request-stage/footer/FDE rules above remain authoritative. */
body.divline-signal-system,html.dark body.divline-signal-system{
  background-color:#f8fbfc!important;
  background-image:linear-gradient(90deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,.78) 34%,rgba(255,255,255,.92) 50%,rgba(255,255,255,.78) 66%,rgba(255,255,255,.22) 100%),url('../img/divline-spider-lines.svg')!important;
  background-repeat:no-repeat,repeat!important;
  background-size:100% 100%,1020px 680px!important;
}

/* R4.5.2.1 hotfix — 2026-09-22: footer line, request-tab fill, visible network canvas. */
/* Restore the compact public footer to the earlier straight-line navigation while retaining the functional order. */
.dl140-compact-footer .dl140-functional-footer{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px 18px!important;
  width:100%!important;
}
.dl140-compact-footer .dl140-footer-group{display:contents!important}
.dl140-compact-footer .dl140-footer-group>b{display:none!important}
.dl140-compact-footer .dl140-footer-group>a{display:inline-flex!important;align-items:center!important;white-space:nowrap!important}

/* Every project-request stage has its own full-width coloured surface, not a transparent cell. */
body.divline-consultancy-page .dla-request-steps{
  background:#fff!important;
  gap:8px!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
}
body.divline-consultancy-page .dla-request-steps>li,
body.divline-consultancy-page .dla-request-steps>li.active,
body.divline-consultancy-page .dla-request-steps>li.done{
  min-height:60px!important;
  border:1px solid #91d5db!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#eaf7f8 0%,#fdf4ea 58%,#eef3ff 100%)!important;
  color:#10213a!important;
}
body.divline-consultancy-page .dla-request-steps>li:hover{
  background:linear-gradient(135deg,#ddf2f4 0%,#faead8 58%,#e5edff 100%)!important;
}
body.divline-consultancy-page .dla-request-steps>li button{background:transparent!important;color:inherit!important}

/* Make the public spider/network visible through the consultancy homepage instead of covering it with solid white. */
body.divline-signal-system.divline-v140-home main.dl140-home{
  background:transparent!important;
}
body.divline-signal-system.divline-v140-home main.dl140-home>.dl140-hero,
body.divline-signal-system.divline-v140-home main.dl140-home>.dl140-section{
  background-color:rgba(255,255,255,.78)!important;
}
body.divline-signal-system.divline-v140-home main.dl140-home>.dl140-section.soft,
body.divline-signal-system.divline-v140-home main.dl140-home>.dl140-trust{
  background-color:rgba(245,247,250,.86)!important;
}
body.divline-signal-system.divline-v140-home main.dl140-home>.dl140-final{
  background-color:rgba(10,16,32,.96)!important;
}

/* A lighter copy of the network sits behind “Where we usually help” only. */
body.divline-v140-home .dl140-diagnostic{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  padding:22px 24px 22px 30px!important;
  border:1px solid rgba(145,213,219,.55)!important;
  border-left:3px solid var(--dl140-blue)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.72)!important;
}
body.divline-v140-home .dl140-diagnostic::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:url('../img/divline-spider-lines.svg');
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
  opacity:.12;
}
body.divline-v140-home .dl140-diagnostic>*{position:relative;z-index:1}

@media(max-width:700px){
  .dl140-compact-footer .dl140-functional-footer{justify-content:flex-start!important;gap:8px 14px!important}
  body.divline-consultancy-page .dla-request-steps{grid-template-columns:1fr 1fr!important;gap:8px!important}
  body.divline-consultancy-page .dla-request-steps>li{border:1px solid #91d5db!important}
}


/* R4.5.2.2 approved-scope correction.
   Restore R4.5.1 homepage surfaces; only the specifically requested diagnostic network,
   request stages, support UI and footer are changed by this hotfix. */
body.divline-signal-system main,
body.divline-v140-home,
body.divline-v140-home .dl140-home,
body.divline-v140-home .dl140-hero,
body.divline-v140-home .dl140-section,
body.divline-v140-home .dl140-section.soft,
html.dark body.divline-v140-home,
html.dark body.divline-v140-home .dl140-home,
html.dark body.divline-v140-home .dl140-hero,
html.dark body.divline-v140-home .dl140-section.soft{
  background-color:transparent!important;
  background-image:none!important;
}
body.divline-v140-home .dl140-trust,
html.dark body.divline-v140-home .dl140-trust{
  padding:18px 0;
  background:rgba(247,250,255,.82)!important;
  border-color:#dce6f2!important;
}
body.divline-v140-home .dl140-final,
html.dark body.divline-v140-home .dl140-final{
  padding:clamp(58px,7vw,80px) 0!important;
  color:#14233b!important;
  background:rgba(237,244,255,.9)!important;
  border-color:#cfe0f5!important;
}
body.divline-signal-system.divline-v140-home main.dl140-home .dl140-final h2,
html.dark body.divline-signal-system.divline-v140-home main.dl140-home .dl140-final h2{
  max-width:720px;
  color:#10213a!important;
  font-size:clamp(1.5rem,2.5vw,2rem)!important;
  line-height:1.25!important;
  font-weight:730!important;
  letter-spacing:-.025em!important;
}
body.divline-v140-home .dl140-final p,
body.divline-v140-home .dl140-final-grid>div>div,
html.dark body.divline-v140-home .dl140-final p,
html.dark body.divline-v140-home .dl140-final-grid>div>div{color:#53647a!important}
body.divline-v140-home .dl140-final .dl140-btn{border-color:var(--dla-blue)!important;color:#fff!important;background:var(--dla-blue)!important}
/* Approved diagnostic-only network: visible, but deliberately lighter than the page network. */
body.divline-v140-home .dl140-diagnostic{position:relative!important;isolation:isolate!important;overflow:hidden!important;background:rgba(255,255,255,.78)!important}
body.divline-v140-home .dl140-diagnostic::before{content:""!important;position:absolute!important;inset:0!important;z-index:0!important;pointer-events:none!important;background-image:url('../img/divline-spider-lines.svg')!important;background-repeat:no-repeat!important;background-position:center!important;background-size:cover!important;opacity:.20!important}
body.divline-v140-home .dl140-diagnostic::after{content:none!important}
body.divline-v140-home .dl140-diagnostic>*{position:relative!important;z-index:1!important}
