.campus-picker{color:#1a1a1a;font-family:var(--font-jakarta,system-ui, sans-serif);background:#f3ede5;padding:clamp(3.5rem,2.5rem + 4vw,6.5rem) 1.5rem}.campus-picker .cp-wrap{text-align:center;max-width:1080px;margin:0 auto}.campus-picker .cp-eyebrow{letter-spacing:.22em;color:#8b6b5a;font-size:.72rem;font-weight:600;display:inline-block}.campus-picker h2{font-family:var(--font-playfair,Georgia, serif);margin:.6rem 0 0;font-size:clamp(1.9rem,1.2rem + 2.6vw,3rem);font-weight:500;line-height:1.05}.campus-picker .cp-lead{color:#2d2a26;max-width:34ch;margin:.75rem auto 2.4rem;font-size:1.02rem}.campus-picker .cp-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.campus-picker .cp-link{color:inherit;background:#fff;border:1px solid #1a1a1a14;border-radius:12px;align-items:center;gap:.7rem;padding:.85rem 1rem;font-weight:500;text-decoration:none;transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s,border-color .15s;display:flex}.campus-picker .cp-link:hover{border-color:#1a1a1a29;transform:translateY(-2px);box-shadow:0 8px 24px #1a1a1a1a}.campus-picker .cp-link:focus-visible{outline-offset:2px;outline:2px solid #ff4060}.campus-picker .cp-dot{border-radius:50%;flex:none;width:14px;height:14px;box-shadow:inset 0 0 0 1px #00000059}.campus-picker .cp-name{text-align:left;font-size:.95rem}@media (prefers-reduced-motion:reduce){.campus-picker .cp-link{transition:none}.campus-picker .cp-link:hover{transform:none}}