@font-face{font-family:Apercu;src:url('/assets/fonts/apercu-regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Apercu;src:url('/assets/fonts/apercu-medium.otf') format('opentype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Apercu;src:url('/assets/fonts/apercu-bold.otf') format('opentype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Rooney Pro';src:url('/assets/fonts/rooney-pro-medium.otf') format('opentype');font-weight:500;font-style:normal;font-display:swap}
/* OpenDesign Apple token foundation, adapted to Chick-fil-A's supplied brand. */
:root{--accent:#DD0031;--accent-hover:#AF272F;--accent-active:#AF272F;--bg:#FFFFFF;--surface:#F4F8F9;--surface-warm:#F7F7F7;--fg:#485259;--fg-2:#5B6770;--muted:#67737C;--meta:#67737C;--border:#CCCCCC;--font-body:Apercu,Arial,Helvetica,sans-serif;--font-display:'Rooney Pro',Georgia,serif;--success:#00635B;--success-bg:#C5EFDE;--border-soft:#DBE0E2;--elev-raised:0 3px 14px rgba(29,29,31,.035);--text-xs:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.75rem;color-scheme:light}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--surface);color:var(--fg);font:400 var(--text-base)/1.45 var(--font-body);font-synthesis:none;-webkit-font-smoothing:antialiased}h1,h2,p,dl{margin:0}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}svg{display:block;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}img{display:block;max-width:100%;height:auto}[hidden]{display:none!important}a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.skip-link{position:fixed;top:-100px;left:16px;background:var(--bg);padding:12px 16px;z-index:10;border-radius:var(--radius-sm);box-shadow:var(--elev-raised)}.skip-link:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.dashboard{width:min(100% - 32px,720px);margin-inline:auto;padding-bottom:max(16px,env(safe-area-inset-bottom));padding-top:env(safe-area-inset-top)}.identity{display:flex;align-items:center;justify-content:center;gap:22px;padding:28px 0 25px}.identity>img{width:118px;height:auto}.identity-copy{min-width:0;padding-left:22px;border-left:1px solid var(--border)}.identity h1{font:500 clamp(1.6rem,5.9vw,1.875rem)/1.15 var(--font-display);letter-spacing:-.025em;white-space:normal}.identity p{font-size:var(--text-xs);color:var(--muted);margin-top:5px;white-space:normal}.card{background:var(--bg);border:1px solid var(--border-soft);border-radius:22px;box-shadow:var(--elev-raised)}.hours-card{padding:19px 22px 12px}.hours-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:10px}.hours-heading h2{font-size:var(--text-lg);font-weight:700;line-height:1.25;letter-spacing:-.01em}.hours-heading p{font-size:var(--text-sm);color:var(--muted);margin-top:3px}.badge{display:inline-flex;gap:6px;align-items:center;white-space:nowrap;font-size:var(--text-sm);font-weight:500;padding:6px 11px;background:var(--surface);color:var(--fg-2);border-radius:var(--radius-pill)}.status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.status[data-state='open']{background:var(--success-bg);color:var(--success)}.today-hours>div{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;min-height:36px}.today-hours dt{display:flex;align-items:center;gap:10px;font-size:var(--text-base);color:var(--fg-2)}.small-icon{width:19px;height:19px;color:var(--muted)}.today-hours dd{margin:0 0 0 auto;font-size:var(--text-base);font-weight:500;white-space:nowrap;font-variant-numeric:tabular-nums}.weekly-hours{margin-top:11px;border-top:1px solid var(--border-soft)}.weekly-hours summary{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:10px;font-size:var(--text-sm);color:var(--muted);cursor:pointer;list-style:none;border-radius:6px}.weekly-hours summary::-webkit-details-marker{display:none}.chevron{width:20px;height:20px;transition:transform var(--motion-base) var(--ease-standard)}.weekly-hours[open] .chevron{transform:rotate(180deg)}.weekly-hours summary:hover{color:var(--fg)}.weekly-content{padding:0 0 12px}table{width:100%;border-collapse:collapse;font-size:var(--text-sm);font-variant-numeric:tabular-nums}th,td{padding:10px 0;text-align:right;font-weight:400}td>span{display:inline-block;white-space:nowrap}th:first-child{text-align:left}thead th{font-weight:500;color:var(--muted);font-size:var(--text-xs)}tbody tr{border-top:1px solid var(--border-soft)}.service-note{font-size:var(--text-xs);color:var(--muted);line-height:1.45;margin-top:8px}.hours-note{font-size:.75rem;color:var(--muted);line-height:1.5;padding-bottom:2px}
.action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.action-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;min-height:128px;padding:18px;background:var(--bg);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--elev-raised);transition:transform var(--motion-base) var(--ease-standard),box-shadow var(--motion-base) var(--ease-standard),background var(--motion-fast) ease;overflow-wrap:break-word}.action-icon{width:29px;height:29px;color:var(--accent);stroke-width:1.65;margin-bottom:12px}.action-title{font-size:var(--text-base);font-weight:700;line-height:1.25;letter-spacing:-.01em}.action-description{font-size:var(--text-sm);line-height:1.35;color:var(--muted);margin-top:5px}.action-arrow{position:absolute;right:16px;top:17px;width:17px;height:17px;color:var(--meta);opacity:.75;stroke-width:1.6}.action-primary{background:var(--accent);color:var(--accent-on);border-color:transparent}.action-primary .action-icon,.action-primary .action-description,.action-primary .action-arrow{color:var(--accent-on)}.action-primary .action-description{opacity:1}.action-primary .action-arrow{opacity:.7}.action-card:active{transform:scale(.975);background:var(--surface-warm)}.action-primary:active{background:var(--accent-active)}.site-footer{padding:23px 0 0;text-align:center;color:var(--muted);font-size:.8125rem}.site-footer address{font-style:normal;line-height:1.65}.site-footer address>span:last-child{white-space:nowrap}.site-footer a{display:inline-flex;gap:5px;align-items:center;min-height:44px;font-size:.8125rem}.site-footer svg{width:14px;height:14px}.site-footer a:hover{color:var(--accent)}
@media(hover:hover) and (pointer:fine){.action-card:hover{transform:translateY(-2px);box-shadow:0 7px 22px rgba(29,29,31,.07)}.action-primary:hover{background:var(--accent-hover)}}
@media(min-width:600px){.dashboard{padding-top:24px}.identity{padding:20px 0 31px}.identity>img{width:142px}.identity-copy{padding-left:27px}.identity{gap:27px}.identity h1{font-size:2rem}.identity p{font-size:var(--text-sm)}.hours-card{padding:22px 28px 14px}.today-hours>div{min-height:38px}.hours-heading{padding-bottom:13px}.hours-heading h2{font-size:1.25rem}.action-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}.action-card{min-height:160px;padding:24px}.action-icon{width:32px;height:32px;margin-bottom:17px}.action-title{font-size:1.0625rem}.action-description{font-size:var(--text-sm)}.action-arrow{top:21px;right:21px}.site-footer{padding-top:24px}}
@media(max-width:374px){.identity{gap:16px;padding-block:24px 21px}.identity>img{width:100px}.identity-copy{padding-left:16px}.identity h1{font-size:1.55rem}.identity p{font-size:.75rem}.hours-card{padding:17px 16px 11px}.today-hours dt,.today-hours dd{font-size:.9375rem}.today-hours dt{gap:8px}.small-icon{width:17px;height:17px}.action-card{padding:17px 16px;min-height:130px}.action-description{font-size:.8125rem}.action-title{font-size:.9375rem}.action-icon{width:27px;height:27px;margin-bottom:12px}.action-arrow{width:15px;height:15px;right:13px;top:15px}table{font-size:.875rem}.site-footer address>span[aria-hidden]{display:none}.site-footer address>span:last-child{display:block}}
@media(prefers-reduced-motion:no-preference){.hours-card{animation:arrive .36s var(--ease-standard) both}.action-card{animation:arrive .4s var(--ease-standard) both}.action-card:nth-child(2){animation-delay:25ms}.action-card:nth-child(3){animation-delay:50ms}.action-card:nth-child(4){animation-delay:75ms}.action-card:nth-child(5){animation-delay:100ms}.action-card:nth-child(6){animation-delay:125ms}@keyframes arrive{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.action-card:hover,.action-card:active{transform:none}}
/* Keep the optional schedule legible at narrow widths and enlarged text sizes. */
th:first-child{padding-right:8px}td{padding-left:8px}
@media(max-width:374px){td>span{display:block}th,td{padding-block:12px}}

.social-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:14px}.social-links a{gap:8px;padding:0 16px;min-height:44px;border:1px solid var(--border-soft);border-radius:var(--radius-pill);background:var(--bg);font-size:var(--text-sm);font-weight:500;color:var(--fg-2)}.social-links svg{width:18px;height:18px;color:var(--accent)}.social-links .social-dot{fill:currentColor;stroke:none}.social-links a:active{background:var(--surface-warm)}

/* Native disclosure keeps the family downloads within the compact dashboard. */
.kids-corner{margin-top:20px;scroll-margin-top:20px}
.kids-corner>summary{display:flex;align-items:center;gap:14px;padding:20px;min-height:86px;cursor:pointer;list-style:none;border-radius:22px}
.kids-corner>summary::-webkit-details-marker{display:none}
.kids-icon{width:28px;height:28px;color:var(--accent)}
.kids-summary-copy{flex:1;min-width:0}
.kids-title{display:block;font-size:var(--text-lg);font-weight:700;line-height:1.25}
.kids-description{display:block;margin-top:4px;color:var(--muted);font-size:var(--text-sm);line-height:1.4}
.kids-corner>summary .chevron{color:var(--muted)}
.kids-corner[open]>summary .chevron{transform:rotate(180deg)}
.kids-content{padding:0 20px 20px}
.kids-intro{padding-top:16px;border-top:1px solid var(--border-soft);font-size:var(--text-sm);color:var(--muted);line-height:1.5}
.coloring-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px;margin-top:18px}
.coloring-page{display:flex;flex-direction:column;min-width:0;border-radius:var(--radius-sm)}
.coloring-preview{display:flex;align-items:center;justify-content:center;padding:8px;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--surface-warm);aspect-ratio:1/1.2;overflow:hidden}
.coloring-preview img{width:100%;height:100%;object-fit:contain;background:var(--bg)}
.coloring-page h3{margin:10px 0 3px;font-size:var(--text-base);font-weight:500;line-height:1.3}
.coloring-meta{font-size:.75rem;color:var(--muted)}
.coloring-download{display:flex;align-items:center;gap:6px;min-height:44px;margin-top:3px;color:var(--accent);font-size:var(--text-sm);font-weight:700}
.coloring-download svg{width:16px;height:16px}
.coloring-page:hover .coloring-download{color:var(--accent-hover);text-decoration:underline;text-underline-offset:3px}
.kids-note{margin-top:12px;color:var(--muted);font-size:.75rem;line-height:1.5}
@media(min-width:600px){.kids-corner>summary{padding:22px 28px}.kids-content{padding:0 28px 24px}.coloring-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}
@media(max-width:374px){.kids-corner>summary{padding:18px 16px;gap:11px}.kids-content{padding:0 16px 16px}.kids-description{font-size:.8125rem}.coloring-page h3{font-size:.9375rem}.coloring-download{font-size:.8125rem}.coloring-preview{padding:5px}}

.kids-summary-heading{display:flex;align-items:center;gap:14px;width:100%;font:inherit}
@media(max-width:374px){.kids-summary-heading{gap:11px}}

.contact-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 0 20px}
.contact-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--border-soft);border-radius:var(--radius-pill);background:var(--bg);color:var(--fg-2);font-size:var(--text-sm);font-weight:500}
.contact-button svg{width:18px;height:18px;color:var(--accent)}
.contact-button:hover{color:var(--accent);border-color:var(--accent)}
.contact-button:active{background:var(--surface-warm)}

/* Compact first screen, with ordering and catering ahead of local shortcuts. */
@media(max-width:599px){.identity{padding-block:20px 16px}.contact-actions{margin-bottom:12px}}
@media(min-width:600px){.contact-actions{margin-bottom:16px}}
.hours-card{padding:15px 18px 10px}
.hours-heading{padding-bottom:0}
.hours-heading h2{font-size:1rem}
.hours-heading p{margin-top:2px}
.today-summary{margin-top:8px;color:var(--fg-2);font-size:var(--text-sm);font-weight:500;line-height:1.45}
.weekly-hours{margin-top:8px}
.hours-note{margin-top:0}
.commerce-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.utility-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}
.order-help{display:grid;gap:3px;margin:10px 2px 0;color:var(--fg-2);font-size:var(--text-sm);line-height:1.45}
.order-help a{color:var(--accent);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.action-catering{position:relative;isolation:isolate;justify-content:flex-end;min-height:148px;padding:16px;background:#263a46;color:#fff}
.action-catering::after{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(15,28,34,.02) 0%,rgba(15,28,34,.12) 28%,rgba(15,28,34,.88) 100%);content:""}
.action-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 58%}
.action-catering .action-title{font-size:var(--text-base);color:#fff}
.action-catering .action-description{margin-top:4px;color:#fff}
.action-catering .action-arrow{top:14px;right:14px;color:#fff;opacity:1}
@media(min-width:600px){.commerce-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.action-catering{min-height:160px;padding:20px}.action-catering .action-arrow{top:18px;right:18px}}
.action-catering{overflow:hidden;border-radius:var(--radius-lg)}
.action-catering:active{background:#263a46}
