.institution-finder{--finder-green:#2e6651;--finder-dark:#1e3e31;--finder-muted:#718078;--finder-border:#dce6df;background:#f5f8f5;color:#20372b;padding:30px 0 60px}
.institution-finder .finder-shell{max-width:1240px}
.institution-finder *{box-sizing:border-box}
.institution-finder button,.institution-finder input,.institution-finder select{font:inherit}
.institution-finder button,.institution-finder a,.institution-finder input,.institution-finder select{touch-action:manipulation}
.institution-finder :is(button,a,input,select):focus-visible{outline:3px solid #9cba42;outline-offset:3px}
.institution-finder button{cursor:pointer}
.institution-finder button:disabled{cursor:default;opacity:.45}
.institution-finder .finder-hub{border:1px solid var(--finder-border);border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 8px 32px #254b3210}
.institution-finder .finder-hero{background:linear-gradient(110deg,#294f3d,#417459);color:#fff;padding:22px 32px 28px}
.institution-finder .finder-breadcrumbs :is(a,span){color:#d2e1d5;font-size:12px}
.institution-finder .finder-breadcrumbs nav{margin:0 0 20px}
.institution-finder .finder-hero-copy{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:16px 0 24px}
.institution-finder .finder-eyebrow{font-size:11px;letter-spacing:.2em;color:#d1dfb1;font-weight:700}
.institution-finder h1{font-size:clamp(28px,3vw,38px);line-height:1.3;letter-spacing:-.035em;margin:10px 0 10px;color:#fff;font-weight:750}
.institution-finder .finder-hero-copy p{color:#d8e6db;font-size:14px;margin:0;line-height:1.7}
.institution-finder .finder-total{border-left:1px solid #ffffff35;padding-left:30px;display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:4px 10px;min-width:180px}
.institution-finder .finder-total strong{font-size:36px;font-weight:700;line-height:1.2;color:#e5f296}
.institution-finder .finder-total span{font-size:13px}
.institution-finder .finder-total small{grid-column:1/-1;font-size:12px;color:#d2e1d5}
.institution-finder .finder-search{display:flex;align-items:center;gap:10px;padding:6px 6px 6px 18px;border-radius:10px;background:#fff;margin:0;border:1px solid #e0e9e2}
.institution-finder .finder-search-icon{font-size:30px;line-height:1;color:#7b8e80}
.institution-finder .finder-search input{height:44px;flex:1;width:0;border:0;background:#fff;color:#263e30;padding:0 6px;box-shadow:none;font-size:15px}
.institution-finder .finder-search input::placeholder{color:#8d9a91}
.institution-finder .finder-search button{border:0;border-radius:7px;background:#2e6651;color:#fff;min-width:126px;height:44px;font-size:14px;font-weight:700;padding:0 20px;white-space:nowrap}
.institution-finder .finder-search button:hover{background:#234e3d}
.institution-finder .finder-filters{padding:6px 28px 8px}
.institution-finder .finder-filter-row{position:relative;min-width:0;margin:0;padding:15px 0 15px 82px;border:0;border-bottom:1px solid #edf1ed;display:block}
.institution-finder .finder-filter-row legend,.institution-finder .finder-filter-row>strong{position:absolute;left:0;top:22px;float:none;padding:0;font-size:12px;line-height:1.4;font-weight:650;color:#65766a;width:72px}
.institution-finder .finder-choices{display:flex;align-items:center;gap:5px 7px;flex-wrap:wrap;min-height:32px}
.institution-finder .finder-choice{position:relative;display:inline-flex;align-items:center;gap:7px;padding:7px 10px;min-height:34px;font-size:13px;border:1px solid transparent;border-radius:6px;cursor:pointer;line-height:1.3;color:#506255;margin:0;background:transparent;white-space:nowrap}
.institution-finder .finder-choice:hover{background:#f3f7f2}
.institution-finder .finder-choice.is-selected{background:#eaf2e9;border-color:#ccdecc;color:#285b45;font-weight:700}
.institution-finder .finder-choice input{position:absolute;width:1px;height:1px;opacity:0;margin:0;padding:0}
.institution-finder .finder-choice:has(input:focus-visible){outline:3px solid #9cba42;outline-offset:2px}
.institution-finder .finder-choice small{color:#8b9a8f;font-size:10px;font-weight:400}
.institution-finder .finder-filter-hint{margin:5px 0;color:#929d94;font-size:12px;line-height:1.8}
.institution-finder .finder-cascade-fields{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.institution-finder .finder-cascade-fields label{display:flex;align-items:center;gap:9px;margin:0;font-size:12px;color:#8b988e}
.institution-finder .finder-cascade-fields select,.institution-finder .finder-results-tools select{border:1px solid var(--finder-border);background:#fbfcfa;border-radius:6px;color:#385442;padding:8px 30px 8px 10px;min-height:36px;font-size:12px;max-width:100%}
.institution-finder .finder-cascade-fields select{min-width:190px}
.institution-finder .finder-cascade-fields select:disabled{color:#929e96;background:#f5f7f4;opacity:1}
.institution-finder .finder-statuses{border-bottom:0}
.institution-finder .finder-checks{display:flex;flex-wrap:wrap;gap:10px 24px;align-items:center;min-height:32px}
.institution-finder .finder-checks label{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:12px;color:#526457;margin:0;line-height:1.5;min-height:28px}
.institution-finder .finder-checks input{appearance:auto;width:15px;height:15px;accent-color:#2e6651;margin:0;padding:0;min-height:0}
.institution-finder .finder-checks small{font-size:10px;color:#8b988e}
.institution-finder .finder-active-filters{display:flex;align-items:center;flex-wrap:wrap;gap:7px;border-top:1px solid #edf1ed;padding:13px 0;font-size:11px;color:#7a8a7f}
.institution-finder .finder-active-filters>span{margin-right:8px}
.institution-finder .finder-active-filters button{background:#f0f5ed;border:1px solid #dce6d6;border-radius:5px;color:#3d634c;font-size:11px;padding:5px 8px;max-width:100%;overflow-wrap:anywhere}
.institution-finder .finder-active-filters .finder-reset{margin-left:auto;background:transparent;border-color:transparent;color:#718276}
.institution-finder .finder-results-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:28px 0 17px;scroll-margin-top:100px}
.institution-finder .finder-results-header h2{margin:0;color:#243b2c;font-size:21px;font-weight:700;letter-spacing:-.02em}
.institution-finder .finder-results-header p{font-size:12px;margin:7px 0 0;color:#7f8b82}
.institution-finder .finder-results-header p strong{color:#2d674c;font-weight:700}
.institution-finder .finder-results-tools{display:flex;align-items:center;gap:18px}
.institution-finder .finder-results-tools label{margin:0}
.institution-finder .finder-city-link{font-size:12px;font-weight:600;color:#35684d;white-space:nowrap}
.institution-finder .finder-list{display:grid;gap:12px}
.institution-finder .finder-school{display:grid;grid-template-columns:72px minmax(0,1fr) 165px;align-items:start;gap:22px;padding:25px 26px;border:1px solid var(--finder-border);border-radius:12px;background:#fff;box-shadow:0 2px 5px #254b3203;transition:border-color .15s,box-shadow .15s}
.institution-finder .finder-school:hover{border-color:#acc5ad;box-shadow:0 5px 18px #254b320a}
.institution-finder .finder-logo{width:72px;height:72px;display:flex;align-items:center;justify-content:center;border:1px solid #e4ebe1;border-radius:12px;background:#edf3eb;overflow:hidden;color:#3b684b;margin-top:4px}
.institution-finder .finder-logo img{width:100%;height:100%;object-fit:contain;background:#fff;padding:5px}
.institution-finder .finder-logo>span{font-size:19px;font-weight:700;letter-spacing:.04em;text-align:center;max-width:3em;line-height:1.5}
.institution-finder .finder-school-info{min-width:0}



.institution-finder .finder-school h3{font-size:18px;font-weight:700;line-height:1.5;margin:0 0 7px;overflow-wrap:anywhere;color:#243c2e}
.institution-finder .finder-school h3 a{color:inherit}
.institution-finder .finder-school h3 a:hover{color:#357251}
.institution-finder .finder-school-location{display:flex;flex-wrap:wrap;gap:5px 15px;font-size:11px;line-height:1.6;color:#819084;margin:0 0 12px}
.institution-finder .finder-school-projects{display:flex;gap:5px;flex-wrap:wrap;margin:0 0 12px}
.institution-finder .finder-school-projects span{display:inline-flex;color:#58715d;background:#f5f7f1;font-size:11px;padding:4px 7px;border-radius:4px;line-height:1.3}


.institution-finder .finder-school-side{border-left:1px solid #edf1ea;padding-left:22px;display:flex;flex-direction:column;align-items:stretch;gap:12px;height:100%;justify-content:center}



.institution-finder .finder-detail-link{display:block;text-align:center;background:#eaf2e7;color:#356146;border:1px solid #d7e5d0;border-radius:6px;padding:9px 6px;font-size:12px;font-weight:700;white-space:nowrap}
.institution-finder .finder-detail-link:hover{background:#dfeeda}
.institution-finder .finder-school-actions{display:flex;justify-content:space-between;gap:8px;align-items:center}
.institution-finder .finder-school-actions button{display:inline-flex;justify-content:center;align-items:center;gap:3px;background:transparent;color:#708475;border:0;padding:3px 0;font-size:11px;min-width:0;white-space:nowrap;border-radius:3px;font-weight:400}
.institution-finder .finder-school-actions button[aria-pressed=true]{color:#306748}
.institution-finder .finder-empty{padding:55px 20px;border:1px dashed #ccdac9;background:#fff;border-radius:12px;text-align:center}
.institution-finder .finder-empty>span{display:block;color:#9bb39b;font-size:42px;line-height:1}
.institution-finder .finder-empty h3{font-size:20px;color:#35553e;margin:16px 0 10px}
.institution-finder .finder-empty p{font-size:13px;color:#89988b;line-height:1.8;margin:0 0 20px}
.institution-finder .finder-empty>div{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.institution-finder .finder-empty :is(button,a){background:#edf4e9;border:1px solid #d5e3cd;border-radius:6px;font-size:12px;padding:9px 15px;color:#426649}
.institution-finder .finder-pagination{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:22px 0 0;color:#8a968a;font-size:11px}
.institution-finder .finder-pagination>div{display:flex;gap:5px;align-items:center}
.institution-finder .finder-pagination button{border:1px solid #d8e2d4;border-radius:5px;min-width:32px;min-height:32px;font-size:11px;color:#54775a;background:#fff;padding:6px 10px}
.institution-finder .finder-pagination button[aria-current=page]{background:#35684c;border-color:#35684c;color:#fff;font-weight:700}
.institution-finder .finder-join{display:flex;gap:20px;justify-content:space-between;align-items:center;border:1px solid #dbe6d4;border-radius:12px;background:#ebf2e6;margin-top:30px;padding:23px 27px}
.institution-finder .finder-join span{font-size:10px;color:#7e927e}
.institution-finder .finder-join h2{font-size:16px;color:#3d6044;margin:7px 0 0;line-height:1.5}
.institution-finder .finder-join a{font-size:12px;font-weight:650;color:#326044;white-space:nowrap}
.institution-finder .finder-compare{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);width:min(800px,calc(100% - 32px));z-index:65;display:flex;justify-content:space-between;align-items:center;gap:15px;background:#244e39;color:#fff;padding:14px 20px;border:1px solid #68836b;border-radius:12px;box-shadow:0 5px 24px #1d402b30}
.institution-finder .finder-compare strong{font-size:12px}
.institution-finder .finder-compare p{font-size:12px;margin:5px 0 0;color:#d4e4cd;line-height:1.4}
.institution-finder .finder-compare small{display:block;font-size:11px;color:#e4edaa;margin-top:4px}
.institution-finder .finder-compare>div:last-child{display:flex;gap:8px;align-items:center;flex-shrink:0}
.institution-finder .finder-compare :is(button,a){background:#eff5cf;color:#335237;border:0;border-radius:5px;padding:8px 13px;font-size:11px;white-space:nowrap}
.institution-finder .finder-compare button:first-child{background:#ffffff15;color:#d8e5d4}
@media(min-width:1700px){.institution-finder .finder-shell{max-width:1440px}}
@media(max-width:900px){.institution-finder .finder-school{grid-template-columns:60px minmax(0,1fr) 135px;gap:16px;padding:22px 20px}.institution-finder .finder-logo{width:60px;height:60px}.institution-finder .finder-school-side{padding-left:16px}.institution-finder .finder-school h3{font-size:16px}.institution-finder .finder-cascade-fields select{min-width:160px}.institution-finder .finder-hero{padding:20px 25px 24px}.institution-finder .finder-filters{padding-left:22px;padding-right:22px}}
@media(max-width:640px){.institution-finder{padding:16px 0 35px}.institution-finder .finder-shell{width:calc(100% - 28px)}.institution-finder .finder-hero{padding:16px 17px 20px}.institution-finder .finder-breadcrumbs nav{margin-bottom:16px}.institution-finder .finder-hero-copy{margin:10px 0 18px;gap:10px}.institution-finder h1{font-size:26px;line-height:1.35;max-width:8em;margin:9px 0}.institution-finder .finder-hero-copy p{font-size:11px;max-width:18em}.institution-finder .finder-eyebrow{font-size:9px;letter-spacing:.12em}.institution-finder .finder-total{min-width:75px;display:flex;flex-direction:column;align-items:flex-start;padding-left:12px;gap:4px}.institution-finder .finder-total strong{font-size:30px}.institution-finder .finder-total span{font-size:10px}.institution-finder .finder-total small{font-size:8px;line-height:1.5}.institution-finder .finder-search{padding:5px 5px 5px 8px;gap:4px;border-radius:7px}.institution-finder .finder-search-icon{font-size:23px}.institution-finder .finder-search input{height:39px;font-size:11px;padding:0}.institution-finder .finder-search button{height:39px;min-width:72px;padding:0 10px;font-size:11px}.institution-finder .finder-search button span{display:none}.institution-finder .finder-filters{padding:2px 15px 6px}.institution-finder .finder-filter-row{padding:36px 0 11px}.institution-finder .finder-filter-row legend,.institution-finder .finder-filter-row>strong{top:13px;font-size:11px;width:auto;color:#76876f}.institution-finder .finder-choice{font-size:11px;padding:6px 8px;gap:4px;min-height:32px}.institution-finder .finder-choice small{font-size:9px}.institution-finder .finder-choices{gap:4px}.institution-finder .finder-filter-hint{font-size:11px;margin:3px 0}.institution-finder .finder-cascade-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.institution-finder .finder-cascade-fields label{display:block;min-width:0}.institution-finder .finder-cascade-fields label>span{display:none}.institution-finder .finder-cascade-fields select{min-width:0;width:100%;font-size:11px;padding:8px;min-height:38px}.institution-finder .finder-checks{gap:7px 17px}.institution-finder .finder-checks label{font-size:11px;gap:6px}.institution-finder .finder-checks input{width:16px;height:16px}.institution-finder .finder-active-filters{gap:5px;font-size:10px}.institution-finder .finder-active-filters button{font-size:10px}.institution-finder .finder-results-header{padding:23px 0 13px;align-items:flex-start;flex-wrap:wrap;gap:12px}.institution-finder .finder-results-header h2{font-size:19px}.institution-finder .finder-results-header p{font-size:10px;margin-top:5px}.institution-finder .finder-results-tools{justify-content:space-between;width:100%;gap:8px}.institution-finder .finder-results-tools select{font-size:11px;min-height:34px}.institution-finder .finder-city-link{font-size:11px}.institution-finder .finder-school{grid-template-columns:48px minmax(0,1fr);padding:17px 15px;gap:12px;border-radius:10px}.institution-finder .finder-logo{width:48px;height:48px;border-radius:8px;margin-top:1px}.institution-finder .finder-logo>span{font-size:13px}.institution-finder .finder-school h3{font-size:15px;line-height:1.5;margin-bottom:6px}.institution-finder .finder-school-location{gap:3px 8px;font-size:9px;margin-bottom:9px}.institution-finder .finder-school-projects{gap:4px;margin-bottom:9px}.institution-finder .finder-school-projects span{font-size:9px;padding:3px 5px}.institution-finder .finder-school-side{grid-column:1/-1;height:auto;display:grid;grid-template-columns:1fr auto;gap:8px;border-left:0;border-top:1px solid #edf1ea;padding:12px 0 0;align-items:center}.institution-finder .finder-detail-link{padding:8px 16px;font-size:11px;grid-column:2;grid-row:1}.institution-finder .finder-school-actions{grid-column:1/-1;justify-content:flex-end;gap:20px}.institution-finder .finder-school-actions button{font-size:10px;min-height:28px}.institution-finder .finder-pagination{flex-direction:column;gap:12px;margin-top:20px}.institution-finder .finder-pagination button{font-size:11px;min-height:36px;min-width:36px}.institution-finder .finder-empty{padding:35px 15px}.institution-finder .finder-empty h3{font-size:17px}.institution-finder .finder-empty p{font-size:12px}.institution-finder .finder-empty :is(button,a){font-size:11px;padding:9px 11px}.institution-finder .finder-join{padding:20px;align-items:flex-start;flex-direction:column;gap:15px}.institution-finder .finder-join h2{font-size:14px}.institution-finder .finder-compare{width:calc(100% - 20px);bottom:10px;padding:12px 14px;align-items:flex-start;gap:10px}.institution-finder .finder-compare p{font-size:10px;max-width:16em}.institution-finder .finder-compare>div:last-child{gap:6px}.institution-finder .finder-compare :is(button,a){font-size:10px;padding:8px}.institution-finder .finder-compare small{font-size:10px}}
@media(max-width:640px){.institution-finder h1>span{display:block}}
@media(prefers-reduced-motion:reduce){.institution-finder *{transition:none!important;scroll-behavior:auto!important}}

/* Institution result actions: consultation uses the existing institution-specific form. */
.institution-finder .finder-consult-link{display:flex;align-items:center;justify-content:center;min-height:40px;padding:9px 12px;background:#35684e;color:#fff;border:1px solid #35684e;border-radius:6px;font-size:12px;font-weight:700;line-height:1.6;text-align:center}
.institution-finder .finder-consult-link:hover{background:#28563f;border-color:#28563f}
.institution-finder .finder-consult-link:focus-visible{outline:3px solid #8fba9d;outline-offset:3px}
.institution-finder .finder-school-projects{margin-bottom:0}
@media(max-width:760px){.institution-finder .finder-school-side{grid-template-columns:minmax(0,1fr);gap:8px}.institution-finder .finder-consult-link{grid-column:1;grid-row:1;min-height:44px;font-size:12px}.institution-finder .finder-detail-link{grid-column:1;grid-row:2;display:flex;align-items:center;justify-content:center;min-height:44px}.institution-finder .finder-school-actions{grid-column:1;grid-row:3;justify-content:space-between}}

/* Same school V setting as the homepage; scoped to institution result logos. */
.institution-finder .finder-logo{position:relative;overflow:visible}
.institution-finder .finder-logo img{border-radius:11px}
.institution-finder .finder-logo .finder-v-badge{position:absolute;right:-4px;bottom:-3px;display:grid;place-items:center;width:25px;height:25px;max-width:none;border:2px solid #fff;border-radius:50%;background:#e7a82c;color:#fff;font:italic 800 17px/1 Arial,sans-serif;letter-spacing:0;box-shadow:0 1px 5px #a8741930;z-index:1}
@media(max-width:640px){.institution-finder .finder-logo .finder-v-badge{width:22px;height:22px;font-size:15px}}
