
/* A compact, labelled news/event ticker between the header and hero. */
.interactive-ready .campus-storefront.has-news-ticker{grid-template-rows:76px 42px minmax(0,1fr) auto 30px}
.campus-ticker{display:flex;align-items:center;gap:12px;min-width:0;height:34px;margin:0 0 8px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--paper) 86%,transparent);color:var(--ink);box-sizing:border-box;overflow:hidden;box-shadow:0 5px 18px -16px var(--deep)}
.ticker-heading{display:flex;align-items:center;gap:7px;flex:0 0 auto;padding-left:12px}.ticker-heading strong{font-size:9px;letter-spacing:.08em;white-space:nowrap;color:var(--deep)}.ticker-dot{width:6px;height:6px;background:var(--deep);border-radius:50%;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 40%,transparent)}
.ticker-viewport{flex:1;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 14px,#000 calc(100% - 14px),transparent);scrollbar-width:none}.ticker-viewport::-webkit-scrollbar{display:none}.ticker-track{display:flex;width:max-content;animation:campus-ticker-run var(--ticker-duration,70s) linear infinite}.ticker-group{display:flex;align-items:center;gap:26px;padding-right:26px;flex-shrink:0;width:max-content;box-sizing:border-box}.ticker-item{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;min-height:31px;font-size:11px;color:var(--ink);text-decoration:none}.ticker-item:hover{text-decoration:underline}.ticker-item:focus-visible{outline:2px solid var(--deep);outline-offset:-2px}.ticker-badge{display:inline-flex;align-items:center;gap:5px;border-radius:6px;padding:4px 7px;font-size:8px;letter-spacing:.06em;font-weight:800;line-height:1}.ticker-badge svg{width:12px;height:12px}.ticker-news .ticker-badge{background:#e5efff;color:#204b91;border:1px solid #bfd3f5}.ticker-event .ticker-badge{background:#fff0ce;color:#805006;border:1px solid #edd296}.ticker-item time{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.ticker-link-arrow{color:var(--muted);font-size:12px}.ticker-pause{align-self:stretch;flex:0 0 34px;border:0;border-left:1px solid var(--line);background:var(--soft);color:var(--deep);font:inherit;font-weight:800;font-size:12px;cursor:pointer}.ticker-pause:hover{background:var(--accent)}.ticker-pause:focus-visible{outline:2px solid var(--deep);outline-offset:-3px}
@keyframes campus-ticker-run{to{transform:translateX(-50%)}}
.ticker-viewport:hover .ticker-track,.ticker-viewport:focus-within .ticker-track,.ticker-paused .ticker-track,.motion-paused .ticker-track,.admin-motion-off .ticker-track,.tab-hidden .ticker-track{animation-play-state:paused!important}.ticker-keyboard .ticker-track{animation:none;transform:none}.ticker-keyboard .ticker-group[aria-hidden=true]{display:none}.ticker-keyboard .ticker-viewport{overflow-x:auto}
.no-campus-depth .campus-ticker{box-shadow:none}html[data-mode=dark] .ticker-news .ticker-badge{background:#20364e;color:#b7d7ff;border-color:#395979}html[data-mode=dark] .ticker-event .ticker-badge{background:#493a20;color:#ffe0a2;border-color:#79623c}
@media(max-width:1100px){.interactive-ready .campus-storefront.has-news-ticker{grid-template-rows:72px 40px minmax(0,1fr) 100px 22px}.campus-ticker{height:33px;margin-bottom:7px;gap:9px}.ticker-item{font-size:10px}.ticker-heading strong{font-size:8px}}
@media(max-width:600px){.interactive-ready .campus-storefront.has-news-ticker{grid-template-rows:64px 38px minmax(0,1fr) 92px 18px}.campus-ticker{height:32px;margin-bottom:6px;border-radius:10px;gap:6px}.ticker-heading{padding-left:9px;gap:5px}.ticker-heading strong{font-size:7px;letter-spacing:.03em}.ticker-dot{width:5px;height:5px}.ticker-badge{font-size:7px;padding:4px 5px}.ticker-item{font-size:10px;gap:6px}.ticker-group{gap:20px;padding-right:20px}.ticker-pause{flex-basis:32px}}
@media(max-width:1100px) and (max-height:500px) and (orientation:landscape){.interactive-ready .campus-storefront.has-news-ticker{grid-template-rows:54px 32px minmax(0,1fr) 76px 16px}.campus-ticker{height:28px;margin-bottom:4px}}
@media(prefers-reduced-motion:reduce){.ticker-track{animation:none!important;transform:none}.ticker-group[aria-hidden=true]{display:none}.ticker-viewport{overflow-x:auto}}

/* One item per turn: stable text with a soft crossfade and short lateral motion. */
.ticker-viewport{height:100%;mask-image:none;position:relative;overflow:hidden!important}.ticker-track{display:block;width:100%;height:100%;animation:none!important;transform:none!important}.ticker-group{display:block;width:100%;height:100%;padding:0;position:relative}.ticker-item{position:absolute;inset:0;display:flex;width:100%;min-height:0;height:100%;box-sizing:border-box;overflow:hidden;padding:0 2px}.ticker-item[hidden]{display:none!important}.ticker-item[aria-hidden=true]{pointer-events:none}.ticker-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto}.ticker-badge,.ticker-item time,.ticker-link-arrow{flex-shrink:0}.ticker-counter{font-size:9px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.ticker-next{flex:0 0 27px;height:100%;border:0;background:transparent;color:var(--deep);font:inherit;font-size:24px;cursor:pointer;padding:0}.ticker-next:hover{background:var(--accent)}.ticker-next:disabled{opacity:.3;cursor:default}.ticker-next:focus-visible{outline:2px solid var(--deep);outline-offset:-3px}
@media(max-width:600px){.ticker-counter{font-size:8px}.ticker-next{flex-basis:22px}.campus-ticker{gap:5px}.ticker-heading strong{font-size:6px}.ticker-item time{font-size:8px}.ticker-badge{font-size:6px;gap:3px}.ticker-badge svg{width:10px;height:10px}}

/* Mirror the hero columns so the news rail ends exactly at the photograph. */
.campus-ticker-row{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;align-items:start}
.campus-storefront:has(#main.has-ambassadors) .campus-ticker-row{grid-template-columns:minmax(0,7fr) minmax(0,3fr);gap:18px}
.campus-storefront:has(#main.has-ambassadors.has-pinned-menus) .campus-ticker-row{grid-template-columns:minmax(0,70fr) minmax(0,25fr) minmax(52px,5fr);gap:12px}
.campus-ticker-row>.campus-ticker{width:100%;max-width:100%}
@media(max-width:1100px){.campus-storefront:has(#main.has-ambassadors) .campus-ticker-row,.campus-storefront:has(#main.has-ambassadors.has-pinned-menus) .campus-ticker-row{grid-template-columns:minmax(0,1fr);gap:0}}
@media(max-width:1100px) and (max-height:500px) and (orientation:landscape){.campus-storefront:has(#main.has-ambassadors) .campus-ticker-row,.campus-storefront:has(#main.has-ambassadors.has-pinned-menus) .campus-ticker-row{grid-template-columns:minmax(0,62fr) minmax(0,30fr) minmax(70px,8fr);gap:10px}}
