/* Laurel & Ink (graduation): design motion on top of assets/scenes/scenes.css (generated by src/laurel_ink/gen_sections.py).
   Plain rules = the final/rest state (reduced motion, editor, still render). */

/* the shimmer: a band of light, masked to the wreath's leaves, sweeps across once every 9 s (parked off the leaves at rest) */
.sc-piece.sc-laurel_ink [data-li=shine]{overflow:hidden;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%2280 420 740 740%22%3E%3Cpath d=%22M375.6 1097.5q-3.3-34.5-42.8-37.9q8.4 42.8 42.8 37.9ZM375.6 1097.5q-41.1-13.9-60.8 37.6q48.8 4.1 60.8-37.6ZM349.2 1090.7q-2.9-33.3-40.2-37.9q7 42.4 40.2 37.9ZM349.2 1090.7q-37.5-18.5-63.4 26.9q46.6 11.5 63.4-26.9ZM323.4 1081.8q2.3-36.8-37.6-47.9q.7 47.4 37.6 47.9ZM323.4 1081.8q-40.2-22.7-71 27.2q50.2 14 71-27.2ZM298.7 1070.4q5.8-32.3-28.2-46.3q-4.4 42 28.2 46.3ZM298.7 1070.4q-33.9-23.3-65 18.9q43.3 16 65-18.9ZM275.1 1056.9q6.4-33.9-29.4-48.7q-4.8 43.9 29.4 48.7ZM275.1 1056.9q-33.8-26.7-69.6 13.7q44.4 21.3 69.6-13.7ZM252.6 1041.8q10.9-29.4-19.6-47.8q-10.3 38.2 19.6 47.8ZM252.6 1041.8q-29.5-25.8-63.7 11.2q39.3 19.5 63.7-11.2ZM231.4 1025q14.8-30.2-15.9-53q-14.9 39.6 15.9 53ZM231.4 1025q-29.3-30.1-69 5q40.3 25.6 69-5ZM212.2 1006q18.3-28.6-10.8-54.8q-18.6 37.8 10.8 54.8ZM212.2 1006q-21.8-36.4-68.8-12q33.5 35.4 68.8 12ZM195.4 985q19.3-27.4-6.9-54.8q-21.4 36.9 6.9 54.8ZM195.4 985q-19-37.3-67.3-15.4q30.9 36.2 67.3 15.4ZM180.3 963.1q18.6-24.5-4.5-50.5q-20.9 33 4.5 50.5ZM180.3 963.1q-17.5-34.3-62.2-13q28.7 32 62.2 13ZM165.9 940.7q21.5-22.9 1.5-51.7q-25.3 31.3-1.5 51.7ZM165.9 940.7q-19.1-34.3-63.6-11.6q30.3 32.3 63.6 11.6ZM152.6 917.6q21.2-19.8 4.7-47.5q-25.4 27.3-4.7 47.5ZM152.6 917.6q-14.8-33-57.4-16.1q25.1 32.4 57.4 16.1ZM141.7 893.3q23-19.9 6.5-49.8q-27.5 27.7-6.5 49.8ZM141.7 893.3q-9.3-36.9-56.1-28q19.7 38.9 56.1 28ZM133.8 867.8q24-13.7 14.8-43.1q-29.6 19.8-14.8 43.1ZM133.8 867.8q-1.6-34.5-45.8-33.8q11.5 37 45.8 33.8ZM128.4 841.7q24.4-14.4 13-44.7q-28.5 21-13 44.7ZM128.4 841.7q-3.3-35.2-48.7-32.3q13.6 37.2 48.7 32.3ZM124.5 815.4q24.3-10.7 16.6-40.5q-28.4 16.7-16.6 40.5ZM124.5 815.4q-.7-33.2-42.4-34.5q9.3 36.8 42.4 34.5ZM122.7 788.8q27.8-7.8 25.1-40.4q-34.2 13-25.1 40.4ZM122.7 788.8q1-36.1-44.1-39.8q8 40.5 44.1 39.8ZM124.1 762.1q25.3-4.6 24.6-34.4q-30.5 9.4-24.6 34.4ZM124.1 762.1q9.6-30.6-28.4-44.6q-2.7 36.5 28.4 44.6ZM129.1 735.9q26.7-3.1 28.1-34.2q-32.5 7.7-28.1 34.2ZM129.1 735.9q10.1-32.1-29.4-47q-3.2 38.4 29.4 47ZM136.4 710.4q27.5 1 34.3-29.6q-34.6 2.1-34.3 29.6ZM136.4 710.4q14.7-31.1-23.8-51.4q-7.9 38.2 23.8 51.4ZM144.8 685.3q26 .9 32.6-27.8q-32.9 1.8-32.6 27.8ZM144.8 685.3q14.1-29.3-23.2-48.3q-6.7 35.6 23.2 48.3ZM154.3 660.5q25 2 32.8-25.1q-32 .1-32.8 25.1ZM154.3 660.5q17.1-26.2-14.5-49.4q-12.5 33.6 14.5 49.4ZM165.9 636.5q25.5 5 36.5-22.3q-32.7-3.3-36.5 22.3ZM165.9 636.5q21.4-24.4-8-52.7q-17.3 32.6 8 52.7ZM180.1 613.9q23.6 5.6 35-19.3q-30.5-4.5-35 19.3ZM180.1 613.9q19.8-22.9-6.8-49.4q-17 30.7 6.8 49.4ZM196.3 592.6q22.3 8.5 36.7-14.3q-29.2-8.4-36.7 14.3ZM196.3 592.6q22.2-19.9-2.2-49.1q-18.7 27.9 2.2 49.1ZM214 572.3q22 8.7 36-14.7q-28.3-7.6-36 14.7ZM214 572.3q22.2-19.5-2.3-48.7q-18.2 27.5 2.3 48.7ZM233.2 553.4q18.9 10.8 35-7.9q-25.1-11.5-35 7.9ZM233.2 553.4q22.9-14.7 6-44.4q-21.7 22.2-6 44.4ZM254.3 536.4q17.6 12.4 35.1-4.4q-23.5-13.6-35.1 4.4ZM254.3 536.4q24-11.9 10.7-42.8q-23.7 19.4-10.7 42.8ZM277.1 521.7q17.4 13.7 36.4-2.6q-23.5-15.4-36.4 2.6ZM277.1 521.7q25.1-11.8 12-43.9q-24.9 19.5-12 43.9ZM301.1 509q13.6 15 33.2 2.6q-18.8-16.8-33.2-2.6ZM301.1 509q24.4-6.8 17.3-37.9q-25.2 13.9-17.3 37.9ZM338.7 493.1q21.7 9.7 37.4-14.3q-27.7-7.4-37.4 14.3ZM524.5 1097.9q16.6 42.8 68.1 32.8q-26.1-51.3-68.1-32.8ZM524.5 1097.9q36.2 6.1 45.3-40.1q-41 3.7-45.3 40.1ZM550.8 1090.8q14.4 41.4 64.1 33.1q-23.4-49.4-64.1-33.1ZM550.8 1090.8q35 2.4 39.8-42q-39 6.9-39.8 42ZM576.3 1081.1q21.9 39.9 71.3 23.1q-32.4-46.8-71.3-23.1ZM576.3 1081.1q36.4 0 38.5-46.1q-40.2 9.7-38.5 46.1ZM600.7 1069.2q20.5 35.8 64.5 21.6q-29.7-43.8-64.5-21.6ZM600.7 1069.2q32.9-3 31.5-44.3q-36 11.6-31.5 44.3ZM624.1 1055.6q25.2 35.8 70.4 16.3q-35.8-43.2-70.4-16.3ZM624.1 1055.6q34.5-6.1 29.7-49.5q-37.4 15.3-29.7 49.5ZM646.6 1040.6q24.4 32.3 65.8 11.2q-34.7-37.1-65.8-11.2ZM646.6 1040.6q31.5-7.5 23.9-47.7q-33 16.6-23.9 47.7ZM668 1024.3q28.8 28.5 66.8 3.8q-39.7-33.9-66.8-3.8ZM668 1024.3q31.1-9.2 22.5-48.4q-33.1 17.7-22.5 48.4ZM687.9 1006.1q30.5 29.6 70 3.5q-41.9-35.3-70-3.5ZM687.9 1006.1q31.1-13.7 14.4-54.1q-29.5 23.7-14.4 54.1ZM706 986.1q35.4 22 67.7-12q-47.4-24.4-67.7 12ZM706 986.1q28.2-17.8 6.9-54.5q-26 27.2-6.9 54.5ZM722 964.6q34.7 18 62-17.4q-45.6-18.1-62 17.4ZM722 964.6q26.2-17.1 7.3-51q-25.6 25.6-7.3 51ZM736.2 941.9q35.7 15.2 60.6-20.5q-47.1-15.9-60.6 20.5ZM736.2 941.9q25.1-18.3 2.4-51.2q-21.8 27-2.4 51.2ZM748.6 918.2q35 16.3 61.1-18.1q-46.4-17.6-61.1 18.1ZM748.6 918.2q21.3-22.5-6-50.6q-17.3 30.4 6 50.6ZM759 893.5q33.3 10.5 51.6-25.1q-42.6-8.6-51.6 25.1ZM759 893.5q18.7-20.7-6.8-45.5q-14.8 27.8 6.8 45.5ZM766.6 867.9q36.2 4.9 50.2-33.5q-47-2.9-50.2 33.5ZM766.6 867.9q16-24.5-13.6-46.2q-11.6 31.3 13.6 46.2ZM771.1 841.7q34.6 3.4 45.7-34.5q-43.8-.2-45.7 34.5ZM771.1 841.7q12-25.1-18.6-41.8q-6.9 30.9 18.6 41.8ZM773 815.2q33.8-1.5 40.1-38.9q-43.1 5.2-40.1 38.9ZM773 815.2q11.5-24.6-19.5-40.2q-5.5 29.9 19.5 40.2ZM773.1 788.8q36.2-1.7 42.7-41.9q-46.1 5.8-42.7 41.9ZM773.1 788.8q11.4-26.7-21.9-42.5q-5.3 32.3 21.9 42.5ZM772 762.5q34.5-7.8 32.6-48.2q-41.9 14.1-32.6 48.2ZM772 762.5q9.2-26.8-24.1-39.9q-3 32 24.1 39.9ZM769.7 736.1q32.2-6.8 32.1-43.7q-40.4 11.9-32.1 43.7ZM769.7 736.1q7.8-25.1-22.6-36.9q-2.9 30.3 22.6 36.9ZM765.3 709.9q29.1-11.1 21.8-46.3q-34.2 17.8-21.8 46.3ZM765.3 709.9q2.2-24.8-29.5-28.5q4.7 27.5 29.5 28.5ZM758.1 684.2q27.7-12.2 19.5-45.9q-33 18.8-19.5 45.9ZM758.1 684.2q1.2-24.2-29.1-27.4q4.8 27.3 29.1 27.4ZM747.8 659.5q27.8-15.6 15.9-50q-32.8 23-15.9 50ZM747.8 659.5q-1.1-25.4-33.1-25.7q7.8 28 33.1 25.7ZM735.1 635.9q24-16.7 10.9-46.9q-28.7 23.8-10.9 46.9ZM735.1 635.9q-3.7-23-32.7-20.3q9.8 25.2 32.7 20.3ZM720.5 613.5q21.7-19 5.3-47.2q-25.3 26.4-5.3 47.2ZM720.5 613.5q-6.5-22.1-34.8-15.4q13 22.9 34.8 15.4ZM704.2 592.2q22.2-20.8 3.6-50q-25.4 28.7-3.6 50ZM704.2 592.2q-7.5-23.2-37.2-15.1q14.4 23.6 37.2 15.1ZM686.1 572.2q18.9-22.6-1.7-48.5q-21.7 30.7 1.7 48.5ZM686.1 572.2q-9.3-21.6-37-11.5q15.9 21.9 37 11.5ZM666.4 553.9q17.1-22.4-5.1-46.1q-18.1 30 5.1 46.1ZM666.4 553.9q-10.8-19.9-36.4-7.6q17.1 19.2 36.4 7.6ZM645 537.3q16.5-23.4-6.4-46.8q-17.8 31.4 6.4 46.8ZM645 537.3q-13.6-18.4-37.8-1.7q20 16.2 37.8 1.7ZM622.4 522.5q11.5-23.3-12.9-40.8q-11 30.4 12.9 40.8ZM622.4 522.5q-13.4-15.9-34.3 .4q19 13.7 34.3-.4ZM598.7 509.3q11.7-24.8-13.1-43.2q-12.1 32.7 13.1 43.2ZM598.7 509.3q-15.1-15.8-36 2.5q20.9 13.4 36-2.5ZM561.3 493.1q-9.7-21.7-37.3-14.3q15.6 23.9 37.3 14.3Z%22 fill=%22white%22/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%2280 420 740 740%22%3E%3Cpath d=%22M375.6 1097.5q-3.3-34.5-42.8-37.9q8.4 42.8 42.8 37.9ZM375.6 1097.5q-41.1-13.9-60.8 37.6q48.8 4.1 60.8-37.6ZM349.2 1090.7q-2.9-33.3-40.2-37.9q7 42.4 40.2 37.9ZM349.2 1090.7q-37.5-18.5-63.4 26.9q46.6 11.5 63.4-26.9ZM323.4 1081.8q2.3-36.8-37.6-47.9q.7 47.4 37.6 47.9ZM323.4 1081.8q-40.2-22.7-71 27.2q50.2 14 71-27.2ZM298.7 1070.4q5.8-32.3-28.2-46.3q-4.4 42 28.2 46.3ZM298.7 1070.4q-33.9-23.3-65 18.9q43.3 16 65-18.9ZM275.1 1056.9q6.4-33.9-29.4-48.7q-4.8 43.9 29.4 48.7ZM275.1 1056.9q-33.8-26.7-69.6 13.7q44.4 21.3 69.6-13.7ZM252.6 1041.8q10.9-29.4-19.6-47.8q-10.3 38.2 19.6 47.8ZM252.6 1041.8q-29.5-25.8-63.7 11.2q39.3 19.5 63.7-11.2ZM231.4 1025q14.8-30.2-15.9-53q-14.9 39.6 15.9 53ZM231.4 1025q-29.3-30.1-69 5q40.3 25.6 69-5ZM212.2 1006q18.3-28.6-10.8-54.8q-18.6 37.8 10.8 54.8ZM212.2 1006q-21.8-36.4-68.8-12q33.5 35.4 68.8 12ZM195.4 985q19.3-27.4-6.9-54.8q-21.4 36.9 6.9 54.8ZM195.4 985q-19-37.3-67.3-15.4q30.9 36.2 67.3 15.4ZM180.3 963.1q18.6-24.5-4.5-50.5q-20.9 33 4.5 50.5ZM180.3 963.1q-17.5-34.3-62.2-13q28.7 32 62.2 13ZM165.9 940.7q21.5-22.9 1.5-51.7q-25.3 31.3-1.5 51.7ZM165.9 940.7q-19.1-34.3-63.6-11.6q30.3 32.3 63.6 11.6ZM152.6 917.6q21.2-19.8 4.7-47.5q-25.4 27.3-4.7 47.5ZM152.6 917.6q-14.8-33-57.4-16.1q25.1 32.4 57.4 16.1ZM141.7 893.3q23-19.9 6.5-49.8q-27.5 27.7-6.5 49.8ZM141.7 893.3q-9.3-36.9-56.1-28q19.7 38.9 56.1 28ZM133.8 867.8q24-13.7 14.8-43.1q-29.6 19.8-14.8 43.1ZM133.8 867.8q-1.6-34.5-45.8-33.8q11.5 37 45.8 33.8ZM128.4 841.7q24.4-14.4 13-44.7q-28.5 21-13 44.7ZM128.4 841.7q-3.3-35.2-48.7-32.3q13.6 37.2 48.7 32.3ZM124.5 815.4q24.3-10.7 16.6-40.5q-28.4 16.7-16.6 40.5ZM124.5 815.4q-.7-33.2-42.4-34.5q9.3 36.8 42.4 34.5ZM122.7 788.8q27.8-7.8 25.1-40.4q-34.2 13-25.1 40.4ZM122.7 788.8q1-36.1-44.1-39.8q8 40.5 44.1 39.8ZM124.1 762.1q25.3-4.6 24.6-34.4q-30.5 9.4-24.6 34.4ZM124.1 762.1q9.6-30.6-28.4-44.6q-2.7 36.5 28.4 44.6ZM129.1 735.9q26.7-3.1 28.1-34.2q-32.5 7.7-28.1 34.2ZM129.1 735.9q10.1-32.1-29.4-47q-3.2 38.4 29.4 47ZM136.4 710.4q27.5 1 34.3-29.6q-34.6 2.1-34.3 29.6ZM136.4 710.4q14.7-31.1-23.8-51.4q-7.9 38.2 23.8 51.4ZM144.8 685.3q26 .9 32.6-27.8q-32.9 1.8-32.6 27.8ZM144.8 685.3q14.1-29.3-23.2-48.3q-6.7 35.6 23.2 48.3ZM154.3 660.5q25 2 32.8-25.1q-32 .1-32.8 25.1ZM154.3 660.5q17.1-26.2-14.5-49.4q-12.5 33.6 14.5 49.4ZM165.9 636.5q25.5 5 36.5-22.3q-32.7-3.3-36.5 22.3ZM165.9 636.5q21.4-24.4-8-52.7q-17.3 32.6 8 52.7ZM180.1 613.9q23.6 5.6 35-19.3q-30.5-4.5-35 19.3ZM180.1 613.9q19.8-22.9-6.8-49.4q-17 30.7 6.8 49.4ZM196.3 592.6q22.3 8.5 36.7-14.3q-29.2-8.4-36.7 14.3ZM196.3 592.6q22.2-19.9-2.2-49.1q-18.7 27.9 2.2 49.1ZM214 572.3q22 8.7 36-14.7q-28.3-7.6-36 14.7ZM214 572.3q22.2-19.5-2.3-48.7q-18.2 27.5 2.3 48.7ZM233.2 553.4q18.9 10.8 35-7.9q-25.1-11.5-35 7.9ZM233.2 553.4q22.9-14.7 6-44.4q-21.7 22.2-6 44.4ZM254.3 536.4q17.6 12.4 35.1-4.4q-23.5-13.6-35.1 4.4ZM254.3 536.4q24-11.9 10.7-42.8q-23.7 19.4-10.7 42.8ZM277.1 521.7q17.4 13.7 36.4-2.6q-23.5-15.4-36.4 2.6ZM277.1 521.7q25.1-11.8 12-43.9q-24.9 19.5-12 43.9ZM301.1 509q13.6 15 33.2 2.6q-18.8-16.8-33.2-2.6ZM301.1 509q24.4-6.8 17.3-37.9q-25.2 13.9-17.3 37.9ZM338.7 493.1q21.7 9.7 37.4-14.3q-27.7-7.4-37.4 14.3ZM524.5 1097.9q16.6 42.8 68.1 32.8q-26.1-51.3-68.1-32.8ZM524.5 1097.9q36.2 6.1 45.3-40.1q-41 3.7-45.3 40.1ZM550.8 1090.8q14.4 41.4 64.1 33.1q-23.4-49.4-64.1-33.1ZM550.8 1090.8q35 2.4 39.8-42q-39 6.9-39.8 42ZM576.3 1081.1q21.9 39.9 71.3 23.1q-32.4-46.8-71.3-23.1ZM576.3 1081.1q36.4 0 38.5-46.1q-40.2 9.7-38.5 46.1ZM600.7 1069.2q20.5 35.8 64.5 21.6q-29.7-43.8-64.5-21.6ZM600.7 1069.2q32.9-3 31.5-44.3q-36 11.6-31.5 44.3ZM624.1 1055.6q25.2 35.8 70.4 16.3q-35.8-43.2-70.4-16.3ZM624.1 1055.6q34.5-6.1 29.7-49.5q-37.4 15.3-29.7 49.5ZM646.6 1040.6q24.4 32.3 65.8 11.2q-34.7-37.1-65.8-11.2ZM646.6 1040.6q31.5-7.5 23.9-47.7q-33 16.6-23.9 47.7ZM668 1024.3q28.8 28.5 66.8 3.8q-39.7-33.9-66.8-3.8ZM668 1024.3q31.1-9.2 22.5-48.4q-33.1 17.7-22.5 48.4ZM687.9 1006.1q30.5 29.6 70 3.5q-41.9-35.3-70-3.5ZM687.9 1006.1q31.1-13.7 14.4-54.1q-29.5 23.7-14.4 54.1ZM706 986.1q35.4 22 67.7-12q-47.4-24.4-67.7 12ZM706 986.1q28.2-17.8 6.9-54.5q-26 27.2-6.9 54.5ZM722 964.6q34.7 18 62-17.4q-45.6-18.1-62 17.4ZM722 964.6q26.2-17.1 7.3-51q-25.6 25.6-7.3 51ZM736.2 941.9q35.7 15.2 60.6-20.5q-47.1-15.9-60.6 20.5ZM736.2 941.9q25.1-18.3 2.4-51.2q-21.8 27-2.4 51.2ZM748.6 918.2q35 16.3 61.1-18.1q-46.4-17.6-61.1 18.1ZM748.6 918.2q21.3-22.5-6-50.6q-17.3 30.4 6 50.6ZM759 893.5q33.3 10.5 51.6-25.1q-42.6-8.6-51.6 25.1ZM759 893.5q18.7-20.7-6.8-45.5q-14.8 27.8 6.8 45.5ZM766.6 867.9q36.2 4.9 50.2-33.5q-47-2.9-50.2 33.5ZM766.6 867.9q16-24.5-13.6-46.2q-11.6 31.3 13.6 46.2ZM771.1 841.7q34.6 3.4 45.7-34.5q-43.8-.2-45.7 34.5ZM771.1 841.7q12-25.1-18.6-41.8q-6.9 30.9 18.6 41.8ZM773 815.2q33.8-1.5 40.1-38.9q-43.1 5.2-40.1 38.9ZM773 815.2q11.5-24.6-19.5-40.2q-5.5 29.9 19.5 40.2ZM773.1 788.8q36.2-1.7 42.7-41.9q-46.1 5.8-42.7 41.9ZM773.1 788.8q11.4-26.7-21.9-42.5q-5.3 32.3 21.9 42.5ZM772 762.5q34.5-7.8 32.6-48.2q-41.9 14.1-32.6 48.2ZM772 762.5q9.2-26.8-24.1-39.9q-3 32 24.1 39.9ZM769.7 736.1q32.2-6.8 32.1-43.7q-40.4 11.9-32.1 43.7ZM769.7 736.1q7.8-25.1-22.6-36.9q-2.9 30.3 22.6 36.9ZM765.3 709.9q29.1-11.1 21.8-46.3q-34.2 17.8-21.8 46.3ZM765.3 709.9q2.2-24.8-29.5-28.5q4.7 27.5 29.5 28.5ZM758.1 684.2q27.7-12.2 19.5-45.9q-33 18.8-19.5 45.9ZM758.1 684.2q1.2-24.2-29.1-27.4q4.8 27.3 29.1 27.4ZM747.8 659.5q27.8-15.6 15.9-50q-32.8 23-15.9 50ZM747.8 659.5q-1.1-25.4-33.1-25.7q7.8 28 33.1 25.7ZM735.1 635.9q24-16.7 10.9-46.9q-28.7 23.8-10.9 46.9ZM735.1 635.9q-3.7-23-32.7-20.3q9.8 25.2 32.7 20.3ZM720.5 613.5q21.7-19 5.3-47.2q-25.3 26.4-5.3 47.2ZM720.5 613.5q-6.5-22.1-34.8-15.4q13 22.9 34.8 15.4ZM704.2 592.2q22.2-20.8 3.6-50q-25.4 28.7-3.6 50ZM704.2 592.2q-7.5-23.2-37.2-15.1q14.4 23.6 37.2 15.1ZM686.1 572.2q18.9-22.6-1.7-48.5q-21.7 30.7 1.7 48.5ZM686.1 572.2q-9.3-21.6-37-11.5q15.9 21.9 37 11.5ZM666.4 553.9q17.1-22.4-5.1-46.1q-18.1 30 5.1 46.1ZM666.4 553.9q-10.8-19.9-36.4-7.6q17.1 19.2 36.4 7.6ZM645 537.3q16.5-23.4-6.4-46.8q-17.8 31.4 6.4 46.8ZM645 537.3q-13.6-18.4-37.8-1.7q20 16.2 37.8 1.7ZM622.4 522.5q11.5-23.3-12.9-40.8q-11 30.4 12.9 40.8ZM622.4 522.5q-13.4-15.9-34.3 .4q19 13.7 34.3-.4ZM598.7 509.3q11.7-24.8-13.1-43.2q-12.1 32.7 13.1 43.2ZM598.7 509.3q-15.1-15.8-36 2.5q20.9 13.4 36-2.5ZM561.3 493.1q-9.7-21.7-37.3-14.3q15.6 23.9 37.3 14.3Z%22 fill=%22white%22/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
.sc-js .sc-piece.sc-laurel_ink.sc-in [data-a=drift][data-li=band]{animation:sc-li-sweep 9s linear 1.6s infinite}
@keyframes sc-li-sweep{
  0%{transform:none;animation-timing-function:cubic-bezier(.45,0,.35,1)}
  18%{transform:translateX(680%)}
  100%{transform:translateX(680%)}}

/* the drawing keeps the wreath's inside clear for the text: a small soft glow behind the words instead of the
   page's wide white wash (which bleached the gold); the wreath frames the kicker, so its side rules go */
body.sc-laurel_ink .sc-hero + .sa-hero-overlay{background:radial-gradient(ellipse 34% 17% at 50% 49%,rgba(255,251,242,.6),rgba(255,251,242,0))!important}
body.sc-laurel_ink .sa-hero:has(.sc-hero) #saHeroOverlay .sa-hero-kicker{letter-spacing:.18em!important}
body.sc-laurel_ink .sa-hero:has(.sc-hero) #saHeroOverlay .sa-hero-kicker:before,body.sc-laurel_ink .sa-hero:has(.sc-hero) #saHeroOverlay .sa-hero-kicker:after{display:none}
/* the title wraps inside the wreath's opening (about 56 % of the stage's width; the stage covers the hero like the still) */
body.sc-laurel_ink .sa-hero:has(.sc-hero) #saHeroOverlay .sa-hero-title{max-width:max(56vw,31.5vh);margin-inline:auto}
/* a long title makes the block taller: sit it a little lower, where the wreath opens widest for the kicker */
body.sc-laurel_ink .sa-hero:has(.sc-hero) #saHeroOverlay.es-title-long{top:2vh}

/* ---- programme: a ruled syllabus; a pen underlines each row as it enters ---- */
body.sc-laurel_ink .sc-p-program-head{width:min(80%,300px);margin:0 auto 4px}
body.sc-laurel_ink #program .sa-prog-mobile-wrap{--node:19px}
[dir=rtl] body.sc-laurel_ink #program .sa-prog-mobile-wrap{--node:24px}
/* the margin rule: a fine burgundy double line down the stops */
body.sc-laurel_ink #program .sa-prog-line-v{width:5px!important;background:none!important;border-inline:1px solid var(--cz-divider,rgba(122,35,49,.62));opacity:1!important;
  inset-inline-start:calc(var(--node) - 2.5px)!important;inset-inline-end:auto!important}
/* the stops: parchment seals with a gold ring */
body.sc-laurel_ink #program .sa-prog-row>div:first-child{background:var(--cz-section-bg,#FFFBF2)!important;border:1.5px solid var(--cz-divider,#C29A45)!important;box-shadow:0 0 0 3px var(--cz-page-bg,#F4ECDD),0 0 0 4px rgba(29,43,68,.14)!important;color:var(--cz-title,#1D2B44)!important}
/* the ruled line under every row */
body.sc-laurel_ink #program .sa-prog-row::before{content:"";position:absolute;inset-inline:calc(var(--node) + 26px) 0;bottom:-16px;height:1px;background:var(--cz-divider,rgba(91,107,128,.38));transform-origin:0 50%;pointer-events:none}
[dir=rtl] body.sc-laurel_ink #program .sa-prog-row::before{transform-origin:100% 50%}
/* the title's gold underline and the pen that draws it */
body.sc-laurel_ink #program .sa-prog-row h3{position:relative}
body.sc-laurel_ink #program .sa-prog-row h3::after{content:"";position:absolute;inset-inline:0 -2px;bottom:-5px;height:7px;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 200 8%22 preserveAspectRatio=%22none%22%3E%3Cpath d=%22M1 5.2C30 3.6 60 4.4 96 3.9S160 2.6 199 4.1%22 fill=%22none%22 stroke=%22%23C29A45%22 stroke-width=%221.9%22 stroke-linecap=%22round%22 vector-effect=%22non-scaling-stroke%22/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;pointer-events:none}
body.sc-laurel_ink #program .sa-prog-row h3::before{content:"";position:absolute;inset-inline:0;bottom:-6px;height:21px;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 26 26%22%3E%3Cpath d=%22M1 25L4.2 17.4L8.6 21.8Z%22 fill=%22%23C29A45%22 stroke=%22%231D2B44%22 stroke-width=%22.8%22 stroke-linejoin=%22round%22/%3E%3Cpath d=%22M4.2 17.4L18.6 3A3 3 0 0 1 23 7.4L8.6 21.8Z%22 fill=%22%231D2B44%22/%3E%3Cpath d=%22M15.6 6L20 10.4%22 stroke=%22%23C29A45%22 stroke-width=%221.4%22/%3E%3Cpath d=%22M6.8 18.6L19.4 6%22 stroke=%22%234A5E85%22 stroke-width=%22.9%22 stroke-linecap=%22round%22/%3E%3C/svg%3E") 0 100%/21px 21px no-repeat;opacity:0;pointer-events:none}
[dir=rtl] body.sc-laurel_ink #program .sa-prog-row h3::before{transform:scaleX(-1)}
body.sc-laurel_ink #program .sa-prog-time{color:var(--cz-title,#7A2331)!important;letter-spacing:.05em}
/* entrance: the margin rule draws down; per row: the ruled line draws, the row writes in, the pen underlines the title */
.sc-js body.sc-laurel_ink #program:not(.sc-in) .sa-prog-line-v{clip-path:inset(0 0 100% 0)}
.sc-js body.sc-laurel_ink #program.sc-in .sa-prog-line-v{animation:sc-unroll 1.6s cubic-bezier(.45,0,.2,1) .5s both}
.sc-js body.sc-laurel_ink #program .sa-prog-row:not(.sc-in)::before{transform:scaleX(0)}
.sc-js body.sc-laurel_ink #program .sa-prog-row.sc-in::before{animation:sc-li-rule .7s cubic-bezier(.65,0,.35,1) calc(.25s + var(--row,0) * .5s) both}
.sc-js body.sc-laurel_ink #program .sa-prog-row:not(.sc-in)>div:first-child{opacity:0;transform:scale(.8)}
.sc-js body.sc-laurel_ink #program .sa-prog-row.sc-in>div:first-child{animation:sc-li-seal .6s cubic-bezier(.23,1,.32,1) calc(.35s + var(--row,0) * .5s) both}
.sc-js body.sc-laurel_ink #program .sa-prog-row:not(.sc-in)>div:last-child{opacity:0}
.sc-js body.sc-laurel_ink #program .sa-prog-row.sc-in>div:last-child{animation:sc-fade .6s cubic-bezier(.23,1,.32,1) calc(.45s + var(--row,0) * .5s) both}
.sc-js body.sc-laurel_ink #program .sa-prog-row:not(.sc-in) h3::after{clip-path:inset(0 100% 0 0)}
.sc-js[dir=rtl] body.sc-laurel_ink #program .sa-prog-row:not(.sc-in) h3::after{clip-path:inset(0 0 0 100%)}
.sc-js body.sc-laurel_ink #program .sa-prog-row.sc-in h3::after{animation:sc-li-ink .75s cubic-bezier(.45,0,.4,1) calc(.7s + var(--row,0) * .5s) both}
.sc-js[dir=rtl] body.sc-laurel_ink #program .sa-prog-row.sc-in h3::after{animation-name:sc-li-ink-rtl}
.sc-js body.sc-laurel_ink #program .sa-prog-row.sc-in h3::before{animation:sc-li-pen 1.25s cubic-bezier(.45,0,.4,1) calc(.55s + var(--row,0) * .5s) both}
.sc-js[dir=rtl] body.sc-laurel_ink #program .sa-prog-row.sc-in h3::before{animation-name:sc-li-pen-rtl}
@keyframes sc-li-rule{from{transform:scaleX(0)}to{transform:none}}
@keyframes sc-li-seal{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:none}}
@keyframes sc-li-ink{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes sc-li-ink-rtl{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0 0 0 0)}}
@keyframes sc-li-pen{0%{opacity:0;transform:translateX(-4px)}12%{opacity:1;transform:none}72%{opacity:1;transform:translateX(100%)}100%{opacity:0;transform:translateX(100%) translateY(-6px)}}
@keyframes sc-li-pen-rtl{0%{opacity:0;transform:scaleX(-1) translateX(-4px)}12%{opacity:1;transform:scaleX(-1)}72%{opacity:1;transform:scaleX(-1) translateX(100%)}100%{opacity:0;transform:scaleX(-1) translateX(100%) translateY(-6px)}}
body.sc-laurel_ink #program .sa-prog-row:nth-child(1){--row:0}body.sc-laurel_ink #program .sa-prog-row:nth-child(2){--row:1}body.sc-laurel_ink #program .sa-prog-row:nth-child(3){--row:2}body.sc-laurel_ink #program .sa-prog-row:nth-child(4){--row:3}body.sc-laurel_ink #program .sa-prog-row:nth-child(n+5){--row:3}
/* wide screens (the horizontal programme): gold-ringed seals, a burgundy rule */
body.sc-laurel_ink #program .sa-prog-line-h{background:var(--cz-divider,rgba(122,35,49,.5))!important}
body.sc-laurel_ink #program .sa-prog-item>div:nth-child(2){background:var(--cz-section-bg,#FFFBF2)!important;border:1.5px solid var(--cz-divider,#C29A45)!important;color:var(--cz-title,#1D2B44)!important}

/* ================= full build (2026-09-29): every section drawn; plain rules = the final state ================= */
body.sc-laurel_ink{--li-e:cubic-bezier(.23,1,.32,1)}
body.sc-laurel_ink .es-reveal{opacity:1!important;translate:none!important;transition:none!important}
@keyframes sc-li-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes sc-li-fade{from{opacity:0}to{opacity:1}}
/* a rule drawn round a box: top, then the side, the bottom, the other side (the pen eases at each corner) */
@keyframes sc-li-around{
  0%{background-size:0 var(--w),var(--w) 0,0 var(--w),var(--w) 0}
  25%{background-size:100% var(--w),var(--w) 0,0 var(--w),var(--w) 0}
  50%{background-size:100% var(--w),var(--w) 100%,0 var(--w),var(--w) 0}
  75%{background-size:100% var(--w),var(--w) 100%,100% var(--w),var(--w) 0}
  100%{background-size:100% var(--w),var(--w) 100%,100% var(--w),var(--w) 100%}}
.sc-js body.sc-laurel_ink main section[id]:not(.sc-in) :is(h2,h2+p){opacity:0}
.sc-js body.sc-laurel_ink main section[id].sc-in h2{animation:sc-li-rise .8s var(--li-e) .12s both}
.sc-js body.sc-laurel_ink main section[id].sc-in h2+p{animation:sc-li-rise .8s var(--li-e) .26s both}

/* ---- welcome: a certificate card; its gold double rule draws round the letter; a small crest heads it ---- */
body.sc-laurel_ink .es-welcome-inner{padding:16px 22px 30px;background:var(--cz-section-bg,#FFFBF2);box-shadow:0 22px 36px -24px rgba(29,43,68,.35)}
body.sc-laurel_ink .es-welcome-inner::before{content:"";position:absolute;inset:0;pointer-events:none;--w:1.6px;background:linear-gradient(#C29A45,#C29A45),linear-gradient(#C29A45,#C29A45),linear-gradient(#C29A45,#C29A45),linear-gradient(#C29A45,#C29A45);background-repeat:no-repeat;background-position:0 0,100% 0,100% 100%,0 100%;background-size:100% var(--w),var(--w) 100%,100% var(--w),var(--w) 100%}
.sc-js[dir=rtl] body.sc-laurel_ink .es-welcome-inner::before{background-position:100% 0,0 0,0 100%,100% 100%}
.sc-js body.sc-laurel_ink .es-welcome:not(.sc-in) .es-welcome-inner::before{background-size:0 var(--w),var(--w) 0,0 var(--w),var(--w) 0}
.sc-js body.sc-laurel_ink .es-welcome.sc-in .es-welcome-inner::before{animation:sc-li-around 1.8s cubic-bezier(.45,.05,.55,.95) 0.2s both}

body.sc-laurel_ink .es-welcome-inner::after{content:"";position:absolute;inset:6px;pointer-events:none;--w:1px;background:linear-gradient(rgba(29,43,68,.45),rgba(29,43,68,.45)),linear-gradient(rgba(29,43,68,.45),rgba(29,43,68,.45)),linear-gradient(rgba(29,43,68,.45),rgba(29,43,68,.45)),linear-gradient(rgba(29,43,68,.45),rgba(29,43,68,.45));background-repeat:no-repeat;background-position:0 0,100% 0,100% 100%,0 100%;background-size:100% var(--w),var(--w) 100%,100% var(--w),var(--w) 100%}
.sc-js[dir=rtl] body.sc-laurel_ink .es-welcome-inner::after{background-position:100% 0,0 0,0 100%,100% 100%}
.sc-js body.sc-laurel_ink .es-welcome:not(.sc-in) .es-welcome-inner::after{background-size:0 var(--w),var(--w) 0,0 var(--w),var(--w) 0}
.sc-js body.sc-laurel_ink .es-welcome.sc-in .es-welcome-inner::after{animation:sc-li-around 1.8s cubic-bezier(.45,.05,.55,.95) 0.45s both}

body.sc-laurel_ink .sc-p-welcome{width:min(76%,236px);margin:0 auto 4px}
body.sc-laurel_ink .es-welcome .sa-hero-guest{color:var(--cz-title,#8E6A28)!important}
body.sc-laurel_ink #countdown h2{color:var(--cz-title,#A27A2C)!important}
.sc-js body.sc-laurel_ink .es-welcome:not(.sc-in) :is(.sa-hero-guest,.sa-text-root){opacity:0}
.sc-js body.sc-laurel_ink .es-welcome.sc-in .sa-hero-guest{animation:sc-li-rise .8s var(--li-e) .7s both}
.sc-js body.sc-laurel_ink .es-welcome.sc-in .sa-text-root{animation:sc-li-rise .9s var(--li-e) .9s both}

/* ---- countdown: engraved numerals in a certificate frame (its double rule draws round as the board arrives) ---- */
body.sc-laurel_ink .sc-p-countdown{width:min(56%,212px);margin:-8px auto 8px}
body.sc-laurel_ink #countdown .grid{position:relative;padding:20px 10px 14px!important;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M3 21V9Q3 3 9 3H21M7 21V11Q7 7 11 7H21%22 fill=%22none%22 stroke=%22%23C29A45%22 stroke-width=%221.3%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3Cpath d=%22M11 11m-2 0a2 2 0 1 0 4 0a2 2 0 1 0-4 0%22 fill=%22%23C29A45%22/%3E%3C/svg%3E") 8px 8px/16px 16px no-repeat,url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cg transform=%22translate%2824 0%29 scale%28-1 1%29%22%3E%3Cpath d=%22M3 21V9Q3 3 9 3H21M7 21V11Q7 7 11 7H21%22 fill=%22none%22 stroke=%22%23C29A45%22 stroke-width=%221.3%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3Cpath d=%22M11 11m-2 0a2 2 0 1 0 4 0a2 2 0 1 0-4 0%22 fill=%22%23C29A45%22/%3E%3C/g%3E%3C/svg%3E") calc(100% - 8px) 8px/16px 16px no-repeat,
  url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cg transform=%22translate%2824 24%29 scale%28-1 -1%29%22%3E%3Cpath d=%22M3 21V9Q3 3 9 3H21M7 21V11Q7 7 11 7H21%22 fill=%22none%22 stroke=%22%23C29A45%22 stroke-width=%221.3%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3Cpath d=%22M11 11m-2 0a2 2 0 1 0 4 0a2 2 0 1 0-4 0%22 fill=%22%23C29A45%22/%3E%3C/g%3E%3C/svg%3E") calc(100% - 8px) calc(100% - 8px)/16px 16px no-repeat,url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cg transform=%22translate%280 24%29 scale%281 -1%29%22%3E%3Cpath d=%22M3 21V9Q3 3 9 3H21M7 21V11Q7 7 11 7H21%22 fill=%22none%22 stroke=%22%23C29A45%22 stroke-width=%221.3%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3Cpath d=%22M11 11m-2 0a2 2 0 1 0 4 0a2 2 0 1 0-4 0%22 fill=%22%23C29A45%22/%3E%3C/g%3E%3C/svg%3E") 8px calc(100% - 8px)/16px 16px no-repeat,var(--cz-section-bg,#FFFBF2);box-shadow:0 18px 30px -24px rgba(29,43,68,.4)}
body.sc-laurel_ink #countdown .grid::before{content:"";position:absolute;inset:0;pointer-events:none;--w:1.6px;background:linear-gradient(#C29A45,#C29A45),linear-gradient(#C29A45,#C29A45),linear-gradient(#C29A45,#C29A45),linear-gradient(#C29A45,#C29A45);background-repeat:no-repeat;background-position:0 0,100% 0,100% 100%,0 100%;background-size:100% var(--w),var(--w) 100%,100% var(--w),var(--w) 100%}
.sc-js[dir=rtl] body.sc-laurel_ink #countdown .grid::before{background-position:100% 0,0 0,0 100%,100% 100%}
.sc-js body.sc-laurel_ink #countdown .grid:not(.sc-in)::before{background-size:0 var(--w),var(--w) 0,0 var(--w),var(--w) 0}
.sc-js body.sc-laurel_ink #countdown .grid.sc-in::before{animation:sc-li-around 1.5s cubic-bezier(.45,.05,.55,.95) 0s both}

body.sc-laurel_ink #countdown .grid::after{content:"";position:absolute;inset:5px;pointer-events:none;--w:1px;background:linear-gradient(rgba(29,43,68,.4),rgba(29,43,68,.4)),linear-gradient(rgba(29,43,68,.4),rgba(29,43,68,.4)),linear-gradient(rgba(29,43,68,.4),rgba(29,43,68,.4)),linear-gradient(rgba(29,43,68,.4),rgba(29,43,68,.4));background-repeat:no-repeat;background-position:0 0,100% 0,100% 100%,0 100%;background-size:100% var(--w),var(--w) 100%,100% var(--w),var(--w) 100%}
.sc-js[dir=rtl] body.sc-laurel_ink #countdown .grid::after{background-position:100% 0,0 0,0 100%,100% 100%}
.sc-js body.sc-laurel_ink #countdown .grid:not(.sc-in)::after{background-size:0 var(--w),var(--w) 0,0 var(--w),var(--w) 0}
.sc-js body.sc-laurel_ink #countdown .grid.sc-in::after{animation:sc-li-around 1.5s cubic-bezier(.45,.05,.55,.95) 0.25s both}

body.sc-laurel_ink #countdown .grid>div+div{border-inline-start:1px solid var(--cz-divider,rgba(194,154,69,.55))!important}
body.sc-laurel_ink #countdown [id^=cd_]{color:var(--cz-title,#1D2B44)!important;text-shadow:0 1px 0 #fff,0 -1px 0 rgba(29,43,68,.14)}
body.sc-laurel_ink #countdown .grid span:last-child{color:var(--cz-text,#5B6B80)!important}
.sc-js body.sc-laurel_ink #countdown .grid:not(.sc-in)>div{opacity:0}
.sc-js body.sc-laurel_ink #countdown .grid.sc-in>div{animation:sc-li-rise .7s var(--li-e) calc(.5s + var(--k,0) * 120ms) both}
.sc-js body.sc-laurel_ink #countdown .grid.sc-in [id^=cd_].sc-tick{animation:sc-li-tick .45s var(--li-e)}
@keyframes sc-li-tick{from{translate:0 -7%}to{translate:none}}

/* ---- details: a campus hall engraving; the map in a gold double-rule mount ---- */
body.sc-laurel_ink .sc-p-details{width:min(72%,268px);margin:-8px auto 6px}
body.sc-laurel_ink #details .sa-map-rows>div>div:first-child{background:var(--cz-section-bg,#FFFBF2)!important;border:1.5px solid var(--cz-divider,#C29A45)!important;
  box-shadow:0 0 0 3px var(--cz-page-bg,#F4ECDD),0 0 0 4px rgba(29,43,68,.14)!important;color:var(--cz-text,#1D2B44)!important}
body.sc-laurel_ink #details .sa-map-actions a{border-color:var(--cz-divider,rgba(29,43,68,.35))!important;color:var(--cz-text,#1D2B44)!important;background:var(--cz-section-bg,#FFFBF2)!important}
body.sc-laurel_ink #details :is(.sa-map-embed>.sa-gallery-card,.sa-venue-photo){padding:8px!important;background:var(--cz-section-bg,#FFFBF2)!important;border:1px solid #C29A45!important;border-radius:0!important;
  outline:1px solid rgba(29,43,68,.3);outline-offset:-5px;box-shadow:0 16px 28px -20px rgba(29,43,68,.45)!important}
.sc-js body.sc-laurel_ink #details .sa-map-rows>:not(.sc-in){opacity:0}
.sc-js body.sc-laurel_ink #details .sa-map-rows>.sc-in{animation:sc-li-rise .8s var(--li-e) calc(var(--k,0) * 110ms) both}
.sc-js body.sc-laurel_ink #details .sa-map-actions:not(.sc-in)>*{opacity:0}
.sc-js body.sc-laurel_ink #details .sa-map-actions.sc-in>*{animation:sc-li-rise .7s var(--li-e) calc(120ms + var(--k,0) * 90ms) both}
.sc-js body.sc-laurel_ink #details:not(.sc-in) .sa-map-embed,.sc-js body.sc-laurel_ink #details .sa-venue-photo:not(.sc-in){opacity:0}
.sc-js body.sc-laurel_ink #details.sc-in .sa-map-embed,.sc-js body.sc-laurel_ink #details .sa-venue-photo.sc-in{animation:sc-li-rise .9s var(--li-e) .45s both}

/* ---- gallery: a ribbon banner unfurls; each photo is a yearbook frame held by four gold photo corners ---- */
body.sc-laurel_ink .sc-p-gallery{width:min(80%,300px);margin:-6px auto 4px}
.sc-js .sc-piece.sc-laurel_ink:not(.sc-in) [data-li=unfurl]{clip-path:inset(0 50% 0 50%);opacity:0}
.sc-js .sc-piece.sc-laurel_ink.sc-in [data-li=unfurl]{animation:sc-li-unfurl .9s cubic-bezier(.65,0,.35,1) .1s both}
@keyframes sc-li-unfurl{from{clip-path:inset(0 50% 0 50%);opacity:0}8%{opacity:1}to{clip-path:inset(0 0 0 0);opacity:1}}
body.sc-laurel_ink #gallery .grid{gap:20px 16px!important}
body.sc-laurel_ink #gallery .sa-gallery-card{position:relative;padding:9px!important;overflow:visible!important;background:var(--cz-section-bg,#FFFBF2)!important;border:1px solid rgba(194,154,69,.7)!important;
  border-radius:0!important;box-shadow:0 14px 24px -18px rgba(29,43,68,.5)!important;transform:none!important}
body.sc-laurel_ink #gallery .sa-gallery-card img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;outline:1px solid rgba(29,43,68,.22);outline-offset:-4px}
body.sc-laurel_ink #gallery .sa-gallery-card::before{content:"";position:absolute;inset:5px;z-index:1;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 14 14%22%3E%3Cpath d=%22M0 0H14L0 14Z%22 fill=%22%23C29A45%22 stroke=%22%238E6A28%22 stroke-width=%22.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3Cpath d=%22M2 2H9%22 fill=%22none%22 stroke=%22%23F3DE9E%22 stroke-width=%22.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 stroke-opacity=%220.9%22/%3E%3C/svg%3E") 0 0/13px 13px no-repeat,url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 14 14%22%3E%3Cg transform=%22translate%2814 0%29 scale%28-1 1%29%22%3E%3Cpath d=%22M0 0H14L0 14Z%22 fill=%22%23C29A45%22 stroke=%22%238E6A28%22 stroke-width=%22.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3Cpath d=%22M2 2H9%22 fill=%22none%22 stroke=%22%23F3DE9E%22 stroke-width=%22.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 stroke-opacity=%220.9%22/%3E%3C/g%3E%3C/svg%3E") 100% 0/13px 13px no-repeat,url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 14 14%22%3E%3Cg transform=%22translate%2814 14%29 scale%28-1 -1%29%22%3E%3Cpath d=%22M0 0H14L0 14Z%22 fill=%22%23C29A45%22 stroke=%22%238E6A28%22 stroke-width=%22.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3Cpath d=%22M2 2H9%22 fill=%22none%22 stroke=%22%23F3DE9E%22 stroke-width=%22.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 stroke-opacity=%220.9%22/%3E%3C/g%3E%3C/svg%3E") 100% 100%/13px 13px no-repeat,url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 14 14%22%3E%3Cg transform=%22translate%280 14%29 scale%281 -1%29%22%3E%3Cpath d=%22M0 0H14L0 14Z%22 fill=%22%23C29A45%22 stroke=%22%238E6A28%22 stroke-width=%22.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E%3Cpath d=%22M2 2H9%22 fill=%22none%22 stroke=%22%23F3DE9E%22 stroke-width=%22.8%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 stroke-opacity=%220.9%22/%3E%3C/g%3E%3C/svg%3E") 0 100%/13px 13px no-repeat}
.sc-js body.sc-laurel_ink #gallery .sa-gallery-card:not(.sc-in){opacity:0}
.sc-js body.sc-laurel_ink #gallery .sa-gallery-card.sc-in{animation:sc-li-rise .8s var(--li-e) calc(var(--c,0) * 140ms) both}
body.sc-laurel_ink #gallery .sa-gallery-card:nth-child(even){--c:1}
.sc-js body.sc-laurel_ink #gallery .sa-gallery-card:not(.sc-in)::before{opacity:0;transform:scale(1.06)}
.sc-js body.sc-laurel_ink #gallery .sa-gallery-card.sc-in::before{animation:sc-li-corners .5s var(--li-e) calc(var(--c,0) * 140ms + .55s) both}
@keyframes sc-li-corners{from{opacity:0;transform:scale(1.06)}to{opacity:1;transform:none}}

/* ---- dress code: gown-colour swatches drop onto a brass rod and swing still; the note is a parchment label ---- */
body.sc-laurel_ink .sc-p-dress_code{width:min(66%,240px);margin:-8px auto 8px}
.sc-js .sc-piece.sc-laurel_ink:not(.sc-in) [data-li=drop]{opacity:0;transform:translateY(-18px)}
.sc-js .sc-piece.sc-laurel_ink.sc-in [data-li=drop]{animation:sc-li-drop 1.3s cubic-bezier(.3,.7,.4,1) calc(.3s + var(--k,0) * 110ms) both}
@keyframes sc-li-drop{0%{opacity:0;transform:translateY(-18px)}24%{opacity:1;transform:rotate(4.5deg)}48%{transform:rotate(-2.4deg)}72%{transform:rotate(1deg)}100%{opacity:1;transform:none}}
body.sc-laurel_ink :is(#dress_code,#gifts) .sa-text-section__body{position:relative;padding:16px 20px;background:var(--cz-section-bg,#FFFBF2);border:1px solid rgba(194,154,69,.75);
  outline:1px solid rgba(29,43,68,.28);outline-offset:-6px;box-shadow:0 14px 26px -20px rgba(29,43,68,.4)}
.sc-js body.sc-laurel_ink :is(#dress_code,#gifts,#closing) .sa-text-section__body:not(.sc-in){opacity:0}
.sc-js body.sc-laurel_ink :is(#dress_code,#gifts,#closing) .sa-text-section__body.sc-in{animation:sc-li-rise .8s var(--li-e) .1s both}

/* ---- gifts: a parchment envelope sealed with burgundy wax ---- */
body.sc-laurel_ink .sc-p-gifts{width:min(56%,210px);margin:-8px auto 8px}
.sc-js .sc-piece.sc-laurel_ink:not(.sc-in) [data-li=wax]{opacity:0;transform:scale(1.14)}
.sc-js .sc-piece.sc-laurel_ink.sc-in [data-li=wax]{animation:sc-li-wax .7s var(--li-e) 1.15s both}
@keyframes sc-li-wax{from{opacity:0;transform:scale(1.14)}to{opacity:1;transform:none}}

/* ---- rsvp: an admission card. After a "yes" (laurel_ink.js marks #rsvp) its gold seal stamps into place when the card
   comes into view; a guest who already said yes (the page shows "you replied", the yes stays checked) finds it stamped ---- */
body.sc-laurel_ink .sc-p-rsvp{width:min(68%,252px);margin:-8px auto 6px}
.sc-piece.sc-laurel_ink :is([data-li=seal],[data-li=burst]){opacity:0}
body.sc-laurel_ink :is(#rsvp.sc-li-yes,#rsvp:has(.sa-already):has(input[name=rsvp_status][value=yes][checked])) .sc-piece.sc-laurel_ink [data-li=seal]{opacity:1}
.sc-js body.sc-laurel_ink :is(#rsvp.sc-li-yes,#rsvp:has(.sa-already):has(input[name=rsvp_status][value=yes][checked])) .sc-piece.sc-laurel_ink:not(.sc-in) [data-li=seal]{opacity:0}
.sc-js body.sc-laurel_ink #rsvp:has(.sa-already):has(input[name=rsvp_status][value=yes][checked]):not(.sc-li-yes) .sc-piece.sc-laurel_ink.sc-in [data-li=seal]{animation:sc-li-fade .6s ease-out 1.4s both}
.sc-js body.sc-laurel_ink #rsvp.sc-li-yes .sc-piece.sc-laurel_ink.sc-in [data-li=seal]{animation:sc-li-stamp .6s cubic-bezier(.23,1,.32,1) 1.5s both}
.sc-js body.sc-laurel_ink #rsvp.sc-li-yes .sc-piece.sc-laurel_ink.sc-in [data-li=burst]{animation:sc-li-burst .8s ease-out 1.8s both}
@keyframes sc-li-stamp{0%{opacity:0;transform:scale(1.55) rotate(-16deg)}55%{opacity:1;transform:scale(.93) rotate(2deg)}100%{opacity:1;transform:none}}
@keyframes sc-li-burst{0%{opacity:.85;transform:scale(1)}100%{opacity:0;transform:scale(1.8)}}
body.sc-laurel_ink #rsvp form{background:var(--cz-section-bg,#FFFBF2)!important;border:1px solid rgba(194,154,69,.75)!important;outline:1px solid rgba(29,43,68,.25);outline-offset:-7px;
  box-shadow:0 24px 40px -30px rgba(29,43,68,.5)!important}
body.sc-laurel_ink #rsvp form :is(input,textarea,select):focus-visible{outline-color:var(--cz-title,#1D2B44)!important}
.sc-js body.sc-laurel_ink #rsvp form>:not(.sc-in){opacity:0}
.sc-js body.sc-laurel_ink #rsvp form>.sc-in{animation:sc-li-rise .7s var(--li-e) calc(var(--k,0) * 45ms) both}

/* ---- closing: the cap on the books swings its tassel, then three caps are tossed high and settle ---- */
body.sc-laurel_ink #closing>.sc-p-closing{order:0;width:min(82%,310px);margin:0 auto 12px}
.sc-js .sc-piece.sc-laurel_ink:not(.sc-in) [data-li=toss]{opacity:0;transform:translate(var(--fx),var(--fy)) rotate(var(--spin))}
.sc-js .sc-piece.sc-laurel_ink.sc-in [data-li=toss]{animation:sc-li-toss 1.1s linear calc(1s + var(--k,0) * 90ms) both}
@keyframes sc-li-toss{
  0%{opacity:0;transform:translate(var(--fx),var(--fy)) rotate(var(--spin));animation-timing-function:cubic-bezier(.2,.6,.4,1)}
  10%{opacity:1}
  58%{transform:translate(calc(var(--fx) * .12),-20px) rotate(calc(var(--spin) * -.05));animation-timing-function:cubic-bezier(.45,0,.3,1)}
  100%{opacity:1;transform:none}}
.sc-js body.sc-laurel_ink #closing .sa-closing-sign:not(.sc-in){opacity:0}
.sc-js body.sc-laurel_ink #closing .sa-closing-sign.sc-in{-webkit-mask-image:linear-gradient(90deg,#000 45%,transparent 55%);mask-image:linear-gradient(90deg,#000 45%,transparent 55%);
  -webkit-mask-size:240% 100%;mask-size:240% 100%;animation:sc-li-write 1.8s cubic-bezier(.45,0,.3,1) .5s both}
.sc-js[dir=rtl] body.sc-laurel_ink #closing .sa-closing-sign.sc-in{-webkit-mask-image:linear-gradient(270deg,#000 45%,transparent 55%);mask-image:linear-gradient(270deg,#000 45%,transparent 55%);animation-name:sc-li-write-rtl}
@keyframes sc-li-write{from{-webkit-mask-position:100% 0;mask-position:100% 0}to{-webkit-mask-position:0 0;mask-position:0 0}}
@keyframes sc-li-write-rtl{from{-webkit-mask-position:0 0;mask-position:0 0}to{-webkit-mask-position:100% 0;mask-position:100% 0}}
body.sc-laurel_ink :is(#countdown .grid,#details .sa-map-rows,#details .sa-map-actions,#gallery .grid,#rsvp form)>:nth-child(2){--k:1}body.sc-laurel_ink :is(#countdown .grid,#details .sa-map-rows,#details .sa-map-actions,#gallery .grid,#rsvp form)>:nth-child(3){--k:2}body.sc-laurel_ink :is(#countdown .grid,#details .sa-map-rows,#details .sa-map-actions,#gallery .grid,#rsvp form)>:nth-child(4){--k:3}body.sc-laurel_ink :is(#countdown .grid,#details .sa-map-rows,#details .sa-map-actions,#gallery .grid,#rsvp form)>:nth-child(5){--k:4}body.sc-laurel_ink :is(#countdown .grid,#details .sa-map-rows,#details .sa-map-actions,#gallery .grid,#rsvp form)>:nth-child(6){--k:5}body.sc-laurel_ink :is(#countdown .grid,#details .sa-map-rows,#details .sa-map-actions,#gallery .grid,#rsvp form)>:nth-child(7){--k:6}body.sc-laurel_ink :is(#countdown .grid,#details .sa-map-rows,#details .sa-map-actions,#gallery .grid,#rsvp form)>:nth-child(8){--k:7}body.sc-laurel_ink :is(#countdown .grid,#details .sa-map-rows,#details .sa-map-actions,#gallery .grid,#rsvp form)>:nth-child(n+9){--k:8}
