/*
Theme Name: Neophx
Text Domain: neophx
Version: 1.1
Requires at least: 5.0
Tested up to: 5.6
Requires PHP: 5.5.9
Description: Neophx is Neumorphic Minimalist Responsive WordPress Theme, it is designed to be Light Fast preferment with a clean design and excellent user experience on any device.
Tags: blog, custom-background, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, rtl-language-support
Author: Phoenix Studio
Author URI: https://www.phoenix-dz.com/
License: Phoneix Studio
License URI: https://www.phoenix-dz.com/licenses/neophx.html
*/


/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------

0. Global variables
1. CSS Reset
2. Components
3. Document Setup
4. Navigation
5. Content
6. Blog Posts
7. Single Post
8. Archives
9. Single Page
10. Post Meta
11. Comments
12. Search
13. Pagination
14. Footer
15. Resposnive
16. Widgets
17. Bootstrap Grid
18. Bootstrap spacing
19. Custom Classes

----------------------------------------------------------------------------- */


/* -------------------------------------------------------------------------- */


/*	0. Global variables
/* -------------------------------------------------------------------------- */

:root {
    --neophx-main-bg-color: #c4e5e1;
    --neophx-primary-text-color: #ffffff;
    --neophx-secondary-text-color: #ffffff;
    --neophx-shadow-color-1: #3e6a6b99;
    --neophx-shadow-color-2: #ffffff99;
    --neophx-shadow-offset: 3px;
    --neophx-shadow-blur-radius: 8px;
    --neophx-shadow-spread-radius: -1px;
    --neophx-buttons-background-color: #c4e5e1;
    --neophx-buttons-text-color: #f2f2f2;
    --neophx-header-background-color: #c4e5e1;
    --neophx-main-section-background-color: #c4e5e1;
    --neophx-main-section-text-color: #3e6a6b;
    --neophx-footer-background-color: #3e6a6b;
    --neophx-footer-text-color: #f7f7f7;
    --neophx-copyright-background-color: #c4e5e1;
    --neophx-copyright-text-color: #3e6a6b;
    --neophx-header-text-color: #ffffff;
    --neophx-default-font-size: 1rem;
    --neophx-font-weight-normal: 400;
    --neophx-font-weight-bold: 700;
    --neophx-font-weigth-black: 700;
    --neophx-default-text-font-family: 'Roboto', sans-serif;
    --neophx-default-heading-font-family: 'Montserrat', Tahoma, Sans-Serif;
    --neophx-site-info-font-family: 'Montserrat', Tahoma, Sans-Serif;
    --neophx-navigation-font-family: 'Roboto', sans-serif;
    --neophx-home-page-content-font-family: 'Roboto', sans-serif;
    --neophx-content-font-family: 'Roboto', sans-serif;
    --neophx-footer-font-family: 'Roboto', sans-serif;
    --navigation-font-family: 'Montserrat', Tahoma, Sans-Serif;
    --neophx-main-inside-shadow: inset var(--neophx-shadow-offset) var(--neophx-shadow-offset) var(--neophx-shadow-blur-radius) var(--neophx-shadow-spread-radius) var(--neophx-shadow-color-1), inset calc(-1 * var(--neophx-shadow-offset)) calc(-1 * var(--neophx-shadow-offset)) var(--neophx-shadow-blur-radius) var(--neophx-shadow-color-2);
    --neophx-main-outside-shadow: var(--neophx-shadow-offset) var(--neophx-shadow-offset) var(--neophx-shadow-blur-radius) var(--neophx-shadow-spread-radius) var(--neophx-shadow-color-1), calc(-1 * var(--neophx-shadow-offset)) calc(-1 * var(--neophx-shadow-offset)) var(--neophx-shadow-blur-radius) var(--neophx-shadow-spread-radius) var(--neophx-shadow-color-2);
}


/* -------------------------------------------------------------------------- */


/*	1. CSS Reset
/* -------------------------------------------------------------------------- */

html,
body {
    border: none;
    margin: 0;
    padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
address,
big,
cite,
code,
em,
font,
img,
small,
strike,
sub,
sup,
li,
ol,
ul,
fieldset,
form,
label,
legend,
button,
table,
caption,
tr,
th,
td {
    border: none;
    font-size: inherit;
    line-height: inherit;
    margin: 0;
    padding: 0;
    text-align: inherit;
}

blockquote::before,
blockquote::after {
    content: "";
}


/* -------------------------------------------------------------------------- */


/*	2. Components
/* -------------------------------------------------------------------------- */

h1 {
    font-size: calc( 3 * var(--neophx-default-font-size));
    font-weight: var(--neophx-font-weigth-black);
    font-family: var(--neophx-default-heading-font-family);
    margin-top: 20px; /* Færa textann örlítið neðar */
}

h2 {
    font-size: calc( 2 * var(--neophx-default-font-size));
    font-weight: var(--font-weigth-bold);
    font-family: var(--neophx-default-heading-font-family);
    margin-top: 20px;
}

h3 {
    font-size: calc( 1.5 * var(--neophx-default-font-size));
    font-weight: var(--font-weigth-bold);
    font-family: var(--neophx-default-heading-font-family);
}

img {
    max-width: 100%;
    height: auto;
}

a {
    text-decoration: none;
    color: var(--neophx-secondary-text-color);
}

a:hover {
    text-decoration: none;
    opacity: 0.9;
}

textarea {
    min-width: 80px;
    border: none;
    box-shadow: var(--neophx-main-inside-shadow);
    border-radius: 8px;
    padding: 4px 10px;
    margin: 2px;
    background-color: var(--neophx-main-bg-color);
    font-family: var(--neophx-default-text-font-family);
    color: var(--neophx-main-section-text-color);
}

input:not([type=checkbox]),
select {
    min-width: 80px;
    border: none;
    box-shadow: var(--neophx-main-inside-shadow);
    border-radius: 8px;
    padding: 4px 10px;
    margin: 2px;
    background-color: var(--neophx-main-bg-color);
    font-family: var(--neophx-default-text-font-family);
    color: var(--neophx-main-section-text-color);
}

button,
.btn,
.submit,
input[type="submit"] {
    font-size: 0.8rem;
    background-color: var(--neophx-buttons-background-color);
    box-shadow: var(--neophx-main-outside-shadow);
    text-decoration: none;
    border-radius: 50px;
    padding: 8px;
    display: block;
    color: var(--neophx-buttons-text-color);
    text-align: center;
    text-transform: uppercase;
    border: 1px solid rgba(0, 0, 0, 0);
    min-width: 80px;
    margin: 12px;
    background-color: var(--neophx-buttons-background-color);
    font-weight: var(--neophx-font-weight-bold);
    cursor: pointer;
}

button:hover,
.btn:hover,
.submit:hover,
input[type="submit"]:hover {
    box-shadow: var(--neophx-main-inside-shadow);
    border: 1px solid rgba(0, 0, 0, 0.01);
    transform: translateY(1px);
}

ul,
ol {
    list-style-type: none;
}

.outsha {
    box-shadow: var(--neophx-main-outside-shadow);
    border-radius: 8px;
    padding: 4px;
    margin: 4px;
}

.insha {
    box-shadow: var(--neophx-main-inside-shadow);
    border-radius: 8px;
    padding: 4px;
    margin: 4px;
}

.dashicons {
    color: var(--neophx-buttons-text-color);
}


/* -------------------------------------------------------------------------- */


/*	3. Document Setup
/* -------------------------------------------------------------------------- */

html,
body {
    color: var(--neophx-primary-text-color);
    font-size: var(--neophx-default-font-size);
    font-weight: var(--neophx-font-weight-normal);
    background-color: var(--neophx-main-bg-color);
    font-family: var(--neophx-default-text-font-family);
}


/* -------------------------------------------------------------------------- */


/*	4. Navigation
/* -------------------------------------------------------------------------- */

.site-identity {
    display: flex;
}

.custom-logo {
    width: 60px;
    height: 60px;
    background-size: 60%;
    background-repeat: no-repeat;
    background-position: center center;
    margin-right: 20px;
    padding: 10px;
    border-radius: 60px;
}

.site-infos {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.site-infos * {
    font-family: var(--neophx-site-info-font-family);
    font-weight: var(--neophx-font-weight-bold);
}

.site-infos h1 {
    font-size: 1.5rem;
    margin-bottom: 10px;
}

nav {
    display: flex;
    justify-content: space-between;
    margin: 20px 30px;
    align-items: center;
    max-width: calc( 100vw - 60px);
    color: var(--neophx-header-text-color);
    background-color: var(--neophx-header-background-color);
    font-family: var(--neophx-navigation-font-family);
}

nav .menu {
    display: flex;
    align-items: center;
    justify-content: center;
    list-style-type: none;
    font-family: var(--neophx-navigation-font-family);
}

.menu ul {
    display: flex;
    align-items: center;
    justify-content: center;
    list-style-type: none;
}

.menu li {
    box-sizing: border-box;
    height: 100%;
}

.menu li.current_page_item a,
.menu li.current-menu-item a {
    box-shadow: var(--neophx-main-inside-shadow);
    border: 1px solid rgba(0, 0, 0, 0.01);
    transform: translateY(1px);
}

.menu li>a {
    font-size: 0.8rem;
    background-color: var(--neophx-main-bg-color);
    box-shadow: var(--neophx-main-outside-shadow);
    text-decoration: none;
    border-radius: 50px;
    padding: 8px;
    display: block;
    color: var(--neophx-buttons-text-color);
    text-align: center;
    text-transform: uppercase;
    border: 1px solid rgba(0, 0, 0, 0);
    min-width: 80px;
    margin: 12px;
    background-color: var(--neophx-buttons-background-color);
    font-weight: var(--neophx-font-weight-bold);
}

.menu li>a:hover {
    box-shadow: var(--neophx-main-inside-shadow);
    border: 1px solid rgba(0, 0, 0, 0.01);
    transform: translateY(1px);
}

#mobile-nav-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 99;
    display: none;
}

#mobile-nav {
    background-color: var(--neophx-main-bg-color);
    cursor: pointer;
    position: fixed;
    right: 20px;
    top: 20px;
    max-height: 100vh;
    z-index: 100;
    flex-direction: column;
    align-items: flex-end;
    padding: 10px;
    box-shadow: var(--neophx-main-outside-shadow);
    border-radius: 8px;
    width: 40px;
    overflow: hidden;
    height: 40px;
    display: none;
}

#mobile-nav:hover {
    width: auto;
    height: auto;
    overflow: auto;
}

#mobile-nav .menu-item-has-children::after {
    display: none;
}

#mobile-menu {
    margin-right: 50px;
}

#toggle-menu {
    padding: 4px 10px;
    background-color: var(--neophx-main-bg-color);
    margin: 2px;
    box-shadow: var(--neophx-main-outside-shadow);
    border-radius: 8px;
}

#mobile-menu .menu-item::marker {
    display: none;
}

#mobile-menu .menu ul {
    flex-direction: column;
}

.menu-item-has-children {
    position: relative;
}

.menu-item-has-children>.sub-menu {
    position: absolute;
    top: 45px;
    left: 0;
    min-width: 80px;
    height: 0;
    overflow: hidden;
    flex-direction: column;
    z-index: 3000;
}

.menu>.menu-item-has-children::after {
    content: '';
    position: absolute;
    width: 5px;
    height: 5px;
    top: calc( 50% - 5px /2);
    right: 15%;
    border: solid var(--neophx-buttons-text-color);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

.menu-item-has-children:hover .sub-menu {
    height: auto;
}


/* -------------------------------------------------------------------------- */


/*	5. Content
/* -------------------------------------------------------------------------- */

#site-header {
    grid-column: 1/-1;
    text-align: center;
}

.blog #main {
    max-width: 880px;
    margin: auto;
    margin-top: 50px;
    display: grid;
    justify-content: space-between;
    justify-items: center;
    grid-gap: 60px;
    grid-template-columns: 400px 400px;
}

.post-title {
    text-align: center;
    color: var(--neophx-secondary-text-color);
    padding: 20px 0;
    font-family: var(--neophx-default-heading-font-family);
}

.post-infos-container {
    margin-bottom: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.post-infos {
    max-width: 80%;
    align-items: center;
    justify-content: center;
    display: flex;
    flex-direction: column;
}

.post-infos .categories,
.post-infos .tags {
    color: var(--neophx-main-section-text-color);
    display: flex;
    opacity: 0.5;
    flex-wrap: wrap;
    font-size: 0.8rem;
}

.post-infos .categories a,
.post-infos .tags a {
    color: var(--neophx-main-section-text-color);
    font-size: 0.8rem;
}

.post-infos .categories a:hover,
.post-infos .tags a:hover {
    color: var(--neophx-secondary-text-color);
}

.post-infos h3 {
    font-size: 0.8rem;
    font-weight: bold;
}

.post-excerpt {
    flex-grow: 1;
    text-align: justify;
}

.page-header {
    display: flex;
    align-items: center;
    justify-content: center;
}

.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
    max-width: 100%;
    height: auto;
}


/* -------------------------------------------------------------------------- */


/*	6. Blog Posts
/* -------------------------------------------------------------------------- */

.blog .type-post {
    width: 100%;
}

.blog .type-post .post-container {
    height: 480px;
    overflow: auto;
    display: flex;
    align-items: inherit;
    justify-content: space-between;
    flex-direction: column;
    padding: 10px;
    box-sizing: border-box;
}

.blog .post-thumbnail-wrapper {
    display: flex;
    justify-content: center;
}

.blog .post-thumbnail {
    border-radius: 10px;
    width: 100px;
    height: 100px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.post-title {
    text-align: center;
    color: var(--neophx-secondary-text-color);
    padding: 20px 0;
}

.post-excerpt {
    flex-grow: 1;
    text-align: justify;
}


/* -------------------------------------------------------------------------- */


/*	7. Single Post
/* -------------------------------------------------------------------------- */

.single .type-post .post-container .post-body {
    padding: 0 10px;
}

.single .post-thumbnail-wrapper {
    display: flex;
    justify-content: center;
}


/* -------------------------------------------------------------------------- */


/*	8. Archives
/* -------------------------------------------------------------------------- */

.archive #main {
    max-width: 880px;
    margin: auto;
    margin-top: 50px;
    display: grid;
    justify-content: space-between;
    justify-items: center;
    grid-gap: 60px;
    grid-template-columns: 400px 400px;
}

.archive .type-post {
    width: 100%;
}

.archive .type-post .post-container {
    height: 480px;
    overflow: auto;
    display: flex;
    align-items: inherit;
    justify-content: space-between;
    flex-direction: column;
    padding: 10px;
    box-sizing: border-box;
}

.archive .post-thumbnail-wrapper {
    display: flex;
    justify-content: center;
}

.archive .post-thumbnail {
    border-radius: 100px;
    width: 100px;
    height: 100px;
    background-size: 80%;
    background-repeat: no-repeat;
    background-position: center;
}

.archive.author .page-title {
    margin: 12px 0;
    font-size: 24px;
}


/* -------------------------------------------------------------------------- */


/*	9. Single Page
/* -------------------------------------------------------------------------- */

.page .post-thumbnail-wrapper {
    display: flex;
    justify-content: center;
}

.home #main {
    font-family: var(--neophx-home-page-content-font-family);
}

.neophx-hide-title .entry-title {
    display: none!important;
}

.page-links {
    color: var(--neophx-main-section-text-color);
}


/* -------------------------------------------------------------------------- */


/*	10. Post Meta
/* -------------------------------------------------------------------------- */

.post-meta {
    display: flex;
    align-items: center;
    justify-content: space-around;
}

.meta-item {
    margin-top: 4px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    height: 65px;
    width: 33%;
    font-size: 12px;
}

.meta-item>p {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    max-width: 100%;
    color: var(--neophx-main-section-text-color);
}

.meta-item .dashicons {
    padding: 8px;
}


/* -------------------------------------------------------------------------- */


/*	11. Comments
/* -------------------------------------------------------------------------- */

#comments {
    box-shadow: var(--neophx-main-outside-shadow);
    border-radius: 8px;
    padding: 4px;
    margin: 4px;
}

#comments .post-comments {
    box-shadow: var(--neophx-main-inside-shadow);
    border-radius: 8px;
    padding: 4px;
    margin: 4px;
}

#comments .comment-list .comment {
    padding: 10px;
    margin: 10px;
    list-style-type: none;
}

#comments .comment-list .comment .comment-body {
    box-shadow: var(--neophx-main-inside-shadow);
    border-radius: 8px;
    padding: 10px;
    background-color: var(--neophx-main-bg-color);
}

#comments .avatar {
    border-radius: 100%;
    background-color: var(--neophx-main-bg-color);
    margin: 2px;
    box-shadow: var(--neophx-main-outside-shadow);
}

#comments .reply .comment-reply-link {
    display: inline-block;
    min-width: 80px;
    border: none;
    padding: 4px 10px;
    background-color: var(--neophx-main-bg-color);
    margin: 2px;
    margin-top: 10px;
    box-shadow: var(--neophx-main-outside-shadow);
    border-radius: 8px;
    text-decoration: none;
    color: var(--btn-text-color);
    cursor: pointer;
    border: 1px solid transparent;
    text-align: center;
}

#comments .comment-reply-link:hover {
    box-shadow: var(--neophx-main-inside-shadow);
    border: 1px solid rgba(0, 0, 0, 0.01);
}

#comments .comment-author-time {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 10px;
}

#comment {
    width: 90%;
}


/* -------------------------------------------------------------------------- */


/*	12. Search
/* -------------------------------------------------------------------------- */

#search-form {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

#search-form input[type="image"],
.widget_search>form input[type="image"] {
    min-width: auto;
    width: auto;
    height: 25px;
    border: none;
    box-shadow: var(--neophx-main-outside-shadow);
    border-radius: 8px;
    padding: 4px 10px;
    background-color: var(--neophx-main-bg-color);
    margin: 0px 10px;
}

#search-form form,
.widget_search form {
    display: flex;
    align-items: center;
    justify-content: center;
}

#search-form form input[name="s"],
.widget_search form input[name="s"] {
    padding: 8px 10px;
}

.search #main {
    max-width: 880px;
    margin: auto;
    margin-top: 50px;
    display: grid;
    justify-content: space-between;
    justify-items: center;
    grid-gap: 60px;
    grid-template-columns: 400px 400px;
}

.search .type-post,
.search .type-page {
    width: 100%;
}

.search .type-post .post-container,
.search .type-page .post-container {
    height: 480px;
    overflow: auto;
    display: flex;
    align-items: inherit;
    justify-content: space-between;
    flex-direction: column;
    padding: 10px;
    box-sizing: border-box;
}

.search .post-title {
    text-align: center;
    color: var(--neophx-secondary-text-color);
    padding: 20px 0;
}

.search .post-excerpt {
    flex-grow: 1;
    text-align: justify;
}


/* -------------------------------------------------------------------------- */


/*	13. Pagination
/* -------------------------------------------------------------------------- */

.page-pagination {
    margin: 40px auto;
    padding: 20px;
}

.pagination .screen-reader-text {
    display: none;
}

.navigation.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
}

.navigation.pagination .nav-links {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.navigation.pagination .nav-links a {
    box-shadow: var(--neophx-main-outside-shadow);
    border-radius: 8px;
    padding: 4px;
    margin: 4px;
    font-size: 24px;
}


/* -------------------------------------------------------------------------- */


/*	14. Footer
/* -------------------------------------------------------------------------- */

#page-footer {
    margin-top: 50px;
    padding-top: 20px;
    background-color: var(--neophx-footer-background-color);
    box-sizing: border-box;
    color: var(--neophx-footer-text-color);
    font-family: var(--neophx-footer-font-family);
}

.footer-container {
    width: 100%;
}

.footer-widget-container {
    display: flex;
    justify-content: space-around;
    margin: auto;
    width: 90%;
    overflow: auto;
}

.footer-column {
    margin: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.widget {
    padding: 10px;
    box-shadow: var(--dark-main-outside-shadow);
    border-radius: 8px;
}

.site-copyright {
    text-align: center;
    background-color: var(--neophx-copyright-background-color);
    color: var(--neophx-copyright-text-color);
    padding: 10px 0;
}

.site-copyright * {
    color: var(--neophx-copyright-text-color);
}


/* -------------------------------------------------------------------------- */


/*	15. Resposnive
/* -------------------------------------------------------------------------- */

#main {
    width: 90%;
    margin: auto;
    margin-top: 50px;
    color: var(--neophx-main-section-text-color);
    background-color: var(--neophx-main-section-background-color);
    font-family: var(--neophx-content-font-family);
}

@media (max-width: 980px) {
    .blog #main,
    .archive #main,
    .search #main {
        max-width: 90%;
        margin: auto;
        margin-top: 50px;
        display: flex;
        flex-direction: column;
        grid-template-columns: none;
    }
    .blog .type-post .post-container,
    .archive .type-post .post-container,
    .search .type-post .post-container {
        height: auto;
        min-height: 330px;
    }
}

@media (max-width: 900px) {
    nav .menu {
        display: none;
    }
    #mobile-nav {
        display: flex;
    }
}

@media (max-width: 720px) {
    .footer-widget-container {
        flex-direction: column;
    }
    nav {
        margin: 10px 0;
    }
    #mobile-nav {
        right: 8px;
        top: 18px;
    }
    .custom-logo {
        margin-right: 6px;
        width: 40px;
        height: 40px;
    }
    .site-infos h1 {
        font-size: 1.2rem;
        margin-bottom: 4px;
    }
    .site-infos * {
        font-size: 0.9rem;
    }
    #main {
        width: 100%;
        overflow-y: hidden;
    }
    #search-form {
        margin-top: 20px;
    }
}


/* -------------------------------------------------------------------------- */


/*	16. Widgets
/* -------------------------------------------------------------------------- */

.home .wp-block-media-text.has-media-on-the-right p {
    font-family: var(--title-font-family);
    font-weight: var(--title-font-weight-black);
}

.neo-phx-custom-header-content-center {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 521px;
}

.neo-phx-custom-header-content-center button {
    width: 150px;
    height: 50px;
    font-size: 20px;
}


/* -------------------------------------------------------------------------- */


/*	17. Bootstrap Grid
/* -------------------------------------------------------------------------- */

.d-block {
    display: block !important;
}

.d-none {
    display: none !important;
}

@media (min-width: 576px) {
    .d-sm-block {
        display: block !important;
    }
    .d-sm-none {
        display: none !important;
    }
}

@media (min-width: 768px) {
    .d-md-block {
        display: block !important;
    }
    .d-md-none {
        display: none !important;
    }
}

@media (min-width: 992px) {
    .d-lg-block {
        display: block !important;
    }
    .d-lg-none {
        display: none !important;
    }
}

@media (min-width: 1200px) {
    .d-xl-block {
        display: block !important;
    }
    .d-xl-none {
        display: none !important;
    }
}

@media (min-width: 1400px) {
    .d-xxl-block {
        display: block !important;
    }
    .d-xxl-none {
        display: none !important;
    }
}


/* -------------------------------------------------------------------------- */


/*	18. Bootstrap spacing
/* -------------------------------------------------------------------------- */

.m-0 {
    margin: 0 !important;
}

.m-1 {
    margin: 0.25rem !important;
}

.m-2 {
    margin: 0.5rem !important;
}

.m-3 {
    margin: 1rem !important;
}

.m-4 {
    margin: 1.5rem !important;
}

.m-5 {
    margin: 3rem !important;
}

.m-auto {
    margin: auto !important;
}

.mx-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.mx-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
}

.mx-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
}

.mx-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
}

.mx-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
}

.mx-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
}

.mx-auto {
    margin-right: auto !important;
    margin-left: auto !important;
}

.my-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.my-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
}

.my-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
}

.my-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
}

.my-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
}

.my-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
}

.my-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
}

.mt-0 {
    margin-top: 0 !important;
}

.mt-1 {
    margin-top: 0.25rem !important;
}

.mt-2 {
    margin-top: 0.5rem !important;
}

.mt-3 {
    margin-top: 1rem !important;
}

.mt-4 {
    margin-top: 1.5rem !important;
}

.mt-5 {
    margin-top: 3rem !important;
}

.mt-auto {
    margin-top: auto !important;
}

.me-0 {
    margin-right: 0 !important;
}

.me-1 {
    margin-right: 0.25rem !important;
}

.me-2 {
    margin-right: 0.5rem !important;
}

.me-3 {
    margin-right: 1rem !important;
}

.me-4 {
    margin-right: 1.5rem !important;
}

.me-5 {
    margin-right: 3rem !important;
}

.me-auto {
    margin-right: auto !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.mb-1 {
    margin-bottom: 0.25rem !important;
}

.mb-2 {
    margin-bottom: 0.5rem !important;
}

.mb-3 {
    margin-bottom: 1rem !important;
}

.mb-4 {
    margin-bottom: 1.5rem !important;
}

.mb-5 {
    margin-bottom: 3rem !important;
}

.mb-auto {
    margin-bottom: auto !important;
}

.ms-0 {
    margin-left: 0 !important;
}

.ms-1 {
    margin-left: 0.25rem !important;
}

.ms-2 {
    margin-left: 0.5rem !important;
}

.ms-3 {
    margin-left: 1rem !important;
}

.ms-4 {
    margin-left: 1.5rem !important;
}

.ms-5 {
    margin-left: 3rem !important;
}

.ms-auto {
    margin-left: auto !important;
}

.p-0 {
    padding: 0 !important;
}

.p-1 {
    padding: 0.25rem !important;
}

.p-2 {
    padding: 0.5rem !important;
}

.p-3 {
    padding: 1rem !important;
}

.p-4 {
    padding: 1.5rem !important;
}

.p-5 {
    padding: 3rem !important;
}

.px-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.px-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
}

.px-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
}

.px-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
}

.px-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
}

.px-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
}

.py-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.py-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
}

.py-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
}

.py-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

.py-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
}

.py-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
}

.pt-0 {
    padding-top: 0 !important;
}

.pt-1 {
    padding-top: 0.25rem !important;
}

.pt-2 {
    padding-top: 0.5rem !important;
}

.pt-3 {
    padding-top: 1rem !important;
}

.pt-4 {
    padding-top: 1.5rem !important;
}

.pt-5 {
    padding-top: 3rem !important;
}

.pe-0 {
    padding-right: 0 !important;
}

.pe-1 {
    padding-right: 0.25rem !important;
}

.pe-2 {
    padding-right: 0.5rem !important;
}

.pe-3 {
    padding-right: 1rem !important;
}

.pe-4 {
    padding-right: 1.5rem !important;
}

.pe-5 {
    padding-right: 3rem !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.pb-1 {
    padding-bottom: 0.25rem !important;
}

.pb-2 {
    padding-bottom: 0.5rem !important;
}

.pb-3 {
    padding-bottom: 1rem !important;
}

.pb-4 {
    padding-bottom: 1.5rem !important;
}

.pb-5 {
    padding-bottom: 3rem !important;
}

.ps-0 {
    padding-left: 0 !important;
}

.ps-1 {
    padding-left: 0.25rem !important;
}

.ps-2 {
    padding-left: 0.5rem !important;
}

.ps-3 {
    padding-left: 1rem !important;
}

.ps-4 {
    padding-left: 1.5rem !important;
}

.ps-5 {
    padding-left: 3rem !important;
}


/* -------------------------------------------------------------------------- */


/*	19. Custom Classes
/* -------------------------------------------------------------------------- */

.box-sizing-border-box {
    box-sizing: border-box;
}

.wp-caption,
.wp-caption-text {
    text-align: center;
}

.sticky {
    position: -webkit-sticky;
    position: sticky;
}

.gallery-caption {
    display: block;
}

.bypostauthor {
    display: block;
}

.alignright {
    text-align: right;
}

.alignleft {
    text-align: left;
}

.aligncenter {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

