/* Thanksgiving theme (loaded by /public/js/holiday-theme.mjs while it's active; see halloween.css
   for the template). Leaves fall ("fall" motion in holidays.mjs), a turkey peeks in from the left
   edge, and harvest clusters hang in the top corners. */

/* ---- Accent colors ---- */
/* Site brand (navbar, footer, general marketing pages). Category pages keep their own accent. */
html[data-holiday="thanksgiving"] {
    --brand-primary: #9a3412;
    --brand-primary-dark: #7c2d12;
    --brand-primary-light: #fdba74;
    --brand-secondary: #854d0e;
    --brand-secondary-light: #fef3c7;
    --brand-primary-text: #ffffff;
}

/* Kiosk */
html[data-holiday="thanksgiving"] .kiosk-body {
    --kiosk-accent: #b45309;
    --kiosk-accent-soft: #fef3c7;
    --kiosk-bg: #fbf8f3;
}

/* ---- Decor: garland of gold maple and orange oak leaves (reads on the rust navbar and on light pages) ---- */
html[data-holiday="thanksgiving"] .holiday-bunting {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='30' viewBox='0 0 120 30'%3E%3Cpath d='M0 2.5 Q60 20.5 120 2.5' fill='none' stroke='%23451a03' stroke-width='1.4'/%3E%3Cg transform='translate(14.0 7.3) rotate(-10 16.0 1.9) scale(0.32)'%3E%3Cpath d='M50.0 4.0 L57.3 20.9 L65.5 15.3 L62.3 31.8 L70.4 37.3 L91.3 35.0 L79.8 46.9 L85.8 53.8 L68.5 57.5 L73.6 68.5 L57.4 61.9 L51.7 59.8 L48.3 59.8 L42.6 61.9 L26.4 68.5 L31.5 57.5 L14.2 53.8 L20.2 46.9 L8.7 35.0 L29.6 37.3 L37.7 31.8 L34.5 15.3 L42.7 20.9 Z' fill='%23fbbf24' stroke='%23451a03' stroke-width='3' stroke-linejoin='round'/%3E%3C/g%3E%3Cg transform='translate(74.0 7.3) rotate(12 16.0 1.9) scale(0.32)'%3E%3Cpath d='M50.0 8.0 L53.0 9.3 L54.4 10.5 L55.0 11.8 L55.1 13.1 L54.9 14.3 L54.8 15.6 L55.2 16.9 L56.3 18.1 L58.2 19.4 L60.6 20.7 L63.3 21.9 L65.7 23.2 L67.3 24.5 L67.9 25.7 L67.3 27.0 L65.7 28.3 L63.6 29.5 L61.5 30.8 L60.0 32.1 L59.5 33.3 L60.4 34.6 L62.5 35.9 L65.5 37.1 L68.7 38.4 L71.5 39.7 L73.3 40.9 L73.7 42.2 L72.6 43.5 L70.3 44.7 L67.3 46.0 L64.2 47.3 L61.8 48.5 L60.6 49.8 L60.7 51.1 L62.2 52.3 L64.7 53.6 L67.5 54.9 L69.9 56.1 L71.5 57.4 L71.7 58.7 L70.6 59.9 L68.3 61.2 L65.4 62.5 L62.4 63.7 L59.8 65.0 L58.2 66.3 L57.7 67.5 L58.2 68.8 L59.3 70.1 L60.6 71.3 L61.7 72.6 L62.1 73.9 L61.7 75.1 L60.4 76.4 L58.6 77.7 L56.4 78.9 L54.4 80.2 L52.7 81.5 L51.4 82.7 L50.0 84.0 L50.0 84.0 L48.6 82.7 L47.3 81.5 L45.6 80.2 L43.6 78.9 L41.4 77.7 L39.6 76.4 L38.3 75.1 L37.9 73.9 L38.3 72.6 L39.4 71.3 L40.7 70.1 L41.8 68.8 L42.3 67.5 L41.8 66.3 L40.2 65.0 L37.6 63.7 L34.6 62.5 L31.7 61.2 L29.4 59.9 L28.3 58.7 L28.5 57.4 L30.1 56.1 L32.5 54.9 L35.3 53.6 L37.8 52.3 L39.3 51.1 L39.4 49.8 L38.2 48.5 L35.8 47.3 L32.7 46.0 L29.7 44.7 L27.4 43.5 L26.3 42.2 L26.7 40.9 L28.5 39.7 L31.3 38.4 L34.5 37.1 L37.5 35.9 L39.6 34.6 L40.5 33.3 L40.0 32.1 L38.5 30.8 L36.4 29.5 L34.3 28.3 L32.7 27.0 L32.1 25.7 L32.7 24.5 L34.3 23.2 L36.7 21.9 L39.4 20.7 L41.8 19.4 L43.7 18.1 L44.8 16.9 L45.2 15.6 L45.1 14.3 L44.9 13.1 L45.0 11.8 L45.6 10.5 L47.0 9.3 L50.0 8.0 Z' fill='%23fb923c' stroke='%23451a03' stroke-width='3' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E");
}

/* ---- Falling leaves: three shapes in four fall colors, mixed so neighbors differ ---- */
html[data-holiday="thanksgiving"] .holiday-art {
    aspect-ratio: 1;
}

html[data-holiday="thanksgiving"] .holiday-particle:nth-child(12n + 1) .holiday-art {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50.0 4.0 L57.3 20.9 L65.5 15.3 L62.3 31.8 L70.4 37.3 L91.3 35.0 L79.8 46.9 L85.8 53.8 L68.5 57.5 L73.6 68.5 L57.4 61.9 L51.7 59.8 L48.3 59.8 L42.6 61.9 L26.4 68.5 L31.5 57.5 L14.2 53.8 L20.2 46.9 L8.7 35.0 L29.6 37.3 L37.7 31.8 L34.5 15.3 L42.7 20.9 Z' fill='%23b91c1c'/%3E%3Cpath d='M50 56 L50 97' stroke='%237f1d1d' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M50 52 L50 14 M50 52 L76 38 M50 52 L24 38 M50 52 L68 64 M50 52 L32 64' stroke='%237f1d1d' stroke-width='1.6' stroke-linecap='round' fill='none' opacity='.55'/%3E%3C/svg%3E");
}

html[data-holiday="thanksgiving"] .holiday-particle:nth-child(12n + 2) .holiday-art {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50.0 8.0 L53.0 9.3 L54.4 10.5 L55.0 11.8 L55.1 13.1 L54.9 14.3 L54.8 15.6 L55.2 16.9 L56.3 18.1 L58.2 19.4 L60.6 20.7 L63.3 21.9 L65.7 23.2 L67.3 24.5 L67.9 25.7 L67.3 27.0 L65.7 28.3 L63.6 29.5 L61.5 30.8 L60.0 32.1 L59.5 33.3 L60.4 34.6 L62.5 35.9 L65.5 37.1 L68.7 38.4 L71.5 39.7 L73.3 40.9 L73.7 42.2 L72.6 43.5 L70.3 44.7 L67.3 46.0 L64.2 47.3 L61.8 48.5 L60.6 49.8 L60.7 51.1 L62.2 52.3 L64.7 53.6 L67.5 54.9 L69.9 56.1 L71.5 57.4 L71.7 58.7 L70.6 59.9 L68.3 61.2 L65.4 62.5 L62.4 63.7 L59.8 65.0 L58.2 66.3 L57.7 67.5 L58.2 68.8 L59.3 70.1 L60.6 71.3 L61.7 72.6 L62.1 73.9 L61.7 75.1 L60.4 76.4 L58.6 77.7 L56.4 78.9 L54.4 80.2 L52.7 81.5 L51.4 82.7 L50.0 84.0 L50.0 84.0 L48.6 82.7 L47.3 81.5 L45.6 80.2 L43.6 78.9 L41.4 77.7 L39.6 76.4 L38.3 75.1 L37.9 73.9 L38.3 72.6 L39.4 71.3 L40.7 70.1 L41.8 68.8 L42.3 67.5 L41.8 66.3 L40.2 65.0 L37.6 63.7 L34.6 62.5 L31.7 61.2 L29.4 59.9 L28.3 58.7 L28.5 57.4 L30.1 56.1 L32.5 54.9 L35.3 53.6 L37.8 52.3 L39.3 51.1 L39.4 49.8 L38.2 48.5 L35.8 47.3 L32.7 46.0 L29.7 44.7 L27.4 43.5 L26.3 42.2 L26.7 40.9 L28.5 39.7 L31.3 38.4 L34.5 37.1 L37.5 35.9 L39.6 34.6 L40.5 33.3 L40.0 32.1 L38.5 30.8 L36.4 29.5 L34.3 28.3 L32.7 27.0 L32.1 25.7 L32.7 24.5 L34.3 23.2 L36.7 21.9 L39.4 20.7 L41.8 19.4 L43.7 18.1 L44.8 16.9 L45.2 15.6 L45.1 14.3 L44.9 13.1 L45.0 11.8 L45.6 10.5 L47.0 9.3 L50.0 8.0 Z' fill='%23ea580c'/%3E%3Cpath d='M50 84 L50 97' stroke='%239a3412' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M50 12 L50 84' stroke='%239a3412' stroke-width='1.8' fill='none' opacity='.55'/%3E%3C/svg%3E");
}

html[data-holiday="thanksgiving"] .holiday-particle:nth-child(12n + 3) .holiday-art {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 8 C78 26 80 62 50 86 C20 62 22 26 50 8 Z' fill='%23d97706'/%3E%3Cpath d='M50 86 L50 97' stroke='%2392400e' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M50 14 L50 84 M50 34 L66 26 M50 34 L34 26 M50 50 L70 42 M50 50 L30 42 M50 66 L66 58 M50 66 L34 58' stroke='%2392400e' stroke-width='1.5' stroke-linecap='round' fill='none' opacity='.55'/%3E%3C/svg%3E");
}

html[data-holiday="thanksgiving"] .holiday-particle:nth-child(12n + 4) .holiday-art {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50.0 8.0 L53.0 9.3 L54.4 10.5 L55.0 11.8 L55.1 13.1 L54.9 14.3 L54.8 15.6 L55.2 16.9 L56.3 18.1 L58.2 19.4 L60.6 20.7 L63.3 21.9 L65.7 23.2 L67.3 24.5 L67.9 25.7 L67.3 27.0 L65.7 28.3 L63.6 29.5 L61.5 30.8 L60.0 32.1 L59.5 33.3 L60.4 34.6 L62.5 35.9 L65.5 37.1 L68.7 38.4 L71.5 39.7 L73.3 40.9 L73.7 42.2 L72.6 43.5 L70.3 44.7 L67.3 46.0 L64.2 47.3 L61.8 48.5 L60.6 49.8 L60.7 51.1 L62.2 52.3 L64.7 53.6 L67.5 54.9 L69.9 56.1 L71.5 57.4 L71.7 58.7 L70.6 59.9 L68.3 61.2 L65.4 62.5 L62.4 63.7 L59.8 65.0 L58.2 66.3 L57.7 67.5 L58.2 68.8 L59.3 70.1 L60.6 71.3 L61.7 72.6 L62.1 73.9 L61.7 75.1 L60.4 76.4 L58.6 77.7 L56.4 78.9 L54.4 80.2 L52.7 81.5 L51.4 82.7 L50.0 84.0 L50.0 84.0 L48.6 82.7 L47.3 81.5 L45.6 80.2 L43.6 78.9 L41.4 77.7 L39.6 76.4 L38.3 75.1 L37.9 73.9 L38.3 72.6 L39.4 71.3 L40.7 70.1 L41.8 68.8 L42.3 67.5 L41.8 66.3 L40.2 65.0 L37.6 63.7 L34.6 62.5 L31.7 61.2 L29.4 59.9 L28.3 58.7 L28.5 57.4 L30.1 56.1 L32.5 54.9 L35.3 53.6 L37.8 52.3 L39.3 51.1 L39.4 49.8 L38.2 48.5 L35.8 47.3 L32.7 46.0 L29.7 44.7 L27.4 43.5 L26.3 42.2 L26.7 40.9 L28.5 39.7 L31.3 38.4 L34.5 37.1 L37.5 35.9 L39.6 34.6 L40.5 33.3 L40.0 32.1 L38.5 30.8 L36.4 29.5 L34.3 28.3 L32.7 27.0 L32.1 25.7 L32.7 24.5 L34.3 23.2 L36.7 21.9 L39.4 20.7 L41.8 19.4 L43.7 18.1 L44.8 16.9 L45.2 15.6 L45.1 14.3 L44.9 13.1 L45.0 11.8 L45.6 10.5 L47.0 9.3 L50.0 8.0 Z' fill='%23b91c1c'/%3E%3Cpath d='M50 84 L50 97' stroke='%237f1d1d' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M50 12 L50 84' stroke='%237f1d1d' stroke-width='1.8' fill='none' opacity='.55'/%3E%3C/svg%3E");
}

html[data-holiday="thanksgiving"] .holiday-particle:nth-child(12n + 5) .holiday-art {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 8 C78 26 80 62 50 86 C20 62 22 26 50 8 Z' fill='%23ea580c'/%3E%3Cpath d='M50 86 L50 97' stroke='%239a3412' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M50 14 L50 84 M50 34 L66 26 M50 34 L34 26 M50 50 L70 42 M50 50 L30 42 M50 66 L66 58 M50 66 L34 58' stroke='%239a3412' stroke-width='1.5' stroke-linecap='round' fill='none' opacity='.55'/%3E%3C/svg%3E");
}

html[data-holiday="thanksgiving"] .holiday-particle:nth-child(12n + 6) .holiday-art {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50.0 4.0 L57.3 20.9 L65.5 15.3 L62.3 31.8 L70.4 37.3 L91.3 35.0 L79.8 46.9 L85.8 53.8 L68.5 57.5 L73.6 68.5 L57.4 61.9 L51.7 59.8 L48.3 59.8 L42.6 61.9 L26.4 68.5 L31.5 57.5 L14.2 53.8 L20.2 46.9 L8.7 35.0 L29.6 37.3 L37.7 31.8 L34.5 15.3 L42.7 20.9 Z' fill='%2392400e'/%3E%3Cpath d='M50 56 L50 97' stroke='%23451a03' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M50 52 L50 14 M50 52 L76 38 M50 52 L24 38 M50 52 L68 64 M50 52 L32 64' stroke='%23451a03' stroke-width='1.6' stroke-linecap='round' fill='none' opacity='.55'/%3E%3C/svg%3E");
}

html[data-holiday="thanksgiving"] .holiday-particle:nth-child(12n + 7) .holiday-art {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 8 C78 26 80 62 50 86 C20 62 22 26 50 8 Z' fill='%23b91c1c'/%3E%3Cpath d='M50 86 L50 97' stroke='%237f1d1d' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M50 14 L50 84 M50 34 L66 26 M50 34 L34 26 M50 50 L70 42 M50 50 L30 42 M50 66 L66 58 M50 66 L34 58' stroke='%237f1d1d' stroke-width='1.5' stroke-linecap='round' fill='none' opacity='.55'/%3E%3C/svg%3E");
}

html[data-holiday="thanksgiving"] .holiday-particle:nth-child(12n + 8) .holiday-art {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50.0 4.0 L57.3 20.9 L65.5 15.3 L62.3 31.8 L70.4 37.3 L91.3 35.0 L79.8 46.9 L85.8 53.8 L68.5 57.5 L73.6 68.5 L57.4 61.9 L51.7 59.8 L48.3 59.8 L42.6 61.9 L26.4 68.5 L31.5 57.5 L14.2 53.8 L20.2 46.9 L8.7 35.0 L29.6 37.3 L37.7 31.8 L34.5 15.3 L42.7 20.9 Z' fill='%23d97706'/%3E%3Cpath d='M50 56 L50 97' stroke='%2392400e' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M50 52 L50 14 M50 52 L76 38 M50 52 L24 38 M50 52 L68 64 M50 52 L32 64' stroke='%2392400e' stroke-width='1.6' stroke-linecap='round' fill='none' opacity='.55'/%3E%3C/svg%3E");
}

html[data-holiday="thanksgiving"] .holiday-particle:nth-child(12n + 9) .holiday-art {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50.0 8.0 L53.0 9.3 L54.4 10.5 L55.0 11.8 L55.1 13.1 L54.9 14.3 L54.8 15.6 L55.2 16.9 L56.3 18.1 L58.2 19.4 L60.6 20.7 L63.3 21.9 L65.7 23.2 L67.3 24.5 L67.9 25.7 L67.3 27.0 L65.7 28.3 L63.6 29.5 L61.5 30.8 L60.0 32.1 L59.5 33.3 L60.4 34.6 L62.5 35.9 L65.5 37.1 L68.7 38.4 L71.5 39.7 L73.3 40.9 L73.7 42.2 L72.6 43.5 L70.3 44.7 L67.3 46.0 L64.2 47.3 L61.8 48.5 L60.6 49.8 L60.7 51.1 L62.2 52.3 L64.7 53.6 L67.5 54.9 L69.9 56.1 L71.5 57.4 L71.7 58.7 L70.6 59.9 L68.3 61.2 L65.4 62.5 L62.4 63.7 L59.8 65.0 L58.2 66.3 L57.7 67.5 L58.2 68.8 L59.3 70.1 L60.6 71.3 L61.7 72.6 L62.1 73.9 L61.7 75.1 L60.4 76.4 L58.6 77.7 L56.4 78.9 L54.4 80.2 L52.7 81.5 L51.4 82.7 L50.0 84.0 L50.0 84.0 L48.6 82.7 L47.3 81.5 L45.6 80.2 L43.6 78.9 L41.4 77.7 L39.6 76.4 L38.3 75.1 L37.9 73.9 L38.3 72.6 L39.4 71.3 L40.7 70.1 L41.8 68.8 L42.3 67.5 L41.8 66.3 L40.2 65.0 L37.6 63.7 L34.6 62.5 L31.7 61.2 L29.4 59.9 L28.3 58.7 L28.5 57.4 L30.1 56.1 L32.5 54.9 L35.3 53.6 L37.8 52.3 L39.3 51.1 L39.4 49.8 L38.2 48.5 L35.8 47.3 L32.7 46.0 L29.7 44.7 L27.4 43.5 L26.3 42.2 L26.7 40.9 L28.5 39.7 L31.3 38.4 L34.5 37.1 L37.5 35.9 L39.6 34.6 L40.5 33.3 L40.0 32.1 L38.5 30.8 L36.4 29.5 L34.3 28.3 L32.7 27.0 L32.1 25.7 L32.7 24.5 L34.3 23.2 L36.7 21.9 L39.4 20.7 L41.8 19.4 L43.7 18.1 L44.8 16.9 L45.2 15.6 L45.1 14.3 L44.9 13.1 L45.0 11.8 L45.6 10.5 L47.0 9.3 L50.0 8.0 Z' fill='%2392400e'/%3E%3Cpath d='M50 84 L50 97' stroke='%23451a03' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M50 12 L50 84' stroke='%23451a03' stroke-width='1.8' fill='none' opacity='.55'/%3E%3C/svg%3E");
}

html[data-holiday="thanksgiving"] .holiday-particle:nth-child(12n + 10) .holiday-art {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50.0 4.0 L57.3 20.9 L65.5 15.3 L62.3 31.8 L70.4 37.3 L91.3 35.0 L79.8 46.9 L85.8 53.8 L68.5 57.5 L73.6 68.5 L57.4 61.9 L51.7 59.8 L48.3 59.8 L42.6 61.9 L26.4 68.5 L31.5 57.5 L14.2 53.8 L20.2 46.9 L8.7 35.0 L29.6 37.3 L37.7 31.8 L34.5 15.3 L42.7 20.9 Z' fill='%23ea580c'/%3E%3Cpath d='M50 56 L50 97' stroke='%239a3412' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M50 52 L50 14 M50 52 L76 38 M50 52 L24 38 M50 52 L68 64 M50 52 L32 64' stroke='%239a3412' stroke-width='1.6' stroke-linecap='round' fill='none' opacity='.55'/%3E%3C/svg%3E");
}

html[data-holiday="thanksgiving"] .holiday-particle:nth-child(12n + 11) .holiday-art {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50.0 8.0 L53.0 9.3 L54.4 10.5 L55.0 11.8 L55.1 13.1 L54.9 14.3 L54.8 15.6 L55.2 16.9 L56.3 18.1 L58.2 19.4 L60.6 20.7 L63.3 21.9 L65.7 23.2 L67.3 24.5 L67.9 25.7 L67.3 27.0 L65.7 28.3 L63.6 29.5 L61.5 30.8 L60.0 32.1 L59.5 33.3 L60.4 34.6 L62.5 35.9 L65.5 37.1 L68.7 38.4 L71.5 39.7 L73.3 40.9 L73.7 42.2 L72.6 43.5 L70.3 44.7 L67.3 46.0 L64.2 47.3 L61.8 48.5 L60.6 49.8 L60.7 51.1 L62.2 52.3 L64.7 53.6 L67.5 54.9 L69.9 56.1 L71.5 57.4 L71.7 58.7 L70.6 59.9 L68.3 61.2 L65.4 62.5 L62.4 63.7 L59.8 65.0 L58.2 66.3 L57.7 67.5 L58.2 68.8 L59.3 70.1 L60.6 71.3 L61.7 72.6 L62.1 73.9 L61.7 75.1 L60.4 76.4 L58.6 77.7 L56.4 78.9 L54.4 80.2 L52.7 81.5 L51.4 82.7 L50.0 84.0 L50.0 84.0 L48.6 82.7 L47.3 81.5 L45.6 80.2 L43.6 78.9 L41.4 77.7 L39.6 76.4 L38.3 75.1 L37.9 73.9 L38.3 72.6 L39.4 71.3 L40.7 70.1 L41.8 68.8 L42.3 67.5 L41.8 66.3 L40.2 65.0 L37.6 63.7 L34.6 62.5 L31.7 61.2 L29.4 59.9 L28.3 58.7 L28.5 57.4 L30.1 56.1 L32.5 54.9 L35.3 53.6 L37.8 52.3 L39.3 51.1 L39.4 49.8 L38.2 48.5 L35.8 47.3 L32.7 46.0 L29.7 44.7 L27.4 43.5 L26.3 42.2 L26.7 40.9 L28.5 39.7 L31.3 38.4 L34.5 37.1 L37.5 35.9 L39.6 34.6 L40.5 33.3 L40.0 32.1 L38.5 30.8 L36.4 29.5 L34.3 28.3 L32.7 27.0 L32.1 25.7 L32.7 24.5 L34.3 23.2 L36.7 21.9 L39.4 20.7 L41.8 19.4 L43.7 18.1 L44.8 16.9 L45.2 15.6 L45.1 14.3 L44.9 13.1 L45.0 11.8 L45.6 10.5 L47.0 9.3 L50.0 8.0 Z' fill='%23d97706'/%3E%3Cpath d='M50 84 L50 97' stroke='%2392400e' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M50 12 L50 84' stroke='%2392400e' stroke-width='1.8' fill='none' opacity='.55'/%3E%3C/svg%3E");
}

html[data-holiday="thanksgiving"] .holiday-particle:nth-child(12n + 12) .holiday-art {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 8 C78 26 80 62 50 86 C20 62 22 26 50 8 Z' fill='%2392400e'/%3E%3Cpath d='M50 86 L50 97' stroke='%23451a03' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M50 14 L50 84 M50 34 L66 26 M50 34 L34 26 M50 50 L70 42 M50 50 L30 42 M50 66 L66 58 M50 66 L34 58' stroke='%23451a03' stroke-width='1.5' stroke-linecap='round' fill='none' opacity='.55'/%3E%3C/svg%3E");
}

/* ---- Harvest clusters: hang in the top corners, just under the navbar (and move with it) ---- */
html[data-holiday="thanksgiving"] .holiday-decor-harvest-left,
html[data-holiday="thanksgiving"] .holiday-decor-harvest-right {
    top: var(--holiday-top);
    width: clamp(56px, 6.5vw, 84px);
    aspect-ratio: 1;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 140'%3E%3Cg transform='translate(23.6 23.6) rotate(135) scale(0.8) translate(-50 -97)'%3E%3Cpath d='M50.0 4.0 L57.3 20.9 L65.5 15.3 L62.3 31.8 L70.4 37.3 L91.3 35.0 L79.8 46.9 L85.8 53.8 L68.5 57.5 L73.6 68.5 L57.4 61.9 L51.7 59.8 L48.3 59.8 L42.6 61.9 L26.4 68.5 L31.5 57.5 L14.2 53.8 L20.2 46.9 L8.7 35.0 L29.6 37.3 L37.7 31.8 L34.5 15.3 L42.7 20.9 Z' fill='%23b91c1c'/%3E%3Cpath d='M50 30 L50 97' stroke='%237f1d1d' stroke-width='3' stroke-linecap='round'/%3E%3C/g%3E%3Cg transform='translate(23.9 9.7) rotate(96) scale(0.7) translate(-50 -97)'%3E%3Cpath d='M50.0 8.0 L53.0 9.3 L54.4 10.5 L55.0 11.8 L55.1 13.1 L54.9 14.3 L54.8 15.6 L55.2 16.9 L56.3 18.1 L58.2 19.4 L60.6 20.7 L63.3 21.9 L65.7 23.2 L67.3 24.5 L67.9 25.7 L67.3 27.0 L65.7 28.3 L63.6 29.5 L61.5 30.8 L60.0 32.1 L59.5 33.3 L60.4 34.6 L62.5 35.9 L65.5 37.1 L68.7 38.4 L71.5 39.7 L73.3 40.9 L73.7 42.2 L72.6 43.5 L70.3 44.7 L67.3 46.0 L64.2 47.3 L61.8 48.5 L60.6 49.8 L60.7 51.1 L62.2 52.3 L64.7 53.6 L67.5 54.9 L69.9 56.1 L71.5 57.4 L71.7 58.7 L70.6 59.9 L68.3 61.2 L65.4 62.5 L62.4 63.7 L59.8 65.0 L58.2 66.3 L57.7 67.5 L58.2 68.8 L59.3 70.1 L60.6 71.3 L61.7 72.6 L62.1 73.9 L61.7 75.1 L60.4 76.4 L58.6 77.7 L56.4 78.9 L54.4 80.2 L52.7 81.5 L51.4 82.7 L50.0 84.0 L50.0 84.0 L48.6 82.7 L47.3 81.5 L45.6 80.2 L43.6 78.9 L41.4 77.7 L39.6 76.4 L38.3 75.1 L37.9 73.9 L38.3 72.6 L39.4 71.3 L40.7 70.1 L41.8 68.8 L42.3 67.5 L41.8 66.3 L40.2 65.0 L37.6 63.7 L34.6 62.5 L31.7 61.2 L29.4 59.9 L28.3 58.7 L28.5 57.4 L30.1 56.1 L32.5 54.9 L35.3 53.6 L37.8 52.3 L39.3 51.1 L39.4 49.8 L38.2 48.5 L35.8 47.3 L32.7 46.0 L29.7 44.7 L27.4 43.5 L26.3 42.2 L26.7 40.9 L28.5 39.7 L31.3 38.4 L34.5 37.1 L37.5 35.9 L39.6 34.6 L40.5 33.3 L40.0 32.1 L38.5 30.8 L36.4 29.5 L34.3 28.3 L32.7 27.0 L32.1 25.7 L32.7 24.5 L34.3 23.2 L36.7 21.9 L39.4 20.7 L41.8 19.4 L43.7 18.1 L44.8 16.9 L45.2 15.6 L45.1 14.3 L44.9 13.1 L45.0 11.8 L45.6 10.5 L47.0 9.3 L50.0 8.0 Z' fill='%2392400e'/%3E%3Cpath d='M50 30 L50 97' stroke='%23451a03' stroke-width='3' stroke-linecap='round'/%3E%3C/g%3E%3Cg transform='translate(9.7 23.9) rotate(174) scale(0.7) translate(-50 -97)'%3E%3Cpath d='M50 8 C78 26 80 62 50 86 C20 62 22 26 50 8 Z' fill='%23d97706'/%3E%3Cpath d='M50 30 L50 97' stroke='%2392400e' stroke-width='3' stroke-linecap='round'/%3E%3C/g%3E%3Cg transform='translate(20 19) scale(0.8)'%3E%3Cellipse cx='0' cy='0' rx='15' ry='12' fill='%23ea580c'/%3E%3Cellipse cx='-7' cy='0' rx='7' ry='11.5' fill='%23f97316'/%3E%3Cellipse cx='7' cy='0' rx='7' ry='11.5' fill='%23f97316'/%3E%3Cellipse cx='0' cy='0' rx='5' ry='12' fill='%23fb923c'/%3E%3Cpath d='M0 -11 Q2 -17 6 -18' stroke='%233f6212' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3C/g%3E%3C/svg%3E");
    filter: drop-shadow(0 2px 3px rgb(0 0 0 / 0.18));
}

html[data-holiday="thanksgiving"] .holiday-decor-harvest-left {
    left: 0;
}

html[data-holiday="thanksgiving"] .holiday-decor-harvest-right {
    right: 0;
    transform: scaleX(-1);
}

/* ---- Turkey (drawn and choreographed by /public/js/holidays/thanksgiving.mjs) ----
   The script moves it and switches state classes; these animate the parts. All parts rotate or
   scale around their own box (transform-box: fill-box). */
.holiday-turkey {
    left: 0;
    bottom: env(safe-area-inset-bottom, 0px);
    width: clamp(96px, 11vw, 160px);
    aspect-ratio: 160 / 150;
    transform: translateX(-200%);
    filter: drop-shadow(0 4px 6px rgb(0 0 0 / 0.22));
}

.holiday-turkey .tk-svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
    transition: transform 0.2s;
}

.holiday-turkey.is-facing-left .tk-svg {
    transform: scaleX(-1);
}

.holiday-turkey .tk-all,
.holiday-turkey .tk-tail,
.holiday-turkey .tk-leg,
.holiday-turkey .tk-head,
.holiday-turkey .tk-body,
.holiday-turkey .tk-wing,
.holiday-turkey .tk-shades {
    transform-box: fill-box;
}

/* Tail: folded back into a tuft while walking; fans up when showing off */
.holiday-turkey .tk-tail {
    transform-origin: 50% 92%;
    transform: rotate(-42deg) scale(0.42, 0.5);
    transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.holiday-turkey.is-showing .tk-tail,
.holiday-turkey.is-dancing .tk-tail {
    transform: none;
}

/* Puffed-up chest while showing off */
.holiday-turkey .tk-body {
    transform-origin: 50% 60%;
    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.holiday-turkey.is-showing .tk-body {
    transform: scale(1.07);
}

/* Shades drop on from above */
.holiday-turkey .tk-shades {
    opacity: 0;
    transform: translateY(-14px);
    transition:
        transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1),
        opacity 0.2s;
}

.holiday-turkey.has-shades .tk-shades {
    opacity: 1;
    transform: none;
}

/* Walking: legs step in turn, the head bobs forward with each step, the body waddles */
.holiday-turkey .tk-leg {
    transform-origin: 50% 0%;
}

.holiday-turkey.is-walking .tk-leg-a {
    animation: tk-step 0.5s ease-in-out infinite alternate;
}

.holiday-turkey.is-walking .tk-leg-b {
    animation: tk-step 0.5s ease-in-out infinite alternate-reverse;
}

.holiday-turkey.is-walking .tk-head {
    animation: tk-bob 0.25s ease-in-out infinite alternate;
}

.holiday-turkey.is-walking .tk-all {
    transform-origin: 50% 100%;
    animation: tk-waddle 0.5s ease-in-out infinite alternate;
}

/* Showing off: a quick tail shimmy once the tail is up */
.holiday-turkey.is-showing .tk-all {
    transform-origin: 50% 100%;
    animation: tk-shimmy 0.11s ease-in-out 0.45s 6 alternate;
}

/* Dance break: hops side to side, wings flapping, head bopping, tail shaking */
.holiday-turkey.is-dancing .tk-all {
    transform-origin: 50% 100%;
    animation: tk-hop 0.6s ease-in-out infinite;
}

.holiday-turkey.is-dancing .tk-wing {
    transform-origin: 85% 15%;
    animation: tk-flap 0.15s ease-in-out infinite alternate;
}

.holiday-turkey.is-dancing .tk-head {
    animation: tk-bob 0.15s ease-in-out infinite alternate;
}

.holiday-turkey.is-dancing .tk-tail {
    animation: tk-tail-shake 0.3s ease-in-out infinite alternate;
}

.holiday-turkey.is-dancing .tk-leg-a {
    animation: tk-step 0.3s ease-in-out infinite alternate;
}

.holiday-turkey.is-dancing .tk-leg-b {
    animation: tk-step 0.3s ease-in-out infinite alternate-reverse;
}

@keyframes tk-step {
    from {
        transform: rotate(-24deg);
    }
    to {
        transform: rotate(24deg);
    }
}

@keyframes tk-bob {
    from {
        transform: translate(-3px, 1px);
    }
    to {
        transform: translate(4px, -1.5px);
    }
}

@keyframes tk-waddle {
    from {
        transform: translateY(0) rotate(-2deg);
    }
    to {
        transform: translateY(-3px) rotate(2deg);
    }
}

@keyframes tk-shimmy {
    from {
        transform: rotate(-2.5deg);
    }
    to {
        transform: rotate(2.5deg);
    }
}

@keyframes tk-hop {
    0%,
    50%,
    100% {
        transform: translate(0, 0) rotate(0deg);
    }
    25% {
        transform: translate(-6px, -16px) rotate(-8deg);
    }
    75% {
        transform: translate(6px, -16px) rotate(8deg);
    }
}

@keyframes tk-flap {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(-38deg);
    }
}

@keyframes tk-tail-shake {
    from {
        transform: rotate(-6deg);
    }
    to {
        transform: rotate(6deg);
    }
}
