.cg-special-page{--special:#e94c22;--special-ink:#f2eadc}.tone-brunch{--special:#f3c809;--special-ink:#171717}.tone-lunch{--special:#1239dc}
.cg-special-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:1.05fr 1fr;min-height:590px;background:var(--special);color:var(--special-ink);border-bottom:2px solid #171717}
.cg-special-hero:before{content:'';position:absolute;inset:0;z-index:-1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='%23ffffff' fill-opacity='.15' d='M0 50 50 0 100 50 100 100 50 50 0 100Z'/%3E%3C/svg%3E");background-size:150px 150px;animation:cg-special-flow 7s linear infinite}
@keyframes cg-special-flow{to{background-position:0 150px}}
.cg-special-copy{padding:70px 0 70px 5vw;align-self:center;z-index:2;min-width:0}.cg-special-intro{font-size:clamp(18px,1.6vw,24px);line-height:1.45;font-weight:700;margin:28px 0;max-width:560px}.cg-special-copy .menu-actions{display:flex;gap:16px;flex-wrap:wrap}.cg-special-copy .button{color:#171717}.cg-special-copy .button.ghost{background:#f2eadc}
.cg-special-character{position:relative;min-width:0;align-self:stretch;display:flex;align-items:flex-end;justify-content:center;padding:24px 2vw 0}.cg-special-character img{display:block;width:100%;height:560px;object-fit:contain;object-position:center bottom;filter:none;animation:cg-character-in .7s cubic-bezier(.2,.8,.3,1) both}.tone-brunch .cg-special-character{padding-left:0;padding-right:0}.tone-brunch .cg-special-character img{width:115%;max-width:none}
@keyframes cg-character-in{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
.cg-special-page .menu-section>header{background:linear-gradient(100deg,var(--orange),var(--pink));color:var(--ink)}.cg-special-page .menu-section>header p{max-width:100%}
.main-nav ul{gap:clamp(10px,1.3vw,25px)}.main-nav a{font-size:11px;white-space:nowrap}
@media(max-width:1200px){.site-header .main-nav{display:none}.site-header .menu-toggle{display:block}.mobile-menu ul{display:flex;flex-direction:column;gap:20px}.mobile-menu[hidden]{display:none}}
@media(max-width:760px){.cg-special-hero{grid-template-columns:1fr;min-height:0}.cg-special-copy{padding:48px 6vw 20px}.cg-special-character{height:350px;padding-top:10px}.cg-special-character img{height:100%;width:100%}.tone-brunch .cg-special-character img{width:100%}.cg-special-hero:before{background-size:100px 100px;animation-name:cg-special-flow-mobile}.cg-special-copy .button{font-size:12px;padding:16px}.cg-special-page .allergen-note{padding:30px 6vw}}
@keyframes cg-special-flow-mobile{to{background-position:0 100px}}
@media(prefers-reduced-motion:reduce){.cg-special-hero:before,.cg-special-character img{animation:none}}
/* Match the six-across, square chevron tiles used on Food and Drinks. */
.cg-special-hero{container-type:inline-size}
.cg-special-hero:before{--special-chevron-size:16.667cqw;background-size:16.667% var(--special-chevron-size);animation:cg-special-matched-flow 6s linear infinite}
@keyframes cg-special-matched-flow{from{background-position:0 0}to{background-position:0 var(--special-chevron-size)}}
.cg-special-character{padding:0;overflow:hidden}
.cg-special-character img{position:absolute;top:22px;left:0;width:100%;height:680px;object-position:center top}
.tone-brunch .cg-special-character img{width:125%;height:auto;left:-12.5%;top:-20px}
.cg-special-page{--section-colour:#c93b1c;--section-text:#f2eadc;--page-tint:#f8e8da}
.tone-brunch{--section-colour:#f3c809;--section-text:#171717;--page-tint:#faf0ce}
.tone-lunch{--section-colour:#1239dc;--section-text:#f2eadc;--page-tint:#e7eafa}
.cg-special-page #special-menu{background:var(--page-tint)}
.cg-special-page .menu-section>header{background:var(--section-colour);color:var(--section-text);border-color:var(--ink)}
.cg-special-page .venue-cta{background:var(--section-colour);color:var(--section-text)}

.cg-christmas-snow{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0;container-type:size}
.cg-christmas-snow span{position:absolute;top:-130px;left:var(--x);width:var(--size);height:var(--size);background:url('special-menus/snowflake-original.svg') center/contain no-repeat;opacity:0;animation:cg-snow-fall var(--duration) linear var(--delay) infinite}
.tone-christmas .cg-special-character{z-index:1}
@keyframes cg-snow-fall{0%{transform:translate3d(-15px,0,0) rotate(-15deg);opacity:0}12%,80%{opacity:.65}100%{transform:translate3d(25px,calc(100cqh + 260px),0) rotate(95deg);opacity:0}}
@media(max-width:760px){.cg-christmas-snow span{width:calc(var(--size)*.7);height:calc(var(--size)*.7)}.cg-christmas-snow span:nth-child(even){display:none}}
@media(prefers-reduced-motion:reduce){.cg-christmas-snow span{animation:none;top:18%;opacity:.25}.cg-christmas-snow span:nth-child(2n){top:65%}}
.cg-special-page .special-menu-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:34px;column-count:auto}
.special-menu-column{display:flex;flex-direction:column;min-width:0}
.special-menu-notes{margin-top:auto;margin-bottom:34px;padding:26px;border:2px solid var(--ink);background:var(--section-colour);color:var(--section-text)}
.special-menu-notes h2{font-size:clamp(26px,2.4vw,38px);margin:0 0 14px;line-height:1}
.special-menu-notes p{font-size:14px;line-height:1.6;margin:0}
@media(max-width:760px){.cg-special-page .special-menu-columns{grid-template-columns:1fr;gap:0}.cg-special-character{height:400px}.cg-special-character img{height:470px;top:10px}.tone-brunch .cg-special-character{height:340px}.tone-brunch .cg-special-character img{width:115%;left:-7.5%;height:auto;top:0}.special-menu-notes{margin-top:0;margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){.cg-special-hero:before{animation:none}}
/* Keep the complete brunch group inside its half of the hero. */
.tone-brunch .cg-special-character img{width:100%;max-width:100%;height:100%;left:0;top:0;object-fit:contain;object-position:center bottom}
/* Solid RGB samples from the supplied menu artwork, not translucent approximations. */
.cg-special-page{--cream:#f9ede4;--ink:#38302e;--special:#cf4627;--special-ink:#f9ede4;--section-colour:#cf4627;--section-text:#f9ede4;--page-tint:#f9ede4;color:var(--ink)}
.tone-brunch{--special:#f6c613;--special-ink:#38302e;--section-colour:#f6c613;--section-text:#38302e}
.tone-lunch{--special:#0031ed;--special-ink:#f9ede4;--section-colour:#0031ed;--section-text:#f9ede4}
.tone-christmas .cg-special-hero:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='%23e9512b' d='M0 50 50 0 100 50 100 100 50 50 0 100Z'/%3E%3C/svg%3E")}
.tone-brunch .cg-special-hero:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='%23f8d245' d='M0 50 50 0 100 50 100 100 50 50 0 100Z'/%3E%3C/svg%3E")}
.tone-lunch .cg-special-hero:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='%23375df1' d='M0 50 50 0 100 50 100 100 50 50 0 100Z'/%3E%3C/svg%3E")}
.cg-special-copy .button.ghost{background:var(--cream);color:var(--ink)}


