/* Discovery surfaces. Product navigation lives only in the generated shell. */
.discovery-main{width:min(1240px,calc(100% - 64px));margin:0 auto;padding:40px 0 90px}
.discovery-main .prism-page-hero{padding:32px 0 48px}.discovery-main .prism-page-hero h1{font-size:clamp(38px,5.4vw,72px);line-height:1.04;letter-spacing:-.055em;margin:20px 0}.discovery-main .prism-page-hero h1 em{font-style:normal;color:var(--accent-text)}.discovery-main .prism-page-hero>p{max-width:650px;font-size:clamp(17px,2vw,20px);line-height:1.6;color:var(--text-secondary)}
.prism-search-dialog{width:min(720px,calc(100% - 32px));max-height:85dvh;box-sizing:border-box;border:1px solid #d2d2d7;border-radius:24px;padding:28px;background:#fff;color:#1d1d1f;box-shadow:0 30px 120px #1d1d1f40;font-family:var(--prism-sans)}.prism-search-dialog::backdrop{background:#1d1d1f80;backdrop-filter:blur(5px)}.prism-search-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.prism-search-head h2{font-size:22px;letter-spacing:-.03em}.prism-search-dialog input{width:100%;box-sizing:border-box;font-size:17px;min-height:48px}.prism-search-results{max-height:48dvh;overflow:auto}.prism-search-results h3{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#5b5b62;margin:24px 8px 8px}.prism-search-result{display:block;padding:12px;border-radius:12px;text-decoration:none}.prism-search-result strong{display:block;color:#1d1d1f;font-size:15px}.prism-search-result small{display:block;color:#5b5b62;font-size:12px;margin-top:5px}.prism-search-result:hover,.prism-search-result:focus-visible{background:#eaf3ff;outline:2px solid #0066cc;outline-offset:-2px}.prism-search-all{display:block;padding:16px 12px;font-weight:600}.prism-search-help,.prism-search-status{font-size:12px;color:#5b5b62}.prism-search-dialog .btn{min-height:44px;padding:8px 14px;border-radius:10px;border:1px solid #a1a1aa;background:#f5f5f7;color:#1d1d1f}.prism-search-dialog .uni-field{display:grid;gap:8px;color:#424247;font-size:14px}mark{background:#eaf3ff;color:#004c99;border-radius:3px}
.explore-browser{margin-top:48px}.explore-browser-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.explore-browser-heading h2{font-size:26px;letter-spacing:-.035em;margin:0}
.university-identity.uni-logo{display:flex;box-sizing:border-box;width:160px;max-width:100%;height:64px;margin-bottom:16px}.university-identity.uni-logo[data-favicon]{width:48px;height:48px}.university-identity .uni-logo-fallback{font-size:20px;font-weight:650;color:#626269}.university-identity [hidden]{display:none!important}
.explore-controls{display:grid;grid-template-columns:minmax(0,1fr) 180px 160px;gap:16px;padding:22px;background:#fff;border:1px solid var(--border);border-radius:18px}.explore-controls input,.explore-controls select{box-sizing:border-box;width:100%;min-height:46px;min-width:0}.explore-count{color:var(--text-secondary);font-size:13px;margin:24px 0}.explore-group{margin:40px 0}.explore-group-head{display:flex;align-items:center;gap:18px;margin-bottom:20px}.explore-group-head h2{margin:0;font-size:26px;letter-spacing:-.035em}.explore-group-head>span{font-size:12px;color:var(--text-secondary)}.explore-group-head button{margin-left:auto}.explore-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.explore-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:24px;min-width:0;overflow-wrap:anywhere}.explore-card h2,.explore-card h3{font-size:21px;line-height:1.25;letter-spacing:-.025em;margin:14px 0}.explore-card h3 a,.explore-card h2 a{color:inherit;text-decoration:none}.explore-card h3 a:hover,.explore-card h2 a:hover{text-decoration:underline}.explore-card p{font-size:14px;line-height:1.65;color:var(--text-secondary)}.explore-card p.explore-small,.explore-small{font-size:12px;color:var(--text-secondary)}.explore-card small{display:block;line-height:1.6;margin:14px 0;color:var(--text-secondary)}.explore-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:18px}.explore-actions .btn{font-size:12px;padding:9px 13px;min-height:44px}.explore-actions .uni-text-button{min-height:44px;font-size:12px;white-space:normal;text-align:left}.explore-actions button[aria-pressed=true]{background:#eaf3ff;border-color:#90b8e6;color:#004c99}.explore-pages{display:flex;align-items:center;justify-content:center;gap:20px;margin:30px 0}.explore-pages>span{font-size:13px;color:var(--text-secondary)}.explore-empty{padding:36px 24px;text-align:center;background:#eeeef2;border-radius:18px;margin:24px 0}.explore-empty .btn{margin:4px}.explore-choice-status:not(:empty){padding:16px;border:1px solid #90b8e6;border-radius:12px;background:#eaf3ff;color:#004c99;font-size:14px;position:sticky;bottom:16px;z-index:5}
.discovery-coverage{border-top:1px solid var(--border);padding-top:35px;margin-top:60px;max-width:900px}.discovery-coverage h2{font-size:24px;letter-spacing:-.025em}.discovery-coverage p{font-size:13px;line-height:1.75;color:var(--text-secondary)}.university-overview{display:grid;grid-template-columns:1fr 1fr;gap:20px}.public-compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:18px;margin:28px 0}.public-compare-grid dt{color:var(--text-secondary);font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-top:23px}.public-compare-grid dd{margin:7px 0 0;font-size:14px;line-height:1.5}.discovery-back{display:inline-block;font-size:13px;margin:8px 0}.prism-discovery [data-careers]>label{max-width:600px}.prism-discovery [data-careers] .explore-grid{margin-top:28px;grid-template-columns:repeat(2,minmax(0,1fr))}.prism-discovery [data-careers] h3{font-size:16px}

/* Refraction becomes focus. Each branch is a named, native button; context
   remains in the trail instead of being hidden in a canvas or node graph. */
.refraction{background:#fff;border:1px solid var(--border);border-radius:24px;padding:32px;overflow:hidden;isolation:isolate}.refraction-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:28px}.refraction-heading h2{margin:8px 0 0;font-size:clamp(24px,3vw,34px);line-height:1.15;letter-spacing:-.04em}.refraction-heading>p{font-size:14px;line-height:1.65;color:var(--text-secondary);max-width:290px;margin:0}
.refraction-starts{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 8px}.refraction-starts button{background:#f5f5f7;color:#424247;border:1px solid transparent;border-radius:10px;min-height:44px;padding:10px 15px;font:500 .8rem/1.4 var(--font);cursor:pointer}.refraction-starts button[aria-pressed=true]{color:#0066cc;background:#eaf3ff;border-color:#90b8e6}
.refraction-trail{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;padding:16px 0;margin:0 0 16px;border-bottom:1px solid var(--border)}.refraction-trail button{background:none;border:0;color:var(--text-secondary);padding:7px 0;min-height:36px;font:400 .75rem/1.4 var(--font);max-width:250px;text-align:left;overflow-wrap:anywhere;cursor:pointer}.refraction-trail button[aria-current]{color:var(--text);font-weight:600}.refraction-trail>span{color:#a1a1aa}
.refraction-focus{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:clamp(32px,6vw,80px);align-items:start;position:relative;min-width:0}.refraction-origin{position:relative;min-width:0;padding:26px 0}.refraction-origin h3{font-size:clamp(25px,3.3vw,40px);letter-spacing:-.045em;line-height:1.13;margin:14px 0;overflow-wrap:anywhere}.refraction-origin p{font-size:14px;color:var(--text-secondary);line-height:1.7;margin:0 0 20px}.refraction-origin .uni-text-button{display:block;min-height:44px;font-size:13px;margin-top:10px;text-align:left;white-space:normal}.refraction-record{font-size:13px;text-underline-offset:4px;color:var(--accent-text)}
.refraction-light{display:block;width:48px;height:12px;border:1px solid #c5d2e0;background:linear-gradient(90deg,#fff,#edf3fa);border-radius:2px;margin-bottom:28px}.refraction-origin:after{content:'';position:absolute;top:32px;left:48px;width:calc(100% + 32px);height:1px;background:linear-gradient(90deg,#d2dce9,#a9bddd 65%,transparent);z-index:-1;pointer-events:none}
.refraction-branches{display:grid;gap:28px;min-width:0}.refraction-branch{position:relative;border-left:2px solid #99bce6;padding-left:22px;min-width:0}.refraction-branch[data-branch-tone="1"]{border-color:#bea2cf}.refraction-branch[data-branch-tone="2"]{border-color:#c5af85}.refraction-branch h4{margin:0 0 8px;font-size:16px;font-weight:650;letter-spacing:-.02em}.refraction-evidence,.refraction-more,.refraction-unavailable{font-size:12px;line-height:1.65;color:var(--text-secondary);margin:8px 0 16px;max-width:600px}.refraction-unavailable{padding:12px;background:#f5f5f7;border-radius:8px}.refraction-branch ul{list-style:none;margin:0;padding:0}.refraction-branch li+li{border-top:1px solid #e8e8ed}.refraction-branch li>button{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:52px;padding:12px 4px;width:100%;text-align:left;color:#1d1d1f;background:none;border:0;cursor:pointer;font:400 14px/1.5 var(--font)}.refraction-branch button strong{font-weight:550}.refraction-branch button small{display:block;color:var(--text-secondary);font-size:11px;margin-top:3px}.refraction-branch button>span:last-child{color:#0066cc;font-size:18px;flex:none}.refraction-branch button>span:first-child{min-width:0;overflow-wrap:anywhere}.refraction-more{margin-bottom:0}.refraction-cost-link{font-size:13px;padding-top:22px;margin:26px 0 0;border-top:1px solid var(--border);color:var(--text-secondary)}.refraction-cost-link a{color:var(--accent-text);text-underline-offset:4px}.refraction-search-guide{padding:24px;border-radius:16px;background:#f5f5f7}.refraction-search-guide>span{color:#0066cc;font-size:32px}.refraction-search-guide p{font-size:14px;color:var(--text-secondary);line-height:1.7}
.focus-next{margin:24px 0;padding:24px 28px;border-radius:18px;background:#eaf3ff;border:1px solid #bdd5ef;display:flex;align-items:center;justify-content:space-between;gap:24px}.focus-next strong{font-size:17px;letter-spacing:-.025em}.focus-next p{font-size:13px;color:#405569;max-width:620px;line-height:1.65;margin-bottom:0}.focus-next nav{display:flex;align-items:center;flex-wrap:wrap;gap:14px;font-size:13px}.focus-next nav a:not(.btn){min-height:44px;display:flex;align-items:center;color:#0055aa}
@media(hover:hover) and (pointer:fine){.refraction-starts button:hover{border-color:#90b8e6}.refraction-branch li>button:hover{color:#0066cc;background:#f5f8fc}.refraction-trail button:hover{text-decoration:underline;text-underline-offset:4px}}
@media(max-width:900px){.explore-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.explore-controls{grid-template-columns:1fr 150px}.explore-controls>label:first-child{grid-column:1/-1}.refraction-heading{display:block}.refraction-heading>p{margin-top:14px;max-width:540px}.focus-next{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.discovery-main{width:calc(100% - 32px);padding-top:18px}.discovery-main .prism-page-hero{padding:24px 0 32px}.explore-grid,.prism-discovery [data-careers] .explore-grid,.university-overview{grid-template-columns:1fr}.explore-controls{padding:16px;gap:12px;grid-template-columns:1fr 1fr}.explore-card{padding:22px}.explore-group{margin:32px 0}.explore-group-head{gap:12px;flex-wrap:wrap}.explore-group-head h2{font-size:25px}.explore-group-head button{font-size:12px}.prism-search-dialog{padding:18px;border-radius:18px}.prism-search-head h2{font-size:18px}.refraction{padding:22px 18px;border-radius:18px}.refraction-starts{display:grid;grid-template-columns:1fr 1fr;gap:8px}.refraction-starts button{padding:9px;font-size:12px}.refraction-focus{grid-template-columns:1fr;gap:12px}.refraction-origin{padding:8px 0 20px}.refraction-origin:after{display:none}.refraction-light{margin-bottom:18px}.refraction-origin h3{font-size:28px}.refraction-branch{padding-left:15px}.refraction-trail button{max-width:220px}.explore-browser-heading{align-items:flex-start;flex-direction:column}.focus-next{padding:20px}.focus-next nav{gap:8px 14px}}
@media(prefers-reduced-motion:reduce){.prism-search-dialog::backdrop{backdrop-filter:none}.refraction *{transition:none!important;animation:none!important}}
@media(forced-colors:active){.refraction,.refraction-starts button,.focus-next{border-color:CanvasText}.refraction-light{background:Canvas;border-color:CanvasText}.refraction-branch{border-color:LinkText}.refraction-starts button[aria-pressed=true]{outline:2px solid Highlight}.refraction-branch button,.refraction-record,.refraction-cost-link a{color:LinkText}}
