body.dfvn-privacy-page {
    --dfvp-bg: #07090a;
    --dfvp-deep: #0f1415;
    --dfvp-line: #3d4647;
    --dfvp-text: #edf4f3;
    --dfvp-muted: #a9b4b3;
    --dfvp-cyan: #20e3d6;
    --dfvp-green: #8bff58;
    --dfvp-paper: #edf4f1;
    --dfvp-paper-line: #aebdbc;
    --dfvp-ink: #101718;
    --dfvp-ink-muted: #526061;
    --dfvp-teal: #087c76;
    --dfvp-font: var(--wpo-font-montserrat, Montserrat, system-ui, sans-serif);
    --dfvp-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    margin: 0;
    overflow-x: hidden;
    background: var(--dfvp-bg);
    color: var(--dfvp-text);
    font-family: var(--dfvp-font);
}

.dfvn-privacy-page .wpo-shell,
.dfvn-privacy-page .wpo-main,
.dfvn-privacy-page .wpo-content {
    width: 100%;
    min-width: 0;
    background: var(--dfvp-bg);
    color: var(--dfvp-text);
}

.dfvn-privacy-page .wpo-main { margin-top: 0 !important; padding-top: 0 !important; }
.dfvn-privacy-page .wpo-page-title { display: none; }
/* `clip`, not `hidden`: a hidden ancestor would stop the contents list from sticking. */
.dfvn-privacy-page .wpo-content { max-width: none; padding: 0 !important; overflow-x: clip; }

.dfvn-privacy-page .wpo-content > .wpb-content-wrapper,
.dfvn-privacy-page .wpo-content > .wpb-content-wrapper > .vc_row,
.dfvn-privacy-page .wpo-content > .wpb-content-wrapper > .wpb_row,
.dfvn-privacy-page .wpo-content > .wpb-content-wrapper > .vc_row > .wpb_column,
.dfvn-privacy-page .wpo-content > .wpb-content-wrapper > .wpb_row > .wpb_column,
.dfvn-privacy-page .wpo-content > .wpb-content-wrapper > .vc_row > .wpb_column > .vc_column-inner,
.dfvn-privacy-page .wpo-content > .wpb-content-wrapper > .wpb_row > .wpb_column > .vc_column-inner,
.dfvn-privacy-page .wpo-content > .wpb-content-wrapper > .vc_row > .wpb_column > .vc_column-inner > .wpb_wrapper,
.dfvn-privacy-page .wpo-content > .wpb-content-wrapper > .wpb_row > .wpb_column > .vc_column-inner > .wpb_wrapper {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.dfvn-privacy-page .wpo-content .wpb_content_element { margin-bottom: 0 !important; }
.dfvn-privacy-page .dfvp-page-row > br,
.dfvn-privacy-page .dfvp-page-row .vc_column-inner > .wpb_wrapper > br { display: none; }

.dfvp-privacy,
.dfvp-privacy * { box-sizing: border-box; }
.dfvp-privacy { position: relative; width: 100%; min-width: 0; font-family: var(--dfvp-font); }
.dfvp-shell { position: relative; z-index: 1; width: min(1300px, calc(100% - 70px)); margin-inline: auto; }
.dfvp-grid { position: absolute; inset: 0; pointer-events: none; opacity: .22; background-image: linear-gradient(var(--dfvp-line) 1px, transparent 1px), linear-gradient(90deg, var(--dfvp-line) 1px, transparent 1px); background-size: 52px 52px; mask-image: linear-gradient(to bottom, #000, transparent 78%); }
.dfvp-eyebrow { margin: 0; color: var(--dfvp-cyan) !important; font: 800 11px/1.5 var(--dfvp-mono) !important; letter-spacing: .08em; text-transform: uppercase; }

.dfvp-hero { overflow: hidden; padding-block: 48px; color: var(--dfvp-text); background: var(--dfvp-bg); }
.dfvp-hero__copy { max-width: 900px; }
.dfvp-hero h1 { margin: 16px 0 0; color: var(--dfvp-text) !important; font: 770 clamp(52px, 4.8vw, 76px)/.96 var(--dfvp-font) !important; letter-spacing: -.055em; }
.dfvp-lead { max-width: 760px; margin: 28px 0 0; color: var(--dfvp-muted) !important; font-size: clamp(17px, 1.25vw, 21px) !important; line-height: 1.62 !important; }
/* The parent theme removes the top margin of a paragraph that follows an h1. */
.dfvp-hero h1 + .dfvp-lead { margin-top: 28px; }
.dfvp-effective { display: inline-flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; margin: 28px 0 0; padding: 10px 16px; border: 1px solid var(--dfvp-line); border-radius: 9px; background: var(--dfvp-deep); }
.dfvp-effective span { color: var(--dfvp-muted); font: 800 10px/1.4 var(--dfvp-mono); letter-spacing: .07em; text-transform: uppercase; }
.dfvp-effective strong { color: var(--dfvp-text); font-size: 14px; font-weight: 700; }

.dfvp-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 24px 0 0; padding: 0; list-style: none; }
.dfvp-facts li { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 14px; margin: 0; padding: 24px; border: 1px solid var(--dfvp-line); border-radius: 9px; background: color-mix(in srgb, var(--dfvp-deep) 96%, transparent); }
.dfvp-facts li > span { color: var(--dfvp-cyan); font: 800 11px/1.5 var(--dfvp-mono); }
.dfvp-facts h2 { margin: 0; color: var(--dfvp-text) !important; font: 740 18px/1.25 var(--dfvp-font) !important; letter-spacing: 0; }
.dfvp-facts p { margin: 8px 0 0; color: var(--dfvp-muted) !important; font-size: 14px !important; line-height: 1.6 !important; }

.dfvp-chapters { padding-block: 48px; color: var(--dfvp-ink); background: var(--dfvp-paper); }
.dfvp-chapters .dfvp-eyebrow { color: var(--dfvp-teal) !important; }
.dfvp-section-header { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(340px, .9fr); gap: clamp(48px, 7vw, 96px); align-items: end; margin-bottom: 24px; }
.dfvp-section-header h2 { max-width: 800px; margin: 12px 0 0; color: var(--dfvp-ink) !important; font: 760 clamp(42px, 4vw, 60px)/1 var(--dfvp-font) !important; letter-spacing: -.05em; }
.dfvp-section-header > p { margin: 0; color: var(--dfvp-ink-muted) !important; font-size: 16px !important; line-height: 1.7 !important; }
.dfvp-chapters__layout { display: grid; grid-template-columns: minmax(250px, 300px) minmax(0, 1fr); gap: 16px; align-items: start; }

.dfvp-toc { position: sticky; top: 96px; padding: 24px; border: 1px solid var(--dfvp-paper-line); border-radius: 9px; background: #dfe9e5; }
.dfvp-micro-label { margin: 0; color: var(--dfvp-ink-muted) !important; font: 800 10px/1.4 var(--dfvp-mono) !important; letter-spacing: .08em; text-transform: uppercase; }
.dfvp-toc ol { display: grid; gap: 0; margin: 14px 0 0; padding: 0; list-style: none; }
.dfvp-toc li { margin: 0; border-top: 1px solid #b8c6c4; }
.dfvp-toc a { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 10px; align-items: baseline; padding: 11px 0; color: var(--dfvp-ink) !important; font-size: 14px; font-weight: 600; line-height: 1.4; text-decoration: none !important; }
.dfvp-toc a span { color: var(--dfvp-teal); font: 800 10px/1.5 var(--dfvp-mono); }
.dfvp-toc a:hover,
.dfvp-toc a:focus-visible { color: var(--dfvp-teal) !important; outline: none; }

.dfvp-chapter-list { display: grid; gap: 16px; min-width: 0; }
.dfvp-chapter { min-width: 0; padding: 32px; border: 1px solid var(--dfvp-paper-line); border-radius: 9px; background: #f9fcfa; scroll-margin-top: 96px; }
.dfvp-chapter > header { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 14px; align-items: baseline; }
.dfvp-chapter > header span { color: var(--dfvp-teal); font: 800 11px/1.5 var(--dfvp-mono); }
.dfvp-chapter h3 { margin: 0; color: var(--dfvp-ink) !important; font: 740 24px/1.25 var(--dfvp-font) !important; letter-spacing: -.02em; }
.dfvp-chapter__body { margin: 16px 0 0 54px; }
.dfvp-chapter__body p,
.dfvp-chapter__body li { color: #2f3b3c !important; font-size: 16px !important; line-height: 1.7 !important; }
.dfvp-chapter__body p { margin: 0 0 14px; }
.dfvp-chapter__body ul { margin: 0 0 14px; padding: 0 0 0 20px; list-style: disc; }
.dfvp-chapter__body li { margin: 0 0 8px; }
.dfvp-chapter__body > :last-child { margin-bottom: 0; }
.dfvp-chapter__body strong { color: var(--dfvp-ink); font-weight: 700; }
.dfvp-chapter__body a { color: var(--dfvp-teal) !important; text-decoration: underline; text-underline-offset: 3px; }
.dfvp-chapter__body a:hover,
.dfvp-chapter__body a:focus-visible { color: #075e59 !important; }
.dfvp-chapter__body code { padding: 2px 6px; border: 1px solid #c6d3d1; border-radius: 9px; background: #e8f1ee; color: var(--dfvp-ink); font: 500 13px/1.5 var(--dfvp-mono); overflow-wrap: anywhere; }

.dfvp-contact { overflow: hidden; padding-block: 48px; color: var(--dfvp-text); background: var(--dfvp-bg); }
.dfvp-contact__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .8fr); gap: clamp(48px, 7vw, 108px); align-items: center; }
.dfvp-contact h2 { max-width: 700px; margin: 12px 0 0; color: var(--dfvp-text) !important; font: 760 clamp(42px, 4vw, 60px)/1 var(--dfvp-font) !important; letter-spacing: -.05em; }
.dfvp-contact__copy > p:not(.dfvp-eyebrow) { max-width: 640px; margin: 24px 0 0; color: var(--dfvp-muted) !important; font-size: 17px !important; line-height: 1.65 !important; }
.dfvp-actions { display: flex; flex-wrap: wrap; gap: 12px 20px; align-items: center; margin-top: 32px; }
.dfvp-button,
.dfvp-text-link { display: inline-flex; min-height: 52px; align-items: center; justify-content: space-between; gap: 24px; border-radius: 9px; font: 800 11px/1.2 var(--dfvp-mono); letter-spacing: .03em; text-decoration: none !important; text-transform: uppercase; transition: border-color .2s, background .2s, color .2s; }
.dfvp-button { min-width: 230px; padding: 0 18px; border: 1px solid var(--dfvp-cyan); background: var(--dfvp-cyan); color: #061313 !important; }
.dfvp-button:hover { border-color: var(--dfvp-green); background: var(--dfvp-green); }
.dfvp-text-link { padding: 0 4px; border-bottom: 1px solid var(--dfvp-line); border-radius: 0; color: var(--dfvp-text) !important; }
.dfvp-text-link:hover { border-color: var(--dfvp-cyan); color: var(--dfvp-cyan) !important; }
.dfvp-details { margin: 0; border: 1px solid var(--dfvp-line); border-radius: 9px; background: color-mix(in srgb, var(--dfvp-deep) 96%, transparent); overflow: hidden; }
.dfvp-details > div { padding: 20px 24px; border-bottom: 1px solid var(--dfvp-line); }
.dfvp-details > div:last-child { border-bottom: 0; }
.dfvp-details dt { margin: 0; color: var(--dfvp-muted); font: 800 10px/1.4 var(--dfvp-mono); letter-spacing: .07em; text-transform: uppercase; }
.dfvp-details dd { margin: 8px 0 0; color: var(--dfvp-text); font-size: 16px; font-weight: 600; line-height: 1.5; overflow-wrap: anywhere; }
.dfvp-details dd a { color: var(--dfvp-cyan) !important; text-decoration: underline; text-underline-offset: 3px; }
.dfvp-details dd a:hover,
.dfvp-details dd a:focus-visible { color: var(--dfvp-green) !important; }

@media (max-width: 1120px) {
    .dfvp-contact__layout { grid-template-columns: 1fr; }
    .dfvp-chapters__layout { grid-template-columns: minmax(220px, 260px) minmax(0, 1fr); }
}

@media (max-width: 820px) {
    .dfvp-shell { width: calc(100vw - 32px); max-width: 680px; }
    .dfvp-hero,
    .dfvp-chapters,
    .dfvp-contact { padding-block: 34px; }
    .dfvp-hero h1 { font-size: clamp(42px, 11.5vw, 58px) !important; }
    .dfvp-facts,
    .dfvp-section-header,
    .dfvp-chapters__layout { grid-template-columns: 1fr; }
    .dfvp-facts { gap: 10px; margin-top: 20px; }
    .dfvp-facts li { padding: 20px; }
    .dfvp-section-header { gap: 20px; margin-bottom: 20px; }
    .dfvp-section-header h2,
    .dfvp-contact h2 { font-size: clamp(36px, 10vw, 48px) !important; }
    .dfvp-chapters__layout,
    .dfvp-chapter-list { gap: 10px; }
    .dfvp-toc { position: static; padding: 20px; }
    .dfvp-chapter { padding: 20px; }
    .dfvp-chapter > header { grid-template-columns: 30px minmax(0, 1fr); gap: 10px; }
    .dfvp-chapter h3 { font-size: 21px !important; }
    .dfvp-chapter__body { margin-left: 0; }
    .dfvp-contact__layout { gap: 28px; }
    .dfvp-details > div { padding: 20px; }
}

@media (max-width: 480px) {
    .dfvp-actions { align-items: stretch; }
    .dfvp-button,
    .dfvp-text-link { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    .dfvp-button,
    .dfvp-text-link { transition: none; }
}
