:root {
    --highlight: #268751;
    --callout: #F0212D;
    --primary: #1A6F40;
    --nav_width: 215px;

    --font-fam-reg: 'Montserrat';
    --font-fam-btn: 'Montserrat';
    --font-fam-title: 'Montserrat';
    --font-fam-light: 'Montserrat';

    --clr-black: #000;
    --clr-white: #fff;

    --clr-grey-1: #bebebe;


    --clr-body-bg: #1A6F40;
    --clr-green-1: var(--primary);
    --clr-green-2: var(--highlight);
    --clr-green-3: #4a8e69;
    --clr-green-4: #00fe40;
    --clr-green-5: #519e73;

    --clr-red-1: #f0202c;
    --clr-red-2: #fa1827;
    --clr-red-3: #ff212e;

    --clr-orange-1: #fda900;
    --clr-yellow: #ffff00;
    --clr-gold: #ffd700;

    --border-radius-tiny: 8px;
    --border-radius-small: 10px;
    --border-radius-med: 15px;
    --border-radius-big: 20px;
    --border-radius-circle: 50%;

    /* just to make sure there's this CSS there for any generic ones (i.e. popups) */
    --ui-scale: 1;
    --canvas-scale: 1;
}

html, body {
    /* prevent overscrolling vertically on mobile devices */
    overscroll-behavior-y: none;

    /* prevent horizontal scrollbar on mobile devices */
    position: relative;
    overflow-x: hidden;
    max-width: 100%;

    color: #ffffff;
    font-family: Montserrat, sans-serif;
}
html {
    margin: 0;
    padding: 0;
    font-family: var(--font-fam-reg), 'Helvetica';
    font-size: calc(14px * var(--ui-scale));
    line-height: calc(16px * var(--ui-scale));;
    width: 100%;
    height: 100%;

    background: var(--clr-body-bg);
    color: var(--clr-pri);
    line-height: 1.15;

    box-sizing: border-box;
    max-width: 100%;
    -webkit-text-size-adjust: 100%;
    overflow-x: hidden;
}
body {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;

    /*user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -ms-user-select: none;*/

    /*background: #237252;*/
    background: var(--clr-body-bg);
}
.frozen body {
    overflow-y: hidden;
}
body, p, span, a, li, button, input[type="text"], textarea, label {
    font-family: Montserrat, sans-serif;
}
*, body, p, h1, h2, h3, h4, li, a, a:visited, a:hover, a:active, label, body div.wpforms-container-full .wpforms-field-label {
    color: #ffffff;
}
*, ::before, ::after {
    box-sizing: inherit;
}
a {
    font-weight: 600;
    text-decoration: underline;
    background-color: rgba(0,0,0,0);
}
a:hover {
    text-decoration: none;
}
dfn, cite, em, i {
    font-style: italic;
}
ol, ul {
    box-sizing: border-box;
    margin: 0 0 1.5em 1rem;
}
ul {
    list-style: disc;
}
p, li {
    font-size: 0.775rem;
}
p, main li {
    line-height: 1.6em;
}
b, strong {
    font-weight: bolder;
}
h1, h2, h3, h4, p, main li {
    margin-bottom: 1rem;
}
h2, h3 {
    line-height: 1.4em;
}
h2 {
    font-size: 1.65rem;
}
h3 {
    font-size: 1.1rem;
}
.flex {
    display: flex;
}
.flex-wrap {
    flex-wrap: wrap;
}
.flex-col {
    flex-direction: column;
}
.full-width, .col {
    width: 100%;
}
.txt-center {
    text-align: center;
}
.text-center {
    text-align: center;
}
.gap-03 {
    gap: 0.3rem;
}
.gap-1 {
    gap: 1rem;
}
.justify-center {
    justify-content: center;
}
.align-center {
    align-items: center;
}
.align-start {
    align-items: flex-start;
}
.visually-hidden {
    width: 0;
    height: 0;
    font-size: .1px;
    position: absolute;
    left: -200%;
}
.separator {
    border-bottom: 3px solid #fff;
    margin-bottom: 3em;
}
.hidden {
    opacity: 0;
    pointer-events: none;
}
.not-displayed {
    display: none !important;
}
.numeric-span {
    font-variant-numeric: tabular-nums;
}
.font-size-s {
    font-size: 0.5rem;
}
.font-size-m {
    font-size: 0.7rem;
}
.font-size-reg {
    font-size: 1em;
}
.font-size-l {
    font-size: 1.5rem;
}
.font-size-xl {
    font-size: 2rem;
}
/* START FA */
.fa, .fa-brands, .fa-classic, .fa-regular, .fa-sharp, .fa-solid, .fab, .far, .fas {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: var(--fa-display,inline-block);
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    text-rendering: auto;
}
.fa-classic, .fa-regular, .fa-solid, .far, .fas {
    font-family: "Font Awesome 6 Free";
}
.fa-solid, .fas {
    font-weight: 900;
}
.fa-brands, .fab {
    font-family: "Font Awesome 6 Brands";
    font-weight: 400;
}
/*.fa-instagram::before {*/
/*    content: "\f16d";*/
/*}*/
/* END FA */

/* START buttons */
.btn {
    position: relative;
    display: inline-flex;
    padding: 10px;
    border-radius: var(--border-radius-med);
    border: 1px solid var(--clr-white);
    color: var(--clr-white);

    font-size: 18px;
    line-height: 24px;
    min-width: 46px;
    font-weight: bold;
    justify-content: center;
    text-decoration: none;

    align-items: center;
    gap: 0 .25em;
}
.btn.btn-small {
    padding: 5px 10px;
    font-size: 12px;
    line-height: 16px;
    min-width: 38px;
    border-radius: var(--border-radius-small)
}
.btn.btn-medium {
    padding: 5px 10px;
    font-size: 14px;
    line-height: 18px;
    min-width: 42px;
    border-radius: var(--border-radius-small)
}
.btn.disabled {
    opacity: 0.5;
    pointer-events: none;
}
.btn:not(.is-loading) .fa-spinner {
    display: none;
}
.btn.is-loading .fa-spinner {
    position: absolute;
    right: calc(20px * var(--ui-scale));
    top: 0;
    bottom: 0;
    height: max-content;
    margin: auto 0;
}
.btn.is-loading.save-profile .fa-spinner {
    position: relative;
    right: unset;
}
.btn.is-loading.btn-social .fa-spinner {
    color: black;
}
.btn.btn-transition {
    transition: filter 150ms ease-in-out;
}
.btn:hover {
    cursor: pointer;
    filter: brightness(120%);
}
.btn-primary {
    background: var(--clr-green-2);
}
.btn-secondary {
    background: var(--clr-red-1);
}
.btn-tertiary {
    background: var(--primary);
}
.btn-danger {
    background: #000;
}
.btn-link {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    border-radius: var(--border-radius-tiny);
    text-decoration: none;
    font-size: 16px;
}
.btn-underline {
    display: inline;
    text-decoration: underline;
    color: inherit;
    font-size: 1em;
    font-weight: 600;
    cursor: pointer;
    color: var(--clr-yellow);
}
.btn-pgn {
    background: none;
    width: 1.8em;
    height: 1.8em;
    min-width: max-content;
    line-height: 1;
    display: inline-flex;
    justify-content: center;
    align-items: center;

    border-radius: var(--border-radius-circle);
    border: none;
}
.btn-pgn.btn-gap {
    pointer-events: none;
    width: max-content;
    margin-left: -3px;
    margin-right: -3px;
}

.btn-pgn:first-child {
    margin-left: auto; /* if btn-pgn is first button, this will help center everything, but not push it to the very left if there's no prev btn */
}
.btn-pgn:last-child {
    margin-right: auto; /* if btn-pgn is last button, this will help center everything, but not push it to the very right if there's no next btn */
}
.btn-pgn.is-prev {
    border-radius: var(--border-radius-med);
    margin-left: 0;
    margin-right: auto;
}
.btn-pgn.is-prev > * {
    margin-left: 0.3em;
    font-size: 0.8em;
}
.btn-pgn.is-next {
    border-radius: var(--border-radius-med);
    margin-right: 0;
    margin-left: auto;
}
.btn-pgn.is-next > * {
    margin-left: 0.1em;
    font-size: 0.8em;
}
.btn-pgn.active {
    background: var(--clr-green-2);
    pointer-events: none;
}
.btn-pgn:hover {
    background: var(--clr-green-2);
    filter: brightness(100%);
}
.btn.tiny-border-radius {
    border-radius: var(--border-radius-tiny);
}
.btn-toggle-group {
    display: flex;
    align-items: center;
    position: relative;
    width: max-content;
    font: calc(18px * var(--ui-scale))/calc(18px * var(--ui-scale)) var(--font-fam-title);
    font-weight: 700;
    color: var(--clr-green1);
    border: calc(1px * var(--ui-scale)) white solid;
    border-radius: var(--border-radius-med);
    /*overflow: hidden;*/
}
.btn-toggle-group .btn {
    flex: 1;
    color: var(--clr-grey-1);
    border: 0;
    margin: 0;
    border-radius: 0;
    background: var(--clr-green2);
    font-weight: bold;
    min-width: max-content;
    padding: calc(10px * var(--ui-scale)) calc(20px * var(--ui-scale));
    font-size: calc(16px * var(--ui-scale));
    transform: none !important;
    cursor: pointer;
    opacity: 0.7;
}
.btn-toggle-group .btn:first-child {
    border-top-left-radius: var(--border-radius-med);
    border-bottom-left-radius: var(--border-radius-med);
}
.btn-toggle-group .btn:last-child {
    border-top-right-radius: var(--border-radius-med);
    border-bottom-right-radius: var(--border-radius-med);
}
.btn-toggle-group .btn:hover {
    filter: brightness(120%);
}
.btn-toggle-group .btn.active {
    background: var(--clr-red-1);
    color: white;
    pointer-events: none;
    opacity: 1;
}
/* END buttons */

/* START icons */
.icon {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
}
.icon.em-1 {
    width: 1em;
    height: 1em;
}
.icon.google {
    background: url('../images_nonopt/icons/google_icon.png');
    background-size: 100% 100%;
}
.icon.poker-patio {
    background: url('../images_nonopt/icons/favicon-32x32.png?v=2');
    background-size: 100% 100%;
}
.icon.pp-member {
    background: url('../images/icons/pp_gold_small.png');
    background-size: auto 100%;
}
.icon.chips.chips-1 {
    background: url('../images/shop/chips/1.png');
    width: 1.3125em;
    background-size: 100% 100%;
}
.icon.chips.chips-1.em-1 {
    width: 0.875em;
}
.icon.chips.chips-1.em-1.chips-icon-stats-page {
    margin-top: -0.2em;
    margin-left: 0.1em;
}
/* END icons */

/* social adjustments */
.a2a_full {
    /* center it better vertically*/
    top: 0 !important;
    bottom: 0 !important;
    margin-top: auto !important;
    margin-bottom: auto !important;
}
.a2a_overlay {
    background: rgba(0,0,0,0.4) !important;
}
.a2a_menu, .a2a_menu_find_container {
    border-radius: 10px !important;
}

/* Loaders */
.loader-holder {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    background: rgba(0,0,0,0.5);
}
/* END Loaders */

.site-logo {
    display: block;
    margin: 0 auto;
    width: auto;
    max-width: 233px;
    margin-top: .65em;
    margin-bottom: calc(1em + 11px);
}
.site-logo img {
    max-width: 100%;
}
/* misc random adjustments for design requirements : */
.site-logo + p {
    margin-bottom: calc(1rem + 8px);
}
.template-signup .site-logo {
    margin-bottom: calc(1em + 7px);
}
.template-forgot h1 {
    font-size: 24px;
}
.template-forgot h1 + p {
    margin-bottom: calc(1rem + 8px);font-size: 24px;
}

.site-logo + form {
    padding-top: 4px;
}

.yellow-text {
    color: yellow !important;
}
.special-event-note {
    font-size: 0.7em;
}