/* Direct search and contact, designed around the existing navy and cobalt palette. */
.vl-contact-primary[hidden]{display:none!important}
.vl-person-intro{display:flex;align-items:center;gap:12px;margin:16px 0;color:inherit;text-decoration:none}.vl-person-intro strong,.vl-person-intro small{display:block}.vl-person-intro strong{font-size:14px}.vl-person-intro small{font-size:12px;line-height:1.5;color:#526b78}.vl-person-photo{width:56px;height:56px;object-fit:cover;border-radius:50%;flex:0 0 56px}
.vl-quick-search{background:#f3f1ec;border-block:1px solid #dce0df;padding:24px 0 26px}
.vl-quick-search .vl-quick-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:16px}
.vl-quick-search h2{font:400 clamp(25px,2.5vw,35px)/1.18 Georgia,"Songti SC",serif;margin:2px 0 0;color:#143142}
.vl-quick-search .vl-quick-heading p{max-width:440px;margin:0;color:#526b78;font-size:14px}
.vl-quick-form{display:grid;grid-template-columns:2fr 1.2fr 1.2fr .8fr auto;gap:9px;align-items:end}
.vl-quick-form label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#334f5e}
.vl-quick-form select,.vl-quick-form input{width:100%;min-width:0;min-height:46px;border:1px solid #b9cbd4;border-radius:4px;background:#fff;color:#143142;padding:8px 10px;font:inherit;font-size:14px}
.vl-quick-form button{min-height:46px;padding:8px 19px;background:#2451ee;color:#fff;border:0;border-radius:4px;font:inherit;font-weight:700;cursor:pointer}
.vl-quick-secondary{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:12px;font-size:13px}
.vl-quick-secondary button{background:none;border:0;padding:0;color:#1846d5;text-decoration:underline;font:inherit;cursor:pointer}
.vl-quick-secondary a{color:#1846d5}
.vl-quick-secondary small{color:#526b78;font-size:12px}
/* Campus shortcuts make a first choice possible without opening a select. */
.vl-campus-shortcuts{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:-2px 0 18px}
.vl-campus-shortcuts>span{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#526674;margin-right:4px}
.vl-campus-shortcuts a{display:inline-flex;align-items:center;gap:12px;min-height:38px;padding:7px 13px;border:1px solid #cbd4d6;border-radius:999px;background:#fff;color:#142f40;font-size:13px;font-weight:700;line-height:1.2;text-decoration:none;transition:border-color .18s,background .18s,transform .18s}
.vl-campus-shortcuts a span{color:#1c50e6;font-size:16px;line-height:1}
.vl-campus-shortcuts a:hover,.vl-campus-shortcuts a:focus-visible{border-color:#1c50e6;background:#eef2ff;transform:translateY(-1px)}
.vl-campus-shortcuts a:focus-visible{outline:3px solid #1c50e6;outline-offset:2px}
@media(max-width:680px){.vl-campus-shortcuts{margin:12px 0 18px;gap:7px}.vl-campus-shortcuts>span{width:100%}.vl-campus-shortcuts a{min-height:42px}}
.vl-contact-dialog{box-sizing:border-box;width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;border:1px solid #bdcbd4;border-radius:10px;padding:24px;box-shadow:0 20px 70px rgba(14,39,54,.22);color:#143142}
.vl-contact-dialog::backdrop{background:rgba(8,28,40,.52)}
.vl-contact-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.vl-contact-dialog h2{font:400 27px Georgia,"Songti SC",serif;margin:0}
.vl-contact-dialog-head button{width:38px;height:38px;background:#eef3f5;border:0;border-radius:50%;font-size:25px;cursor:pointer}
.vl-contact-dialog p{line-height:1.5}
.vl-copy-line{display:flex;gap:8px;align-items:stretch}
.vl-copy-line code{display:flex;align-items:center;flex:1;min-width:0;overflow-wrap:anywhere;padding:10px;background:#f1f6f8;font-size:14px}
.vl-copy-line button,.vl-contact-options a{background:#2451ee;color:#fff;border:0;border-radius:4px;padding:10px 12px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;text-decoration:none}
.vl-message-line{margin-top:10px}.vl-message-line span{flex:1;min-width:0;padding:10px;background:#f1f6f8;font-size:13px;line-height:1.45;max-height:90px;overflow:auto}.vl-message-line button{max-width:110px}.vl-copy-feedback{min-height:20px;margin:4px 0;color:#0e6852;font-size:13px}
.vl-contact-options{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.vl-contact-options a{background:#eef3f5;color:#143142}
.vl-contact-dialog small{color:#526b78}
.vl-contact-primary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.vl-contact-primary a,.vl-contact-primary button{display:flex;align-items:center;justify-content:center;min-height:52px;padding:10px 12px;border:1px solid #2451ee;border-radius:6px;background:#2451ee;color:#fff;font:700 14px/1.35 Arial,sans-serif;text-align:center;text-decoration:none;cursor:pointer;box-sizing:border-box}.vl-contact-primary a:hover,.vl-contact-primary button:hover{background:#183ec7}.vl-wechat-panel{border:1px solid #d8e1e5;border-radius:8px;padding:14px;margin:12px 0}.vl-wechat-panel[hidden]{display:none}.vl-wechat-panel>p:first-child{margin:0 0 10px;font-size:14px}.vl-message-details{margin-top:14px}.vl-message-details summary{cursor:pointer;font-size:14px;font-weight:600}.vl-contact-dialog .vl-contact-options{margin:14px 0}.vl-contact-dialog .vl-copy-feedback:empty{display:none}
.vl-nav-contact{font:inherit;cursor:pointer}.navlinks .vl-nav-contact{border:0;padding:12px 15px}.vl-mobile-menu-links .vl-nav-contact{width:100%;text-align:left;min-height:48px;padding:10px 12px;border:0;border-radius:4px;background:#2451ee;color:#fff;font:inherit;font-weight:700;cursor:pointer}.vl-detail-contact{margin:18px 0 22px}.vl-mobile-contact-bar{display:none}
.vl-quick-form :focus-visible,.vl-contact-dialog :focus-visible,.vl-mobile-contact-bar :focus-visible{outline:3px solid #2451ee;outline-offset:2px}
@media(max-width:960px){.vl-quick-form{grid-template-columns:repeat(2,minmax(0,1fr))}.vl-quick-form button{grid-column:span 2}}
@media(max-width:680px){.vl-quick-search{padding:18px 0}.vl-quick-search .vl-quick-heading{display:block}.vl-quick-search .vl-quick-heading p{margin-top:8px}.vl-quick-form{gap:9px}.vl-quick-form label:first-child{grid-column:span 2}.vl-quick-secondary{gap:8px 16px}.vl-mobile-contact-bar{display:grid;position:fixed;bottom:0;left:0;right:0;z-index:95;grid-template-columns:1fr 1fr;gap:8px;background:#fff;padding:9px max(16px,env(safe-area-inset-left)) calc(9px + env(safe-area-inset-bottom));box-shadow:0 -5px 24px rgba(14,39,54,.16)}.vl-mobile-contact-bar button,.vl-mobile-contact-bar a{min-height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #2451ee;border-radius:4px;background:#2451ee;color:#fff;text-decoration:none;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.vl-mobile-contact-bar a{background:#fff;color:#2451ee}body{padding-bottom:72px}.vl-contact-dialog{padding:19px}}
