.vhfal-overview, .vhfal-single { --navy:#172252; --blue:#2868c7; --text:#56617d; --line:#e1e7f0; color:var(--text); font-style:normal; width:100%; }
.vhfal-overview *, .vhfal-single *, .vhfal-overview *::before, .vhfal-single *::before { box-sizing:border-box; }
.vhfal__inner { margin:0 auto; max-width:1200px; padding-left:25px; padding-right:25px; }
.vhfal-overview__intro { background:#eaf0fa; padding:80px 0 135px; }
.vhfal__eyebrow { color:var(--blue) !important; font-size:14px !important; font-style:normal !important; font-weight:700 !important; letter-spacing:2px; margin:0 0 18px !important; text-transform:uppercase; }
.vhfal-overview__intro h1 { color:var(--navy) !important; font-size:clamp(45px,5vw,64px) !important; font-style:normal !important; font-weight:700 !important; line-height:1.05 !important; margin:0 0 20px !important; }
.vhfal-overview__intro .vhfal__inner > p:last-child { font-size:20px !important; font-style:normal !important; font-weight:400 !important; line-height:1.6 !important; margin:0 !important; max-width:720px; }
.vhfal-overview__content { padding-bottom:95px; }
.vhfal__featured { background:#fff; border:1px solid var(--line); border-radius:18px; box-shadow:0 14px 35px rgba(23,34,82,.11); display:grid; grid-template-columns:1fr 1fr; margin-top:-70px; overflow:hidden; }
.vhfal__featured-media { display:block; min-height:420px; }
.vhfal__featured-image { display:block; height:100% !important; object-fit:cover; width:100% !important; }
.vhfal__featured-content { align-items:flex-start; display:flex; flex-direction:column; justify-content:center; padding:48px; }
.vhfal__badge { background:#e8f0fc; border-radius:999px; color:var(--blue); display:inline-block; font-size:13px; font-weight:700; letter-spacing:.4px; margin-bottom:22px; padding:9px 14px; text-transform:uppercase; }
.vhfal__featured h2 { color:var(--navy) !important; font-size:clamp(32px,3.5vw,46px) !important; font-style:normal !important; font-weight:700 !important; line-height:1.12 !important; margin:0 0 18px !important; }
.vhfal__featured-content > p { font-size:18px !important; font-style:normal !important; font-weight:400 !important; line-height:1.65 !important; margin:0 0 30px !important; }
.vhfal__button { align-items:center; background:var(--blue); border-radius:7px; color:#fff !important; display:inline-flex; font-size:14px; font-weight:700; gap:8px; padding:15px 20px; text-decoration:none; text-transform:uppercase; }
.vhfal__button:hover { background:var(--navy); }
.vhfal__section-heading { align-items:flex-end; display:flex; justify-content:space-between; margin:70px 0 30px; }
.vhfal__section-heading h2 { color:var(--navy) !important; font-size:38px !important; font-style:normal !important; font-weight:700 !important; margin:0 !important; }
.vhfal__section-heading p { font-size:17px !important; font-style:normal !important; font-weight:400 !important; margin:0 0 5px !important; }
.vhfal__grid { display:grid; gap:28px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.vhfal__card { background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:0 9px 25px rgba(23,34,82,.08); display:flex; flex-direction:column; overflow:hidden; }
.vhfal__card-media { display:block; height:235px; overflow:hidden; position:relative; }
.vhfal__card-image { display:block; height:100% !important; object-fit:cover; transition:transform .3s ease; width:100% !important; }
.vhfal__card:hover .vhfal__card-image { transform:scale(1.025); }
.vhfal__year-label { background:#fff; border-radius:6px; color:var(--blue); font-size:14px; font-weight:700; left:15px; padding:7px 11px; position:absolute; top:15px; }
.vhfal__card-content { display:flex; flex:1; flex-direction:column; padding:21px 22px 24px; }
.vhfal__card h3 { font-size:24px !important; font-style:normal !important; font-weight:700 !important; line-height:1.2 !important; margin:0 0 20px !important; }
.vhfal__card h3 a { color:var(--navy) !important; text-decoration:none; }
.vhfal__text-link { color:var(--blue) !important; font-size:14px; font-weight:700; margin-top:auto; text-decoration:none; }
.vhfal__fallback { align-items:center; background:linear-gradient(135deg,var(--navy),var(--blue)); display:flex; justify-content:center; }
.vhfal__fallback span { color:rgba(255,255,255,.55); font-size:48px; font-weight:800; letter-spacing:5px; }
.vhfal__empty { padding:70px 0; text-align:center; }

.vhfal-single { background:#f6f8fc; padding:0 0 95px; }
.vhfal-single__top { background:linear-gradient(120deg,#172252 0%,#304aa3 100%); color:#fff; min-height:440px; overflow:hidden; padding:55px 0 115px; position:relative; }
.vhfal-single__top::after { background:rgba(255,255,255,.07); border-radius:50%; content:""; height:430px; position:absolute; right:-110px; top:70px; width:430px; }
.vhfal-single__crumbs { color:#dbe2ff !important; font-size:15px !important; font-style:normal !important; font-weight:400 !important; margin:0 0 38px !important; }
.vhfal-single__crumbs a { color:#dbe2ff !important; text-decoration:none; }
.vhfal-single__top-badge { background:rgba(255,255,255,.17); border-radius:999px; display:inline-block; font-size:14px; font-weight:700; letter-spacing:.8px; margin-bottom:20px; padding:9px 14px; text-transform:uppercase; }
.vhfal-single__top h1 { color:#fff !important; font-size:clamp(46px,6vw,72px) !important; font-style:normal !important; font-weight:700 !important; line-height:1.05 !important; margin:0 0 17px !important; max-width:900px; position:relative; z-index:1; }
.vhfal-single__subtitle { color:#fff !important; font-size:22px !important; font-style:normal !important; font-weight:400 !important; line-height:1.5 !important; margin:0 0 24px !important; max-width:830px; opacity:.92; }
.vhfal-single__date { color:#dbe2ff !important; font-size:15px !important; font-style:normal !important; font-weight:400 !important; margin:0 !important; }
.vhfal-single__body { padding-bottom:20px; }
.vhfal-single__feature-card { background:#fff; border-radius:20px; box-shadow:0 16px 38px rgba(23,34,82,.14); display:grid; grid-template-columns:42% 58%; margin-top:-55px; overflow:hidden; position:relative; z-index:2; }
.vhfal-single__media { min-height:455px; }
.vhfal-single__image { display:block; height:100% !important; object-fit:cover; width:100% !important; }
.vhfal-single__feature-text { display:flex; flex-direction:column; justify-content:center; padding:52px 55px; }
.vhfal-single__feature-text h2 { color:var(--navy) !important; font-size:38px !important; font-style:normal !important; font-weight:700 !important; line-height:1.15 !important; margin:0 0 18px !important; }
.vhfal-single__feature-text > p:not(.vhfal__eyebrow) { font-size:18px !important; font-style:normal !important; font-weight:400 !important; line-height:1.65 !important; margin:0 !important; }
.vhfal-single__short-line { background:var(--blue); border-radius:5px; display:block; height:4px; margin:30px 0 22px; width:105px; }
.vhfal-single__feature-text strong { color:var(--blue); font-size:18px; }
.vhfal-single__content { font-size:18px; line-height:1.75; margin:65px auto 0; max-width:1020px; }
.vhfal-single__content > h2 { color:var(--navy) !important; font-size:42px !important; font-style:normal !important; font-weight:700 !important; margin:0 0 35px !important; }
.vhfal-single__content p, .vhfal-single__content li { color:#53607c !important; font-size:18px !important; font-style:normal !important; font-weight:400 !important; line-height:1.75 !important; }
.vhfal-single__content p { margin:0 0 1.45em !important; }
.vhfal-single__content blockquote { background:#e8edfc; border:0; border-radius:14px; color:var(--navy); font-size:23px; font-style:normal; font-weight:700; line-height:1.5; margin:0 0 42px; padding:34px 45px 34px 78px; position:relative; }
.vhfal-single__content blockquote::before { color:var(--blue); content:"“"; font-size:72px; left:28px; line-height:1; position:absolute; top:20px; }
.vhfal-single__content blockquote p { color:var(--navy) !important; font-size:23px !important; font-weight:700 !important; margin:0 !important; }
.vhfal-single__winner-banner { background:var(--blue); border-radius:10px; color:#fff; font-size:28px; font-weight:700; margin:50px 0 35px; padding:25px 30px; text-align:center; }
.vhfal-single__back { color:var(--blue) !important; display:inline-flex; font-size:14px; font-weight:700; gap:8px; text-decoration:none; text-transform:uppercase; }

@media(max-width:850px){.vhfal__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vhfal__featured,.vhfal-single__feature-card{grid-template-columns:1fr}.vhfal__featured-media{height:390px;min-height:0}.vhfal-single__media{height:500px;min-height:0}.vhfal__section-heading{align-items:flex-start;flex-direction:column;gap:8px}.vhfal-single__top{min-height:400px}.vhfal-single__feature-text{padding:45px}}
@media(max-width:620px){.vhfal__inner{padding-left:18px;padding-right:18px}.vhfal-overview__intro{padding:55px 0 105px}.vhfal__featured{margin-top:-55px}.vhfal__featured-media{height:290px}.vhfal__featured-content{padding:30px 25px 34px}.vhfal__grid{grid-template-columns:1fr}.vhfal__card-media{height:250px}.vhfal__section-heading{margin-top:55px}.vhfal__section-heading h2{font-size:31px !important}.vhfal-single__top{min-height:390px;padding:38px 0 95px}.vhfal-single__crumbs{margin-bottom:28px !important}.vhfal-single__top h1{font-size:43px !important}.vhfal-single__subtitle{font-size:18px !important}.vhfal-single__feature-card{margin-top:-45px}.vhfal-single__media{height:350px}.vhfal-single__feature-text{padding:34px 25px}.vhfal-single__feature-text h2{font-size:31px !important}.vhfal-single__content{margin-top:52px}.vhfal-single__content > h2{font-size:34px !important}.vhfal-single__content p,.vhfal-single__content li{font-size:17px !important}.vhfal-single__content blockquote{font-size:19px;padding:30px 24px 30px 58px}.vhfal-single__content blockquote p{font-size:19px !important}.vhfal-single__winner-banner{font-size:21px;padding:21px 18px}}
