.campus-home{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px;padding:16px 19px;border:1px solid #dce7ec;border-radius:17px;background:linear-gradient(105deg,#f7fbfc,#fff 62%,#f8fbff);box-shadow:0 5px 19px #1b345b08}
.campus-home-heading{display:flex;align-items:center;gap:12px;min-width:0}
.campus-home-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;background:#e6f1f1;color:#286a70;font-size:27px;line-height:1}
.campus-home h2{margin:0;color:#254858;font-size:17px;white-space:nowrap}
.campus-home p{margin:3px 0 0;color:#718394;font-size:12px;white-space:nowrap}
.campus-home-links{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px}
.campus-home-links a,.campus-home-links button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:6px 11px;border:1px solid #d6e4e8;border-radius:10px;background:#fff;color:#315f6b;text-decoration:none;font:inherit;font-size:12px;font-weight:750;white-space:nowrap}
.campus-home-links button{background:#e7f1f2;color:#245967}
.campus-home-links a:hover,.campus-home-links button:hover{background:#e9f5f7;border-color:#a7cbd1}
.campus-home-links :is(a,button):focus-visible,.campus-link:focus-visible,.campus-intro>a:focus-visible{outline:2px solid #266fa8;outline-offset:3px}
.campus-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;border:1px solid #dbe8ed;border-radius:19px;background:linear-gradient(115deg,#edf7f7,#fff 75%)}
.campus-intro strong{color:#254858;font-size:20px}
.campus-intro p{max-width:670px;margin:7px 0 0;color:#5d7081;line-height:1.65;font-size:14px}
.campus-intro>a{flex:0 0 auto;padding:11px 15px;border-radius:10px;background:#315f6b;color:#fff;text-decoration:none;font-size:14px;font-weight:750}
.campus-intro>a:hover{background:#214d58}
.campus-groups{display:grid;gap:18px;margin-top:18px}
.campus-group{padding:21px 23px 24px;border:1px solid #e1e9ee;border-radius:19px;background:#fff;box-shadow:0 8px 23px #1b345b08}
.campus-group-head{display:flex;align-items:center;gap:13px;margin-bottom:16px}
.campus-group-head>span{color:#82a7ae;font-size:14px;font-weight:800;letter-spacing:.1em}
.campus-group-head h2{margin:0;color:#233f55;font-size:19px}
.campus-group-head p{margin:3px 0 0;color:#8190a1;font-size:13px}
.campus-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.campus-link{display:flex;align-items:center;gap:11px;min-width:0;padding:13px 14px;border:1px solid #e6edf1;border-radius:12px;background:#fbfcfd;color:#1f3b53;text-decoration:none;transition:background .18s,border-color .18s,transform .18s}
.campus-link:hover{background:#f0f8f9;border-color:#b9d6dc;transform:translateY(-1px)}
.campus-link-icon{display:grid;place-items:center;flex:0 0 35px;width:35px;height:35px;border-radius:10px;background:#e7f2f3;color:#326672;font-size:15px;font-weight:800}
.campus-link>span:nth-child(2){min-width:0;flex:1}
.campus-link strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.campus-link small{display:block;margin-top:3px;color:#7b8b9c;font-size:12px}
.campus-link em{color:#819dad;font-size:18px;font-style:normal}
.campus-access-note{margin:16px 3px 0;color:#667b89;font-size:13px;line-height:1.7}
@media(max-width:780px){.campus-home{align-items:flex-start;flex-direction:column}.campus-home-links{justify-content:flex-start}.campus-intro{align-items:flex-start;flex-direction:column}.campus-link-grid{grid-template-columns:1fr}}
@media(max-width:520px){.campus-home{padding:14px}.campus-home-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.campus-home-links :is(a,button){white-space:normal;text-align:center}.campus-group{padding:17px}.campus-intro{padding:18px}.campus-intro>a{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.campus-link{transition:none}}
