
/* Document
   ========================================================================== */

html {
    -webkit-text-size-adjust: 100%; /* Prevent adjustments of font size after orientation changes in iOS. */
    -webkit-font-smoothing: antialiased;

    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.4;
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
    margin: 0;
}


/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/**
 * 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, monospace; /* 1 */
    font-size: 1em; /* 2 */
}


/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
    font-weight: bolder;
}

/**
 * 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;
}


/* Forms
   ========================================================================== */

/**
 * 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: 100%; /* 1 */
    line-height: 1.15; /* 1 */
    margin: 0; /* 2 */
}

/**
 * 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"] {
    -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;
}


/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
    overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
    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 */
}

/* 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;
}


/* Box sizing */
html, body, div, article, aside, section, main, nav, footer, header, form,
a, h1, h2, h3, h4, ul, ol, li, blockquote, figcaption, figure, textarea, table, td, th, tr {
    box-sizing: border-box;
    margin: 0;
}

p {
    box-sizing: border-box;
    margin: 1em 0;
}


/* Remove the tapping delay on clickable elements in all browsers */
a, button, input, select, textarea, [tabindex] {
    touch-action: manipulation;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}


.w-modal {
    /* disable global scrolling when m1ks are visible */
    overflow: hidden;
    height: 100vh;
}

.modal {
    display: none;

    /* dimensions: spanning the background from edge to edge */
    position:fixed;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: 1043; /* z-index needs to be >= elements on the site. */

    /* insures that the ::before pseudo element doesn't force wrap with fixed width content; */
    white-space: nowrap;

    /* styling */
    cursor: pointer;
    background: #333;

    background: rgba(0, 0, 0, 0.8);
    will-change: transform;

    /* position: centering content */
    justify-content: center;
    align-items: center;
}

.modal__open {
    display: flex;
}

/* support for nested modals. Does not work in IE8 (use JS to fix) */
.modal:last-of-type {
    background: rgba(0, 0, 0, 0.8);
}

.modal__content {
    /* make content container for positioned elements (close button) */
    position: relative;

    /* position: centering vertical and horizontal */
    text-align: left;
    vertical-align: middle;
    display: inline-block;

    overflow-y: auto;
    /*padding: 25px 25px 0;*/

    /* dimensions: handling large content */
    margin-left: 5%;
    margin-right: 5%;
    max-height: 95%;

    border-radius: 4px;

    box-sizing: border-box;

    /* styling */
    background: #fff;
    cursor: auto;

    /* reset white-space wrapping */
    white-space: normal;
}

@media screen and (max-width: 600px) {
    .modal__content {
        margin-left: 0;
        margin-right: 0;
    }
}

.modal__close {
    /* position: centering vertical and horizontal */
    position: absolute;
    z-index: 1044;
    top: 0;
    right: 0;

    line-height: 28px;
    width: 28px;
    font-size: 25px;

    cursor: pointer;
    text-align: center;
    font-family: Arial, sans-serif;
    color: #000;
    padding: 0;

    background: transparent;
    border: 0;
    opacity: 0.7;
}

.modal__close:before {
    content: "\2715";
}

.modal__close:hover {
    opacity: 1;
}

.modal__close:focus {
    outline: none;
}
.modal__close::-moz-focus-inner {
    border: 0;
    padding: 0;
}


.modal[aria-hidden="false"] {
    animation: tmfadeIn .6s cubic-bezier(0.0, 0.0, 0.2, 1);
}

.modal[aria-hidden="false"] .modal__content {
    animation: tmslideIn .3s cubic-bezier(0, 0, .2, 1);
}

@keyframes tmfadeIn {
    from {
        background: rgba(0, 0, 0, 0.4);
    }
    to {
        background: rgba(0, 0, 0, 0.8);
    }
}

@keyframes tmslideIn {
    from { transform: translateY(15%); }
    to { transform: translateY(0); }
}



/* handling phones and small screens */
@media only screen and (max-width: 1024px) {
    .modal-content {
        /* dimensions: maximize lightbox with for small screens */
        margin-left: 0;
        margin-right: 0;
        max-height: 98%;
        border-bottom: 10px solid transparent;
    }
}


.dropdown {
    position: absolute;
    z-index: 1039;
    display: none;
}

.dropdown__menu,
.dropdown__content {
    min-width: 160px;
    max-width: 360px;
    list-style: none;
    background: white;
    border-radius: 3px;
    box-shadow: 0 12px 28px 0 rgba(0, 0, 0, 0.2), 0 2px 4px 0 rgba(0, 0, 0, 0.1);
    overflow: visible;
    padding: 0;
    margin: 0;
}

.dropdown-open {
    display: block;
    left: 0;
    top: 0;
}

.dropdown .dropdown__menu li > a,
.dropdown .dropdown__menu label {
    display: block;
    color: inherit;
    text-decoration: none;
    line-height: 20px;
    padding: 4px 15px;
    margin: 0;
    white-space: nowrap;
}

.dropdown .dropdown__menu li:hover {
    background-color: #ffedd4;
}


.dots {
    position: absolute;
    z-index: 7039;
    display: none;
}

.dots__menu {
    user-select: none;
    min-width: 160px;
    max-width: 360px;
    list-style: none;
    background: white;
    border: solid 1px #ddd;
    border-radius: 2px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    overflow: visible;
    padding: 0;
    margin: 0;
}

.dots-open {
    display: block;
}

.dots .dots__menu span {
    cursor: pointer;
    display: block;
    color: inherit;
    text-decoration: none;
    line-height: 20px;
    padding: 4px 15px;
    margin: 0;
    white-space: nowrap;
}

.dots .dots__menu span:hover {
    background-color: #ffedd4;
}


.trigger {
    width: 36px;
    height: 36px;
    -webkit-transition: opacity .1s ease-out;
    transition: opacity .1s ease-out;
    opacity: .4;
    cursor: pointer;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2217%22%20height%3D%224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M1.5%203.5a1.5%201.5%200%201%201%200-3%201.5%201.5%200%200%201%200%203zm7%200a1.5%201.5%200%201%201%200-3%201.5%201.5%200%200%201%200%203zm7%200a1.5%201.5%200%201%201%200-3%201.5%201.5%200%200%201%200%203z%22%20fill%3D%22%2302102f%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E") no-repeat 50%;
    background-size: 17px 4px;
}

