:root { --vdc-red:#b61b19; --vdc-orange:#eb7c0b; --vdc-ink:#111; --vdc-mist:#f4f3f0; --vdc-line:#dedbd6; --vdc-radius:1.25rem; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
.wp-site-blocks { overflow: clip; }
.vdc-utility { background:#111; color:#fff; font-size:.82rem; }
.vdc-utility a { color:#fff; text-decoration:none; }
.vdc-header { position:relative; z-index:20; background:#fffdf9; border-bottom:1px solid var(--vdc-line); }
.vdc-header-inner { min-height:88px; gap:1.2rem; }
.vdc-brand { background:url('../images/vdc-training-logo.jpg') left center / contain no-repeat; width:240px; min-width:190px; min-height:62px; }
.vdc-brand .wp-block-site-title { opacity:0; margin:0; min-height:62px; }
.vdc-header .wp-block-navigation { font-size:.92rem; font-weight:700; }
.vdc-header .wp-block-navigation-item__content { color:var(--vdc-ink); text-decoration:none; }
.vdc-header .wp-block-navigation-item__content:hover { color:var(--vdc-red); }
.vdc-contact-button .wp-block-button__link { box-shadow:none; }
.is-style-outline .wp-block-button__link { background:transparent !important; border:1px solid var(--vdc-red); color:var(--vdc-red) !important; }
.is-style-outline .wp-block-button__link:hover { background:var(--vdc-red) !important; color:#fff !important; }
.vdc-hero { position:relative; padding-block:clamp(3.5rem,8vw,7rem); background:linear-gradient(90deg,#fffdf9 0%,#fffdf9 55%,#f4f3f0 100%); }
.vdc-hero:before, .vdc-hero:after { content:""; position:absolute; pointer-events:none; background-image:url('../images/vdc-plus-pattern.webp'); background-size:760px auto; opacity:.13; }
.vdc-hero:before { width:440px; height:360px; top:-84px; left:-160px; }
.vdc-hero:after { width:370px; height:310px; bottom:-130px; right:-105px; background-position:right bottom; }
.vdc-hero-inner { position:relative; z-index:1; align-items:center; }
.vdc-eyebrow { color:var(--vdc-red); font-size:.78rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.vdc-hero h1 { max-width:670px; }
.vdc-hero-copy { max-width:600px; font-size:clamp(1.08rem,1.8vw,1.34rem); }
.vdc-hero-image img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:var(--vdc-radius); box-shadow:0 20px 60px rgba(17,17,17,.14); }
.vdc-trust-line { font-weight:700; font-size:.92rem; border-top:1px solid var(--vdc-line); padding-top:1rem; }
.vdc-section { padding-block:clamp(3.5rem,7vw,6.5rem); }
.vdc-section--mist { background:var(--vdc-mist); }
.vdc-section-heading { display:flex; gap:1.5rem; align-items:end; justify-content:space-between; margin-bottom:2rem; }
.vdc-section-heading h2 { margin:0; }
.vdc-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; }
.vdc-route-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.vdc-card, .vdc-route-card, .vdc-agenda-item { background:#fff; border:1px solid var(--vdc-line); border-radius:var(--vdc-radius); overflow:hidden; box-shadow:0 8px 24px rgba(17,17,17,.04); }
.vdc-card { display:flex; flex-direction:column; color:var(--vdc-ink); text-decoration:none; transition:transform .2s ease, box-shadow .2s ease; }
.vdc-card:hover { transform:translateY(-4px); box-shadow:0 15px 34px rgba(17,17,17,.11); }
.vdc-card img { width:100%; aspect-ratio:16/10; object-fit:cover; }
.vdc-card-content { padding:1.25rem 1.25rem 1.4rem; display:flex; flex:1; flex-direction:column; }
.vdc-card-content h3 { margin:0 0 .5rem; font-size:1.25rem; }
.vdc-card-content p { margin:0; color:#4a4743; }
.vdc-card-arrow { color:var(--vdc-red); font-size:1.35rem; line-height:1; margin-top:auto; padding-top:1rem; }
.vdc-route-card { display:block; color:var(--vdc-ink); text-decoration:none; padding:1.4rem; min-height:175px; position:relative; }
.vdc-route-card:hover { border-color:var(--vdc-red); }
.vdc-route-icon { color:var(--vdc-red); font-size:2rem; line-height:1; }
.vdc-route-card h3 { font-size:1.08rem; margin:.8rem 0 .35rem; }
.vdc-route-card p { margin:0; color:#4a4743; font-size:.93rem; }
.vdc-route-card span:last-child { color:var(--vdc-red); position:absolute; right:1.25rem; bottom:1.1rem; }
.vdc-benefit-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.vdc-benefit { display:flex; gap:.85rem; align-items:flex-start; }
.vdc-benefit-mark { align-items:center; background:#fff; border-radius:999px; color:var(--vdc-red); display:flex; font-size:1.4rem; height:48px; justify-content:center; min-width:48px; }
.vdc-benefit h3 { font-size:1rem; margin:.1rem 0 .25rem; }
.vdc-benefit p { font-size:.9rem; margin:0; color:#4a4743; }
.vdc-sector-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.8rem; }
.vdc-sector-card { background:#fff; border:1px solid var(--vdc-line); border-radius:1rem; color:var(--vdc-ink); display:block; font-weight:700; padding:1.1rem; text-decoration:none; }
.vdc-sector-card:hover { border-color:var(--vdc-orange); }
.vdc-practice-wrap { align-items:stretch; }
.vdc-practice-image img { height:100%; min-height:340px; object-fit:cover; width:100%; }
.vdc-quote { background:var(--vdc-red); color:#fff; display:flex; flex-direction:column; justify-content:center; padding:clamp(2rem,5vw,4.5rem); }
.vdc-quote p { font-size:clamp(1.4rem,3vw,2.4rem); font-weight:800; line-height:1.18; margin:0 0 1.4rem; }
.vdc-quote cite { font-style:normal; opacity:.9; }
.vdc-agenda { display:grid; gap:.8rem; }
.vdc-agenda-item { align-items:center; display:grid; gap:1rem; grid-template-columns:86px 1fr auto; padding:.85rem 1rem; }
.vdc-agenda-date { color:var(--vdc-red); font-size:1.35rem; font-weight:800; line-height:1; }
.vdc-agenda-item h3 { font-size:1rem; margin:0 0 .2rem; }
.vdc-agenda-item p { color:#4a4743; font-size:.9rem; margin:0; }
.vdc-agenda-link { color:var(--vdc-red); font-size:1.3rem; text-decoration:none; }
.vdc-contact-panel { background:#111; color:#fff; border-radius:var(--vdc-radius); padding:clamp(2rem,5vw,4rem); }
.vdc-contact-panel .wp-block-button__link { background:var(--vdc-orange); color:#111; }
.vdc-footer { background:#111; color:#fff; }
.vdc-footer a { color:#fff; text-decoration:none; }
.vdc-footer .wp-block-navigation-item__content { color:#fff; }
.vdc-footer-title { color:#fff; font-size:1.4rem; font-weight:800; }
.vdc-page-hero { background:var(--vdc-mist); padding-block:clamp(3rem,7vw,6rem); }
.vdc-page-hero h1 { max-width:850px; }
.vdc-content > * { max-width:780px; margin-left:auto; margin-right:auto; }
.vdc-content .alignwide { max-width:1180px; }
.vdc-content h2 { margin-top:3rem; }
.vdc-content .wp-block-columns { gap:1.5rem; }
.vdc-content .wp-block-group.is-style-vdc-panel { background:var(--vdc-mist); border-radius:var(--vdc-radius); padding:1.5rem; }
.vdc-training-agenda-empty { background:var(--vdc-mist); border-radius:1rem; padding:1.5rem; }
@media (max-width: 900px) { .vdc-header-inner { min-height:72px; } .vdc-brand { width:190px; min-width:160px; } .vdc-route-grid, .vdc-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .vdc-benefit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .vdc-sector-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .vdc-hero { padding-top:3rem; } }
@media (max-width: 600px) { .vdc-utility .wp-block-group { justify-content:center; text-align:center; } .vdc-utility .wp-block-group > :last-child { display:none; } .vdc-route-grid, .vdc-card-grid, .vdc-benefit-grid, .vdc-sector-grid { grid-template-columns:1fr; } .vdc-header-inner { flex-wrap:nowrap; } .vdc-contact-button { display:none; } .vdc-hero .wp-block-buttons { align-items:stretch; } .vdc-hero .wp-block-button, .vdc-hero .wp-block-button__link { width:100%; text-align:center; } .vdc-agenda-item { grid-template-columns:62px 1fr auto; } .vdc-section-heading { align-items:flex-start; flex-direction:column; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; } }
