
html
{
    line-height: 1.3;
    /* 1 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
}

*,
*::before,
*::after
{
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /* 3 */
}

/* Sections
   ========================================================================== */
body
{
    margin: 0;
    font-family: var(--primary-font-family), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.5;
    color: #333333;
    background-color: #fff;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1, h2, h3, h4, h5, h6
{
    margin-top: .5rem;
    margin-bottom: 2rem;
    font-family: var(--primary-headline-font-family), Arial, sans-serif;
    font-weight: 400;
    line-height: 1.5;
    color: inherit;
}

h1
{
    font-size: 3rem;
}

h2
{
    font-size: 2.5rem;
}

h3
{
    font-size: 2rem;
}

h4
{
    font-size: 1.75rem;
}

h5
{
    font-size: 1.5rem;
}

h6
{
    font-size: 1.25rem;
}

p
{
    margin-top: 0;
    margin-bottom: 1.1rem;
}

main ul
{
    margin-left: 15px;
}

    main ul li
    {
        list-style-type: disc;
        padding-left: 15px;
    }

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr
{
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 1 */
    overflow: visible;
    /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre
{
    font-family: monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
    white-space: pre-wrap;
}

/* Text-level semantics
   ========================================================================== */
a
{
    background-color: transparent;
    text-decoration: none;
    color: #333;
}

    a:hover, a:active
    {
        text-decoration: underline;
    }

    a:not([href]):not([tabindex])
    {
        color: inherit;
        text-decoration: none;
    }

        a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus
        {
            color: inherit;
            text-decoration: none;
        }

        a:not([href]):not([tabindex]):focus
        {
            outline: 0;
        }

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title]
{
    border-bottom: none;
    /* 1 */
    text-decoration: underline;
    /* 2 */
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong
{
    font-weight: 600;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp
{
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small
{
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup
{
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub
{
    bottom: -0.25em;
}

sup
{
    top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img
{
    border-style: none;
    height: auto;
    max-width: 100%;
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details
{
    display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary
{
    display: list-item;
}

figcaption
{
    font-size: 16px;
    color: #333333;
    line-height: 1.4;
    font-style: italic;
    font-weight: 400;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template
{
    display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden]
{
    display: none;
}

.sr-only
{
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Print
   ========================================================================== */
@media print
{
    *,
    *:before,
    *:after
    {
        background: transparent !important;
        color: #000 !important;
        /* Black prints faster */
        -webkit-box-shadow: none !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited
    {
        text-decoration: underline;
    }

        a[href]:after
        {
            content: " (" attr(href) ")";
        }

    abbr[title]:after
    {
        content: " (" attr(title) ")";
    }

    a[href^="#"]:after,
    a[href^="javascript:"]:after
    {
        content: "";
    }

    pre
    {
        white-space: pre-wrap !important;
    }

    pre,
    blockquote
    {
        page-break-inside: avoid;
        border: 1px solid #cccccc;
    }

    thead
    {
        display: table-header-group;
    }

    tr,
    img
    {
        page-break-inside: avoid;
    }

    p,
    h2,
    h3
    {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3
    {
        page-break-after: avoid;
    }
}

/*
DO NOT CHANGE THIS FILE
to override any of the settings in this section, add your styling code in the custom directory.
 */
/* Forms
   ========================================================================== */
label
{
    display: inline-block;
    line-height: 1;
    vertical-align: middle;
}

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea
{
    font-family: inherit;
    /* 1 */
    font-size: 1rem;
    /* 1 */
    line-height: 1.5;
    /* 1 */
    margin: 0;
    /* 2 */
}

    input[type="text"],
    input[type="date"],
    input[type="email"],
    input[type="number"],
    input[type="password"],
    input[type="search"],
    input[type="tel"],
    input[type="url"],
    select,
    textarea
    {
        width: 100%;
        background-color: #dbdbdb;
        border-radius: 3px;
        padding: 0.5rem 1rem;
        -webkit-transition: all .3s;
        -o-transition: all .3s;
        font-size: 400;
        transition: all .3s;
        font-family: var(--secondary-font-family);
        margin-bottom: 15px;
    }

    label,
    input[type="radio"],
    input[type="checkbox"]
    {
        font-size: 400;
        font-family: var(--secondary-font-family);
    }

textarea
{
    min-height: 200px;
}

input[type="text"]::placeholder,
input[type="date"]::placeholder,
input[type="email"]::placeholder,
input[type="number"]::placeholder,
input[type="password"]::placeholder,
input[type="search"]::placeholder,
input[type="tel"]::placeholder,
input[type="url"]::placeholder
{
    color: #333;
}

input[type="text"]:focus,
input[type="date"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
select:focus,
textarea:focus
{
    border-color: #333333;
    outline: 0 none;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input
{
    /* 1 */
    overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select
{
    /* 1 */
    text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"]
{
    width: auto;
    -webkit-appearance: button;
}

    /**
 * Remove the inner border and padding in Firefox.
 */
    button::-moz-focus-inner,
    [type="button"]::-moz-focus-inner,
    [type="reset"]::-moz-focus-inner,
    [type="submit"]::-moz-focus-inner
    {
        border-style: none;
        padding: 0;
    }

    /**
 * Restore the focus styles unset by the previous rule.
 */
    button:-moz-focusring,
    [type="button"]:-moz-focusring,
    [type="reset"]:-moz-focusring,
    [type="submit"]:-moz-focusring
    {
        outline: 1px dotted ButtonText;
    }

button,
[type="submit"],
[type="button"]
{
    display: inline-block;
    font-weight: 400;
    color: var(--primary-color);
    text-align: center;
    white-space: nowrap;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid var(--primary-color);
    padding: 0.5rem 1rem;
    font-size: 1rem;
    border-radius: 3px;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}

    button:focus,
    [type="submit"]:focus,
    [type="button"]:focus
    {
        outline: 1px dotted;
        outline: 5px auto -webkit-focus-ring-color;
    }

    button:hover, button:focus,
    [type="submit"]:hover,
    [type="submit"]:focus,
    [type="button"]:hover,
    [type="button"]:focus
    {
        color: #ffffff;
        background-color: var(--primary-color);
        text-decoration: none;
    }

    button:not(:disabled),
    [type="submit"]:not(:disabled),
    [type="button"]:not(:disabled)
    {
        cursor: pointer;
    }

/**
 * Correct the padding in Firefox.
 */
fieldset
{
    padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend
{
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /* 1 */
    color: inherit;
    /* 2 */
    display: table;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */
    white-space: normal;
    /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress
{
    vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea
{
    overflow: auto;
    resize: vertical;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"]
{
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button
{
    height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"]
{
    -webkit-appearance: textfield;
    /* 1 */
    outline-offset: -2px;
    /* 2 */
}

    /**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
    [type="search"]::-webkit-search-decoration
    {
        -webkit-appearance: none;
    }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button
{
    -webkit-appearance: button;
    /* 1 */
    font: inherit;
    /* 2 */
}

select
{
    display: block;
}

/* Table
   ========================================================================== */
table
{
    background-color: transparent;
    width: 100%;
    margin-bottom: 15px;
    font-size: 0.9em;
    border-spacing: 0;
    border-collapse: collapse;
}

    table th,
    table td
    {
        padding: 15px 30px;
        line-height: 1.5;
        vertical-align: middle;
        border: 1px solid #333333;
    }

    table th
    {
        font-weight: bold;
    }

    table thead th,
    table tfoot th
    {
        font-size: 1em;
    }

    table caption + thead tr:first-child th,
    table caption + thead tr:first-child td,
    table caption + thead tr:first-child th,
    table caption + thead tr:first-child td,
    table colgroup + thead tr:first-child th,
    table colgroup + thead tr:first-child td,
    table colgroup + thead tr:first-child th,
    table colgroup + thead tr:first-child td,
    table thead:first-child tr:first-child th,
    table thead:first-child tr:first-child td,
    table thead:first-child tr:first-child th,
    table thead:first-child tr:first-child td
    {
        border-top: 1px solid #333333;
        background-color: #cccccc;
        font-family: var(--primary-headline-font-family);
        text-transform: uppercase;
        font-weight: bold;
    }

    table tbody > tr:nth-child(odd) > td,
    table tbody > tr:nth-child(odd) > th
    {
        background-color: #ffffff;
    }

    table tbody + tbody
    {
        border-top: 2px solid #333333;
    }

@media (max-width: 767px)
{
    table table
    {
        font-size: 0.8em;
    }

        table table th,
        table table td
        {
            padding: 7px;
            line-height: 1.3;
        }

        table table th
        {
            font-weight: 400;
        }
}

table td p
{
    margin: 0;
    color: black;
}

table td a
{
    color: var(--primary-color);
}

table select
{
    margin: 10px 0;
}

table input[type="text"],
table select
{
    border: solid thin black;
    background-color: white;
    margin: 0;
}

/*
DO NOT CHANGE THIS FILE
to override any of the settings in this section, add your styling code in the custom directory.
 */
/* Lists
   ========================================================================== */
dl,
dt,
dd,
ol,
ul,
li
{
    margin-top: 0;
    margin-bottom: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

/* Basic responsive layout
   ========================================================================== */
.site-header, body:not([class*="elementor-page-"]) .site-main
{
    margin-right: auto;
    margin-left: auto;
}

@media (max-width: 575px)
{
    .site-header, body:not([class*="elementor-page-"]) .site-main
    {
        padding-right: 10px;
        padding-left: 10px;
    }
}

@media (min-width: 576px)
{
    .site-header, body:not([class*="elementor-page-"]) .site-main
    {
        max-width: 500px;
    }
}

@media (min-width: 768px)
{
    .site-header, body:not([class*="elementor-page-"]) .site-main
    {
        max-width: 600px;
    }
}

@media (min-width: 992px)
{
    .site-header, body:not([class*="elementor-page-"]) .site-main
    {
        max-width: 800px;
    }
}

@media (min-width: 1200px)
{
    .site-header, body:not([class*="elementor-page-"]) .site-main
    {
        max-width: 960px;
    }
}

/* Video Container
   ========================================================================== */

.video-container
{
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
}

    .video-container.ar16-9
    {
        padding-top: 56.25%;
    }

    .video-container.ar4-3
    {
        padding-top: 75%; /* 4:3 Aspect Ratio */
    }

    .video-container.ar16-9
    {
        padding-top: 66.666666%; /* 3:2 Aspect Ratio */
    }

    .video-container iframe
    {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        width: 100% !important;
        height: 100% !important;
    }

/* General - https://codex.wordpress.org/CSS#WordPress_Generated_Classes
   ========================================================================== */
.alignright
{
    float: right;
    margin-left: 1rem;
}

.alignleft
{
    float: left;
    margin-right: 1rem;
}

.aligncenter
{
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.alignwide
{
    margin-left: -80px;
    margin-right: -80px;
}

.alignfull
{
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    max-width: 100vw;
    width: 100vw;
}

    .alignfull img
    {
        width: 100vw;
    }

.wp-caption
{
    margin-bottom: 1.25rem;
    max-width: 100%;
}

    .wp-caption.alignleft
    {
        margin: 5px 20px 20px 0;
    }

    .wp-caption.alignright
    {
        margin: 5px 0 20px 20px;
    }

    .wp-caption img
    {
        display: block;
        margin-left: auto;
        margin-right: auto;
    }

.wp-caption-text
{
    margin: 0;
}

.gallery-caption
{
    display: block;
    font-size: 0.8125rem;
    line-height: 1.5;
    margin: 0;
    padding: 0.75rem;
}

.pagination
{
    margin: 20px auto;
}

.sticky
{
    position: relative;
    display: block;
}

.bypostauthor
{
    font-size: inherit;
}

/*
DO NOT CHANGE THIS FILE
to override any of the settings in this section, add your styling code in the custom directory.
 */
.screen-reader-text
{
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
    /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

    .screen-reader-text:focus
    {
        background-color: #eeeeee;
        clip: auto !important;
        -webkit-clip-path: none;
        clip-path: none;
        color: #333333;
        display: block;
        font-size: 1rem;
        height: auto;
        left: 5px;
        line-height: normal;
        padding: 15px 23px 14px;
        text-decoration: none;
        top: 5px;
        width: auto;
        z-index: 100000;
        /* Above WP toolbar. */
    }

/* Header layout
   ========================================================================== */
.site-header
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.site-branding
{
    max-width: 300px;
}

    .site-branding .site-title,
    .site-branding .site-description
    {
        margin: 0;
    }

.custom-logo-link
{
    display: block;
}

/* Main Menu
   ========================================================================== */
.site-navigation
{
    grid-area: nav-menu;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

    .site-navigation ul.menu, .site-navigation ul.menu ul
    {
        list-style-type: none;
        padding: 0;
    }

    .site-navigation ul.menu
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

        .site-navigation ul.menu li
        {
            position: relative;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
        }

            .site-navigation ul.menu li a
            {
                display: block;
                padding: 8px 15px;
            }

            .site-navigation ul.menu li.menu-item-has-children
            {
                padding-right: 15px;
            }

                .site-navigation ul.menu li.menu-item-has-children:after
                {
                    display: block;
                    content: '\25BE';
                    font-size: 1.5em;
                    -webkit-box-align: center;
                    -ms-flex-align: center;
                    align-items: center;
                    color: #666666;
                }

            .site-navigation ul.menu li ul
            {
                background: #fff;
                display: none;
                min-width: 150px;
                position: absolute;
                z-index: 2;
                left: 0;
                top: 100%;
                border: #eeeeee 1px solid;
            }

                .site-navigation ul.menu li ul li.menu-item-has-children a
                {
                    -webkit-box-flex: 1;
                    -ms-flex-positive: 1;
                    flex-grow: 1;
                }

                .site-navigation ul.menu li ul li.menu-item-has-children:after
                {
                    -webkit-transform: rotate(-90deg);
                    -ms-transform: rotate(-90deg);
                    transform: rotate(-90deg);
                }

                .site-navigation ul.menu li ul ul
                {
                    left: 100%;
                    top: 0;
                }

            .site-navigation ul.menu li:hover > ul
            {
                display: block;
            }

/* Post Item in Archive
   ========================================================================== */
.post .wp-post-image
{
    width: 100%;
    max-height: 500px;
    -o-object-fit: cover;
    object-fit: cover;
}

@media (max-width: 991px)
{
    .post .wp-post-image
    {
        max-height: 400px;
    }
}

@media (max-width: 575px)
{
    .post .wp-post-image
    {
        max-height: 300px;
    }
}

/*
DO NOT CHANGE THIS FILE
to override any of the settings in this section, add your styling code in the custom directory.
 */
/* Comments
   ========================================================================== */
#comments .comment-list
{
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: .9em;
}

#comments .comment,
#comments .pingback
{
    position: relative;
}

    #comments .comment .comment-body,
    #comments .pingback .comment-body
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 30px 0 30px 60px;
        border-bottom: 1px solid #cccccc;
    }

body.rtl #comments .comment .comment-body, body.rtl
#comments .pingback .comment-body
{
    padding: 30px 60px 30px 0;
}

#comments .comment .avatar,
#comments .pingback .avatar
{
    position: absolute;
    left: 0;
    border-radius: 50%;
    margin-right: 10px;
}

body.rtl #comments .comment .avatar, body.rtl
#comments .pingback .avatar
{
    left: auto;
    right: 0;
    margin-right: 0;
    margin-left: 10px;
}

#comments .comment-meta
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: .9rem;
}

#comments .reply,
#comments .comment-metadata
{
    font-size: 11px;
    line-height: 1;
}

#comments .children
{
    position: relative;
    list-style: none;
    margin: 0;
    padding-left: 30px;
}

body.rtl #comments .children
{
    padding-left: 0;
    padding-right: 30px;
}

#comments .children li:last-child
{
    padding-bottom: 0;
}

#comments ol.comment-list .children:before
{
    display: inline-block;
    font-size: 1em;
    font-weight: normal;
    line-height: 100%;
    content: '\21AA';
    position: absolute;
    top: 45px;
    left: 0;
    width: auto;
}

body.rtl #comments ol.comment-list .children:before
{
    content: '\21A9';
    left: auto;
    right: 0;
}

@media (min-width: 768px)
{
    #comments .comment-author,
    #comments .comment-metadata
    {
        line-height: 1;
    }
}

@media (max-width: 767px)
{
    #comments .comment .comment-body
    {
        padding: 30px 0;
    }

    #comments .children
    {
        padding-left: 20px;
    }

    #comments .comment .avatar
    {
        position: inherit;
        float: left;
    }

    body.rtl #comments .comment .avatar
    {
        float: right;
    }
}
