/* Night Shift: a WPO-component skin owned by the DiskFreeVault child theme. */
body.home {
  --dfvn-bg: var(--wpo-bg, #07090a);
  --dfvn-panel: color-mix(in srgb, var(--wpo-bg, #07090a) 84%, var(--wpo-text, #edf4f3) 16%);
  --dfvn-line: color-mix(in srgb, var(--wpo-text, #edf4f3) 14%, transparent);
  --dfvn-text: var(--wpo-text, #edf4f3);
  --dfvn-muted: var(--wpo-muted, #7b8788);
  --dfvn-muted-readable: color-mix(in srgb, var(--dfvn-text) 66%, var(--dfvn-muted) 34%);
  --dfvn-cyan: var(--wpo-accent, #20e3d6);
  --dfvn-lime: color-mix(in srgb, var(--wpo-accent, #20e3d6) 24%, #d8ff52 76%);
  --dfvn-font: var(--wpo-font-montserrat, var(--wpo-font-base, system-ui, sans-serif));
  --dfvn-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  background: var(--dfvn-bg);
  color: var(--dfvn-text);
  font-family: var(--dfvn-font);
}

.home .wpo-shell { background: var(--dfvn-bg); }
.home .wpo-content { overflow: hidden; background: var(--dfvn-bg); color: var(--dfvn-text); }
.home .wpo-content:not(.wpo-container) { padding-inline: 0 !important; }
.home .wpo-content .wpo-element-vc_column_text { font-family: var(--dfvn-font) !important; text-align: left !important; }
.home .wpo-content .wpb_content_element { margin-bottom: 0 !important; }
.home .wpo-content h1,
.home .wpo-content h2,
.home .wpo-content h3 { color: var(--dfvn-text); }
.home .wpo-content p { color: inherit; }

/* Existing WPO header and footer remain editable through their own components. */
.home .wpo-header {
  position: sticky;
  z-index: 30;
  padding-inline: 0;
  background: color-mix(in srgb, var(--dfvn-bg) 92%, transparent);
  border-bottom: 1px solid var(--dfvn-line);
  backdrop-filter: blur(18px) saturate(150%);
}
.admin-bar.home .wpo-header { top: 32px; }
.home .wpo-header > .vc_row,
.home .wpo-header > .wpb_row { width: min(1300px, calc(100% - 70px)); margin-inline: auto !important; padding-block: 11px !important; }
.home .dfv-header-brand-name a { color: var(--dfvn-text); font-family: var(--dfvn-font); font-size: 16px; font-weight: 700; letter-spacing: -.015em; }
.home .dfv-header-menu-component a { color: var(--dfvn-muted-readable) !important; font: 700 12px/1.45 var(--dfvn-font) !important; letter-spacing: .03em; text-transform: uppercase; }
.home .dfv-header-menu-component a:hover { color: var(--dfvn-cyan) !important; }
.home .dfv-header-cta { text-align: right; }
.home .dfv-header-cta-link { display: inline-block; padding: 12px 17px; color: var(--dfvn-cyan); border: 1px solid color-mix(in srgb, var(--dfvn-cyan) 42%, transparent); border-radius: 9px; font: 700 11px/1.4 var(--dfvn-font); letter-spacing: .04em; text-transform: uppercase; }

.home .dfvn-shell { position: relative; z-index: 2; width: min(1300px, calc(100% - 70px)); margin-inline: auto !important; }
.home .dfvn-shell::before,
.home .dfvn-shell::after { content: ""; display: table; clear: both; }
.home .dfvn-section-label,
.home .dfvn-kicker,
.home .dfvn-status,
.home .dfvn-card-number,
.home .dfvn-fineprint,
.home .dfvn-launch-status { font-family: var(--dfvn-font) !important; font-size: 12px !important; font-weight: 700 !important; line-height: 1.5 !important; letter-spacing: .065em; text-transform: uppercase; }
.home .dfvn-section-label,
.home .dfvn-kicker { color: var(--dfvn-cyan) !important; }
.home .dfvn-body-copy { color: var(--dfvn-muted-readable) !important; font-size: 16px !important; line-height: 1.72 !important; }
.home .dfvn-body-copy ul { margin: 28px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--dfvn-line); }
.home .dfvn-body-copy li { padding: 14px 0; border-bottom: 1px solid var(--dfvn-line); font: 600 12px/1.55 var(--dfvn-font); }
.home .dfvn-body-copy li strong { color: var(--dfvn-lime); text-transform: uppercase; letter-spacing: .05em; }

/* Hero */
.home .dfvn-hero-row { position: relative; padding-top: 58px !important; }
.home .dfvn-hero-row::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  width: 100vw;
  height: 760px;
  opacity: .22;
  background: radial-gradient(circle at 72% 44%, color-mix(in srgb, var(--dfvn-cyan) 14%, transparent), transparent 46%);
  -webkit-mask-image: linear-gradient(to bottom, #000, transparent 92%);
  mask-image: linear-gradient(to bottom, #000, transparent 92%);
  transform: translateX(-50%);
}
.home .dfvn-status-row { margin-bottom: 20px !important; }
.home .dfvn-status { color: var(--dfvn-muted-readable) !important; }
.home .dfvn-status--online { color: color-mix(in srgb, var(--dfvn-text) 68%, var(--dfvn-cyan) 32%) !important; }
.home .dfvn-status--online::before { content: ""; display: inline-block; width: 6px; height: 6px; margin-right: 8px; background: var(--dfvn-lime); border-radius: 50%; box-shadow: 0 0 12px var(--dfvn-lime); }
.home .dfvn-status--center { text-align: center !important; }
.home .dfvn-status--right { text-align: right !important; }
.home .dfvn-kicker { margin-bottom: 24px !important; color: color-mix(in srgb, var(--dfvn-text) 60%, var(--dfvn-cyan) 40%) !important; }
.home .dfvn-hero-heading h1 { max-width: 1180px; margin: 0 0 128px; font-family: var(--dfvn-font) !important; font-size: clamp(58px, 6.4vw, 94px) !important; font-weight: 700; line-height: .98; letter-spacing: -.052em; }
.home .dfvn-hero-heading h1 em { color: var(--dfvn-cyan); font-style: normal; }
.home .dfvn-hero-lower { display: flex; align-items: flex-start; padding-bottom: 80px; }
.home .dfvn-hero-copy { padding-right: 0; }
.home .dfvn-hero-copy > .vc_column-inner > .wpb_wrapper { padding-right: 64px; }
.home .dfvn-hero-lead { max-width: 540px; color: var(--dfvn-muted-readable) !important; font-size: 17px !important; line-height: 1.72 !important; }
.home .dfvn-primary-button,
.home .dfvn-secondary-button { display: inline-block; margin: 22px 5px 0 0 !important; }
.home .dfvn-primary-button .vc_btn3,
.home .dfvn-terminal-run .vc_btn3,
.home .dfvn-final-actions .vc_btn3-color-turquoise { color: #06100f !important; background: var(--dfvn-cyan) !important; border-color: var(--dfvn-cyan) !important; font: 800 11px/1.45 var(--dfvn-font); letter-spacing: .045em; }
.home .dfvn-secondary-button .vc_btn3 { color: var(--dfvn-muted-readable) !important; background: transparent !important; border-color: var(--dfvn-line) !important; font: 700 11px/1.45 var(--dfvn-font); }
.home .dfvn-fineprint { margin-top: 14px !important; color: var(--dfvn-muted-readable) !important; letter-spacing: .025em; text-transform: none; }

/* Terminal made entirely from nested WPO rows, columns, text and button components. */
.home .dfvn-terminal-column > .vc_column-inner { padding: 0 !important; background: color-mix(in srgb, var(--dfvn-bg) 94%, var(--dfvn-text) 6%); border: 1px solid color-mix(in srgb, var(--dfvn-cyan) 25%, var(--dfvn-line)); border-radius: 9px; box-shadow: 0 0 90px color-mix(in srgb, var(--dfvn-cyan) 7%, transparent); overflow: hidden; transition: .35s ease; }
.home .dfvn-terminal-column .wpo-element-vc_column_text:not(.dfvn-app-icon):not(.dfvn-safe-badge) { background-color: transparent !important; }
.home .dfvn-terminal-head { padding: 12px 16px; color: var(--dfvn-muted-readable); background: var(--dfvn-panel); border-bottom: 1px solid var(--dfvn-line); font: 700 9px/1.4 var(--dfvn-mono); letter-spacing: .07em; }
.home .dfvn-terminal-head .wpo-element-vc_column_text { font: inherit !important; }
.home .dfvn-terminal-lights { color: color-mix(in srgb, var(--dfvn-muted) 45%, transparent) !important; text-align: right !important; letter-spacing: .5em; }
.home .dfvn-terminal-summary { display: flex; align-items: center; padding: 23px 25px 15px; }
.home .dfvn-disk-stat { display: grid; gap: 6px; }
.home .dfvn-disk-stat--external { text-align: right !important; }
.home .dfvn-disk-stat small,
.home .dfvn-disk-stat span,
.home .dfvn-move-stat small { color: var(--dfvn-muted-readable); font: 700 9px/1.4 var(--dfvn-mono); letter-spacing: .06em; }
.home .dfvn-disk-stat strong { display: block; margin-block: 6px; font-size: 27px; font-weight: 600; line-height: 1; letter-spacing: -.04em; }
.home .dfvn-move-stat { display: grid; justify-items: center; color: var(--dfvn-cyan) !important; text-align: center !important; }
.home .dfvn-move-stat strong { font: 750 11px/1.4 var(--dfvn-mono); }
.home .dfvn-move-stat b { font-size: 24px; font-weight: 500; }
.home .dfvn-meter { position: relative; margin: 0 25px 17px !important; padding-top: 10px !important; color: transparent !important; border-top: 5px solid #1b2323; font-size: 1px !important; }
.home .dfvn-meter::before { content: ""; position: absolute; top: -5px; left: 0; width: 96%; height: 5px; background: linear-gradient(90deg, #ff4d64, #ff8b50); transition: width 1s ease, background .5s; }
.home .dfvn-app-row { display: flex; align-items: center; margin-inline: 14px; padding-block: 9px; border-top: 1px solid var(--dfvn-line); border-radius: 9px; }
.home .dfvn-app-row .vc_column-inner { padding-inline: 8px !important; }
.home .dfvn-app-icon { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 9px; font-size: 10px !important; font-weight: 800 !important; text-align: center !important; }
.home .dfvn-app-icon--purple { color: #eedcff !important; background: #6f38a8 !important; }
.home .dfvn-app-icon--orange { color: #15100b !important; background: #ff9c3e !important; }
.home .dfvn-app-icon--blue { color: white !important; background: #258bd4 !important; }
.home .dfvn-app-name { display: grid; gap: 3px; font: 650 11px/1.35 var(--dfvn-font) !important; }
.home .dfvn-app-name small { display: block; color: var(--dfvn-muted-readable); font-size: 8px; }
.home .dfvn-safe-badge { justify-self: end; padding: 5px 7px !important; color: var(--dfvn-lime) !important; background: color-mix(in srgb, var(--dfvn-lime) 7%, transparent) !important; border: 1px solid color-mix(in srgb, var(--dfvn-lime) 28%, transparent); border-radius: 9px; font: 750 8px/1.35 var(--dfvn-font) !important; text-align: center !important; }
.home .dfvn-terminal-run { margin: 12px 14px 14px !important; }
.home .dfvn-terminal-run .vc_btn3-container,
.home .dfvn-terminal-run .vc_btn3 { display: block; width: 100%; }
.home .dfvn-terminal-column.is-complete > .vc_column-inner { border-color: color-mix(in srgb, var(--dfvn-lime) 60%, transparent); box-shadow: 0 0 90px color-mix(in srgb, var(--dfvn-lime) 9%, transparent); }
.home .dfvn-terminal-column.is-complete .dfvn-meter::before { width: 24%; background: var(--dfvn-lime); }

.home .dfvn-marquee-row { width: 100%; margin: 0 !important; padding: 16px 0; color: #07100f; background: var(--dfvn-cyan); overflow: hidden; }
.home .dfvn-marquee { width: max-content; color: #07100f !important; background: transparent !important; font: 800 11px/1.4 var(--dfvn-font) !important; letter-spacing: .045em; white-space: nowrap; animation: dfvn-marquee 24s linear infinite; }
@keyframes dfvn-marquee { to { transform: translateX(-25%); } }

/* Shared section architecture */
.home .dfvn-context-row,
.home .dfvn-protocol-row,
.home .dfvn-cleanup-row,
.home .dfvn-safety-row,
.home .dfvn-faq-row,
.home .dfvn-final-row { padding-block: 48px; border-bottom: 1px solid var(--dfvn-line); }
.home .dfvn-context-row .wpo-element-vc_column_text,
.home .dfvn-protocol-row .wpo-element-vc_column_text,
.home .dfvn-launch-row .wpo-element-vc_column_text:not(.dfvn-launch-app):not(.dfvn-safe-badge),
.home .dfvn-cleanup-row .wpo-element-vc_column_text,
.home .dfvn-safety-row .wpo-element-vc_column_text,
.home .dfvn-faq-row .wpo-element-vc_column_text,
.home .dfvn-final-row .wpo-element-vc_column_text { background-color: transparent !important; }
.home .dfvn-section-heading h2 { margin: 0; font-family: var(--dfvn-font) !important; font-size: clamp(44px, 4.5vw, 66px) !important; font-weight: 700; line-height: 1; letter-spacing: -.042em; }
.home .dfvn-context-row > .wpb_column,
.home .dfvn-protocol-row > .wpb_column { padding-right: 0; }
.home .dfvn-context-row > .wpb_column:nth-child(-n+2),
.home .dfvn-protocol-row > .wpb_column:nth-child(-n+2) { min-height: 176px; }
.home .dfvn-section-intro > .vc_column-inner > .wpb_wrapper { padding-right: clamp(40px, 7vw, 96px); }
.home .dfvn-section-intro .dfvn-section-heading { margin-top: 18px !important; }
.home .dfvn-context-row > .wpb_column:nth-child(2) > .vc_column-inner > .wpb_wrapper,
.home .dfvn-protocol-row > .wpb_column:nth-child(2) > .vc_column-inner > .wpb_wrapper { padding-top: 34px; padding-left: 10px; }
.home .dfvn-context-message { margin-top: 28px; color: #06100f; background: var(--dfvn-cyan); border: 0; border-radius: 9px; font-size: 14px; font-weight: 700; line-height: 1.55; }

.home .dfvn-protocol-card { margin-top: 52px; padding: 0 !important; }
.home .dfvn-protocol-card:nth-child(3) { clear: both; }
.home .dfvn-protocol-card > .vc_column-inner { position: relative; width: calc(100% - 16px); min-height: 345px; margin-inline: 8px; padding: 0 !important; background: var(--dfvn-panel); border: 1px solid var(--dfvn-line); border-radius: 9px; overflow: hidden; }
.home .dfvn-protocol-card:nth-child(3) > .vc_column-inner { width: calc(100% - 8px); margin-left: 0; }
.home .dfvn-protocol-card:nth-child(6) > .vc_column-inner { width: calc(100% - 8px); margin-right: 0; }
.home .dfvn-protocol-card > .vc_column-inner > .wpb_wrapper { min-height: 343px; padding: 25px !important; }
.home .dfvn-card-number { color: color-mix(in srgb, var(--dfvn-muted) 60%, transparent) !important; }
.home .dfvn-card-icon { margin: 40px 0 25px; }
.home .dfvn-card-icon .vc_icon_element-inner { color: var(--dfvn-cyan) !important; background: color-mix(in srgb, var(--dfvn-cyan) 6%, transparent) !important; border-color: color-mix(in srgb, var(--dfvn-cyan) 22%, transparent) !important; }
.home .dfvn-card-copy h3 { margin: 0 0 12px; font-size: 19px; font-weight: 700; }
.home .dfvn-card-copy p { color: var(--dfvn-muted-readable); font-size: 14px; line-height: 1.62; }
.home .dfvn-card-copy small { position: absolute; bottom: 22px; color: var(--dfvn-muted-readable); font: 700 9px/1.4 var(--dfvn-font); letter-spacing: .065em; }
.home .dfvn-section-action { margin-top: 24px; }
.home .dfvn-section-action .vc_btn3,
.home .dfvn-safety-row .vc_btn3 { color: var(--dfvn-cyan) !important; background: transparent !important; border-color: color-mix(in srgb, var(--dfvn-cyan) 42%, transparent) !important; font: 700 10px/1.45 var(--dfvn-font); }

/* Familiar-launch section */
.home .dfvn-launch-row { display: flex; align-items: stretch; width: 100%; margin: 0 !important; padding: 80px max(35px, calc((100vw - 1300px) / 2)); background: var(--dfvn-panel); border-bottom: 1px solid var(--dfvn-line); }
.home .dfvn-launch-visual { padding: 0 !important; }
.home .dfvn-launch-visual > .vc_column-inner { height: 100%; min-height: 425px; padding: 0 !important; background: var(--dfvn-bg); border: 1px solid var(--dfvn-line); border-radius: 9px; overflow: hidden; }
.home .dfvn-launch-visual > .vc_column-inner > .wpb_wrapper { height: 100%; min-height: 423px; padding: 0 !important; }
.home .dfvn-homepage-slider,
.home .dfvn-homepage-slider .sliderone-slider { width: 100%; height: 423px; }
.home .dfvn-homepage-slider .sliderone-slider { width: 100% !important; max-width: 100% !important; margin-inline: 0 !important; border: 0; border-radius: 9px; background: var(--dfvn-bg); }
.home .dfvn-homepage-slider .sliderone-overlay-node { padding: 0 !important; text-shadow: none; }
.home .dfvn-homepage-slider .sliderone-overlay-title { line-height: 1.08 !important; letter-spacing: -.035em !important; }
.home .dfvn-homepage-slider .sliderone-overlay-title span { display: inline-block; margin-bottom: 16px; font-size: 10px !important; font-weight: 800; line-height: 1.4; letter-spacing: .12em !important; }
.home .dfvn-homepage-slider .sliderone-overlay-text { line-height: 1.55 !important; }
.home .dfvn-homepage-slider .sliderone-dots { bottom: 22px; }
.home .dfvn-launch-card { display: flex; align-items: center; width: 100%; margin: 64px 0 0 !important; padding: 17px; background: var(--dfvn-panel); border: 1px solid var(--dfvn-line); border-radius: 9px; }
.home .dfvn-launch-app { display: grid; place-items: center; width: 55px; height: 55px; color: #f2e8ff !important; background: #6f38a8 !important; border-radius: 9px; font-size: 14px !important; font-weight: 850 !important; text-align: center !important; }
.home .dfvn-launch-name { display: grid; gap: 4px; }
.home .dfvn-launch-name small,
.home .dfvn-launch-name span { display: block; color: var(--dfvn-muted-readable); font: 650 10px/1.45 var(--dfvn-font); }
.home .dfvn-launch-name strong { display: block; font-size: 18px; }
.home .dfvn-launch-message { margin: 14px 0 0 !important; color: #06100f; background: var(--dfvn-cyan); border: 0; border-radius: 9px; font: 700 12px/1.5 var(--dfvn-font); }
.home .dfvn-launch-status { margin-top: 58px !important; color: var(--dfvn-muted) !important; }
.home .dfvn-launch-status::before { content: ""; display: inline-block; width: 6px; height: 6px; margin-right: 8px; background: var(--dfvn-lime); border-radius: 50%; box-shadow: 0 0 10px var(--dfvn-lime); }
.home .dfvn-launch-copy { padding: 0 !important; }
.home .dfvn-launch-copy > .vc_column-inner > .wpb_wrapper { padding: 28px 32px 20px 56px; }
.home .dfvn-launch-copy .dfvn-section-heading { margin: 28px 0 25px; }

/* Secondary disk scan */
.home .dfvn-cleanup-row { display: flex; align-items: center; }
.home .dfvn-scan-panel { padding: 0 !important; }
.home .dfvn-scan-panel > .vc_column-inner { min-height: 430px; padding: 0 !important; background: transparent; }
.home .dfvn-scan-panel > .vc_column-inner > .wpb_wrapper { display: grid; grid-template-columns: minmax(190px, .82fr) minmax(250px, 1.18fr); gap: 0 38px; align-items: stretch; min-height: 430px; padding: 28px !important; background: color-mix(in srgb, var(--dfvn-bg) 94%, black 6%); border: 1px solid var(--dfvn-line); border-radius: 9px; overflow: hidden; }
.home .dfvn-cleanup-row .dfvn-scan-total { grid-row: 1 / 5; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; width: 100%; min-height: 270px; padding: 34px !important; background: linear-gradient(145deg, color-mix(in srgb, var(--dfvn-cyan) 12%, var(--dfvn-panel)), color-mix(in srgb, var(--dfvn-bg) 96%, black 4%)) !important; border: 1px solid color-mix(in srgb, var(--dfvn-cyan) 34%, var(--dfvn-line)); border-radius: 9px !important; text-align: left !important; }
.home .dfvn-scan-total::before { content: ""; display: block; width: 42px; height: 3px; margin-bottom: 26px; background: var(--dfvn-cyan); border-radius: 9px; }
.home .dfvn-scan-total > .wpb_text_column,
.home .dfvn-scan-total > .wpb_text_column > .wpb_wrapper { width: 100%; }
.home .dfvn-scan-total small { display: block; margin-bottom: 12px; color: var(--dfvn-cyan); font: 750 10px/1.4 var(--dfvn-font); letter-spacing: .08em; }
.home .dfvn-scan-total strong { display: flex; align-items: baseline; gap: 8px; color: var(--dfvn-text); font-size: clamp(54px, 5vw, 70px); font-weight: 700; line-height: .92; letter-spacing: -.06em; }
.home .dfvn-scan-total strong span { color: var(--dfvn-muted-readable); font-size: 17px; font-weight: 700; letter-spacing: .04em; }
.home .dfvn-scan-total em { display: block; margin-top: 17px; color: var(--dfvn-muted-readable); font-size: 12px; font-style: normal; font-weight: 600; }
.home .dfvn-scan-item { position: relative; align-self: stretch; display: flex; align-items: center; margin: 0 !important; padding: 0 0 0 20px !important; color: var(--dfvn-muted-readable) !important; border-bottom: 1px solid var(--dfvn-line); border-radius: 0 !important; font: 650 13px/1.5 var(--dfvn-font) !important; }
.home .dfvn-scan-item:last-child { border-bottom: 0; }
.home .dfvn-scan-item::before { content: ""; position: absolute; left: 0; top: 50%; width: 7px; height: 7px; background: var(--scan-color); border-radius: 50%; transform: translateY(-50%); }
.home .dfvn-scan-item > .wpb_text_column,
.home .dfvn-scan-item > .wpb_text_column > .wpb_wrapper { width: 100%; }
.home .dfvn-scan-item > .wpb_text_column > .wpb_wrapper { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.home .dfvn-scan-item strong { color: var(--dfvn-text); font-size: 14px; white-space: nowrap; }
.home .dfvn-scan-item--violet { --scan-color: #8d5cff; }.home .dfvn-scan-item--cyan { --scan-color: var(--dfvn-cyan); }.home .dfvn-scan-item--lime { --scan-color: var(--dfvn-lime); }.home .dfvn-scan-item--muted { --scan-color: #2c3536; }
.home .dfvn-cleanup-copy { padding: 0 !important; }
.home .dfvn-cleanup-copy > .vc_column-inner > .wpb_wrapper { padding: 12px 0 12px 60px; }
.home .dfvn-cleanup-copy .dfvn-section-heading { margin: 28px 0 25px; }

/* Safety and final CTA */
.home .dfvn-safety-row > .wpb_column:first-child { padding-right: 0; }
.home .dfvn-safety-row > .wpb_column:first-child > .vc_column-inner > .wpb_wrapper { padding-right: 64px; }
.home .dfvn-safety-row > .wpb_column:last-child > .vc_column-inner > .wpb_wrapper { padding-left: 36px; }
.home .dfvn-safety-row .dfvn-section-heading { margin-top: 28px; }
.home .dfvn-safety-item { display: flex; align-items: flex-start; width: 100%; margin-inline: 0 !important; padding: 23px 0; border-top: 1px solid var(--dfvn-line); }
.home .dfvn-safety-item:last-of-type { border-bottom: 1px solid var(--dfvn-line); }
.home .dfvn-safety-item > .wpb_column:first-child { color: var(--dfvn-cyan); font: 750 11px/1.45 var(--dfvn-font); }
.home .dfvn-safety-item h3 { margin: 0 0 8px; font-size: 18px; font-weight: 700; }
.home .dfvn-safety-item p { margin: 0; color: var(--dfvn-muted-readable); font-size: 14px; line-height: 1.62; }

/* Two-level WPO FAQ tree: one parent list with nested child questions. */
.home .dfvn-faq-intro > .vc_column-inner > .wpb_wrapper { padding-right: 64px; }
.home .dfvn-faq-intro .dfvn-section-heading { margin: 28px 0 24px; }
.home .dfvn-faq-list > .vc_column-inner > .wpb_wrapper { padding-left: 36px; }
.home .dfvn-faq-tree { display: grid; gap: var(--dfvn-faq-branch-gap, 16px); width: 100%; }
.home .dfvn-faq-tree summary { list-style: none; cursor: pointer; }
.home .dfvn-faq-tree summary::-webkit-details-marker { display: none; }
.home .dfvn-faq-tree summary:focus-visible { outline: 2px solid var(--dfvn-cyan); outline-offset: -3px; }
.home .dfvn-faq-branch { background: #0f1415; border: 1px solid var(--dfvn-line); border-radius: var(--dfvn-faq-parent-radius, 9px); overflow: hidden; }
.home .dfvn-faq-parent { display: flex; align-items: center; justify-content: space-between; min-height: 88px; gap: 24px; padding: var(--dfvn-faq-parent-padding, 24px); }
.home .dfvn-faq-parent__copy { display: grid; gap: 5px; }
.home .dfvn-faq-parent__copy small { color: var(--dfvn-cyan); font: 750 10px/1.45 var(--dfvn-mono); letter-spacing: .055em; text-transform: uppercase; }
.home .dfvn-faq-parent__copy strong { color: var(--dfvn-text); font: 700 17px/1.35 var(--dfvn-font); }
.home .dfvn-faq-parent > i,
.home .dfvn-faq-child > summary > i { position: relative; flex: 0 0 18px; width: 18px; height: 18px; color: var(--dfvn-cyan); }
.home .dfvn-faq-parent > i::before,
.home .dfvn-faq-parent > i::after,
.home .dfvn-faq-child > summary > i::before,
.home .dfvn-faq-child > summary > i::after { position: absolute; top: 50%; left: 50%; width: 12px; height: 2px; content: ''; background: currentColor; transform: translate(-50%, -50%); transition: transform .18s ease; }
.home .dfvn-faq-parent > i::after,
.home .dfvn-faq-child > summary > i::after { transform: translate(-50%, -50%) rotate(90deg); }
.home .dfvn-faq-branch[open] > .dfvn-faq-parent > i::after,
.home .dfvn-faq-child[open] > summary > i::after { transform: translate(-50%, -50%) rotate(90deg) scaleX(0); }
.home .dfvn-faq-branch[open] > .dfvn-faq-parent { border-bottom: 1px solid var(--dfvn-line); }
.home .dfvn-faq-children { display: grid; gap: var(--dfvn-faq-child-gap, 16px); padding: 24px; background: var(--dfvn-panel); }
.home .dfvn-faq-branch:not([open]) > .dfvn-faq-children,
.home .dfvn-faq-child:not([open]) > .dfvn-faq-answer { display: none; }
.home .dfvn-faq-child { background: var(--dfvn-bg); border: 1px solid var(--dfvn-line); border-radius: var(--dfvn-faq-child-radius, 9px); overflow: hidden; }
.home .dfvn-faq-child > summary { display: flex; align-items: center; justify-content: space-between; min-height: 56px; gap: 24px; padding: var(--dfvn-faq-child-padding, 16px 24px); }
.home .dfvn-faq-child > summary strong { color: var(--dfvn-text); font: 700 14px/1.55 var(--dfvn-font); }
.home .dfvn-faq-child[open] > summary { border-bottom: 1px solid var(--dfvn-line); }
.home .dfvn-faq-answer { padding: 18px 24px 20px; }
.home .dfvn-faq-answer p { margin: 0; color: var(--dfvn-muted-readable); font-size: 14px; line-height: 1.7; }

.home .dfvn-final-row { display: flex; align-items: flex-end; border-bottom: 0; }
.home .dfvn-final-row > .wpb_column:first-child > .vc_column-inner > .wpb_wrapper { padding-right: 56px; }
.home .dfvn-final-actions > .vc_column-inner > .wpb_wrapper { padding-left: 36px; }
.home .dfvn-final-heading h2 { margin: 25px 0 24px; font-family: var(--dfvn-font) !important; font-size: clamp(52px, 5.6vw, 80px) !important; font-weight: 700; line-height: .98; letter-spacing: -.045em; }
.home .dfvn-final-actions .vc_btn3-container { margin-bottom: 12px; }
.home .dfvn-final-actions .vc_btn3 { display: block; width: 100%; font: 700 11px/1.45 var(--dfvn-font); }

.home .wpo-footer { margin: 0; color: var(--dfvn-muted-readable); background: var(--dfvn-bg); border-top: 1px solid var(--dfvn-line); }
.home .wpo-footer__content { width: min(1300px, calc(100% - 70px)); margin-inline: auto; padding-inline: 0; }
.home .dfv-footer-shell { padding-block: 60px 20px; }
.home .dfv-footer-shell h4 { color: var(--dfvn-text); }
.home .dfv-footer-shell p,
.home .dfv-footer-shell a { color: var(--dfvn-muted-readable); }
.home .dfv-footer-shell a:hover { color: var(--dfvn-cyan); }
.home .dfv-footer-shell .footer-content { display: grid; grid-template-columns: minmax(0, 2fr) repeat(3, minmax(0, 1fr)); gap: 36px; }
.home .dfv-footer-shell .footer-section h4 { margin-top: 0; }
.home .footer-bottom { border-color: var(--dfvn-line); }

@media (max-width: 1100px) {
  .home .dfvn-hero-lower { display: block; }
  .home .dfvn-hero-copy { width: 100%; padding: 0 0 50px; }
  .home .dfvn-hero-copy > .vc_column-inner > .wpb_wrapper { padding-right: 0; }
  .home .dfvn-terminal-column { width: 100%; }
  .home .dfvn-protocol-card { width: 50%; }
  .home .dfvn-protocol-card:nth-child(4) > .vc_column-inner { width: calc(100% - 8px); margin-right: 0; }
  .home .dfvn-protocol-card:nth-child(5) > .vc_column-inner { width: calc(100% - 8px); margin-left: 0; }
  .home .dfvn-launch-row,
  .home .dfvn-cleanup-row { display: block; }
  .home .dfvn-launch-row > .wpb_column,
  .home .dfvn-cleanup-row > .wpb_column { width: 100%; }
  .home .dfvn-launch-visual,
  .home .dfvn-scan-panel { margin-bottom: 55px; padding: 0 !important; }
  .home .dfvn-launch-copy,
  .home .dfvn-cleanup-copy { padding: 0 !important; }
  .home .dfvn-launch-copy > .vc_column-inner > .wpb_wrapper,
  .home .dfvn-cleanup-copy > .vc_column-inner > .wpb_wrapper { padding: 0; }
}

@media (max-width: 760px) {
  .home .wpo-header > .vc_row,
  .home .wpo-header > .wpb_row,
  .home .dfvn-shell,
  .home .wpo-footer__content { width: min(100% - 32px, 600px); }
  .home #dfv-header-menu { display: none; }
  .home #dfv-header-brand { width: 56% !important; }
  .home #dfv-header-cta { width: 44% !important; }
  .home #dfv-header-brand,
  .home #dfv-header-cta { float: left !important; }
  .home #dfv-header-brand > .vc_column-inner,
  .home #dfv-header-cta > .vc_column-inner { padding-inline: 0 !important; }
  .home .dfv-header-cta-link { padding: 10px 12px; font-size: 10px; white-space: nowrap; }
  .home .dfvn-status-row { display: none !important; }
  .home .dfvn-hero-row { padding-top: 56px !important; padding-bottom: 56px !important; }
  .home .dfvn-hero-heading h1 { margin-bottom: 0; font-size: clamp(47px, 13vw, 60px) !important; line-height: 1.01; letter-spacing: -.045em; }
  .home .dfvn-section-heading h2 { font-size: clamp(38px, 10.5vw, 47px) !important; }
  .home .dfvn-final-heading h2 { font-size: clamp(44px, 12vw, 54px) !important; }
  .home .dfvn-terminal-summary { padding-inline: 12px; }
  .home .dfvn-disk-stat strong { font-size: 18px; }
  .home .dfvn-move-stat strong,
  .home .dfvn-move-stat small { display: none; }
  .home .dfvn-app-row .wpb_column:first-child { width: 16.666%; }
  .home .dfvn-app-row .wpb_column:nth-child(2) { width: 66.666%; }
  .home .dfvn-app-row .wpb_column:last-child { width: 16.666%; }
  .home .dfvn-context-row,
  .home .dfvn-protocol-row,
  .home .dfvn-cleanup-row,
  .home .dfvn-safety-row,
  .home .dfvn-faq-row,
  .home .dfvn-final-row { padding-block: 34px; }
  .home .dfvn-context-row > .wpb_column:nth-child(-n+2),
  .home .dfvn-protocol-row > .wpb_column:nth-child(-n+2) { min-height: 0; }
  .home .dfvn-section-intro > .vc_column-inner > .wpb_wrapper { padding-right: 0; }
  .home .dfvn-context-row > .wpb_column:nth-child(2) > .vc_column-inner > .wpb_wrapper,
  .home .dfvn-protocol-row > .wpb_column:nth-child(2) > .vc_column-inner > .wpb_wrapper { padding-top: 0; padding-left: 0; }
  .home .dfvn-context-row > .wpb_column,
  .home .dfvn-protocol-row > .wpb_column,
  .home .dfvn-safety-row > .wpb_column,
  .home .dfvn-faq-row > .wpb_column,
  .home .dfvn-final-row > .wpb_column { width: 100%; padding: 0 0 28px !important; }
  .home .dfvn-context-row > .wpb_column > .vc_column-inner > .wpb_wrapper,
  .home .dfvn-protocol-row > .wpb_column:not(.dfvn-protocol-card):not(.dfvn-section-action) > .vc_column-inner > .wpb_wrapper,
  .home .dfvn-safety-row > .wpb_column > .vc_column-inner > .wpb_wrapper,
  .home .dfvn-faq-row > .wpb_column > .vc_column-inner > .wpb_wrapper,
  .home .dfvn-final-row > .wpb_column > .vc_column-inner > .wpb_wrapper { padding-inline: 0; }
  .home .dfvn-faq-row > .dfvn-faq-intro { padding-bottom: 24px !important; }
  .home .dfvn-faq-tree { gap: 10px; }
  .home .dfvn-faq-parent { min-height: 78px; padding: 20px; }
  .home .dfvn-faq-children { gap: 10px; padding: 20px; }
  .home .dfvn-faq-child > summary { padding: 16px 20px; }
  .home .dfvn-faq-answer { padding: 16px 20px 20px; }
  .home .dfvn-protocol-card { width: 100% !important; margin-top: 12px; padding: 0 !important; }
  .home .dfvn-protocol-card > .vc_column-inner,
  .home .dfvn-protocol-card:nth-child(3) > .vc_column-inner,
  .home .dfvn-protocol-card:nth-child(4) > .vc_column-inner,
  .home .dfvn-protocol-card:nth-child(5) > .vc_column-inner,
  .home .dfvn-protocol-card:nth-child(6) > .vc_column-inner { width: 100%; margin-inline: 0; }
  .home .dfvn-launch-row { padding: 68px 16px; }
  .home .dfvn-launch-visual > .vc_column-inner { min-height: 390px; padding: 0 !important; }
  .home .dfvn-launch-visual > .vc_column-inner > .wpb_wrapper { min-height: 388px; padding: 0 !important; }
  .home .dfvn-homepage-slider,
  .home .dfvn-homepage-slider .sliderone-slider { height: 388px; }
  .home .dfvn-homepage-slider .sliderone-overlay-title { max-width: 56% !important; font-size: clamp(25px, 7vw, 31px) !important; }
  .home .dfvn-homepage-slider .sliderone-overlay-text { max-width: 52% !important; font-size: 13px !important; }
  .home .dfvn-launch-copy > .vc_column-inner > .wpb_wrapper,
  .home .dfvn-cleanup-copy > .vc_column-inner > .wpb_wrapper { padding: 0; }
  .home .dfvn-launch-card .wpb_column:first-child { width: 20%; }
  .home .dfvn-launch-card .wpb_column:nth-child(2) { width: 60%; }
  .home .dfvn-launch-card .wpb_column:last-child { width: 20%; }
  .home .dfvn-launch-message { margin-left: 0; }
  .home .dfvn-scan-panel > .vc_column-inner > .wpb_wrapper { grid-template-columns: 1fr; gap: 0; padding: 20px !important; }
  .home .dfvn-cleanup-row .dfvn-scan-total { grid-row: auto; min-height: 220px; margin-bottom: 12px !important; padding: 28px !important; }
  .home .dfvn-scan-item { min-height: 56px; }
  .home .dfvn-final-row { display: block; }
  .home .dfv-footer-shell .footer-content { grid-template-columns: 1fr; gap: 22px; }
}

@media screen and (max-width: 782px) {
  .admin-bar.home .wpo-header { top: 46px; }
}

@media (prefers-reduced-motion: reduce) {
  .home .dfvn-marquee { animation: none; }
  .home * { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
