@font-face{font-family:Inter;src:url("/assets/landing/fonts/inter-latin.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
:root{--pink:#9e332e;--ivory:#FFFCF4;--ink:#211f23;--muted:#625e64;--line:#f2ded3}
*{box-sizing:border-box}
body{margin:0;background:#fff;color:var(--ink);font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{width:min(850px,calc(100% - 48px));margin:0 auto}
.masthead{position:sticky;top:0;z-index:20;background:var(--pink);color:var(--ivory)}
.masthead .wrap{height:58px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:inline-flex;align-items:center;gap:8px;color:var(--ivory);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:24px;font-weight:800;letter-spacing:-1.4px;line-height:1}
.brand img{display:block;width:32px;height:32px}
.brand .light{font-weight:400}
.auth-nav{display:flex;align-items:center;gap:7px;flex:none}
.auth-nav button,.auth-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:6px 10px;border:1px solid transparent;border-radius:2px;background:transparent;color:var(--ivory);font-family:inherit;font-size:11px;font-weight:650;line-height:1;white-space:nowrap;opacity:1;cursor:default}
.auth-nav .signup{border-color:var(--ivory);background:var(--ivory);color:#9e332e}
.site-grid{display:grid;grid-template-columns:148px minmax(0,1fr);gap:36px;min-height:calc(100vh - 104px);padding-top:34px;padding-bottom:56px}
.sidebar{position:sticky;top:76px;align-self:start;border-right:1px solid var(--line);padding-right:14px}
.sidebar nav{display:grid;gap:3px}
.sidebar a{display:flex;align-items:center;gap:10px;min-height:36px;padding:8px 10px;border-left:2px solid transparent;color:#625d64;font-size:12px;font-weight:600;line-height:1.2}
.sidebar a svg{display:block;flex:none;width:15px;height:15px;color:#928b92}
.sidebar a:hover{color:var(--pink);background:#fff4ec}
.sidebar a:hover svg{color:var(--pink)}
.sidebar a.current{color:#9e332e;border-left-color:var(--pink);background:#f2ded3}
.sidebar a.current svg{color:var(--pink)}
.page{min-width:0;max-width:580px;padding-top:2px}
.page-head{margin-bottom:19px}
.page h1{font-size:30px;font-weight:650;letter-spacing:-1px;line-height:1.18;margin:0}
.title-accent{color:var(--pink)}
.lead{font-size:14px;line-height:1.65;color:#4f4b51;margin:0 0 15px}
.body-copy{font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 17px}
.home-copy{border-top:1px solid var(--line);margin-top:25px;padding-top:20px}
.home-copy p{color:#504c52;font-size:14px;line-height:1.65;margin:0 0 17px}
.home-copy p:last-child{margin-bottom:0}
.campus-name{color:var(--pink);font-size:21px;font-weight:650;letter-spacing:-.55px;line-height:1.3;margin:0 0 15px}
.university-page{max-width:610px}
.university-page .lead{margin-bottom:22px}
.university-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.university-card{min-width:0;min-height:186px;padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff;display:flex;flex-direction:column}
.university-card:last-child:nth-child(odd){grid-column:1/-1}
.university-card.is-live{border-color:#f2ded3;background:#fff4ec}
.university-card h2{margin:0 0 7px;font-size:17px;font-weight:650;letter-spacing:-.5px;line-height:1.3}
.university-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}
.campus-contact{border-top:1px solid var(--line);margin-top:29px;padding-top:21px}
.campus-contact p{color:var(--muted);font-size:13px;margin:0 0 14px}
.campus-contact a{display:inline-block;background:var(--pink);border:1px solid var(--pink);border-radius:2px;color:#fff;font-size:12px;font-weight:650;line-height:1.2;padding:10px 14px}
.campus-contact a:hover{background:#9e332e;border-color:#9e332e}
.founders{margin-top:39px}
.campus-leads{margin-top:30px}
.founders h2,.campus-leads h2{font-size:12px;font-weight:700;letter-spacing:.03em;margin:0 0 10px}
.people{display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:1px solid var(--line)}
.person{padding:16px 0;border-bottom:1px solid var(--line)}
.person strong{display:block;font-size:15px;font-weight:650;margin-bottom:4px}
.person span{color:var(--muted);font-size:12px}
.campus-lead-email{display:inline-block;margin-top:8px;color:var(--pink);font-size:12px;font-weight:650;text-decoration:underline;text-underline-offset:2px}
.contact-list{border-top:1px solid var(--line);margin-top:27px}
.contact-list a{display:grid;grid-template-columns:1fr auto;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px}
.contact-list span{color:var(--muted)}
.contact-list strong{color:var(--pink);font-weight:650}
.contact-list a:hover strong{text-decoration:underline;text-underline-offset:3px}
.legal-copy{max-width:570px;color:#504c52;font-size:12px;line-height:1.7}
.legal-copy>p{margin:0 0 18px}
.legal-copy .legal-updated{color:#8d878e;font-size:11px;margin:-4px 0 20px}
.legal-copy section{border-top:1px solid var(--line);padding:16px 0 2px}
.legal-copy h2{color:var(--ink);font-size:13px;font-weight:700;line-height:1.35;margin:0 0 8px}
.legal-copy section p{margin:0 0 13px}
.legal-copy a{color:var(--pink);text-decoration:underline;text-underline-offset:2px}
.site-footer{border-top:1px solid var(--line);padding:20px 0;color:#938d94;font-size:11px}
.site-footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:15px}
.site-footer nav{display:flex;flex-wrap:wrap;gap:18px}
.site-footer a:hover{color:var(--pink);text-decoration:underline;text-underline-offset:3px}
.home-copy a,.editorial-page a:not(.editorial-primary),.directory-page .inline-link{color:var(--pink);font-weight:650;text-decoration:underline;text-underline-offset:3px}
.university-card h2 a:hover{color:var(--pink);text-decoration:underline;text-underline-offset:3px}
.page-kicker{margin:0 0 9px;color:var(--pink);font-size:11px;font-weight:750;letter-spacing:.07em;text-transform:uppercase}
.editorial-page{max-width:620px}.editorial-page section{padding:20px 0;border-top:1px solid var(--line)}.editorial-page section h2{margin:0 0 9px;font-size:17px;line-height:1.35;letter-spacing:-.35px}.editorial-page section p{margin:0;color:#504c52;font-size:13px;line-height:1.7}.editorial-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:22px 0}.editorial-actions .editorial-primary{padding:11px 16px;border-radius:8px;background:var(--pink);color:#fff;font-size:12px;font-weight:700;text-decoration:none}.editorial-actions .editorial-primary:hover{background:#9e332e}.editorial-note{font-size:11px;line-height:1.6;color:var(--muted)}
.directory-page{max-width:650px}.student-list{list-style:none;margin:22px 0 0;padding:0;border-top:1px solid var(--line)}.student-list-item{border-bottom:1px solid var(--line)}.student-list-item a{display:flex;align-items:center;gap:13px;min-height:76px;padding:12px 3px}.student-list-item a:hover strong,.student-list-item a:focus-visible strong{color:var(--pink);text-decoration:underline;text-underline-offset:3px}.student-list-avatar{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:12px;background:#fff4ec;color:var(--pink);font-size:17px;font-weight:750}.student-list-item a>span:nth-child(2){min-width:0}.student-list-item strong{display:block;font-size:14px;line-height:1.35}.student-list-item small{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.5;overflow-wrap:anywhere}.student-list-arrow{margin-left:auto;color:var(--pink);font-size:17px}.directory-pagination{display:flex;justify-content:space-between;gap:14px;margin:20px 0}.directory-pagination a{padding:9px 13px;border:1px solid var(--line);border-radius:8px;color:var(--pink);font-size:12px;font-weight:700}.directory-pagination a:hover{background:#fff4ec}.directory-note{margin-top:24px!important}
.directory-page{min-height:calc(100vh - 124px);padding-top:42px;padding-bottom:64px}.directory-page h1{margin:0 0 14px;font-size:30px;letter-spacing:-1px}.directory-page .lead{margin-bottom:0}
:focus-visible{outline:2px solid #9e332e;outline-offset:3px}
@media(max-width:700px){.wrap{width:calc(100% - 34px)}.masthead .wrap{height:55px}.brand{font-size:22px}.brand img{width:30px;height:30px}.site-grid{display:block;min-height:calc(100vh - 106px);padding-top:0;padding-bottom:45px}.sidebar{top:55px;z-index:10;background:#fff;border-right:0;border-bottom:1px solid var(--line);padding:0;margin:0 -17px 28px}.sidebar nav{display:flex;gap:0;padding:0 17px}.sidebar a{min-height:46px;padding:0 14px;border-left:0;border-bottom:2px solid transparent;font-size:11px}.sidebar a.current{border-bottom-color:var(--pink);background:none}.sidebar a svg{width:14px;height:14px}.page h1{font-size:28px}.lead{font-size:13px}.people{gap:18px}}
@media(max-width:550px){.university-list{grid-template-columns:1fr}.university-card{min-height:0;padding:17px}}
@media(max-width:430px){.masthead .wrap{gap:8px}.brand{font-size:20px}.brand img{width:28px;height:28px}.auth-nav{gap:2px}.auth-nav button,.auth-nav a{font-size:10px;min-height:28px;padding:5px 7px}.page h1{font-size:27px}.campus-name{font-size:19px}.people{grid-template-columns:1fr;gap:0}.contact-list a{grid-template-columns:1fr;gap:4px}.site-footer .wrap{align-items:flex-start;flex-direction:column;gap:10px}.site-footer nav{gap:16px}}
@media(max-width:700px){.sidebar nav{overflow-x:auto;white-space:nowrap;scrollbar-width:thin}.sidebar a{flex:none}.editorial-page section{padding:17px 0}}


/* Warm Dormy palette for public pages. */
:root{--pink:#9e332e;--ivory:#fff4ec;--ink:#2c211c;--muted:#70554a;--line:#f2ded3}
body{background:#fff4ec;color:var(--ink)}
.masthead{background:#b83f38;color:var(--ink)}
.brand,.auth-nav button,.auth-nav a{color:var(--ink)}
.auth-nav .signup{border-color:var(--ivory);background:var(--ivory);color:var(--ink)}
.auth-nav .signup:hover{border-color:#fff4ec;background:#fff4ec;color:var(--ink)}
.sidebar a.current{color:var(--ink);background:#f2ded3}
.sidebar a:hover{color:var(--ink);background:#fff4ec}
.sidebar a:hover svg,.sidebar a.current svg{color:var(--pink)}
.lead,.home-copy p{color:#49322a}
.site-footer{color:#70554a}
@media(max-width:700px){.sidebar{background:#fff4ec}.sidebar a.current{background:none}}

/* Campus directory: useful first actions, with a full-card touch target. */
.university-page{max-width:680px}
.university-page .page-head{margin-bottom:10px}
.university-page .lead{max-width:55ch;margin-bottom:24px;font-size:15px}
.university-list{grid-template-columns:1fr;gap:11px}
.university-card,.university-card:last-child:nth-child(odd){grid-column:auto;min-height:0;padding:19px 21px;border-radius:15px;color:var(--ink);text-decoration:none;transition:border-color .18s,box-shadow .18s,transform .18s}
.university-card:hover,.university-card:focus-visible{border-color:var(--pink);box-shadow:0 8px 24px rgb(8 121 101 / 10%);transform:translateY(-2px)}
.university-card-body{display:flex;align-items:center;justify-content:space-between;gap:18px}
.university-card-body>span:first-child{min-width:0;display:grid;gap:4px}
.university-card-body .university-location{margin-bottom:3px;color:#70554a;font-size:11px;font-weight:650;letter-spacing:.02em;line-height:1.3}
.university-card-body strong{font-size:19px;line-height:1.25;letter-spacing:-.03em}
.university-card-body small{color:var(--muted);font-size:13px;line-height:1.4}
.university-page .campus-contact a{min-height:44px;display:inline-flex;align-items:center;border-radius:9px;font-size:13px}
@media(max-width:550px){.university-page .lead{font-size:14px}.university-card{padding:17px}.university-card-body strong{font-size:17px}.university-card-body small{font-size:12px}.auth-nav a{min-height:44px;padding:8px 12px;font-size:12px}}
@media(max-width:700px){.university-layout{padding-top:28px}.university-layout .sidebar{display:none}.university-layout .page{width:100%}}
@media(prefers-reduced-motion:reduce){.university-card{transition:none}.university-card:hover,.university-card:focus-visible{transform:none}}
