@font-face {
  font-family: 'Linotype';
  src: url( '../../fonts/Linotype_OptimaLTPro-Medium.otf' ) format( 'opentype' );
}

* {
    box-sizing: border-box;
}

html {
    min-height: 100%;
    display: flex;
    flex-direction: column;
}
body {
    font-family: 'Linotype', sans-serif;
    
    margin: 0;
    padding: 0;
    flex-grow: 1;

    display: flex;
    flex-direction: column;

    background-color: var( --background-gray-color );
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 20%;
}

header {
    padding-top: 2.5rem;
    padding-left: 5rem;
    padding-right: 5rem;
}
header #header_inner {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}
header #header_inner #header_left img {
    max-height: 64px;
}
header #header_inner #header_right img {
    max-height: 72px;
}


main {
    flex-grow: 1;
}

footer {
    font-family: 'Belleza', sans-serif;
    
    padding: 12px 30px;
    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 0.85rem;
    color: #777;

    display: flex;
    flex-direction: row;
    align-items: center;
    row-gap: 4px;
    column-gap: 32px;
}
footer #footer_legal {
    display: flex;
    flex-direction: row;
    align-items: center;
    row-gap: 4px;
    column-gap: 32px;
}
footer #footer_legal a {
    color: inherit;
    text-decoration: none;
}

@media only screen and ( max-width: 900px ) and ( max-height: 500px ) {
    header { padding-top: 10px; padding-bottom: 20px; }
    header #header_inner #header_left img { max-height: 24px; }
    header #header_inner #header_right img { max-height: 32px; }
    footer { padding-top: 5px; padding-bottom: 5px; }
}
@media only screen and ( max-width: 600px ) {
    header { padding: 20px 35px 10px 35px; }
    header #header_inner #header_left { order: 1; }
    header #header_inner #header_left img { max-height: 24px; }
    header #header_inner #header_right { order: 0; }
    header #header_inner #header_right img { max-height: 32px; }

    footer { flex-direction: column; align-items: stretch; }
    footer #footer_copyright { order: 1; text-align: center; }
    footer #footer_legal { order: 0; justify-content: space-between; column-gap: 4px; font-size: 0.75rem; }
}
