/* General */
.page h1 { margin: 0 0 15px; }

/* Popups */
#popup { background: rgba( 255, 255, 255, .6 ); position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 9000; }
#popup > aside { overflow-y: auto; overflow-x: hidden;  display: flex; flex-wrap: wrap; gap: 20px 40px; max-height: 90vh; background: #FFF; border: 2px solid #f4f4f4; position: absolute; top: 50%; left: 50%; z-index: 9001; transform: translate( -50%, -50% ); box-sizing: border-box; width: 800px; max-width: 90%; padding: 42px; text-align: center; }
#popup > aside > svg { position: absolute; top: 6px; right: 6px; cursor: pointer; transition: all .4s; z-index: 20; }
#popup > aside > svg:hover { transform: rotate( 45deg ); }
#popup figure { width: 180px; }
#popup header { margin: 0 0 30px; letter-spacing: 0; font-weight: 300; font-size: 14pt; text-transform: none; box-sizing: border-box; }
#popup header em { font-weight: 600 !important; display: block; margin: 0 0 3px; }
#popup header span { font-size: clamp( 11pt, 3vw, 13.8pt ); }
#popup header > *:last-child { margin-bottom: 0; }
#popup form { margin: auto; padding: 20px 20px 0; max-height: calc( 100vh - 160px ); overflow-y: auto; overflow-x: hidden; }
#popup section { text-align: left; width: calc( 100% - 220px ); }
#popup section > *:last-child { margin-bottom: 0; }
#popup p { margin: 0 0 12px; font-size: clamp( 11pt, 2.6vw, 12pt ); line-height: 1.6; }
.popup { cursor: pointer; }
.description { display: none; }

@media (max-width: 560px) {
    #popup figure, #popup section { width: 100%; }
    #popup figure img { width: 180px; }
    #popup header { margin: 0 0 17px; }
}

@media (max-width: 380px) {
    #popup > aside { padding: 25px; }
}