:root{color-scheme:dark;--bg:#101b1c;--surface:#192729;--border:#314244;--text:#edf2ed;--muted:#adbdba;--lime:#c7e17a;--max:1400px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit}button{font:inherit}a:focus-visible,button:focus-visible,.carousel:focus-visible{outline:3px solid var(--lime);outline-offset:4px}.skip{position:absolute;top:-100px;left:16px;z-index:50;background:var(--lime);color:#111;padding:10px}.skip:focus{top:10px}.wrap{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.site-header{border-bottom:1px solid var(--border)}.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;font-weight:900;letter-spacing:.09em;font-size:1.2rem;display:flex;gap:13px;align-items:center}.brand-mark{background:var(--lime);color:var(--bg);font-size:1rem;font-weight:900;padding:7px 9px;letter-spacing:-.22em;line-height:1}.brand-dot,.accent{color:var(--lime)}nav{display:flex;gap:clamp(14px,3vw,38px)}nav a{text-decoration:none;color:var(--muted);font-size:.9rem}nav a:hover,.photo-credit a:hover,.footer a:hover{color:var(--lime)}.intro{display:flex;justify-content:space-between;align-items:end;gap:32px;padding-block:66px 30px}.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.18em;color:var(--lime);margin:0 0 12px}.intro h1{font-size:clamp(2.7rem,6vw,5.5rem);line-height:1.04;letter-spacing:-.065em;margin:0;font-weight:800}.intro>p{max-width:330px;color:var(--muted);margin:0 0 5px}.carousel{position:relative;aspect-ratio:2.15;min-height:350px;overflow:hidden;background:#26373a}.slides,.slide{position:absolute;inset:0}.slide{margin:0;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s}.slide.is-active{opacity:1;visibility:visible}.slide img{height:100%;width:100%;object-fit:cover;object-position:center 48%;filter:brightness(.77)}.slide:after{content:"";position:absolute;inset:20% 0 0;background:linear-gradient(transparent,rgba(6,15,17,.89))}.slide figcaption{position:absolute;left:clamp(22px,5vw,70px);bottom:clamp(65px,7vw,100px);z-index:1;max-width:610px;display:grid;gap:7px}.slide-place{font-size:.73rem;color:var(--lime);letter-spacing:.19em;font-weight:800}.slide strong{font-size:clamp(2rem,4.8vw,4.1rem);line-height:1.05;letter-spacing:-.04em}.slide figcaption>span:last-child{font-size:clamp(.9rem,1.4vw,1.05rem)}.carousel-ui{position:absolute;z-index:2;bottom:27px;left:clamp(22px,5vw,70px);right:clamp(22px,5vw,70px);display:flex;align-items:center;justify-content:space-between}.carousel-indicators,.carousel-arrows{display:flex;gap:9px}.indicator{width:30px;height:18px;padding:0;border:0;background:transparent;cursor:pointer}.indicator:before{content:"";display:block;background:#d5e1d9;opacity:.55;height:3px;width:100%}.indicator.is-active:before{background:var(--lime);opacity:1}.arrow{width:44px;height:44px;border:1px solid #ffffff80;background:#10202480;color:#fff;cursor:pointer;font-size:1.4rem}.arrow:hover{background:var(--lime);color:var(--bg)}.photo-credit{font-size:.78rem;color:var(--muted);text-align:right;margin:12px 0 0}.directory{padding-block:92px 110px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:48px}.section-heading h2{font-size:clamp(2.1rem,4vw,3.6rem);letter-spacing:-.05em;line-height:1.1;margin:0}.section-heading>p{max-width:290px;color:var(--muted);margin:0}.category{margin-top:53px}.category-heading{border-bottom:1px solid var(--border);padding-bottom:15px;margin-bottom:20px;display:flex;align-items:baseline;justify-content:space-between}.category-heading h3{font-size:1.35rem;margin:0}.category-heading span{font-size:.75rem;color:var(--lime);letter-spacing:.1em}.card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{min-height:265px;padding:22px;background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;transition:background .2s,border-color .2s}.card:hover{background:#203235;border-color:#7d9b90}.card-top{display:flex;justify-content:space-between;gap:10px;align-items:start;min-height:49px}.card-icon{border:1px solid #87a79c;color:var(--lime);font-weight:800;font-size:.83rem;letter-spacing:.03em;min-width:37px;height:37px;display:grid;place-items:center}.tag{color:var(--muted);font-size:.65rem;line-height:1.35;letter-spacing:.07em;text-align:right;font-weight:700}.card h4{font-size:1.2rem;letter-spacing:-.025em;line-height:1.2;margin:19px 0 8px}.card p{font-size:.86rem;color:var(--muted);margin:0 0 24px}.card a{margin-top:auto;border-top:1px solid var(--border);padding-top:14px;text-decoration:none;font-weight:700;font-size:.84rem;color:var(--lime);display:flex;justify-content:space-between;gap:6px}.card a:hover{text-decoration:underline}.compact>p{color:var(--muted)}.institution-links{display:flex;flex-wrap:wrap;gap:12px}.institution-links a{padding:13px 17px;border:1px solid var(--border);text-decoration:none}.institution-links a:hover{border-color:var(--lime);color:var(--lime)}.footer{background:#0b1516;border-top:1px solid var(--border)}.footer-inner{padding-block:42px;display:flex;justify-content:space-between;gap:50px}.footer-brand{font-weight:900;letter-spacing:.1em}.footer p{color:var(--muted);font-size:.8rem;max-width:475px}.footer a{text-underline-offset:3px}@media(max-width:1000px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.carousel{aspect-ratio:1.75}}@media(max-width:640px){.wrap{width:calc(100% - 32px)}.header-inner{min-height:72px;align-items:start;flex-direction:column;justify-content:center;gap:7px;padding-block:12px}.brand{font-size:1rem}.brand-mark{padding:5px 7px}nav{gap:20px}nav a{font-size:.8rem}.intro{padding-block:39px 25px;display:block}.intro>p{margin-top:16px}.carousel{aspect-ratio:auto;height:490px;min-height:0}.slide img{object-position:center}.slide figcaption{bottom:94px;right:20px}.carousel-ui{bottom:20px}.card-grid{grid-template-columns:1fr}.card{min-height:225px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:14px}.directory{padding-block:65px 75px}.category{margin-top:42px}.footer-inner{display:block}.footer-inner>p{margin-top:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
.header-actions{display:flex;align-items:center;gap:24px}.nav-contact{padding:0;border:0;background:none;color:var(--muted);font-size:.9rem;cursor:pointer}.nav-contact:hover{color:var(--lime)}.linkedin-icon{width:32px;height:32px;display:grid;place-items:center;color:var(--muted);border:1px solid var(--border)}.linkedin-icon svg{width:17px;height:17px}.linkedin-icon:hover{color:var(--lime);border-color:var(--lime)}.contact-dialog{width:min(440px,calc(100% - 32px));padding:28px;background:var(--surface);color:var(--text);border:1px solid #7d9b90;box-shadow:0 25px 90px #000a}.contact-dialog::backdrop{background:#071113c9}.dialog-head{display:flex;justify-content:space-between;align-items:start}.dialog-close{background:none;border:1px solid var(--border);color:var(--text);width:36px;height:36px;font-size:1.5rem;line-height:1;cursor:pointer}.contact-dialog h2{font-size:1.6rem;line-height:1.15;margin:12px 0}.contact-dialog p:not(.eyebrow){color:var(--muted)}.contact-link{display:inline-flex;gap:30px;padding:11px 15px;margin-top:12px;background:var(--lime);color:var(--bg);font-weight:750;text-decoration:none}.contact-link:hover{text-decoration:underline}@media(max-width:640px){.header-actions{gap:14px}.nav-contact{font-size:.8rem}.linkedin-icon{width:28px;height:28px}}
