		#printable div.element {
            margin: 0;
        }

        #printable div.element > label {
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            align-items: center;
            white-space: nowrap;
        }

        #printable div.element > label > *:first-child {
            margin-right: 0.2em;
        }

        @media screen and (max-width: 768px) /* Breakpoint: TABLET */ {
            #printable div.element > label {
                white-space: normal;
            }
        }

        #printsection {
            margin-top: 1em;
        }

        #printablesection {
            margin-top: 0.25em;
        }

        #guest_constructor {
            display: none;
        }

        #casual_interactive > div {
            display: flex;
            flex-direction: row;
            align-items: center;
        }

        @media screen and (max-width: 500px) /* Breakpoint: MOBILE */ {
            #casual_interactive > div {
                flex-direction: column;
            }
        }

        /*
			We cannot hide any of the ancestors of the printablesection so
			we play with visibility and absolute positioning instead.

			At the same time, we have to hide as many non-direct ancestors
			of printablesection as we can to avoid multiple pages of blank
			content to be printed.
		*/
        @media print {
            body {
                background-image: none !important;
                background: white !important;
            }

            body * {
                visibility: hidden !important;
            }

            table.st-table, #leftbar, .bc-banner, #navbar, #footer {
                display: none !important;
            }

            #maincontent > * {
                display: none;
            }

            #maincontent > #printsection {
                display: block;
            }

            #printablesection, #printablesection * {
                visibility: visible !important;
            }

            #printablesection {
                position: absolute;
                left: 0;
                top: 0;
            }

			/* Cookie consent placeholder interferes with the printout by adding an extra blank page at the end. */
			#idw_plugin_container {
				display: none !important;
			}

        }

        @media screen and (min-width: 769px) /* Breakpoint: LAPTOP */ {
			/* We display the sidebar ad on desktop so we hide the top ad. */
            #bc-banner-page_top {
                display: none;
            }
        }
	
