/* Footer v2 — admin-editable (Office → Footer). Loaded as its own file, versioned by file time. */
.vst-footer{display:flow-root;position:relative;margin-top:72px;background:#3D0000;color:rgba(244,236,230,.72);
	font-family:inherit;--ft-ink:#fff;--ft-muted:rgba(244,236,230,.72);--ft-line:rgba(255,255,255,.14);}
.vst-footer *{box-sizing:border-box;}
.vst-footer::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:#AD0101;}
.vst-footer a{text-decoration:none;}
.vst-footer ul{list-style:none;margin:0;padding:0;}
.vst-footer-has-cta{margin-top:120px;}

/* CTA card */
.vst-cta{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:-76px;padding:38px 44px;border-radius:20px;background:#fff;color:#1a1a1a;box-shadow:0 18px 40px rgba(0,0,0,.18);}
.vst-cta h2{margin:0 0 6px;font-size:28px;line-height:1.2;font-weight:600;color:#1a1a1a;}
.vst-cta p{margin:0;font-size:16px;line-height:1.5;color:#4a453d;max-width:36em;}
.vst-cta-btn{flex-shrink:0;background:#AD0101;color:#fff !important;font-weight:600;font-size:15px;padding:15px 30px;border-radius:12px;box-shadow:none;}
.vst-cta-btn:hover{background:#870101;}

/* Main grid */
.vst-footer-grid{display:grid;grid-template-columns:minmax(280px,1.7fr) repeat(auto-fit,minmax(150px,1fr));gap:44px 56px;padding-top:64px;padding-bottom:52px;}
.vst-footer-brand{min-width:0;}
.vst-footer-logo{display:inline-flex;background:#fff;border-radius:14px;padding:10px 16px;}
.vst-footer-logo img{display:block;height:44px;width:auto;max-width:100%;}
.vst-footer .vst-logo-text{color:#3D0000;font-size:20px;font-weight:700;}
.vst-footer-desc{margin:18px 0 0;font-size:15px;line-height:1.65;color:var(--ft-muted);max-width:30em;}
.vst-footer .vst-footer-contact{margin-top:20px;display:grid;gap:10px;}
.vst-footer-contact li{display:flex;align-items:center;gap:12px;margin:0;padding:0;}
.vst-footer-contact li::marker{content:"";}
.vst-footer-contact .vst-ci{flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;color:#fff;}
.vst-footer-contact a{color:var(--ft-ink);font-size:15px;overflow-wrap:anywhere;}
.vst-footer-contact a:hover{text-decoration:underline;text-underline-offset:4px;}
.vst-footer-social{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
.vst-footer-social a{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;display:flex;align-items:center;justify-content:center;transition:background .15s;}
.vst-footer-social a:hover{background:#AD0101;}

.vst-footer-heading{margin:0 0 18px;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#fff;position:relative;padding-bottom:12px;}
.vst-footer-heading::after{content:"";position:absolute;left:0;bottom:0;width:28px;height:2px;border-radius:2px;background:#D59B02;}
.vst-footer-menu{display:grid;gap:12px;}
.vst-footer-menu li{margin:0;padding:0;}
.vst-footer-menu li::marker{content:"";}
.vst-footer-menu a{color:var(--ft-muted);font-size:15px;transition:color .15s,padding-left .15s;display:inline-block;}
.vst-footer-menu a:hover{color:#fff;padding-left:4px;}

/* Bottom bar */
.vst-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--ft-line);padding-top:22px;padding-bottom:28px;}
.vst-footer-legal p{margin:0;}
.vst-footer-copy{font-size:14px;color:var(--ft-muted);}
.vst-to-top{flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:#AD0101;color:#fff !important;display:flex;align-items:center;justify-content:center;transition:background .15s;}
.vst-to-top:hover{background:#870101;}

@media (max-width:900px){
	.vst-footer-grid{grid-template-columns:1fr 1fr;gap:36px 32px;}
	.vst-footer-brand{grid-column:1 / -1;}
	.vst-cta{padding:30px 28px;}
}
@media (max-width:600px){
	.vst-footer{margin-top:56px;}
	.vst-footer-has-cta{margin-top:96px;}
	.vst-cta{flex-direction:column;align-items:stretch;gap:16px;padding:24px 20px;margin-top:-60px;border-radius:18px;}
	.vst-cta h2{font-size:22px;}
	.vst-cta p{font-size:14.5px;}
	.vst-cta-btn{text-align:center;padding:14px 20px;}
	.vst-footer-grid{gap:30px 20px;padding-top:40px;padding-bottom:30px;}
	.vst-footer-brand{padding-bottom:28px;border-bottom:1px solid var(--ft-line);}
	.vst-footer-logo img{height:38px;}
	.vst-footer-desc{font-size:14px;margin-top:14px;}
	.vst-footer-contact a{font-size:14px;}
	.vst-footer-col{min-width:0;}
	/* an odd number of link columns: let the first (longest) one span the width in two sub-columns */
	.vst-footer-col:first-of-type:nth-last-of-type(odd){grid-column:1 / -1;}
	.vst-footer-col:first-of-type:nth-last-of-type(odd) .vst-footer-menu{grid-template-columns:1fr 1fr;gap:12px 20px;}
	.vst-footer-heading{margin-bottom:14px;}
	.vst-footer-menu{gap:11px;}
	.vst-footer-menu a{font-size:14.5px;overflow-wrap:anywhere;}
	.vst-footer-bottom{padding-top:18px;padding-bottom:24px;}
	.vst-footer-copy{font-size:13px;}
}
