@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&display=swap');

:root {
    --color-link: #0083db;
    --color-white: #fff;
    --color-black: #111;
    --color-darkgray: #888;
    --color-gray: #bbb;
    --color-lightgray: #ddd;
    --color-superlightgray: #e3e3e3;
    --color-red: #d1213c;
    /*--max-desktop-width: 60em;
    --max-content-width: 40em;*/
    --max-desktop-width: 1200px;
    --max-content-width: 750px;
}

html, .button, input, textarea, button {
    font-family: 'Lato', helvetica, serif;
}

h1, h2, h3, .jqte_format_1, .jqte_format_2, .jqte_format_3 {
    font-family: 'Lato', helvetica, sans-serif;
}



html, body {
    font-size: 16px;
    background-color: var(--color-white);
    color: var(--color-black);
}

main, .main {
    min-height: none;
}

#page_wrapper { /* This keeps the footer at the bottom. */
    min-height: 100vh;
}


.button_basic_2023, .button_action_2023, .button_dummy_2023 {
    -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;
    padding: 0.88em 1.3em 0.82em 1.3em;
    border-radius: 8em;
    display: inline-block;
    margin: 0 0.75em 0.75em 0;
    line-height: 1.3;
    box-shadow: none;
    transition: all .1s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: 0;
    min-width: 5em;
    text-align: center;
    -moz-box-sizing: content-box; /* or `border-box` */
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

.button_basic_2023:hover, .button_action_2023:hover {
    box-shadow: 0.03em 0.2em 0.5em rgba(0, 0, 0, 0.25);
    transform: scale(1.07);
}

.button_red_2023 {
    background-color: var(--color-red) !important;
}

.button_dummy_2023 {
    border: 0.25em solid var(--color-red);
    padding: 0.63em 1em 0.67em 1em; /* offset for border */
    color: var(--color-red);
}

.button_basic_2023 {
    background-color: var(--color-superlightgray);
    color: black;
    cursor: pointer;
}

.button_basic_2023:hover {
    background-color: var(--color-gray);
}

.button_basic_2023 .icon, .button_action_2023 .icon {
    display: block;
    width: auto;
    height: 1.25em;
    float: left;
    margin-right: 0.5em;
}

.button_action_2023 {
    background-color: var(--color-link);
    color: white;
    cursor: pointer;
}

.button_action_2023:hover {
    background-color: var(--color-black);
}




.small {
    font-size: 0.8em;
}

a {
    color: var(--color-link);
}
a:hover {
    text-decoration: none;
}

h1 { font-size: 2.8em; line-height: 1; letter-spacing: 0.0025em; }
h2 { font-size: 2.25em; line-height: 1.1; }
h3 { font-size: 1.5em; line-height: 1.2; }
h4 { font-size: 1.75em; }
h5 { font-size: 1.5em; }
h6 { font-size: 1.25em; }

/*p { margin: 1em 0 1em 0; }*/
p { margin: 0 0 1em 0; }

.allcaps {
    text-transform: uppercase;
    line-height: 1.125;
}

.admin_link {
    font-family: 'Lato', helvetica, sans-serif;
    font-weight: normal;
    letter-spacing: 0.02em;
    color: black;
    display: block;
    width: min-content;
    white-space: nowrap;
    margin: 0 auto;
    font-size: 1.125em;
}

.text_content, .jqte_editor {
    line-height: 1.5;
}

.text_content h1, .jqte_editor h1 {
    margin-top: 1em;
    margin-bottom: 0.25em;
}

.text_content h2, .jqte_editor h2 {
    margin-top: 1em;
    /*margin-bottom: 0.125em;*/
    margin-bottom: 0.5em;
}

.text_content h3, .jqte_editor h3 {
    margin-top: 1em;
    margin-bottom: 0.125em;
}

.text_content h4 {
    line-height: 1.3;
    font-size: 1.2em;
    margin: 0.75em 0 0.1em 0;
}

.text_content h5 {
    font-size: 1em;
    font-weight: normal;
    margin: 0;
    max-width: var(--max-content-width);
}

.text_content h6, .jqte_editor {
    font-weight: normal;
    font-size: 0.8em;
    margin: 0 0 1em 0;
    line-height: 1.4;
    max-width: var(--max-content-width);
}

.text_content p {
    max-width: var(--max-content-width);
    margin: 0 0 1em 0;
}

.text_content ol, .text_content ul {
    margin: 0.125em 0 0.75em 0;
    max-width: var(--max-content-width);
}

.text_content li {
    margin: 0.25em 0;
    line-height: 1.4;
}

.text_content hr {
    border: none;
    height: 1px;
    margin: 1em 0;
    background-color: var(--color-gray);
}







/* Responsive */

@media screen and (min-width: 1200px) {

    /* Large desktop */

    
    
}

@media screen and (max-width: 1100px) {
    

    
}

@media screen and (max-width: 800px) {

    h1, h2, h3, h4, h5 {
        letter-spacing: -0.02em;
    }
    
    .blog_main {
        padding: 2em 1.65em;
    }
    
    .blog_main .page_block_text {
        font-size: 1.18em;
        line-height: 1.5;
    }
    
    .blogs_year:first-child {
        margin-top: 0em;
    }
    
    #blog_nav {
        gap: 0.25em;
    }
    
    #footer_door_wrapper {
        padding-top: 6em;
    }
    
    #dhnav_button_wrapper a {
        font-size: 6vh;
    }
    
    .tag_bar {
        margin-top: 2.25em;
    }
    
    .tag_bar a {
        padding: 0.4em 1em 0.5em 1em;
        margin-right: 0.65em;
    }
        
}


@media screen and (max-width: 767px) {
    /* Handle iPhone address bar at bottom */
    _::-webkit-full-page-media, _:future, :root #page_wrapper {
        min-height: 100dvh;
    }
}





