/* Individual hub and utility compositions, using the shared reference tokens. */
.vf-solid-cta { background:var(--navy); min-height:0; padding:var(--section) 0; align-items:center; }
.vf-solid-cta .eyebrow { margin-bottom:20px; }
.vf-number { font-family:ui-monospace,monospace; color:var(--slate); font-size:13px; display:block; margin-bottom:28px; }
.vf-handle-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.results-everything { margin-top:56px; }
.results-everything > p { margin:16px 0 28px; color:var(--on-dark-muted); max-width:52ch; }
.results-detail-acc summary { font-size:1.15rem; }
.results-detail-acc { background:transparent; color:var(--on-dark); border-color:var(--line-dark); }
.results-detail-acc details { border-color:var(--line-dark); }
.results-detail-acc .acc-body { max-width:none; padding-right:0; color:var(--on-dark-muted); }
.results-detail-acc table { color:var(--on-dark); font-size:15px; min-width:680px; }
.results-detail-acc th,.results-detail-acc td { border-color:var(--line-dark); }
.results-detail-acc .acc-body p { max-width:72ch; margin-top:20px; }
.vf-social [data-results] { padding-bottom:var(--section); }
.vf-social .vf-form > .builder-layout { scroll-margin-top:100px; }
.vf-production-stage { padding:0; }
.vf-production-film { position:relative; height:clamp(320px,43vw,600px); overflow:hidden; }
.vf-production-film picture,.vf-production-film img,.vf-production-film video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.vf-production-film::after { content:""; position:absolute; inset:0; background:linear-gradient(transparent 25%,rgba(10,22,34,.72) 70%,rgba(10,22,34,.8)); pointer-events:none; }
.vf-stage-caption { position:absolute; bottom:40px; left:var(--gut); color:white; z-index:2; font-size:clamp(1.6rem,3vw,3rem); }
.vf-production-film .btn { position:absolute; bottom:40px; right:var(--gut); z-index:3; }
.work-grid { display:grid; gap:18px; }
.vf-work-pair { grid-template-columns:1.4fr 1fr; }
.vf-work-pair .tile { aspect-ratio:4/3; grid-column:auto; grid-row:auto; }
.vf-work-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); }
.vf-work-gallery .tile { grid-column:auto; grid-row:auto; aspect-ratio:4/3; }
.vf-work-gallery .tile:first-child { grid-column:1/-1; aspect-ratio:16/9; }
.work-grid .tile { position:relative; display:block; overflow:hidden; border-radius:var(--radius); text-decoration:none; color:var(--on-dark); }
.work-grid .tile picture,.work-grid .tile img,.work-grid .tile video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.work-grid .caption { background:rgba(10,22,34,.82); border-radius:12px; padding:10px 14px; max-width:calc(100% - 32px); }
.work-grid .caption b { background:none; padding:0; }
.work-grid .caption span { display:block; margin-top:6px; font-size:14px; line-height:1.35; max-width:38ch; }
.vf-work .vf-work-filters { padding-top:8px; }
.vf-filter-status { font-size:14px; color:var(--slate); margin:20px 0 28px; }
.vf-work .chips { display:flex; flex-wrap:wrap; gap:10px; }
.vf-work .chip { position:static; display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:8px 18px; background:var(--paper); color:var(--ink); border:1px solid rgba(10,22,34,.25); border-radius:999px; font-size:15px; cursor:pointer; }
.vf-work .chip[aria-pressed=true] { background:var(--ink); color:white; }
.vf-role-list { max-width:1100px; margin-left:auto; }
.vf-role-row { display:grid; grid-template-columns:1fr 1.2fr; gap:40px; padding:28px 0; border-top:1px solid var(--line); }
.vf-role-row h3 { font-size:clamp(1.5rem,2.5vw,2.3rem); line-height:1.1; }
.vf-role-row p { max-width:40ch; color:var(--slate); }
.vf-coverage-type { display:flex; flex-direction:column; align-items:flex-start; font-size:clamp(2.5rem,5.5vw,5rem); line-height:1.08; letter-spacing:-.03em; }
.vf-coverage-type span:nth-child(even) { margin-left:12%; color:var(--slate); }
.vf-inquiry-section { padding-top:0; }
.vf-inquiry-columns { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:clamp(32px,7vw,90px); align-items:start; }
.vf-inquiry-columns > .next-steps { grid-column:1; grid-row:1; }
.vf-inquiry-columns > .inquiry-demo { grid-column:2; grid-row:1; padding:32px; background:white; border-radius:var(--radius); }
.vf-production .i-row { border-bottom:1px solid var(--line); }
.vf-production .i-desc { font-size:15px; color:var(--slate); max-width:30ch; }
.vf-production .i-arrow { justify-self:end; }
.vf-inquiry-columns h2 { font-size:clamp(1.8rem,3vw,2.5rem); line-height:1.1; margin-bottom:24px; }
.vf-inquiry-columns h3 { font-size:1.3rem; margin:28px 0 14px; }
.vf-inquiry-columns p+p { margin-top:18px; }
.vf-inquiry-columns ol { padding-left:22px; }
.vf-inquiry-columns li+li { margin-top:18px; }
.vf-inquiry-columns .small,.vf-small { font-size:14px; line-height:1.6; }
.vf-inquiry-columns [data-scope-preview] { background:var(--paper); padding:24px; border-radius:16px; margin:24px 0; }
.vf-inquiry-columns [data-tally-slot] { margin-top:24px; }
.vf-inquiry-columns iframe { width:100%; min-height:700px; border:0; }
.vf-inquiry-columns .btn { white-space:normal; text-align:center; height:auto; min-height:52px; margin:16px 0; }
.vf-policy-layout { display:grid; grid-template-columns:240px minmax(0,68ch); gap:clamp(40px,7vw,100px); justify-content:center; }
.vf-policy-layout aside { position:sticky; top:104px; align-self:start; }
.vf-policy-layout aside nav { display:flex; flex-direction:column; gap:14px; font-size:15px; }
.vf-policy-layout aside a { text-decoration:none; }
.vf-policy { font-size:19px; line-height:1.7; }
.vf-policy h2 { font-size:1.7rem; margin:44px 0 16px; }
.vf-policy h1 { margin-bottom:18px; }
.vf-policy p+p { margin-top:20px; }
.vf-404 .vf-intro { position:relative; }
.vf-404 .vf-intro::after { content:""; position:absolute; right:var(--gut); top:140px; width:100px; height:100px; border-top:1px solid var(--slate); border-right:1px solid var(--slate); opacity:.4; }
@media(max-width:900px) { .vf-policy-layout { grid-template-columns:1fr; } .vf-policy-layout aside { position:static; } .vf-policy-layout aside nav { flex-direction:row; flex-wrap:wrap; } }
@media(max-width:760px) {
 .vf-handle-grid,.vf-work-gallery,.vf-work-pair,.vf-inquiry-columns,.vf-role-row { grid-template-columns:1fr; }
 .vf-role-row { gap:14px; }
 .vf-production-film { height:420px; }
 .vf-production-film .btn { bottom:24px; right:auto; left:24px; }
 .vf-stage-caption { bottom:94px; left:24px; }
 .vf-inquiry-columns > .next-steps,.vf-inquiry-columns > .inquiry-demo { grid-column:auto; grid-row:auto; }
 .vf-inquiry-columns > .inquiry-demo { padding:24px; order:2; }
 .vf-inquiry-columns > .next-steps { order:1; }
 .vf-production .i-desc { grid-column:1/-1; grid-row:2; max-width:none; }
 .vf-production .i-arrow { grid-column:2; grid-row:1; }
 .vf-coverage-type { margin:24px 0; }
 .vf-work-gallery .caption span { max-width:28ch; }
 .vf-404 .vf-intro::after { width:56px; height:56px; top:115px; }
}
