@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}
.landing-page{--pink:#087965;--ivory:#FFFCF4;--ink:#211f23;--muted:#625e64;--line:#e5e9e8}
.landing-page, .landing-page *{box-sizing:border-box}
.landing-page{margin:0;background:#fff;color:var(--ink);font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}
.landing-page a{color:inherit;text-decoration:none}
.landing-page .wrap{width:min(850px,calc(100% - 48px));margin:0 auto}
.landing-page .masthead{position:sticky;top:0;z-index:20;background:var(--pink);color:var(--ivory)}
.landing-page .masthead .wrap{height:58px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.landing-page .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}
.landing-page .brand img{display:block;width:32px;height:32px}
.landing-page .brand .light{font-weight:400}
.landing-page .auth-nav{display:flex;align-items:center;gap:7px;flex:none}
.landing-page .auth-nav button,.landing-page .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}
.landing-page .auth-nav .signup{border-color:var(--ivory);background:var(--ivory);color:#075e50}
.landing-page .site-grid{display:grid;grid-template-columns:148px minmax(0,1fr);gap:36px;min-height:calc(100vh - 104px);padding-top:34px;padding-bottom:56px}
.landing-page .sidebar{position:sticky;top:76px;align-self:start;border-right:1px solid var(--line);padding-right:14px}
.landing-page .sidebar nav{display:grid;gap:3px}
.landing-page .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}
.landing-page .sidebar a svg{display:block;flex:none;width:15px;height:15px;color:#928b92}
.landing-page .sidebar a:hover{color:var(--pink);background:#f4fbf6}
.landing-page .sidebar a:hover svg{color:var(--pink)}
.landing-page .sidebar a.current{color:#075e50;border-left-color:var(--pink);background:#e1f7e9}
.landing-page .sidebar a.current svg{color:var(--pink)}
.landing-page .page{min-width:0;max-width:580px;padding-top:2px}
.landing-page .page-head{margin-bottom:19px}
.landing-page .page h1{font-size:30px;font-weight:650;letter-spacing:-1px;line-height:1.18;margin:0}
.landing-page .title-accent{color:var(--pink)}
.landing-page .lead{font-size:14px;line-height:1.65;color:#4f4b51;margin:0 0 15px}
.landing-page .body-copy{font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 17px}
.landing-page .home-copy{border-top:1px solid var(--line);margin-top:25px;padding-top:20px}
.landing-page .home-copy p{color:#504c52;font-size:14px;line-height:1.65;margin:0 0 17px}
.landing-page .home-copy p:last-child{margin-bottom:0}
.landing-page .campus-name{color:var(--pink);font-size:21px;font-weight:650;letter-spacing:-.55px;line-height:1.3;margin:0 0 15px}
.landing-page .campus-contact{border-top:1px solid var(--line);margin-top:29px;padding-top:21px}
.landing-page .campus-contact p{color:var(--muted);font-size:13px;margin:0 0 14px}
.landing-page .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}
.landing-page .campus-contact a:hover{background:#075e50;border-color:#075e50}
.landing-page .founders{margin-top:39px}
.landing-page .founders h2{font-size:12px;font-weight:700;letter-spacing:.03em;margin:0 0 10px}
.landing-page .people{display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:1px solid var(--line)}
.landing-page .person{padding:16px 0;border-bottom:1px solid var(--line)}
.landing-page .person strong{display:block;font-size:15px;font-weight:650;margin-bottom:4px}
.landing-page .person span{color:var(--muted);font-size:12px}
.landing-page .contact-list{border-top:1px solid var(--line);margin-top:27px}
.landing-page .contact-list a{display:grid;grid-template-columns:1fr auto;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px}
.landing-page .contact-list span{color:var(--muted)}
.landing-page .contact-list strong{color:var(--pink);font-weight:650}
.landing-page .contact-list a:hover strong{text-decoration:underline;text-underline-offset:3px}
.landing-page .legal-copy{max-width:570px;color:#504c52;font-size:12px;line-height:1.7}
.landing-page .legal-copy>p{margin:0 0 18px}
.landing-page .legal-copy .legal-updated{color:#8d878e;font-size:11px;margin:-4px 0 20px}
.landing-page .legal-copy section{border-top:1px solid var(--line);padding:16px 0 2px}
.landing-page .legal-copy h2{color:var(--ink);font-size:13px;font-weight:700;line-height:1.35;margin:0 0 8px}
.landing-page .legal-copy section p{margin:0 0 13px}
.landing-page .legal-copy a{color:var(--pink);text-decoration:underline;text-underline-offset:2px}
.landing-page .site-footer{border-top:1px solid var(--line);padding:20px 0;color:#938d94;font-size:11px}
.landing-page .site-footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:15px}
.landing-page .site-footer nav{display:flex;flex-wrap:wrap;gap:18px}
.landing-page .site-footer a:hover{color:var(--pink);text-decoration:underline;text-underline-offset:3px}
.landing-page :focus-visible{outline:2px solid #087965;outline-offset:3px}
@media(max-width:700px){.landing-page .wrap{width:calc(100% - 34px)}
.landing-page .masthead .wrap{height:55px}
.landing-page .brand{font-size:22px}
.landing-page .brand img{width:30px;height:30px}
.landing-page .site-grid{display:block;min-height:calc(100vh - 106px);padding-top:0;padding-bottom:45px}
.landing-page .sidebar{top:55px;z-index:10;background:#fff;border-right:0;border-bottom:1px solid var(--line);padding:0;margin:0 -17px 28px}
.landing-page .sidebar nav{display:flex;gap:0;padding:0 17px}
.landing-page .sidebar a{min-height:46px;padding:0 14px;border-left:0;border-bottom:2px solid transparent;font-size:11px}
.landing-page .sidebar a.current{border-bottom-color:var(--pink);background:none}
.landing-page .sidebar a svg{width:14px;height:14px}
.landing-page .page h1{font-size:28px}
.landing-page .lead{font-size:13px}
.landing-page .people{gap:18px}}
@media(max-width:430px){.landing-page .masthead .wrap{gap:8px}
.landing-page .brand{font-size:20px}
.landing-page .brand img{width:28px;height:28px}
.landing-page .auth-nav{gap:2px}
.landing-page .auth-nav button,.landing-page .auth-nav a{font-size:10px;min-height:28px;padding:5px 7px}
.landing-page .page h1{font-size:27px}
.landing-page .campus-name{font-size:19px}
.landing-page .people{grid-template-columns:1fr;gap:0}
.landing-page .contact-list a{grid-template-columns:1fr;gap:4px}
.landing-page .site-footer .wrap{align-items:flex-start;flex-direction:column;gap:10px}
.landing-page .site-footer nav{gap:16px}}


.landing-page{min-height:100vh;overflow:auto;background:#fff;--pink:#087965;--ivory:#FFFCF4;--ink:#211f23;--muted:#625e64;--line:#e5e9e8}
.landing-page .brand>span:last-child{display:inline}
.landing-page .auth-nav button{cursor:pointer}
.landing-page .auth-nav button:hover{background:rgba(255,255,255,.13)}
.landing-page .auth-nav .signup:hover{background:#e1f7e9;color:#075e50}
.landing-page {
  --pink: #087965;
  --ivory: #f6fff9;
  --ink: #193b35;
  --muted: #5d7069;
  --line: #dcebe2;
  background: #f8fcf9;
  color: var(--ink);
}

.landing-page .masthead {
  background: #52d6ad;
  color: var(--ink);
}

.landing-page .brand,
.landing-page .auth-nav button {
  color: var(--ink);
}

.landing-page .auth-nav button:hover {
  background: rgb(25 59 53 / 9%);
}

.landing-page .auth-nav .signup {
  border-color: var(--ivory);
  background: var(--ivory);
  color: var(--ink);
}

.landing-page .auth-nav .signup:hover {
  border-color: #e2fff0;
  background: #e2fff0;
  color: var(--ink);
}

.landing-page .sidebar a.current {
  color: var(--ink);
  background: #e1f7e9;
}

.landing-page .sidebar a:hover {
  color: var(--ink);
  background: #eaf8ef;
}

.landing-page .sidebar a:hover svg,
.landing-page .sidebar a.current svg {
  color: var(--pink);
}

.landing-page .lead,
.landing-page .home-copy p {
  color: #40564f;
}

.landing-page .site-footer {
  color: #687b72;
}

.landing-page :focus-visible {
  outline-color: var(--pink);
}

@media (max-width: 700px) {
  .landing-page .sidebar {
    background: #f8fcf9;
  }

  .landing-page .sidebar a.current {
    background: none;
  }
}

/* Signed-out home: one clear message and one primary action. */
.landing-page{display:flex;flex-direction:column;min-height:100dvh;background:#f8fcf9}
.landing-page .wrap{width:min(1120px,calc(100% - 64px))}
.landing-page .masthead .wrap{height:68px}
.landing-page .site-grid{display:flex;align-items:center;flex:1;min-height:0;padding-top:72px;padding-bottom:88px}
.landing-page .page{width:100%;max-width:none;padding:0}
.landing-page .public-home-hero{max-width:760px;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.landing-page .public-home-hero h1{max-width:730px;margin:0;color:var(--ink);font-family:Manrope,Inter,sans-serif;font-size:clamp(48px,5.5vw,70px);font-weight:800;letter-spacing:-.07em;line-height:1.08}
.landing-page .public-home-hero .title-accent{color:#087965}
.landing-page .public-home-hero .lead{max-width:610px;margin:24px 0 0;color:#4a6258;font-size:clamp(17px,1.7vw,20px);line-height:1.55}
.landing-page .public-home-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:34px}
.landing-page .public-home-primary{display:inline-flex;align-items:center;justify-content:center;gap:23px;min-height:54px;padding:0 22px;border:1px solid #087965;border-radius:10px;background:#087965;color:#fff;font-family:Inter,Arial,sans-serif;font-size:15px;font-weight:750;line-height:1.2;cursor:pointer}
.landing-page .public-home-primary:hover{border-color:#075f50;background:#075f50}
.landing-page .public-home-secondary{display:inline-flex;align-items:center;min-height:44px;color:#24634d;font-size:14px;font-weight:700;text-decoration:underline;text-decoration-color:#9dcdb6;text-underline-offset:5px}
.landing-page .public-home-secondary:hover{color:#075f50;text-decoration-color:currentColor}
.landing-page .public-home-trust{max-width:620px;margin:17px 0 0;color:#668074;font-size:12px;line-height:1.5}
.landing-page .site-footer{border-top:1px solid var(--line);padding:18px 0;color:#687b72;font-size:11px}
.landing-page .site-footer .wrap{gap:20px}
.landing-page .site-footer nav{gap:20px}
@media(max-width:700px){
  .landing-page .wrap{width:calc(100% - 40px)}
  .landing-page .masthead .wrap{height:60px}
  .landing-page .site-grid{align-items:flex-start;padding-top:72px;padding-bottom:72px}
  .landing-page .public-home-hero h1{font-size:clamp(43px,10vw,58px)}
  .landing-page .public-home-hero .lead{max-width:32ch;margin-top:20px;font-size:17px}
  .landing-page .public-home-actions{gap:16px;margin-top:28px}
  .landing-page .site-footer .wrap{align-items:flex-start;flex-direction:column;gap:12px}
  .landing-page .site-footer nav{gap:12px 19px}
}
@media(max-width:430px){
  .landing-page .brand{font-size:18px;letter-spacing:-1px}
  .landing-page .brand img{width:29px;height:29px}
  .landing-page .auth-nav button{min-height:40px;padding:7px 8px;font-size:12px}
  .landing-page .auth-nav .signup{padding-inline:11px;border-radius:8px}
  .landing-page .site-grid{padding-top:61px;padding-bottom:66px}
  .landing-page .public-home-hero h1{font-size:43px}
  .landing-page .public-home-actions{align-items:stretch;flex-direction:column;gap:9px}
  .landing-page .public-home-primary{width:100%;min-height:50px}
  .landing-page .public-home-secondary{align-self:flex-start}
}

/* Keep the public entry screen inside narrow phone viewports. */
@media(max-width:600px){
  .landing-page{width:100%;min-width:0;max-width:100vw}
  .landing-page .masthead .wrap{min-width:0;gap:8px}
  .landing-page .brand{min-width:0;flex:none}
  .landing-page .auth-nav{margin-left:auto}
  .landing-page .auth-nav button{min-height:44px}
  .landing-page .site-grid,.landing-page .page,.landing-page .public-home-hero{min-width:0}
  .landing-page .public-home-hero h1{max-width:100%;font-size:clamp(35px,9.5vw,43px);overflow-wrap:normal}
  .landing-page .public-home-hero .title-accent{display:block}
  .landing-page .public-home-actions{align-items:stretch;flex-direction:column;gap:8px}
  .landing-page .public-home-primary{width:100%;min-height:52px}
  .landing-page .public-home-secondary{align-self:flex-start}
}
@media(max-width:360px){.landing-page .brand{font-size:17px}.landing-page .auth-nav button{padding-inline:6px;font-size:11px}.landing-page .public-home-hero h1{font-size:35px}}
