:root { scroll-behavior:smooth; scrollbar-color:var(--mute) var(--bg); }
::selection { background:var(--accent);color:var(--on-accent); }
:focus-visible { outline:2px solid var(--accent);outline-offset:5px; }
a { text-underline-offset:4px; }
main { display:block; }
.skip-link { position:fixed;top:8px;left:16px;padding:12px 18px;background:var(--bg);z-index:100;transform:translateY(-150%); }
.skip-link:focus { transform:none; }
.conversation { width:100%;max-width:1120px;margin:0 auto;padding:64px 24px 96px;display:grid;grid-template-columns:minmax(0,0.85fr) minmax(0,1.15fr);gap:80px; }
h1 { text-wrap:balance; }
.conversation h1,.thank-you h1 { font-family:'Playfair Display',serif;font-size:clamp(38px,5vw,60px);line-height:1.08;letter-spacing:-.02em;margin:0 0 24px; }
.conversation-intro>p,.thank-you>p { font-size:18px;line-height:1.6;color:var(--mute);max-width:48ch; }
.conversation-intro .contact-alternative { margin-top:32px;font-size:16px; }
.form-row { display:grid;grid-template-columns:1fr 1fr;gap:20px; }
.field { min-width:0;margin-bottom:26px; }
.field label { display:block;font-size:16px;font-weight:600;margin-bottom:10px; }
.field label span { font-weight:400;color:var(--mute); }
.field input,.field textarea { display:block;width:100%;padding:14px 16px;border:1px solid var(--mute);border-radius:8px;background:var(--bg);color:var(--ink);font:inherit;font-size:16px;line-height:1.5;caret-color:var(--accent); }
.field textarea { resize:vertical;min-height:160px; }
.field input:user-invalid,.field textarea:user-invalid { border-color:var(--accent);outline:1px solid var(--accent); }
.field-hint,.privacy-note,.form-note { font-size:14px;color:var(--mute);line-height:1.55; }
.field-hint { margin:8px 0 0; }
.privacy-note { margin:0 0 24px; }
.submit-button { display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:14px 26px;border:0;border-radius:999px;background:var(--accent);color:var(--on-accent);font:inherit;font-weight:600;text-decoration:none;cursor:pointer;transition:background 160ms; }
.submit-button:hover { background:var(--ink);color:var(--bg); }
.submit-button:disabled { opacity:.65;cursor:wait; }
.honey { position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden; }
.thank-you { max-width:1120px;width:100%;margin:0 auto;padding:80px 24px 120px; }
.thank-you .submit-button { margin-top:24px; }
.feed-row { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(14px,2vw,24px);padding:24px 0;border-top:1px solid var(--line);text-decoration:none;color:var(--ink);align-items:start; }
.feed-copy { display:flex;flex-direction:column;gap:8px;min-width:0; }
.feed-date { font-size:14px;color:var(--mute); }
.feed-title { font-family:'Playfair Display',serif;font-weight:700;font-size:clamp(20px,2.2vw,26px);line-height:1.2;letter-spacing:-.01em; }
.feed-description { font-size:16px;line-height:1.5;color:var(--mute); }
.feed-image { width:clamp(64px,13vw,148px);aspect-ratio:3/2;object-fit:cover;border-radius:10px;display:block;background:var(--bg2); }
@media (prefers-color-scheme:dark) { :root { --on-accent:#1a0d10; } }
@media (max-width:760px) {
 .conversation { grid-template-columns:1fr;gap:36px;padding:40px 24px 64px; }
 [data-screen-label="Story"] main>article>div { grid-template-columns:1fr!important; }
 [data-screen-label="Story"] main>article>div>[style*="grid-column:span 2"] { grid-column:auto!important; }
}
@media (max-width:650px) {
 #news>div { padding-left:18px!important;padding-right:18px!important; }
 #news article>div[style*="padding:32px 40px 32px 0"] { padding:24px!important; }
}
@media (max-width:420px) { .form-row { grid-template-columns:1fr;gap:0; } .navlinks { column-gap:18px;row-gap:16px; }.navlinks>a:last-child { margin-top:2px; } }
@media (prefers-reduced-motion:reduce) { :root { scroll-behavior:auto; } }

[data-archive-item][hidden]{display:none!important}

.university-identity{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.university-logo{display:flex;align-items:center;justify-content:center;width:100%;height:140px;padding:16px;background:#fff;border-radius:8px}
.university-logo img{display:block;max-width:100%;max-height:108px;width:auto;height:auto;object-fit:contain}

.lecture-photo{margin:0;align-self:stretch;overflow:hidden;border-radius:12px;max-height:520px}
.lecture-photo img{display:block;width:100%;height:100%;max-height:520px;object-fit:cover;object-position:center 60%}
@media(max-width:650px){.lecture-photo{max-height:none}.lecture-photo img{height:auto;max-height:none}}

.university-logo--toronto{background:#6e1424}

.earlier-thumbnail{display:block;width:clamp(88px,14vw,150px);aspect-ratio:3/2;border-radius:10px;overflow:hidden;background:var(--bg2)}
.earlier-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}

.lecture-block{width:100%;background:var(--bg);border-radius:16px;padding:32px;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:36px 48px;align-items:start}
.lecture-copy{min-width:0;align-self:center}
.lecture-copy p{max-width:none!important}
.lecture-block .lecture-photo{width:100%;min-height:420px;max-height:520px}
.lecture-block .lecture-photo img{height:100%;min-height:420px;max-height:520px;object-position:center 60%}
@media(max-width:760px){.lecture-block{grid-template-columns:minmax(0,1fr);padding:24px;gap:28px}.lecture-block .lecture-photo{min-height:0;max-height:none}.lecture-block .lecture-photo img{height:auto;min-height:0;max-height:none}}
