:root{--cfs-navy:#09244a;--cfs-teal:#087f7a;--cfs-coral:#c64d43;--cfs-gold:#d9a62e;--cfs-ink:#17283a;--cfs-muted:#526579;--cfs-line:#cad7df;--cfs-soft:#f3f8f8}
*{box-sizing:border-box}
.food-showcase-page{margin:0;background:#f7f9fa;color:var(--cfs-ink);overflow-x:hidden}
.cfs-hero{position:relative;min-height:min(690px,78vh);display:flex;align-items:center;overflow:hidden;background:var(--cfs-navy)}
.cfs-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.cfs-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,28,59,.95) 0%,rgba(7,28,59,.86) 35%,rgba(7,28,59,.25) 66%,rgba(7,28,59,.05) 100%)}
.cfs-hero-copy{position:relative;z-index:1;width:min(1180px,calc(100% - 2rem));margin:auto;padding:clamp(2.5rem,7vw,6rem) 0;color:#fff}
.cfs-eyebrow,.cfs-kicker{margin:0 0 .65rem;color:var(--cfs-gold);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:0}
.cfs-hero h1{max-width:700px;margin:0;font-size:clamp(2.6rem,6vw,5.4rem);line-height:1.02;letter-spacing:0;color:#fff}
.cfs-hero-copy>p:not(.cfs-eyebrow){max-width:650px;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.6}
.cfs-tags,.cfs-actions,.cfs-speed,.cfs-save-row,.cfs-slide-map{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}
.cfs-tags span{padding:.45rem .7rem;border:1px solid rgba(255,255,255,.35);background:rgba(6,33,65,.58);font-size:.82rem;font-weight:800}
.cfs-actions{margin-top:1.35rem}
.cfs-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:46px;border:1px solid transparent;border-radius:6px;padding:.72rem 1rem;font:inherit;font-weight:900;text-decoration:none;cursor:pointer}
.cfs-button.primary{background:var(--cfs-coral);color:#fff}.cfs-button.light{background:#fff;color:var(--cfs-navy)}.cfs-button.gold{background:var(--cfs-gold);color:#14223a}.cfs-button.outline{border-color:var(--cfs-navy);background:#fff;color:var(--cfs-navy)}.cfs-button.danger{background:#fff1ef;color:#9d332b;border-color:#e7b0aa}
.cfs-topic-nav{position:sticky;top:0;z-index:20;display:flex;gap:.4rem;overflow-x:auto;padding:.7rem max(1rem,calc((100vw - 1180px)/2));background:rgba(255,255,255,.96);border-bottom:1px solid var(--cfs-line)}
.cfs-topic-nav a{flex:0 0 auto;padding:.55rem .8rem;border-radius:5px;color:var(--cfs-navy);font-weight:850;text-decoration:none}.cfs-topic-nav a:hover{background:#e9f3f3;color:var(--cfs-teal)}
.cfs-shell{width:min(1180px,calc(100% - 2rem));margin:auto;padding:clamp(3rem,6vw,5rem) 0}
.cfs-heading{max-width:850px;margin-bottom:1.5rem}.cfs-heading.split{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,440px);gap:2rem;align-items:end}
.cfs-heading h2,.cfs-visual-grid h2{margin:.2rem 0 .6rem;color:var(--cfs-navy);font-size:clamp(1.9rem,4vw,3.15rem);line-height:1.1;letter-spacing:0}
.cfs-heading>p:not(.cfs-kicker),.cfs-visual-grid p{color:var(--cfs-muted);font-size:1.05rem;line-height:1.65}
.cfs-contrast{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}.cfs-contrast article{display:flex;gap:1rem;padding:1.2rem;border:1px solid;border-radius:7px}.cfs-contrast i{font-size:1.45rem}.cfs-contrast h3{margin:0 0 .35rem;color:var(--cfs-navy)}.cfs-contrast p{margin:0;line-height:1.55}.cfs-contrast .avoid{border-color:#e9b7b2;background:#fff3f1}.cfs-contrast .avoid i{color:var(--cfs-coral)}.cfs-contrast .aim{border-color:#91c9b1;background:#effaf4}.cfs-contrast .aim i{color:#19784e}
.cfs-mission-grid,.cfs-language-grid,.cfs-rounds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.cfs-mission-grid article,.cfs-language-grid article,.cfs-rounds article{padding:1.15rem;border:1px solid var(--cfs-line);border-radius:7px;background:#fff}.cfs-mission-grid span,.cfs-rounds span{color:var(--cfs-coral);font-weight:900}.cfs-mission-grid h3,.cfs-language-grid h3,.cfs-rounds h3{margin:.45rem 0;color:var(--cfs-navy);font-size:1.05rem}.cfs-mission-grid p,.cfs-language-grid p,.cfs-rounds p{margin:.4rem 0;color:var(--cfs-muted);line-height:1.5}
.cfs-band{background:#eaf2f3;border-block:1px solid #d1dfe3}
.cfs-player-console{padding:1rem;border:1px solid #adc5cd;border-radius:7px;background:#fff}.cfs-player-console p{margin:.65rem 0 0;color:var(--cfs-muted);font-size:.88rem}.cfs-icon-button{width:46px;height:46px;border:1px solid var(--cfs-line);border-radius:6px;background:#fff;color:var(--cfs-navy);cursor:pointer}.cfs-speed{margin-top:.75rem}.cfs-speed button{min-width:54px;min-height:38px;border:1px solid var(--cfs-line);border-radius:5px;background:#fff;color:var(--cfs-navy);font-weight:900;cursor:pointer}.cfs-speed button.active{background:var(--cfs-navy);color:#fff}
.cfs-dialogue{display:grid;gap:.8rem}.cfs-dialogue article{display:grid;grid-template-columns:42px minmax(0,1fr);gap:.85rem;width:min(82%,820px);padding:1rem;border:1px solid var(--cfs-line);border-radius:7px;background:#fff}.cfs-dialogue article.daniel{margin-left:auto;border-left:5px solid var(--cfs-teal)}.cfs-dialogue article.emma{border-left:5px solid var(--cfs-coral)}.cfs-dialogue article.is-playing{outline:3px solid rgba(217,166,46,.45)}.cfs-dialogue button,.cfs-audio-chip{border:1px solid var(--cfs-line);background:#f5f8fb;color:var(--cfs-navy);cursor:pointer}.cfs-dialogue button{width:42px;height:42px;border-radius:50%}.cfs-dialogue strong{color:var(--cfs-navy)}.cfs-dialogue p{margin:.3rem 0 0;line-height:1.55}.cfs-noticing,.cfs-errors{margin-top:1rem;border:1px solid var(--cfs-line);border-radius:7px;background:#fff}.cfs-noticing summary,.cfs-errors summary{padding:1rem;color:var(--cfs-navy);font-weight:900;cursor:pointer}.cfs-noticing ul,.cfs-errors div{margin:0;padding:0 1.4rem 1.2rem 2rem;line-height:1.65}
.cfs-tabs{display:flex;gap:.45rem;overflow-x:auto;padding-bottom:.5rem}.cfs-tabs button{flex:0 0 auto;min-height:44px;padding:.65rem .9rem;border:1px solid var(--cfs-line);border-radius:5px;background:#fff;color:var(--cfs-navy);font-weight:900;cursor:pointer}.cfs-tabs button[aria-selected=true]{background:var(--cfs-navy);color:#fff}.cfs-tab-panels{min-height:270px;padding:clamp(1.2rem,3vw,2rem);border:1px solid var(--cfs-line);border-radius:7px;background:#fff}.cfs-tab-panels article[hidden]{display:none}.cfs-tab-panels h3{color:var(--cfs-navy);font-size:1.45rem}.cfs-tab-panels p{color:var(--cfs-muted);line-height:1.6}.cfs-tab-panels blockquote{margin:1rem 0;padding:1rem;border-left:5px solid var(--cfs-gold);background:#f7fafc;color:var(--cfs-navy);font-size:1.08rem}.cfs-audio-chip{display:inline-flex;gap:.4rem;align-items:center;border-radius:5px;padding:.65rem .85rem;font-weight:850}
.cfs-visual-band{background:var(--cfs-navy);color:#fff}.cfs-visual-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:2.2rem;align-items:center}.cfs-visual-grid img{display:block;width:100%;max-height:520px;object-fit:cover;border-radius:7px}.cfs-visual-grid h2{color:#fff}.cfs-visual-grid p{color:#d6e2eb}.cfs-slide-map span{padding:.5rem .65rem;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);font-weight:800}
.cfs-language-grid article{border-top:5px solid var(--cfs-teal)}.cfs-language-grid p b{color:var(--cfs-navy)}
.cfs-organizer{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.cfs-organizer label{display:grid;gap:.4rem;color:var(--cfs-navy);font-weight:850}.cfs-organizer input,.cfs-organizer textarea{width:100%;min-width:0;border:1px solid #aebfca;border-radius:6px;padding:.8rem;background:#fff;color:var(--cfs-ink);font:inherit}.cfs-organizer textarea{min-height:110px;resize:vertical}.cfs-save-row{justify-content:flex-end;margin-top:1rem}.cfs-save-row>span{margin-right:auto;color:var(--cfs-muted)}
.cfs-rounds{grid-template-columns:repeat(3,minmax(0,1fr))}
.cfs-progress{align-self:center;justify-self:end;padding:.8rem 1rem;background:var(--cfs-navy);color:#fff;border-radius:6px}.cfs-checklist{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.cfs-checklist label{display:flex;gap:.75rem;align-items:flex-start;padding:1rem;border:1px solid var(--cfs-line);border-radius:6px;background:#fff;font-weight:750;line-height:1.45}.cfs-checklist input{width:20px;height:20px;accent-color:var(--cfs-teal);flex:0 0 auto}.cfs-final-brief{display:flex;gap:1rem;margin-top:1.2rem;padding:1.2rem;border-left:6px solid var(--cfs-gold);background:var(--cfs-navy);color:#fff}.cfs-final-brief i{font-size:1.6rem}.cfs-final-brief p{margin:.35rem 0 0;line-height:1.55}
@media(max-width:980px){.cfs-hero{min-height:620px}.cfs-hero-overlay{background:linear-gradient(90deg,rgba(7,28,59,.94),rgba(7,28,59,.68))}.cfs-heading.split,.cfs-visual-grid{grid-template-columns:1fr}.cfs-mission-grid,.cfs-language-grid{grid-template-columns:1fr 1fr}.cfs-dialogue article{width:92%}}
@media(max-width:680px){.cfs-hero{min-height:580px;align-items:flex-end}.cfs-hero>img{object-position:64% center}.cfs-hero-overlay{background:linear-gradient(0deg,rgba(7,28,59,.98) 0%,rgba(7,28,59,.82) 55%,rgba(7,28,59,.3) 100%)}.cfs-hero-copy{padding:2.2rem 0}.cfs-actions .cfs-button{width:100%}.cfs-contrast,.cfs-mission-grid,.cfs-language-grid,.cfs-rounds,.cfs-organizer,.cfs-checklist{grid-template-columns:1fr}.cfs-dialogue article{width:100%;margin:0}.cfs-save-row{align-items:stretch}.cfs-save-row>*{width:100%;margin:0}.cfs-progress{justify-self:start}.cfs-topic-nav{top:0}}
@media print{.site-header,.global-course-switcher,.cfs-hero,.cfs-topic-nav,.cfs-band,.cfs-visual-band,.cfs-shell:not(#organizer),.site-footer,.cfs-save-row{display:none!important}#organizer{display:block!important;width:100%;padding:0}.cfs-organizer input,.cfs-organizer textarea{border-color:#333}}
