/*
 * Use case sections: the few rules Tailwind utilities do not cover.
 * Everything else is Tailwind classes in template-parts/use-case/.
 */

/* Hero background, sampled from the live use-case hero. */
.gduc-hero-bg {
	background-color: #ffffff;
	background-image: radial-gradient(ellipse 55% 130% at 0% 0%, rgba(19, 236, 128, 0.22) 0%, rgba(19, 236, 128, 0.18) 30%, rgba(19, 236, 128, 0.1) 60%, rgba(19, 236, 128, 0) 100%);
}

/* Stacked (one column), the ellipse becomes a band down the left edge: use the
   corner mesh instead, as the solution heroes do (.sv3-hero, .gst-v3 .st-hero-light). */
@media (max-width: 1023px) {
	.gduc-hero-bg {
		background-image: radial-gradient(circle at top left, rgba(19, 236, 128, 0.16), transparent 48%), radial-gradient(circle at 12% 8%, rgba(4, 120, 87, 0.08), transparent 40%);
	}
}

/* Green gradient on the second line of the H1. */
.gduc-accent-text {
	background: linear-gradient(90deg, #0fb265 0%, #13ec80 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	padding-bottom: 0.15em; /* room for descenders inside the gradient clip */
}

/* Breadcrumb (Yoast markup). */
.gduc-breadcrumb a { color: #64748b; text-decoration: none; }
.gduc-breadcrumb a:hover { color: #0f172a; }
.gduc-breadcrumb .breadcrumb_last { color: #334155; }

/* Disclosure markers and chevrons. */
.gduc-faq summary,
.gduc-toc summary { list-style: none; }
.gduc-faq summary::-webkit-details-marker,
.gduc-toc summary::-webkit-details-marker { display: none; }
.gduc-faq details[open] .gduc-chevron,
.gduc-toc details[open] .gduc-chevron { transform: rotate(180deg); }

/* Links inside FAQ answers and intros. */
.gduc-prose a { color: #047857; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.gduc-prose a:hover { color: #065f46; }
.gduc-prose p + p { margin-top: 0.75rem; }

/* Current item in the section nav (weight and bar, not colour alone). */
.gduc-nav a[aria-current="location"] {
	font-weight: 600;
	color: #0f172a;
	border-left-color: #13ec80;
}

/* Stepper screens fade between steps. */
.gduc-step-screen { transition: opacity 0.3s ease; }

[data-gduc-sections] h2,
[data-gduc-sections] h3,
.gduc-hero-bg h1 { text-wrap: balance; }

/*
 * Tables become stacked cards below lg (1024px) instead of scrolling sideways.
 * Each td carries data-label (the column heading), shown above its value.
 */
@media (max-width: 1023.98px) {
	table.gduc-stack { display: flex; flex-direction: column; width: 100%; }
	table.gduc-stack thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
	table.gduc-stack tbody,
	table.gduc-stack tr,
	table.gduc-stack th,
	table.gduc-stack td { display: block; width: auto; }
	table.gduc-stack caption { display: block; order: 9; }
	table.gduc-stack tbody tr { padding: 20px 20px 22px; border-bottom: 1px solid #e2e8f0; }
	table.gduc-stack tbody tr:last-child { border-bottom: 0; }
	table.gduc-stack th,
	table.gduc-stack td { padding: 0; border: 0; text-align: left; }
	table.gduc-stack th[scope="row"] { font-size: 17px; line-height: 1.35; }
	table.gduc-stack td { margin-top: 14px; }
	table.gduc-stack td[data-label]::before {
		content: attr(data-label);
		display: block;
		margin-bottom: 4px;
		font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, monospace;
		font-size: 12px;
		font-weight: 400;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		color: #475569;
	}
	/* Comparison variant: the verdict sits under the row name, then the values. */
	table.gduc-stack--compare tbody tr { display: flex; flex-direction: column; }
	table.gduc-stack--compare th[scope="row"] { order: -2; }
	table.gduc-stack--compare td.gduc-verdict { order: -1; margin-top: 8px; }
}

/* ID Pass demo: HTML recreation of the client flow (colours sampled from ID Pass). */
.gduc-idp-bar { background: #4e80ee; }
.gduc-idp-card { border: 1.5px solid #4e80ee; border-radius: 4px; background: #fff; }
.gduc-idp-h { font-size: 11.5px; font-weight: 600; line-height: 1.3; color: #3b6fe0; }
.gduc-idp-p { font-size: 9.5px; line-height: 1.45; color: #394150; }
.gduc-idp-btn { display: flex; height: 30px; align-items: center; justify-content: center; border-radius: 4px; background: #3662e3; font-size: 11px; font-weight: 600; color: #fff; }
.gduc-idp-frame span { position: absolute; width: 18px; height: 18px; border-color: #fff; border-radius: 3px; animation: gduc-idp-frame 6s infinite; }

/* Document capture, 6s loop: card settles into the frame, frame turns green, scan, flash, captured. */
.gduc-idp-licence { transform: translate(-50%, -50%); animation: gduc-idp-licence 6s cubic-bezier(.3,.7,.3,1) infinite; }
.gduc-idp-scan, .gduc-idp-flash, .gduc-idp-done, .gduc-idp-s2 { opacity: 0; }
.gduc-idp-scan { animation: gduc-idp-scan 6s linear infinite; }
.gduc-idp-flash { animation: gduc-idp-flash 6s infinite; }
.gduc-idp-done { animation: gduc-idp-done 6s infinite; }
.gduc-idp-s1 { animation: gduc-idp-s1 6s infinite; }
.gduc-idp-s2 { animation: gduc-idp-s2 6s infinite; }
@keyframes gduc-idp-licence {
	0%, 4% { transform: translate(-36%, -30%) rotate(-9deg) scale(.86); }
	36%, 100% { transform: translate(-50%, -50%) rotate(0) scale(1); }
}
@keyframes gduc-idp-frame { 0%, 38% { border-color: #fff; } 42%, 100% { border-color: #7ee08a; } }
@keyframes gduc-idp-scan {
	0%, 42% { opacity: 0; transform: translateY(0); }
	44% { opacity: 1; transform: translateY(0); }
	60% { opacity: 1; transform: translateY(112px); }
	62%, 100% { opacity: 0; transform: translateY(112px); }
}
@keyframes gduc-idp-flash { 0%, 62% { opacity: 0; } 64% { opacity: .8; } 72%, 100% { opacity: 0; } }
@keyframes gduc-idp-done { 0%, 66% { opacity: 0; transform: translate(-50%, 6px); } 72%, 94% { opacity: 1; transform: translate(-50%, 0); } 100% { opacity: 0; transform: translate(-50%, 0); } }
@keyframes gduc-idp-s1 { 0%, 62% { opacity: 1; } 66%, 100% { opacity: 0; } }
@keyframes gduc-idp-s2 { 0%, 66% { opacity: 0; } 72%, 94% { opacity: 1; } 100% { opacity: 0; } }

/* Liveness, 8s loop: ring fills while prompts change and the head turns, then verified. */
.gduc-idp-ring { animation: gduc-idp-ring 8s linear infinite; }
.gduc-idp-face { animation: gduc-idp-face 8s ease-in-out infinite; }
.gduc-idp-ok { opacity: 0; animation: gduc-idp-ok 8s infinite; }
.gduc-idp-pr { opacity: 0; animation: gduc-idp-pr 8s infinite backwards; }
@keyframes gduc-idp-ring {
	0% { stroke-dashoffset: 440; stroke: #4e80ee; }
	78% { stroke-dashoffset: 0; stroke: #4e80ee; }
	80%, 100% { stroke-dashoffset: 0; stroke: #5ec269; }
}
@keyframes gduc-idp-face {
	0%, 20% { transform: translateX(-50%) scaleX(1); }
	28%, 36% { transform: translateX(calc(-50% - 9px)) scaleX(.94); }
	46%, 54% { transform: translateX(calc(-50% + 9px)) scaleX(.94); }
	62%, 100% { transform: translateX(-50%) scaleX(1); }
}
@keyframes gduc-idp-ok { 0%, 79% { opacity: 0; transform: scale(.6); } 83%, 97% { opacity: 1; transform: scale(1); } 100% { opacity: 0; } }
@keyframes gduc-idp-pr { 0% { opacity: 0; } 2%, 17% { opacity: 1; } 19%, 100% { opacity: 0; } }

/* Reduced motion: show the finished state of each screen, no movement. */
@media (prefers-reduced-motion: reduce) {
	.gduc-idp *, .gduc-idp *::before { animation: none !important; }
	.gduc-idp-licence { transform: translate(-50%, -50%); }
	.gduc-idp-frame span { border-color: #7ee08a; }
	.gduc-idp-done, .gduc-idp-s2, .gduc-idp-ok, .gduc-idp-pr-last { opacity: 1; }
	.gduc-idp-done { transform: translate(-50%, 0); }
	.gduc-idp-s1 { opacity: 0; }
	.gduc-idp-ring { stroke-dashoffset: 0; stroke: #5ec269; }
}

/* WatchEye Quick ID demo: simplified HTML mockups of the Quick ID screens (colours sampled from WatchEye). */
.gduc-step-screen.opacity-0 { pointer-events: none; }
.gduc-qid-win { display: flex; flex-direction: column; height: 100%; overflow: hidden; border: 1px solid #e5e7eb; border-radius: 14px; background: #fff; box-shadow: 0 1px 2px rgba(15, 23, 42, .05), 0 14px 30px -18px rgba(15, 23, 42, .3); }
.gduc-qid-bar { display: flex; min-height: 42px; flex-wrap: wrap; align-items: center; gap: 4px 14px; background: #581f5d; padding: 8px 16px; font-size: 13px; font-weight: 600; color: #fff; }
.gduc-qid-logo { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.gduc-qid-btn { border: 1px solid #581f5d; border-radius: 6px; background: #fff; padding: 4px 9px; font-size: 11.5px; font-weight: 600; color: #581f5d; }
.gduc-qid-row { display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: 10px; border-bottom: 1px solid #fff; padding: 8px 12px; color: #334155; }
.gduc-qid-row:last-child { border-bottom: 0; }
@media (min-width: 640px) { .gduc-qid-row { grid-template-columns: 6.75rem minmax(0, .9fr) minmax(0, 1.3fr); } }
.gduc-qid-label { font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: #581f5d; }
.gduc-qid-card { border: 1px solid #e5e7eb; border-radius: 10px; padding: 11px 13px; }
.gduc-qid-val { margin-top: 3px; font-size: 15px; font-weight: 600; line-height: 1.3; color: #0f172a; }
.gduc-qid-sub { margin-top: 3px; font-size: 12px; line-height: 1.4; color: #64748b; }
.gduc-qid-field { display: flex; flex-direction: column; gap: 3px; font-size: 11px; font-weight: 600; color: #475569; }
.gduc-qid-input { display: flex; height: 32px; align-items: center; overflow: hidden; border: 1px solid #d6d3db; border-radius: 6px; padding: 0 10px; font-size: 13px; font-weight: 500; color: #0f172a; white-space: nowrap; }
.gduc-qid-t { display: inline-block; clip-path: inset(0 100% 0 0); }

/* List, 4s loop: the Run DVS check button pulses. */
.gduc-qid-cta { animation: gduc-qid-cta 4s ease-in-out infinite; }
@keyframes gduc-qid-cta {
	0%, 30% { background: #fff; color: #581f5d; box-shadow: 0 0 0 0 rgba(88, 31, 93, .3); }
	45%, 80% { background: #581f5d; color: #fff; box-shadow: 0 0 0 5px rgba(88, 31, 93, .15); }
	100% { background: #fff; color: #581f5d; box-shadow: 0 0 0 0 rgba(88, 31, 93, 0); }
}

/* Details, 8s loop: fields fill in turn, consent is ticked, then the check runs. */
.gduc-qid-t1 { animation: gduc-qid-t1 8s infinite; }
.gduc-qid-t2 { animation: gduc-qid-t2 8s infinite; }
.gduc-qid-t3 { animation: gduc-qid-t3 8s infinite; }
.gduc-qid-t4 { animation: gduc-qid-t4 8s infinite; }
.gduc-qid-t5 { animation: gduc-qid-t5 8s infinite; }
.gduc-qid-t6 { animation: gduc-qid-t6 8s infinite; }
.gduc-qid-tick { opacity: 0; animation: gduc-qid-tick 8s infinite; }
.gduc-qid-run { animation: gduc-qid-run 8s infinite; }
.gduc-qid-run1 { animation: gduc-qid-run1 8s infinite; }
@keyframes gduc-qid-t1 { 0%, 3% { clip-path: inset(0 100% 0 0); animation-timing-function: steps(4); } 9%, 97% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 100% 0 0); } }
@keyframes gduc-qid-t2 { 0%, 11% { clip-path: inset(0 100% 0 0); animation-timing-function: steps(7); } 19%, 97% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 100% 0 0); } }
@keyframes gduc-qid-t3 { 0%, 21% { clip-path: inset(0 100% 0 0); animation-timing-function: steps(10); } 31%, 97% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 100% 0 0); } }
@keyframes gduc-qid-t4 { 0%, 33% { clip-path: inset(0 100% 0 0); animation-timing-function: steps(3); } 37%, 97% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 100% 0 0); } }
@keyframes gduc-qid-t5 { 0%, 39% { clip-path: inset(0 100% 0 0); animation-timing-function: steps(9); } 49%, 97% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 100% 0 0); } }
@keyframes gduc-qid-t6 { 0%, 51% { clip-path: inset(0 100% 0 0); animation-timing-function: steps(8); } 60%, 97% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 100% 0 0); } }
@keyframes gduc-qid-tick { 0%, 63% { opacity: 0; transform: scale(.4); } 66%, 97% { opacity: 1; transform: scale(1); } 100% { opacity: 0; } }
@keyframes gduc-qid-run { 0%, 72% { transform: scale(1); box-shadow: none; } 74% { transform: scale(.95); } 76%, 97% { transform: scale(1); box-shadow: 0 0 0 4px rgba(88, 31, 93, .18); } 100% { box-shadow: none; } }
.gduc-qid-run { position: relative; }
.gduc-qid-run2 { display: flex; position: absolute; inset: 0; justify-content: center; opacity: 0; animation: gduc-qid-run2 8s infinite; }
@keyframes gduc-qid-run1 { 0%, 75% { opacity: 1; } 77%, 97% { opacity: 0; } 100% { opacity: 1; } }
@keyframes gduc-qid-run2 { 0%, 75% { opacity: 0; } 77%, 97% { opacity: 1; } 100% { opacity: 0; } }

/* Result, 16s loop: a short DVS wait, the verified result, then Download certificate opens the certificate. */
.gduc-qid-wait { animation: gduc-qid-wait 16s infinite; }
.gduc-qid-result { animation: gduc-qid-result 16s infinite; }
.gduc-qid-dl { animation: gduc-qid-dl 16s infinite; }
.gduc-qid-cert { opacity: 0; visibility: hidden; animation: gduc-qid-cert 16s infinite; }
.gduc-qid-cert > div { animation: gduc-qid-cert-doc 16s infinite; }
.gduc-qid-spin { animation: gduc-qid-spin .8s linear infinite; }
@keyframes gduc-qid-wait { 0%, 9% { opacity: 1; visibility: visible; } 13%, 100% { opacity: 0; visibility: hidden; } }
@keyframes gduc-qid-result { 0%, 9% { opacity: 0; transform: translateY(6px); } 14%, 100% { opacity: 1; transform: translateY(0); } }
@keyframes gduc-qid-dl { 0%, 34% { background: #fff; color: #581f5d; transform: scale(1); } 37% { background: #581f5d; color: #fff; transform: scale(.95); } 40%, 47% { background: #581f5d; color: #fff; transform: scale(1); } 52%, 100% { background: #fff; color: #581f5d; } }
@keyframes gduc-qid-cert { 0%, 43% { opacity: 0; visibility: hidden; } 48%, 95% { opacity: 1; visibility: visible; } 99%, 100% { opacity: 0; visibility: hidden; } }
@keyframes gduc-qid-cert-doc { 0%, 43% { transform: translateY(24px) scale(.92); } 53%, 100% { transform: translateY(0) scale(1); } }
@keyframes gduc-qid-spin { to { transform: rotate(360deg); } }

/* Reduced motion: finished state of each screen. */
@media (prefers-reduced-motion: reduce) {
	.gduc-qid * { animation: none !important; }
	.gduc-qid-t { clip-path: none; }
	.gduc-qid-tick, .gduc-qid-result { opacity: 1; }
	.gduc-qid-run2, .gduc-qid-wait, .gduc-qid-cert { opacity: 0; visibility: hidden; }
}

/* WatchEye dashboard mockups (Screening, Monitoring). Colours sampled from WatchEye. */
.gduc-we-app { overflow: hidden; border: 1px solid #e5e7eb; border-radius: 12px; background: #f2f3f5; font-size: 12.5px; line-height: 1.4; color: #1f2937; box-shadow: 0 1px 2px rgba(15, 23, 42, .05), 0 14px 30px -18px rgba(15, 23, 42, .3); }
.gduc-we-top { display: flex; height: 40px; align-items: center; justify-content: space-between; background: #581f5d; padding: 0 14px; }
.gduc-we-body { display: flex; }
.gduc-we-side { display: none; width: 148px; flex: none; flex-direction: column; gap: 2px; padding: 10px 8px; background: linear-gradient(180deg, #5a2463 0%, #4a5ad8 70%, #3b8bf0 100%); }
@media (min-width: 1024px) { .gduc-we-side { display: flex; } }
.gduc-we-gd { display: flex; justify-content: center; margin-top: auto; padding: 16px 0 8px; }
.gduc-we-gd .svg-white-glow { filter: drop-shadow(0 0 .5rem #fff); }
.gduc-we-nav { border-radius: 6px; padding: 6px 10px; font-size: 12px; font-weight: 500; color: rgba(255, 255, 255, .9); }
.gduc-we-nav.is-on { background: rgba(255, 255, 255, .22); color: #fff; }
.gduc-we-main { min-width: 0; flex: 1; grid-template-columns: minmax(0, 1fr); padding: 8px; }
.gduc-we-main > * { min-width: 0; }
@media (min-width: 640px) { .gduc-we-main { padding: 10px; } }
.gduc-we-page { height: 100%; position: relative; overflow: hidden; border: 1px solid #e5e7eb; border-radius: 6px; background: #fff; padding: 12px 14px 14px; }
.gduc-we-h { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 12px; border-bottom: 1px solid #e5e7eb; padding-bottom: 8px; font-size: 15px; font-weight: 500; color: #581f5d; }
.gduc-we-btn { border: 1px solid #581f5d; border-radius: 5px; padding: 3px 9px; font-size: 11px; font-weight: 500; color: #581f5d; }
.gduc-we-ptabs { display: flex; gap: 2px; overflow: hidden; margin-top: 10px; border-bottom: 1px solid #d9cfdb; background: #f5f3f6; padding: 4px 4px 0; border-radius: 4px 4px 0 0; white-space: nowrap; }
.gduc-we-ptab { border: 1px solid transparent; border-bottom: 0; border-radius: 5px 5px 0 0; padding: 5px 9px; font-size: 11.5px; color: #581f5d; }
.gduc-we-ptab.is-on { margin-bottom: -1px; border-color: #d9cfdb; background: #fff; }
.gduc-we-info { margin-top: 10px; border-radius: 5px; background: #e6f2e9; padding: 9px 12px; font-size: 11.5px; color: #16793a; }
.gduc-we-info p:first-child { font-size: 13px; }
.gduc-we-table { margin-top: 10px; overflow: hidden; font-size: 11.5px; }
.gduc-we-tr { display: grid; gap: 10px; align-items: center; border-bottom: 1px solid #edeef0; padding: 6px 8px; }
.gduc-we-th { background: #ece3ed; font-weight: 600; color: #3b2140; border-bottom: 0; }
.gduc-we-tr.is-pass:not(.gduc-we-th) { background: #fff; }
.gduc-we-tr.is-warn { background: #fdf1e2; }
.gduc-we-cols-4 { grid-template-columns: 5.5rem minmax(0, 1fr) minmax(0, 1fr); }
.gduc-we-cols-5 { grid-template-columns: 7rem minmax(0, 1fr) minmax(0, 1fr); }
.gduc-we-cols-6 { grid-template-columns: 7.5rem minmax(0, 1fr) 4rem; }
.gduc-we-cols-7 { grid-template-columns: 7rem minmax(0, 1fr) 3.5rem; }
@media (min-width: 640px) {
	.gduc-we-cols-4 { grid-template-columns: 6.5rem minmax(0, 1fr) minmax(0, 1fr) 6.5rem; }
	.gduc-we-cols-5 { grid-template-columns: 6.5rem minmax(0, 1.2fr) minmax(0, 1fr) 4rem minmax(0, 1fr); }
	.gduc-we-cols-6 { grid-template-columns: 6.75rem minmax(0, 1fr) minmax(0, 1.1fr) minmax(0, 1.1fr) 4rem minmax(0, 1fr); }
	.gduc-we-cols-7 { grid-template-columns: 6.5rem 6.5rem minmax(0, .9fr) minmax(0, 1fr) minmax(0, 1.1fr) minmax(0, .9fr) 3.5rem; }
}
.gduc-we-box { margin-top: 10px; overflow: hidden; border: 1px solid #e5e7eb; border-radius: 5px; }
.gduc-we-box-h { background: #ece3ed; padding: 6px 12px; font-size: 12.5px; font-weight: 600; color: #3b2140; }
.gduc-we-k { display: block; font-size: 11.5px; font-weight: 600; color: #581f5d; }
.gduc-we-stats { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 10px; border-radius: 4px; background: #eceef1; text-align: center; font-size: 12px; }
.gduc-we-stats span { padding: 7px 4px; }
.gduc-we-stats span + span { border-left: 1px solid #fff; }
.gduc-we-newpill { display: inline-block; border-radius: 999px; background: #f59e0b; padding: 0 7px; font-size: 10.5px; font-weight: 700; color: #fff; }
.gduc-we-live { display: inline-flex; align-items: center; gap: 5px; }
.gduc-we-live::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #16a34a; }
.gduc-we-sheetwrap { position: absolute; inset: 0; background: rgba(51, 51, 68, .45); }
.gduc-we-sheet { position: absolute; inset: 0 0 0 auto; width: min(420px, 88%); overflow: hidden; background: #fff; box-shadow: -12px 0 30px -12px rgba(15, 23, 42, .4); }

/* Screening step 1: the warning row is highlighted as if about to be opened. Step 2: Show Full Request pulses. Step 3: the request panel slides in. */
.gduc-we-hl { animation: gduc-we-hl 4s ease-in-out infinite; }
@keyframes gduc-we-hl { 0%, 35% { box-shadow: inset 0 0 0 0 rgba(88, 31, 93, 0); } 50%, 85% { box-shadow: inset 0 0 0 2px rgba(88, 31, 93, .45); } 100% { box-shadow: inset 0 0 0 0 rgba(88, 31, 93, 0); } }
.gduc-we-showreq { display: inline-block; border-radius: 4px; padding: 1px 4px; margin-left: -4px; animation: gduc-we-link 3s ease-in-out infinite; }
@keyframes gduc-we-link { 0%, 40% { background: transparent; } 55%, 85% { background: #dbe9fd; } 100% { background: transparent; } }
.gduc-we-sheetwrap { animation: gduc-we-dim 9s infinite; }
.gduc-we-sheet { animation: gduc-we-slide 9s cubic-bezier(.3, .7, .3, 1) infinite; }
@keyframes gduc-we-dim { 0%, 6% { opacity: 0; } 14%, 92% { opacity: 1; } 100% { opacity: 0; } }
@keyframes gduc-we-slide { 0%, 6% { transform: translateX(100%); } 18%, 92% { transform: translateX(0); } 100% { transform: translateX(100%); } }

/* Monitoring: the new events count and the new event row draw attention. */
.gduc-we-count { display: inline-block; animation: gduc-we-pop 3s ease-in-out infinite; }
@keyframes gduc-we-pop { 0%, 60%, 100% { transform: scale(1); color: inherit; } 70% { transform: scale(1.35); color: #b45309; } }
.gduc-we-in { animation: gduc-we-in 6s infinite; }
@keyframes gduc-we-in { 0%, 8% { opacity: 0; transform: translateY(-8px); } 18%, 100% { opacity: 1; transform: translateY(0); } }
.gduc-we-live::before { animation: gduc-we-blink 2s ease-in-out infinite; }
@keyframes gduc-we-blink { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }

/* Match details and the event review. Review loop (18s): New, Investigating with the note added, then Closed held for about 12s. */
.gduc-we-pct { display: inline-block; width: 46px; height: 6px; margin-right: 4px; overflow: hidden; border-radius: 999px; background: #f3e1c7; vertical-align: middle; }
.gduc-we-pct i { display: block; height: 100%; background: #d97706; }
.gduc-we-cmp { display: inline-block; border-radius: 999px; background: #eceef1; padding: 0 7px; font-size: 10.5px; font-weight: 600; color: #475569; }
.gduc-we-cmp.is-sup { background: #fdf1e2; color: #b45309; }
.gduc-we-cmp.is-weak { background: #e6f2e9; color: #16793a; }
.gduc-we-match { animation: gduc-we-match 6s infinite; }
@keyframes gduc-we-match { 0%, 100% { box-shadow: 0 0 0 0 rgba(217, 119, 6, 0); } 30%, 70% { box-shadow: 0 0 0 2px rgba(217, 119, 6, .35); } }
.gduc-we-status { display: inline-grid; font-size: 11px; }
.gduc-we-status b { grid-area: 1 / 1; border-radius: 999px; padding: 2px 10px; text-align: center; font-weight: 700; color: #fff; }
.gduc-we-st1 { background: #f59e0b; animation: gduc-we-st1 18s infinite; }
.gduc-we-st2 { background: #2f6fd0; opacity: 0; animation: gduc-we-st2 18s infinite; }
.gduc-we-st3 { background: #16a34a; opacity: 0; animation: gduc-we-st3 18s infinite; }
@keyframes gduc-we-st1 { 0%, 9% { opacity: 1; } 11%, 98% { opacity: 0; } 100% { opacity: 1; } }
@keyframes gduc-we-st2 { 0%, 9% { opacity: 0; } 11%, 27% { opacity: 1; } 29%, 100% { opacity: 0; } }
@keyframes gduc-we-st3 { 0%, 27% { opacity: 0; } 29%, 98% { opacity: 1; } 100% { opacity: 0; } }
.gduc-we-note { animation: gduc-we-note 18s infinite; }
@keyframes gduc-we-note { 0%, 14% { opacity: 0; transform: translateY(6px); } 18%, 98% { opacity: 1; transform: translateY(0); } 100% { opacity: 0; } }

/* Screening step 4: Export PDF is pressed, the export opens one page at a time and scrolls to page 2 (12s loop). */
.gduc-we-pdfwrap { position: absolute; inset: 0; container-type: size; display: flex; align-items: center; justify-content: center; background: rgba(51, 51, 68, .5); animation: gduc-we-pdfdim 12s infinite; }
.gduc-we-pdf { display: flex; width: min(100cqw - 28px, (100cqh - 54px) * .7067); flex-direction: column; overflow: hidden; border-radius: 6px; background: #525659; box-shadow: 0 24px 48px -16px rgba(15, 23, 42, .55); animation: gduc-we-pdfin 12s cubic-bezier(.3, .7, .3, 1) infinite; }
.gduc-we-pdf-bar { display: flex; height: 26px; flex: none; align-items: center; justify-content: space-between; gap: 8px; background: #323639; padding: 0 10px; font-size: 10.5px; color: #e5e7eb; }
.gduc-we-pdf-pg b { grid-column: 1; grid-row: 1; font-weight: 600; }
.gduc-we-pdf-pg { display: inline-grid; grid-template-columns: auto auto; column-gap: 3px; }
.gduc-we-pdf-pg::after { content: "/ 2"; grid-column: 2; grid-row: 1; }
.gduc-we-pdf-pg b:first-child { animation: gduc-we-pg1 12s infinite; }
.gduc-we-pdf-pg b:nth-child(2) { opacity: 0; animation: gduc-we-pg2 12s infinite; }
.gduc-we-pdf-view { overflow: hidden; aspect-ratio: 595 / 842; }
.gduc-we-pdf-scroll { display: flex; flex-direction: column; gap: 10px; animation: gduc-we-pdfscroll 12s ease-in-out infinite; }
.gduc-we-pdf-page { display: flex; width: 100%; aspect-ratio: 595 / 842; flex: none; flex-direction: column; overflow: hidden; background: #fff; padding: 7% 6.5% 4%; font-size: 7.5px; line-height: 1.35; color: #1f2937; }
.gduc-we-pdf-title { white-space: nowrap; font-size: 14px; font-weight: 700; line-height: 1.15; color: #111827; }
.gduc-we-pdf-sub { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-top: 2px; font-size: 7.5px; color: #6b7280; }
.gduc-we-pdf-h { display: flex; align-items: baseline; justify-content: space-between; gap: 6px; margin-top: 10px; border-top: 1px solid #111827; padding-top: 6px; font-size: 10px; font-weight: 700; color: #111827; }
.gduc-we-pdf-h small { font-size: 6.5px; font-weight: 400; }
.gduc-we-pdf-row { display: grid; grid-template-columns: 38% minmax(0, 1fr); gap: 6px; border-bottom: 1px solid #eef0f2; padding: 3.5px 4px; }
.gduc-we-pdf-row > span:first-child { color: #4b5563; }
.gduc-we-pdf-box { margin-top: 7px; overflow: hidden; border: 1px solid #d1d5db; border-radius: 3px; }
.gduc-we-pdf-boxh { display: flex; justify-content: space-between; background: #dcdfe4; padding: 3px 5px; font-size: 8px; font-weight: 700; }
.gduc-we-pdf-boxh small { font-size: 6.5px; }
.gduc-we-pdf-foot { margin-top: auto; padding-top: 6px; text-align: right; font-size: 5px; color: #6b7280; }
.gduc-we-pdfbtn { animation: gduc-we-pdfbtn 12s infinite; }
@keyframes gduc-we-pdfbtn { 0%, 6% { background: #fff; color: #581f5d; transform: scale(1); } 8% { background: #581f5d; color: #fff; transform: scale(.94); } 10%, 15% { background: #581f5d; color: #fff; transform: scale(1); } 20%, 100% { background: #fff; color: #581f5d; } }
@keyframes gduc-we-pdfdim { 0%, 10% { opacity: 0; visibility: hidden; } 15%, 95% { opacity: 1; visibility: visible; } 99%, 100% { opacity: 0; visibility: hidden; } }
@keyframes gduc-we-pdfin { 0%, 10% { transform: translateY(26px) scale(.92); } 20%, 100% { transform: translateY(0) scale(1); } }
@keyframes gduc-we-pdfscroll { 0%, 45% { transform: translateY(0); } 60%, 100% { transform: translateY(calc(-50% - 5px)); } }
@keyframes gduc-we-pg1 { 0%, 52% { opacity: 1; } 53%, 100% { opacity: 0; } }
@keyframes gduc-we-pg2 { 0%, 52% { opacity: 0; } 53%, 100% { opacity: 1; } }

@media (prefers-reduced-motion: reduce) {
	.gduc-we-app * { animation: none !important; }
	.gduc-we-st1, .gduc-we-st2 { opacity: 0; }
	.gduc-we-st3, .gduc-we-note { opacity: 1; }
	.gduc-we-pdfwrap { opacity: 1; visibility: visible; }
	.gduc-we-pdf-view { overflow-y: auto; }
	.gduc-we-sheetwrap { opacity: 1; }
	.gduc-we-sheet { transform: none; }
}

/* WatchEye Relationships mockup (Business and owners). */
.gduc-we-badge { display: inline-block; margin-left: 3px; border-radius: 999px; background: #e5e1e8; padding: 0 6px; font-size: 10.5px; font-weight: 600; color: #4b2c5e; }
.gduc-we-rel { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) 4rem; }
@media (min-width: 640px) { .gduc-we-rel { grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr) 4.5rem 6.5rem; } }
.gduc-we-key { display: inline-flex; align-items: center; gap: 4px; }
.gduc-we-key::before { content: ""; width: 8px; height: 8px; border-radius: 50%; }
.gduc-we-key.ind::before { background: #2563eb; }
.gduc-we-key.biz::before { background: #10a063; }
.gduc-we-node circle.ind { fill: #2563eb; }
.gduc-we-node circle.biz { fill: #10a063; }
.gduc-we-node.is-co circle { stroke: #0f3d2a; stroke-width: 2.5; }
.gduc-we-nlabel { font-size: 12px; font-weight: 600; fill: #1f2937; text-anchor: middle; }
.gduc-we-edge { stroke: #94a3b8; stroke-width: 1.5; fill: none; stroke-dasharray: 1; stroke-dashoffset: 0; }
.gduc-we-elabel rect { fill: #f8fafc; }
.gduc-we-elabel text { font-size: 10.5px; fill: #64748b; text-anchor: middle; }
@media (max-width: 639.98px) { .gduc-we-elabel { display: none; } .gduc-we-nlabel { font-size: 19px; } }

/* 10s loop: the related entities appear, then each relationship line draws to the company. */
.gduc-we-node:not(.is-co) { animation: gduc-we-node 10s infinite; }
.gduc-we-nalex { animation-delay: 0s; }
.gduc-we-njordan { animation-delay: .25s; }
.gduc-we-ntrust { animation-delay: .5s; }
.gduc-we-edge { animation: gduc-we-draw 10s infinite; }
.gduc-we-elabel { animation: gduc-we-lab 10s infinite; }
.gduc-we-e2 { animation-delay: .6s; }
.gduc-we-e3 { animation-delay: 1.2s; }
@keyframes gduc-we-node { 0%, 4% { opacity: 0; } 9%, 96% { opacity: 1; } 100% { opacity: 0; } }
@keyframes gduc-we-draw { 0%, 10% { stroke-dashoffset: 1; } 20%, 96% { stroke-dashoffset: 0; } 100% { stroke-dashoffset: 1; } }
@keyframes gduc-we-lab { 0%, 18% { opacity: 0; } 23%, 96% { opacity: 1; } 100% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
	.gduc-we-node, .gduc-we-edge, .gduc-we-elabel { animation: none !important; opacity: 1; stroke-dashoffset: 0; }
}

/* Static Quick ID result (Results and records) with numbered markers matching the notes below. */
.gduc-qid-static { height: auto; }
.gduc-mk { position: absolute; left: -8px; top: -8px; z-index: 1; display: inline-flex; width: 22px; height: 22px; align-items: center; justify-content: center; border-radius: 999px; background: #0f172a; font-size: 11px; font-weight: 700; color: #fff; box-shadow: 0 0 0 2px #fff; }

@media (prefers-reduced-motion: reduce) {
	.gduc-step-screen,
	.gduc-chevron { transition: none !important; }
}

/* Enquiry trust list (the Trust field is HTML). Each li gets an icon tile from its class: gduc-trust-iso, -au, -lock, -asic. */
.gduc-trust li { position: relative; min-height: 40px; padding-left: 52px; }
.gduc-trust li::before { content: ""; position: absolute; left: 0; top: 0; width: 40px; height: 40px; border-radius: 10px; background: #ecfdf5; box-shadow: inset 0 0 0 1px #d1fae5; }
.gduc-trust li::after { content: ""; position: absolute; left: 10px; top: 10px; width: 20px; height: 20px; background: #047857; -webkit-mask: var(--gduc-trust-icon) center / contain no-repeat; mask: var(--gduc-trust-icon) center / contain no-repeat; }
.gduc-trust-iso { --gduc-trust-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='6'/%3E%3Cpath d='M8.6 14.2 7.5 22l4.5-2.6 4.5 2.6-1.1-7.8'/%3E%3Cpath d='m9.6 9 1.7 1.7 3.1-3.2'/%3E%3C/svg%3E"); }
.gduc-trust-au { --gduc-trust-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21.5s-7-6.1-7-11.8a7 7 0 0 1 14 0c0 5.7-7 11.8-7 11.8Z'/%3E%3Ccircle cx='12' cy='9.7' r='2.6'/%3E%3C/svg%3E"); }
.gduc-trust-lock { --gduc-trust-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4.5' y='10.5' width='15' height='10.5' rx='2'/%3E%3Cpath d='M8 10.5V7.5a4 4 0 0 1 8 0v3'/%3E%3Cpath d='M12 14.5v2.5'/%3E%3C/svg%3E"); }
.gduc-trust-asic { --gduc-trust-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9.5 12 4l9 5.5Z'/%3E%3Cpath d='M5.5 9.5v8M10 9.5v8M14 9.5v8M18.5 9.5v8'/%3E%3Cpath d='M3 20.5h18'/%3E%3C/svg%3E"); }

/* Enquiry on the dark background: forest gradient (skip tracing design). */
section.gduc-enquiry-dark {
	background: radial-gradient(ellipse 60% 90% at 0% 0%, rgba(15, 94, 56, 0.85) 0%, rgba(15, 94, 56, 0) 70%), radial-gradient(ellipse 55% 80% at 100% 100%, rgba(10, 110, 70, 0.7) 0%, rgba(10, 110, 70, 0) 70%), #05271a;
}
.gduc-contact a { font-weight: 700; color: inherit; }
.gduc-enquiry-dark .gduc-contact a { color: #fff; }
.gduc-contact a:hover { text-decoration: underline; text-underline-offset: 3px; }
