/* Ascent Travel Center — site styles. Brand: PMS 301 C #004B87, PMS 123 C #FFC72C, PMS 2995 C #00A9E0 */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: #FFFFFF; }
img, video, svg { max-width: 100%; }
[hidden] { display: none !important; }
a { color: #00294A; }
a:hover { color: #004B87; }
button { font-family: inherit; }
:focus-visible { outline: 3px solid #00A9E0; outline-offset: 3px; }
.skip { position: absolute; left: -9999px; top: 8px; z-index: 100; padding: 12px 18px; border-radius: 999px; background: #004B87; color: #FFFFFF; font-family: 'Archivo', sans-serif; font-weight: 700; }
.skip:focus { left: 8px; color: #FFFFFF; }

/* Scrolling ticker */
.tk { display: flex; width: max-content; animation: tk 40s linear infinite; }
@keyframes tk { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .tk { animation: none; } }

/* Header: full nav on desktop, Menu button on phones */
.nav-desk { display: flex; flex-wrap: nowrap; }
.cta-desk { display: inline-flex; }
.menu-btn { display: none; }
.menu-btn .icon-close { display: none; }
.menu-btn.is-open .icon-close { display: block; }
.menu-btn.is-open .icon-open { display: none; }
@media (max-width: 900px) { .nav-desk, .cta-desk { display: none; } .menu-btn { display: inline-flex; } }
@media (min-width: 901px) { .menu-panel { display: none !important; } }

/* "Who's stopping by?" tabs */
.tab { min-height: 52px; padding: 0 26px; border-radius: 999px; border: 2px solid #004B87; background: #FFFFFF; color: #004B87; font-weight: 700; font-size: 17px; cursor: pointer; }
.tab[aria-selected="true"] { background: #004B87; color: #FFFFFF; }

/* Fleet card chips */
.chip { padding: 12px 18px; border-radius: 999px; background: #EEF6FC; color: #004B87; border: 2px solid #CFE3F3; font-weight: 700; font-size: 16px; }
.chip.on { background: #004B87; color: #FFFFFF; border-color: #004B87; }

/* FAQ */
.faq { background: #FFFFFF; border: 2px solid #00294A; border-radius: 18px; overflow: hidden; }
.faq summary { list-style: none; min-height: 60px; padding: 16px 20px; display: flex; align-items: center; justify-content: space-between; gap: 16px; cursor: pointer; font-weight: 700; font-size: 17px; color: #00294A; }
.faq summary::-webkit-details-marker { display: none; }
.faq-sign::before { content: "+"; font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 26px; line-height: 1; color: #004B87; }
.faq[open] .faq-sign::before { content: "\2212"; }

/* On narrow screens, show the pizza video above its text like the other food items */
@media (max-width: 935px) { .media-first { order: -1; } }

/* Pizza video pause/play button */
#video-toggle .i-play { display: none; }
#video-toggle.is-paused .i-play { display: block; }
#video-toggle.is-paused .i-pause { display: none; }
