body{color:#1d1d1f;margin:0;-webkit-font-smoothing:antialiased}.department-page,body{background-color:#F5F5F7}.department-page{min-height:100vh}.department-hero{position:relative;height:70vh;min-height:500px;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;background-color:#000;color:white}.department-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.6;transition:transform 10s ease}.department-hero:hover .department-hero-bg{transform:scale(1.05)}.department-hero-content{position:relative;z-index:10;max-width:60rem;padding:0 2rem}.department-hero-badge{display:inline-block;font-size:.875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1.5rem;padding:.5rem 1rem;border:1px solid rgba(255,255,255,.3);border-radius:9999px;background-color:rgba(0,0,0,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.department-hero-title{font-size:3rem;font-weight:700;line-height:1.1;margin-bottom:1rem;letter-spacing:-.02em}@media (min-width:768px){.department-hero-title{font-size:5rem}}.department-hero-subtitle{font-size:1.25rem;font-weight:500;opacity:.9;max-width:40rem;margin:0 auto;line-height:1.6}@media (min-width:768px){.department-hero-subtitle{font-size:1.5rem}}.department-filter-section{position:-webkit-sticky;position:sticky;top:0;z-index:50;background-color:rgba(245,245,247,.8);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.05);padding:1rem 0}.department-filter-container{max-width:80rem;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between}.department-filter-scroll{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:.5rem;scrollbar-width:none;-ms-overflow-style:none}.department-filter-scroll::-webkit-scrollbar{display:none}.department-filter-btn{padding:.5rem 1.25rem;border-radius:9999px;font-size:.875rem;font-weight:500;white-space:nowrap;transition:all .3s ease;background-color:white;color:#1d1d1f;border:1px solid rgba(0,0,0,.05);cursor:pointer}.department-filter-btn:hover{background-color:#f5f5f7;border-color:rgba(0,0,0,.1)}.department-filter-btn.active{background-color:#1d1d1f;color:white;border-color:#1d1d1f}.department-grid-section{padding:4rem 1.5rem;max-width:80rem;margin:0 auto}.department-grid{display:grid;grid-template-columns:1fr;grid-gap:2rem;gap:2rem}@media (min-width:640px){.department-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.department-grid{grid-template-columns:repeat(3,1fr)}}.department-card{display:block;text-decoration:none;color:inherit;background-color:white;border-radius:1.5rem;overflow:hidden;box-shadow:0 4px 6px -1px rgba(0,0,0,.05),0 2px 4px -1px rgba(0,0,0,.03);transition:all .4s cubic-bezier(.4,0,.2,1);height:100%;display:flex;flex-direction:column}.department-card:hover{transform:translateY(-8px);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}.department-card-image-wrapper{position:relative;aspect-ratio:4/3;overflow:hidden;background-color:#f3f4f6}.department-card-image{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.4,0,.2,1)}.department-card:hover .department-card-image{transform:scale(1.08)}.department-card-badge{position:absolute;top:1rem;left:1rem;background-color:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;color:#1d1d1f;box-shadow:0 2px 4px rgba(0,0,0,.05)}.department-card-content{padding:1.5rem;flex:1 1;display:flex;flex-direction:column}.department-card-region{font-size:.75rem;font-weight:600;color:#86868b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.department-card-title{font-size:1.25rem;font-weight:700;color:#1d1d1f;margin-bottom:.5rem;line-height:1.3}.department-card-desc{font-size:.9375rem;color:#6b7280;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:1rem;flex:1 1}.department-card-tags{display:flex;flex-wrap:wrap;gap:.5rem}.department-card-tag{font-size:.75rem;color:#6b7280;background-color:#f3f4f6;padding:.25rem .625rem;border-radius:.25rem}.department-loading{text-align:center;padding:4rem 0;color:#86868b;font-size:1.125rem}.department-empty{text-align:center;padding:6rem 0;grid-column:1/-1}.department-empty-icon{font-size:3rem;margin-bottom:1rem;color:#d1d5db}.department-empty-text{font-size:1.25rem;color:#1d1d1f;font-weight:500;margin-bottom:.5rem}.department-empty-subtext{color:#86868b}.department-load-more{text-align:center;margin-top:4rem;padding-bottom:4rem}.department-load-more-btn{background-color:#1d1d1f;color:white;border:none;padding:.875rem 2.5rem;border-radius:9999px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px rgba(0,0,0,.1)}.department-load-more-btn:hover:not(:disabled){background-color:#333;transform:translateY(-2px);box-shadow:0 10px 15px rgba(0,0,0,.1)}.department-load-more-btn:disabled{background-color:#e5e7eb;color:#9ca3af;cursor:not-allowed;transform:none;box-shadow:none}.fade-up{opacity:0;transform:translateY(20px);animation:fadeUp .8s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}