/* ==========================================================================

IMPORTS & RESET
========================================================================== */
@import url("https://blog.moneywisemom.ca/wp-content/themes/mwm/assets/fontawesome/css/fontawesome.min.css");
@import url("https://blog.moneywisemom.ca/wp-content/themes/mwm/assets/fontawesome/css/brands.min.css");
@import url("https://blog.moneywisemom.ca/wp-content/themes/mwm/assets/fontawesome/css/solid.min.css");
@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400");

/* Reset */
*, *::before, *::after {
box-sizing: border-box;
margin: 0;
padding: 0;
}

html {
font-size: 100%;
}

body {
line-height: 1;
text-size-adjust: none;
background-color: #935d8c;
background-image: url("images/overlay.png"), linear-gradient(45deg, #e37682 15%, #5f4d93 85%);
color: rgba(255, 255, 255, 0.65);
font-family: "Source Sans Pro", Helvetica, sans-serif;
font-size: 17pt;
font-weight: 300;
line-height: 1.65;
-ms-overflow-style: scrollbar;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block;
}

ol, ul{
list-style: none;
}

blockquote, q {
quotes: none;
}

blockquote::before, blockquote::after, q::before, q::after {
content: '';
content: none;
}

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

mark {
background-color: transparent;
color: inherit;
}

/* Preload state */
body.is-preload *, body.is-preload *::before, body.is-preload *::after {
animation: none !important;
transition: none !important;
}

body.is-preload #header.alt > * {
opacity: 0;
}

body.is-preload #header.alt .logo {
transform: scale(0.8) rotate(-30deg);
}

/* ==========================================================================
2. BASE TYPOGRAPHY & ELEMENTS
========================================================================== */
a {
transition: color 0.2s ease, border-bottom 0.2s ease;
text-decoration: none;
border-bottom: dotted 1px;
color: inherit;
}

a:hover {
border-bottom-color: transparent;
color: #ffffff;
}

strong, b {
font-weight: 400;
}

em, i {
font-style: italic;
}

p {
margin: 0 0 2em 0;
}

p.content {
columns: 20em 2;
column-gap: 2em;
text-align: justify;
}

h1, h2, h3, h4, h5, h6 {
font-weight: 300;
line-height: 1.5;
margin: 0 0 0.7em 0;
letter-spacing: -0.025em;
color: #ffffff;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
color: inherit;
text-decoration: none;
}

h1 { font-size: 2.5em; line-height: 1.2; }
h2 { font-size: 1.5em; }
h3 { font-size: 1.25em; }
h4 { font-size: 1.1em; }
h5 { font-size: 0.9em; }
h6 { font-size: 0.7em; }

sub, sup {
font-size: 0.8em;
position: relative;
top: 0.5em;
}

blockquote {
border-left: solid 4px rgba(255, 255, 255, 0.35);
font-style: italic;
margin: 0 0 2em 0;
padding: 0.5em 0 0.5em 2em;
}

code {
background: rgba(255, 255, 255, 0.075);
border-radius: 8px;
border: solid 1px rgba(255, 255, 255, 0.35);
margin: 0 0.25em;
font-family: "Courier New", monospace;
font-size: 0.9em;
padding: 0.25em 0.65em;
}

pre {
overflow-scrolling: touch;
font-family: "Courier New", monospace;
font-size: 0.9em;
margin: 0 0 2em 0;
}

pre code {
display: block;
line-height: 1.75;
padding: 1em 1.5em;
overflow-x: auto;
}

hr {
border: 0;
border-bottom: solid 1px rgba(255, 255, 255, 0.35);
margin: 2em 0;
}

hr.major {
margin: 3em 0;
}

.align-left { text-align: left; }
.align-center { text-align: center; }
.align-right { text-align: right; }

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

/* ==========================================================================
3. FLEX GRID SYSTEM
========================================================================== */
.row {
display: flex;
flex-wrap: wrap;
box-sizing: border-box;
align-items: stretch;
margin-top: 0;
margin-left: -1.5em;
}

.row > * {
box-sizing: border-box;
padding: 0 0 0 1.5em;
}

.row.gtr-uniform { margin-top: -1.5em; }
.row.gtr-uniform > * { padding-top: 1.5em; }
.row.gtr-uniform > * > :last-child { margin-bottom: 0; }

.row.aln-left { justify-content: flex-start; }
.row.aln-center { justify-content: center; }
.row.aln-right { justify-content: flex-end; }
.row.aln-top { align-items: flex-start; }
.row.aln-middle { align-items: center; }
.row.aln-bottom { align-items: flex-end; }

.row > .imp { order: -1; }

/* Grid Columns & Offsets */
.row > .col-1  { width: 8.33333%; }  .row > .off-1  { margin-left: 8.33333%; }
.row > .col-2  { width: 16.66667%; } .row > .off-2  { margin-left: 16.66667%; }
.row > .col-3  { width: 25%; }        .row > .off-3  { margin-left: 25%; }
.row > .col-4  { width: 33.33333%; } .row > .off-4  { margin-left: 33.33333%; }
.row > .col-5  { width: 41.66667%; } .row > .off-5  { margin-left: 41.66667%; }
.row > .col-6  { width: 50%; }        .row > .off-6  { margin-left: 50%; }
.row > .col-7  { width: 58.33333%; } .row > .off-7  { margin-left: 58.33333%; }
.row > .col-8  { width: 66.66667%; } .row > .off-8  { margin-left: 66.66667%; }
.row > .col-9  { width: 75%; }        .row > .off-9  { margin-left: 75%; }
.row > .col-10 { width: 83.33333%; } .row > .off-10 { margin-left: 83.33333%; }
.row > .col-11 { width: 91.66667%; } .row > .off-11 { margin-left: 91.66667%; }
.row > .col-12 { width: 100%; }       .row > .off-12 { margin-left: 100%; }

/* Grid Gutters */
.row.gtr-0 { margin-left: 0em; margin-top: 0; }
.row.gtr-0 > * { padding: 0; }
.row.gtr-0.gtr-uniform { margin-top: 0em; }
.row.gtr-0.gtr-uniform > * { padding-top: 0em; }

.row.gtr-25 { margin-left: -0.375em; margin-top: 0; }
.row.gtr-25 > * { padding: 0 0 0 0.375em; }
.row.gtr-25.gtr-uniform { margin-top: -0.375em; }
.row.gtr-25.gtr-uniform > * { padding-top: 0.375em; }

.row.gtr-50 { margin-left: -0.75em; margin-top: 0; }
.row.gtr-50 > * { padding: 0 0 0 0.75em; }
.row.gtr-50.gtr-uniform { margin-top: -0.75em; }
.row.gtr-50.gtr-uniform > * { padding-top: 0.75em; }

.row.gtr-150 { margin-left: -2.25em; margin-top: 0; }
.row.gtr-150 > * { padding: 0 0 0 2.25em; }
.row.gtr-150.gtr-uniform { margin-top: -2.25em; }
.row.gtr-150.gtr-uniform > * { padding-top: 2.25em; }

.row.gtr-200 { margin-left: -3em; margin-top: 0; }
.row.gtr-200 > * { padding: 0 0 0 3em; }
.row.gtr-200.gtr-uniform { margin-top: -3em; }
.row.gtr-200.gtr-uniform > * { padding-top: 3em; }

/* ==========================================================================
4. FORMS & INPUTS
========================================================================== */
form {
margin: 0 0 2em 0;
}

label {
display: block;
font-size: 0.9em;
font-weight: 400;
margin: 0 0 1em 0;
}

input[type="text"],
input[type="password"],
input[type="email"],
select,
textarea {
appearance: none;
border-radius: 8px;
border: solid 1px rgba(255, 255, 255, 0.35);
background-color: rgba(255, 255, 255, 0.075);
color: #ffffff;
display: block;
outline: 0;
padding: 0 1em;
text-decoration: none;
width: 100%;
}

input[type="text"]:invalid,
input[type="password"]:invalid,
input[type="email"]:invalid,
select:invalid,
textarea:invalid {
box-shadow: none;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
select:focus,
textarea:focus {
border-color: #8cc9f0;
box-shadow: 0 0 0 1px #8cc9f0;
}

input[type="text"],
input[type="password"],
input[type="email"],
select {
height: 2.75em;
}

textarea {
padding: 0.75em 1em;
}

select {
background-size: 1.25rem;
background-repeat: no-repeat;
background-position: calc(100% - 1rem) center;
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'%3E%3Cpath d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9c0,0.4-0.1,0.6-0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-0.2-0.4-0.5-0.4-0.9c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-0.4S9.1,12.1,9.4,12.3z' fill='rgba(255, 255, 255, 0.35)'/%3E%3C/svg%3E");
padding-right: 2.75em;
text-overflow: ellipsis;
}

select option {
color: #ffffff;
background: #935d8c;
}

select::-ms-expand { display: none; }

/* Checkboxes and Radios */
input[type="checkbox"],
input[type="radio"] {
appearance: none;
display: block;
float: left;
margin-right: -2em;
opacity: 0;
width: 1em;
z-index: -1;
}

input[type="checkbox"] + label,
input[type="radio"] + label {
text-decoration: none;
cursor: pointer;
display: inline-block;
font-size: 1em;
font-weight: 300;
padding-left: 2.4em;
padding-right: 0.75em;
position: relative;
color: rgba(255, 255, 255, 0.65);
}

input[type="checkbox"] + label::before,
input[type="radio"] + label::before {
font-family: 'Font Awesome 5 Free';
font-weight: 900;
font-style: normal;
font-variant: normal;
text-rendering: auto;
line-height: 2.0625em;
text-transform: none !important;
border-radius: 8px;
border: solid 1px rgba(255, 255, 255, 0.35);
background: rgba(255, 255, 255, 0.075);
content: '';
display: inline-block;
font-size: 0.8em;
height: 2.0625em;
width: 2.0625em;
left: 0;
position: absolute;
text-align: center;
top: 0;
}

input[type="radio"] + label::before {
border-radius: 100%;
}

input[type="checkbox"]:checked + label::before,
input[type="radio"]:checked + label::before {
content: '\f00c';
background-color: #ffffff;
border-color: #ffffff;
color: #935d8c;
}

input[type="checkbox"]:focus + label::before,
input[type="radio"]:focus + label::before {
border-color: #8cc9f0;
box-shadow: 0 0 0 1px #8cc9f0;
}

/* Placeholders */
::placeholder {
color: rgba(255, 255, 255, 0.5) !important;
opacity: 1;
}

.formerize-placeholder {
color: rgba(255, 255, 255, 0.5) !important;
}

/* ==========================================================================
5. BUTTONS & UI COMPONENTS
========================================================================== /
/ Box */
.box {
border-radius: 8px;
border: solid 1px rgba(255, 255, 255, 0.35);
margin-bottom: 2em;
padding: 1.5em;
}

.box > :last-child,
.box > :last-child > :last-child,
.box > :last-child > :last-child > :last-child {
margin-bottom: 0;
}

.box.alt {
border: 0;
border-radius: 0;
padding: 0;
}

/* Buttons */
input[type="submit"],
input[type="reset"],
input[type="button"],
button,
.button {
appearance: none;
transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
border-radius: 8px;
border: 0;
cursor: pointer;
display: inline-block;
font-weight: 300;
height: 2.75em;
line-height: 2.75em;
min-width: 9.25em;
padding: 0 1.5em;
text-align: center;
text-decoration: none;
white-space: nowrap;
background-color: transparent;
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.35);
color: #ffffff !important;
}

input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
button:hover,
.button:hover {
background-color: rgba(255, 255, 255, 0.075);
}

input[type="submit"]:active,
input[type="reset"]:active,
input[type="button"]:active,
button:active,
.button:active {
background-color: rgba(255, 255, 255, 0.2);
}

input[type="submit"].primary,
input[type="reset"].primary,
input[type="button"].primary,
button.primary,
.button.primary {
background-color: #8cc9f0;
color: #ffffff !important;
box-shadow: none;
}

input[type="submit"].primary:hover,
input[type="reset"].primary:hover,
input[type="button"].primary:hover,
button.primary:hover,
.button.primary:hover {
background-color: #9acff2;
}

input[type="submit"].primary:active,
input[type="reset"].primary:active,
input[type="button"].primary:active,
button.primary:active,
.button.primary:active {
background-color: #7ec3ee;
}

.button.icon { padding-left: 1.35em; }
.button.icon::before { margin-right: 0.5em; color: rgba(255, 255, 255, 0.5); }
.button.primary.icon::before { color: #ffffff !important; }
.button.fit { width: 100%; }
.button.small { font-size: 0.8em; }
.button.large { font-size: 1.35em; }

.button.disabled, button:disabled, input:disabled {
pointer-events: none;
opacity: 0.25;
}

/* Icons */
.icon {
text-decoration: none;
transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
border-bottom: none;
position: relative;
}

.icon::before {
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
line-height: 1;
text-transform: none !important;
font-family: 'Font Awesome 5 Free';
font-weight: 400;
}

.icon > .label { display: none; }
.icon.solid::before { font-weight: 900; }
.icon.brands::before { font-family: 'Font Awesome 5 Brands'; }

.icon.major {
border: solid 1px rgba(255, 255, 255, 0.35);
display: inline-block;
border-radius: 100%;
padding: 0.65em;
margin: 0 0 2em 0;
cursor: default;
}

.icon.major::before {
display: inline-block;
font-size: 6.25rem;
width: 2.25em;
height: 2.25em;
line-height: 2.2em;
border-radius: 100%;
border: solid 1px rgba(255, 255, 255, 0.35);
text-align: center;
}

.icon.alt {
display: inline-block;
border: solid 1px rgba(255, 255, 255, 0.35);
border-radius: 100%;
color: #ffffff;
}

.icon.alt::before {
display: block;
font-size: 1.25em;
width: 2em;
height: 2em;
text-align: center;
line-height: 2em;
}

.icon.alt:hover { background-color: rgba(255, 255, 255, 0.075); }
.icon.alt:active { background-color: rgba(255, 255, 255, 0.2); }

.icon.style1 { color: #efa8b0; }
.icon.style2 { color: #c79cc8; }
.icon.style3 { color: #a89cc8; }
.icon.style4 { color: #9bb2e1; }
.icon.style5 { color: #8cc9f0; }

/* Images */
.image {
border-radius: 8px;
border: 0;
display: inline-block;
position: relative;
}

.image img {
border-radius: 8px;
display: block;
}

.image.left, .image.right { max-width: 40%; }
.image.left img, .image.right img { width: 100%; }
.image.left { float: left; margin: 0 1.5em 1em 0; top: 0.25em; }
.image.right { float: right; margin: 0 0 1em 1.5em; top: 0.25em; }
.image.fit, .image.main { display: block; width: 100%; }
.image.fit { margin: 0 0 2em 0; }
.image.fit img, .image.main img { width: 100%; }
.image.main { margin: 0 0 3em 0; }

/* Lists & Tables */
ol { list-style: decimal; margin: 0 0 2em 0; padding-left: 1.25em; }
ol li { padding-left: 0.25em; }
ul { list-style: disc; margin: 0 0 2em 0; padding-left: 1em; }
ul li { padding-left: 0.5em; }

ul.alt { list-style: none; padding-left: 0; }
ul.alt li { border-top: solid 1px rgba(255, 255, 255, 0.35); padding: 0.5em 0; }
ul.alt li:first-child { border-top: 0; padding-top: 0; }

dl { margin: 0 0 2em 0; }
dl dt { display: block; font-weight: 400; margin: 0 0 1em 0; color: #ffffff; }
dl dd { margin-left: 2em; }
dl.alt dt { width: 3em; margin: 0; clear: left; float: left; }
dl.alt dd { margin: 0 0 0.85em 5.5em; }
dl.alt::after { content: ''; display: block; clear: both; }

ul.actions {
display: flex;
cursor: default;
list-style: none;
margin-left: -1em;
padding-left: 0;
}

ul.actions li { padding: 0 0 0 1em; vertical-align: middle; }
ul.actions.special { justify-content: center; width: 100%; margin-left: 0; }
ul.actions.special li:first-child { padding-left: 0; }
ul.actions.stacked { flex-direction: column; margin-left: 0; }
ul.actions.stacked li { padding: 1.3em 0 0 0; }
ul.actions.stacked li:first-child { padding-top: 0; }
ul.actions.fit { width: calc(100% + 1em); }
ul.actions.fit li { flex-grow: 1; flex-shrink: 1; width: 100%; }
ul.actions.fit li > * { width: 100%; }

ul.icons { cursor: default; list-style: none; padding-left: 0; }
ul.icons li { display: inline-block; padding: 0 0.65em 0 0; }
ul.icons li:last-child { padding-right: 0 !important; }

/* Tables */
.table-wrapper { overflow-x: auto; }
table { margin: 0 0 2em 0; width: 100%; }
table tbody tr { border: solid 1px rgba(255, 255, 255, 0.35); border-left: 0; border-right: 0; }
table tbody tr:nth-child(2n + 1) { background-color: rgba(255, 255, 255, 0.075); }
table td { padding: 0.75em; }
table th { color: #ffffff; font-size: 0.9em; font-weight: 400; padding: 0 0.75em 0.75em 0.75em; text-align: left; }
table thead { border-bottom: solid 2px rgba(255, 255, 255, 0.35); }
table tfoot { border-top: solid 2px rgba(255, 255, 255, 0.35); }

/* Features, Statistics & Spotlight */
.features {
display: flex;
flex-wrap: wrap;
justify-content: center;
width: calc(100% + 2em);
margin: 0 0 3em -2em;
padding: 0;
list-style: none;
}

.features li {
width: calc(33.33333% - 2em);
margin-left: 2em;
margin-top: 3em;
}

.features li:nth-child(-n+3) { margin-top: 0; }
.features li > :last-child { margin-bottom: 0; }

.statistics {
display: flex;
width: 100%;
margin: 0 0 3em 0;
padding: 0;
list-style: none;
cursor: default;
}

.statistics li {
flex: 1;
padding: 1.5em;
color: #ffffff;
text-align: center;
}

.statistics li.style1 { background-color: #efa8b0; }
.statistics li.style2 { background-color: #c79cc8; }
.statistics li.style3 { background-color: #a89cc8; }
.statistics li.style4 { background-color: #9bb2e1; }
.statistics li.style5 { background-color: #8cc9f0; }

.statistics li strong, .statistics li b {
display: block;
font-size: 2em;
line-height: 1.1;
color: inherit !important;
font-weight: 300;
letter-spacing: -0.025em;
}

.statistics li:first-child { border-top-left-radius: 8px; border-bottom-left-radius: 8px; }
.statistics li:last-child { border-top-right-radius: 8px; border-bottom-right-radius: 8px; }
.statistics li.icon { display: inline-block; }
.statistics li.icon::before { font-size: 2.75rem; line-height: 1.3; }

.spotlight {
display: flex;
align-items: center;
margin: 0 0 2em 0;
}

.spotlight .content { flex: 1; }
.spotlight .content > :last-child { margin-bottom: 0; }
.spotlight .content header.major { margin: 0 0 2em 0; }

.spotlight .image {
display: inline-block;
margin-left: 4em;
padding: 0.65em;
border-radius: 100%;
border: solid 1px rgba(255, 255, 255, 0.35);
}

.spotlight .image img {
display: block;
border-radius: 100%;
width: 16em;
}

section.special, article.special { text-align: center; }

header.major { margin-bottom: 3em; }
header.major h2 { font-size: 2em; }
header.major h2::after {
display: block;
content: '';
width: 3.25em;
height: 2px;
margin: 0.7em 0 1em 0;
border-radius: 2px;
background-color: rgba(255, 255, 255, 0.35);
}

section.special header.major h2::after,
article.special header.major h2::after,
header.major.special h2::after {
margin-left: auto;
margin-right: auto;
}

header.major p { font-size: 1.25em; letter-spacing: -0.025em; }
header.major.special { text-align: center; }
footer.major { margin-top: 3em; }

/* ==========================================================================
6. LAYOUT REGIONS & THEME OVERRIDES
========================================================================== */
#wrapper {
width: 64em;
max-width: calc(100% - 4em);
margin: 0 auto;
}

#header {
padding: 5em 5em 1em 5em;
text-align: center;
}

#header h1 { margin: 0 0 0.25em 0; }
#header p { font-size: 1.25em; letter-spacing: -0.025em; margin: 0; }

#header.alt { padding: 7em 5em 4em 5em; }
#header.alt h1 { font-size: 3.25em; }
#header.alt > * {
transition: opacity 3s ease 0.5s;
opacity: 1;
}

#header.alt .logo {
transition: opacity 1.25s ease 0s, transform 0.5s ease 0s;
display: block;
margin: 0 0 1.5em 0;
}

#header.alt .logo img {
display: block;
margin: 0 auto;
max-width: 75%;
}

/* Nav */
#nav {
transition: background-color 0.2s ease, border-top-left-radius 0.2s ease, border-top-right-radius 0.2s ease, padding 0.2s ease;
background-color: #f7f7f7;
color: #636363;
position: absolute;
width: 64em;
max-width: calc(100% - 4em);
padding: 1em;
border-top-left-radius: 0.25em;
border-top-right-radius: 0.25em;
cursor: default;
text-align: center;
}

#nav input, #nav select, #nav textarea, #nav strong, #nav b, #nav h1, #nav h2, #nav h3, #nav h4, #nav h5, #nav h6 {
color: #636363;
}

#nav a { color: #000000 !important; }
#nav a:hover { color: #636363; }
#nav blockquote { border-left-color: #dddddd; }
#nav code { background: rgba(222, 222, 222, 0.25); border-color: #dddddd; }
#nav hr { border-bottom-color: #dddddd; }

#nav ul { margin: 0; padding: 0; list-style: none; }
#nav ul li {
transition: margin 0.2s ease;
display: inline-block;
margin: 0 0.35em;
padding: 0;
vertical-align: middle;
position: relative;
}

#nav ul li a {
transition: font-size 0.2s ease;
display: inline-block;
height: 2.25em;
line-height: 2.25em;
padding: 0 1.25em;
border: 0;
border-radius: 8px;
box-shadow: inset 0 0 0 1px transparent;
}

#nav ul li a:hover { background-color: rgba(222, 222, 222, 0.25); }
#nav ul li a.active { background-color: #ffffff; box-shadow: none; }

/* Submenu Dropdown */
#nav li ul {
display: none;
position: absolute;
top: 100%;
left: 0;
background-color: #f0f0f0;
padding: 10px;
border: 1px solid #ccc;
}

#nav li:hover ul { display: block; }
#subnav { text-align: left; }
#subnav a { white-space: nowrap; }

#nav.alt {
position: fixed;
top: 0;
padding: 0.5em 1em;
background-color: rgba(247, 247, 247, 0.95);
border-top-left-radius: 0;
border-top-right-radius: 0;
z-index: 10000;
}

#nav.alt ul li { margin: 0 0.175em; }
#nav.alt ul li a { font-size: 0.9em; }
#nav + #main { padding-top: 4.25em; }

/* Content Wrapper & Main */
#content-wrapper {
display: flex;
width: 100%;
background-color: #ffffff;
color: #000000;
}

#main {
flex: 0 0 80%;
background-color: #ffffff;
color: #636363;
border-radius: 0.25em;
}

#main, #main h1, #main h2, #main h3, #main h4, #main h5, #main h6, #main .button, #main dl dt {
color: #000000 !important;
}

#main a { color: #bb3eb2 !important; }
#main a:hover { color: #636363; }

#main blockquote { border-left-color: #dddddd; }
#main code { background: rgba(222, 222, 222, 0.25); border-color: #dddddd; }
#main hr, #main .box, #main ul.alt li, #main .spotlight .image, #main .icon.major, #main .icon.major::before, #main .icon.alt, #main table tbody tr, #main table thead, #main table tfoot, #main table.alt tbody tr td {
border-color: #dddddd;
}

#main input[type="text"], #main input[type="password"], #main input[type="email"], #main select, #main textarea {
background-color: rgba(222, 222, 222, 0.25);
border-color: #dddddd;
}

#main input[type="submit"], #main input[type="reset"], #main input[type="button"], #main button, #main .button {
background-color: transparent;
box-shadow: inset 0 0 0 1px #dddddd;
color: #636363 !important;
}

#main .button.primary {
background-color: #90618f;
color: #ffffff !important;
box-shadow: none;
}

#main .button.primary:hover { background-color: #9acff2; }
#main .button.primary:active { background-color: #7ec3ee; }

#main header.major h2::after {
background-image: linear-gradient(90deg, #efa8b0, #a89cc8, #8cc9f0);
}

#main > .main {
padding: 5em 5em 3em 5em;
border-top: solid 1px #dddddd;
}

#main > .main:first-child { border-top: 0; }

#main > .main > .image.main:first-child {
margin: -5em 0 5em -5em;
width: calc(100% + 10em);
border-radius: 0.25em 0.25em 0 0;
}

#main > .main > .image.main:first-child img {
border-radius: 0.25em 0.25em 0 0;
}

#main article img {
background: #ffffff;
border: 1px solid #e2e8f0;
border-radius: 6px;
padding: 12px;
box-shadow: 0 1px 3px rgba(0,0,0,0.05);
margin: 1.5rem auto;
display: block;
max-width: 100%;
height: auto;
}

/* Sidebar */
#sidebar {
flex: 0 0 20%;
padding: 5em 1em 2em;
border-left: 1px solid #eaeaea;
padding-left: 2rem;
}

#sidebar h2 { color: #000000; font-size: 1em; line-height: 1.5em; margin-top: 2em; }
#sidebar a { color: #bb3eb2; }
#sidebar a:hover { color: #bb3eb2; border-bottom: transparent; }

/* Footer */
#footer {
display: flex;
flex-wrap: wrap;
padding: 5em 5em 3em 5em;
width: calc(100% + 2em);
margin: 0 auto;
}

#footer > * {
width: calc(33% - 2em);
margin-left: 2em;
}

#footer .copyright {
width: 100%;
margin: 2.5em 0 2em 0;
font-size: 0.8em;
text-align: center;
}

/* ==========================================================================
7. WIDGETS & THIRD-PARTY STYLES
========================================================================== /
/ MailPoet Forms */
#mailpoet_form_2 {
border-radius: 24px;
background: linear-gradient(180deg, rgb(255,233,112) 0%, rgb(230,174,70) 51%, rgb(228,37,111) 100%);
text-align: left;
width: 100%;
}

#mailpoet_form_2 form { margin-bottom: 0; padding: 30px; }
#mailpoet_form_2 p.mailpoet_form_paragraph.last { margin-bottom: 0; }
#mailpoet_form_2 h2.mailpoet-heading { margin: 10px 0; }
#mailpoet_form_2.mailpoet_column_with_background { padding: 10px; }
#mailpoet_form_2 .mailpoet_paragraph { line-height: 20px; margin-bottom: 20px; }
#mailpoet_form_2 .mailpoet_message { margin: 0; padding: 0 20px; }

#mailpoet_form_2 .mailpoet_text, #mailpoet_form_2 .mailpoet_textarea { width: 200px; display: block; }
#mailpoet_form_2.mailpoet_validate_success,
#mailpoet_form_2 .parsley-success { color: #00d084; }
#mailpoet_form_2.mailpoet_validate_error,
#mailpoet_form_2 .parsley-error,
#mailpoet_form_2 .parsley-required,
.wppb-required { color: #cf2e2e; }

/* Custom Share & Category Lists */
.wppb-form-field, .menu-items ul li, .category-item, .posts-by-month li { list-style-type: none; padding: 0; margin: 0; }
.menu-items ul li a, .page_item.page-item-12 a { color: #bb3eb2 !important; border-bottom: none; }
.menu-items ul, .categories-list, .posts-by-month { padding-left: 0; }
.sidebar-header { font-weight: bold; }
.post-date { font-size: 0.8em; }

.custom-social-share-buttons a {
display: inline-block;
padding: 10px 15px !important;
margin: 5px;
color: white !important;
text-decoration: none;
border-radius: 4px;
}

.share-facebook i { color: #ffffff; background-color: #3b5998; }
.share-whatsapp i { color: #ffffff; background-color: #25d366; }
.share-email i { color: #000000; background-color: #ffffff; }

/* Math Box Component */
.math-highlight-box {
background: #f0fdf4;
border-left: 4px solid #16a34a;
padding: 1.25rem;
margin: 1.5rem 0;
border-radius: 0 6px 6px 0;
font-size: 1.25rem;
font-weight: bold;
text-align: center;
color: #14532d;
}

#glossary dt { margin: 2em 0 0 0; }

/* ==========================================================================
8. RESPONSIVE BREAKPOINTS
========================================================================== */
@media screen and (max-width: 1680px) {
body, input, select, textarea { font-size: 14pt; }
.icon.major::before { font-size: 5.5rem; }

/* XLarge Grid Overrides */
.row > .imp-xlarge { order: -1; }
.row > .col-1-xlarge { width: 8.33333%; }  .row > .off-1-xlarge { margin-left: 8.33333%; }
.row > .col-2-xlarge { width: 16.66667%; } .row > .off-2-xlarge { margin-left: 16.66667%; }
.row > .col-3-xlarge { width: 25%; }        .row > .off-3-xlarge { margin-left: 25%; }
.row > .col-4-xlarge { width: 33.33333%; } .row > .off-4-xlarge { margin-left: 33.33333%; }
.row > .col-5-xlarge { width: 41.66667%; } .row > .off-5-xlarge { margin-left: 41.66667%; }
.row > .col-6-xlarge { width: 50%; }        .row > .off-6-xlarge { margin-left: 50%; }
.row > .col-7-xlarge { width: 58.33333%; } .row > .off-7-xlarge { margin-left: 58.33333%; }
.row > .col-8-xlarge { width: 66.66667%; } .row > .off-8-xlarge { margin-left: 66.66667%; }
.row > .col-9-xlarge { width: 75%; }        .row > .off-9-xlarge { margin-left: 75%; }
.row > .col-10-xlarge { width: 83.33333%; } .row > .off-10-xlarge { margin-left: 83.33333%; }
.row > .col-11-xlarge { width: 91.66667%; } .row > .off-11-xlarge { margin-left: 91.66667%; }
.row > .col-12-xlarge { width: 100%; }       .row > .off-12-xlarge { margin-left: 100%; }
}

@media screen and (max-width: 1280px) {
body, input, select, textarea { font-size: 12pt; }
.icon.major::before { font-size: 4.75rem; }
#header { padding: 4em 4em 0.1em 4em; }
#header.alt { padding: 6em 4em 3em 4em; }
#main > .main { padding: 4em 4em 2em 4em; }
#main > .main > .image.main:first-child { margin: -4em 0 4em -4em; width: calc(100% + 8em); }
#footer { padding: 4em 4em 2em 4em; }

/* Large Grid Overrides */
.row > .imp-large { order: -1; }
.row > .col-1-large { width: 8.33333%; }  .row > .off-1-large { margin-left: 8.33333%; }
.row > .col-2-large { width: 16.66667%; } .row > .off-2-large { margin-left: 16.66667%; }
.row > .col-3-large { width: 25%; }        .row > .off-3-large { margin-left: 25%; }
.row > .col-4-large { width: 33.33333%; } .row > .off-4-large { margin-left: 33.33333%; }
.row > .col-5-large { width: 41.66667%; } .row > .off-5-large { margin-left: 41.66667%; }
.row > .col-6-large { width: 50%; }        .row > .off-6-large { margin-left: 50%; }
.row > .col-7-large { width: 58.33333%; } .row > .off-7-large { margin-left: 58.33333%; }
.row > .col-8-large { width: 66.66667%; } .row > .off-8-large { margin-left: 66.66667%; }
.row > .col-9-large { width: 75%; }        .row > .off-9-large { margin-left: 75%; }
.row > .col-10-large { width: 83.33333%; } .row > .off-10-large { margin-left: 83.33333%; }
.row > .col-11-large { width: 91.66667%; } .row > .off-11-large { margin-left: 91.66667%; }
.row > .col-12-large { width: 100%; }       .row > .off-12-large { margin-left: 100%; }
}

@media screen and (max-width: 980px) {
.features li { width: calc(50% - 2em); }
.features li:nth-child(3) { margin-top: 3em; }
.statistics li strong, .statistics li b { font-size: 1.5em; }

.spotlight { flex-direction: column-reverse; text-align: center; }
.spotlight .content { flex: 0 1 auto; width: 100%; }
.spotlight .content header.major h2::after { margin-left: auto; margin-right: auto; }
.spotlight .content .actions { justify-content: center; width: calc(100% + 1em); }
.spotlight .image { flex: 0 1 auto; margin-left: 0; margin-bottom: 2em; }

#header { padding: 4em 3em 0.1em 3em; }
#header.alt { padding: 5em 3em 2em 3em; }
#main > .main { padding: 4em 3em 2em 3em; }
#main > .main > .image.main:first-child { margin: -4em 0 4em -3em; width: calc(100% + 6em); }

#footer { padding: 4em 3em 2em 3em; display: block; width: 100%; margin: 0 0 3em 0; }
#footer > * { width: 100%; margin-left: 0; margin-bottom: 3em; }
#footer .copyright { text-align: left; }

/* Medium Grid Overrides */
.row > .imp-medium { order: -1; }
.row > .col-1-medium { width: 8.33333%; }  .row > .off-1-medium { margin-left: 8.33333%; }
.row > .col-2-medium { width: 16.66667%; } .row > .off-2-medium { margin-left: 16.66667%; }
.row > .col-3-medium { width: 25%; }        .row > .off-3-medium { margin-left: 25%; }
.row > .col-4-medium { width: 33.33333%; } .row > .off-4-medium { margin-left: 33.33333%; }
.row > .col-5-medium { width: 41.66667%; } .row > .off-5-medium { margin-left: 41.66667%; }
.row > .col-6-medium { width: 50%; }        .row > .off-6-medium { margin-left: 50%; }
.row > .col-7-medium { width: 58.33333%; } .row > .off-7-medium { margin-left: 58.33333%; }
.row > .col-8-medium { width: 66.66667%; } .row > .off-8-medium { margin-left: 66.66667%; }
.row > .col-9-medium { width: 75%; }        .row > .off-9-medium { margin-left: 75%; }
.row > .col-10-medium { width: 83.33333%; } .row > .off-10-medium { margin-left: 83.33333%; }
.row > .col-11-medium { width: 91.66667%; } .row > .off-11-medium { margin-left: 91.66667%; }
.row > .col-12-medium { width: 100%; }       .row > .off-12-medium { margin-left: 100%; }
}

@media screen and (max-width: 736px) {
h1 { font-size: 2em; }
input[type="submit"], input[type="reset"], input[type="button"], button, .button { min-width: 0; }

.icon.major { margin: 0 0 1.5em 0; padding: 0.35em; }
.icon.major::before { font-size: 3.5rem; }

header.major { margin-bottom: 0; }
header.major h2 { font-size: 1.5em; }
header.major p { font-size: 1em; letter-spacing: 0; }
header.major p br { display: none; }
footer.major { margin-top: 0; }

.features { width: 100%; margin: 0 0 2em 0; }
.features li { width: 100%; margin-left: 0; margin-top: 2em; }

.statistics { display: block; width: 20em; max-width: 100%; margin: 0 auto 2em auto; }
.statistics li:first-child { border-bottom-left-radius: 0; border-top-right-radius: 8px; }
.statistics li:last-child { border-top-right-radius: 0; border-bottom-left-radius: 8px; }
.statistics li.icon::before { font-size: 3.75rem; }
.statistics li strong, .statistics li b { font-size: 2.5em; }

.spotlight .image { padding: 0.35em; }
.spotlight .image img { width: 12em; }

#header { padding: 3em 2em 0.1em 2em; }
#header p { font-size: 1em; letter-spacing: 0; }
#header p br { display: none; }
#header.alt { padding: 4em 2em 1em 2em; }
#header.alt h1 { font-size: 2.5em; }

#main, #sidebar { float: none; display: block; width: 100%; max-width: 100%; margin: 0; }
#main > .inner { width: 100%; max-width: 100%; padding: 2em 1.25em; }
#main > .main { padding: 3em 2em 1em 2em; }
#main > .main > .image.main:first-child { margin: -3em 0 2em -2em; width: calc(100% + 4em); }

#sidebar { position: static; height: auto; padding: 0 1.25em 2em; }
#sidebar.inner { width: 100%; max-width: 100%; padding: 0; }
#sidebar a, #sidebar p, #sidebar li, #sidebar input, #sidebar textarea {
max-width: 100%;
overflow-wrap: anywhere;
word-break: break-word;
}

#footer { padding: 3em 2em 1em 2em; }

/* Small Grid Overrides */
.row > .imp-small { order: -1; }
.row > .col-1-small { width: 8.33333%; }  .row > .off-1-small { margin-left: 8.33333%; }
.row > .col-2-small { width: 16.66667%; } .row > .off-2-small { margin-left: 16.66667%; }
.row > .col-3-small { width: 25%; }        .row > .off-3-small { margin-left: 25%; }
.row > .col-4-small { width: 33.33333%; } .row > .off-4-small { margin-left: 33.33333%; }
.row > .col-5-small { width: 41.66667%; } .row > .off-5-small { margin-left: 41.66667%; }
.row > .col-6-small { width: 50%; }        .row > .off-6-small { margin-left: 50%; }
.row > .col-7-small { width: 58.33333%; } .row > .off-7-small { margin-left: 58.33333%; }
.row > .col-8-small { width: 66.66667%; } .row > .off-8-small { margin-left: 66.66667%; }
.row > .col-9-small { width: 75%; }        .row > .off-9-small { margin-left: 75%; }
.row > .col-10-small { width: 83.33333%; } .row > .off-10-small { margin-left: 83.33333%; }
.row > .col-11-small { width: 91.66667%; } .row > .off-11-small { margin-left: 91.66667%; }
.row > .col-12-small { width: 100%; }       .row > .off-12-small { margin-left: 100%; }

.row.gtr-25 { margin-left: -0.25em; }
.row.gtr-25 > * { padding: 0 0 0 0.25em; }
.row.gtr-25.gtr-uniform { margin-top: -0.25em; }
.row.gtr-25.gtr-uniform > * { padding-top: 0.25em; }

.row.gtr-50 { margin-left: -0.5em; }
.row.gtr-50 > * { padding: 0 0 0 0.5em; }
.row.gtr-50.gtr-uniform { margin-top: -0.5em; }
.row.gtr-50.gtr-uniform > * { padding-top: 0.5em; }

.row { margin-left: -1em; }
.row > * { padding: 0 0 0 1em; }
.row.gtr-uniform { margin-top: -1em; }
.row.gtr-uniform > * { padding-top: 1em; }

.row.gtr-150 { margin-left: -1.5em; }
.row.gtr-150 > * { padding: 0 0 0 1.5em; }
.row.gtr-150.gtr-uniform { margin-top: -1.5em; }
.row.gtr-150.gtr-uniform > * { padding-top: 1.5em; }

.row.gtr-200 { margin-left: -2em; }
.row.gtr-200 > * { padding: 0 0 0 2em; }
.row.gtr-200.gtr-uniform { margin-top: -2em; }
.row.gtr-200.gtr-uniform > * { padding-top: 2em; }
}

@media screen and (max-width: 700px) {
#nav { padding: 0em; max-width: 100%; }
#nav ul li { margin: 0; padding: 0; }
#content-wrapper { display: block; }
#sidebar { background-color: #ffffff; }
#footer > * { width: 100%; }
}

@media screen and (max-width: 480px) {
html, body { min-width: 320px; max-width: 100%; overflow-x: hidden; }

ul.actions:not(.fixed) { flex-direction: column; margin-left: 0; width: 100% !important; }
ul.actions:not(.fixed) li { flex-grow: 1; flex-shrink: 1; padding: 1em 0 0 0; text-align: center; width: 100%; }
ul.actions:not(.fixed) li > * { width: 100%; }
ul.actions:not(.fixed) li:first-child { padding-top: 0; }

#wrapper { display: block; width: 100%; max-width:100%; margin: 0; }
#header { padding: 3em 1.5em 0.1em 1.5em; }
#header.alt { padding: 4em 1.5em 1em 1.5em; }
#main > .main { padding: 3em 1.5em 1em 1.5em; }
#main > .main > .image.main:first-child { margin: -3em 0 1.5em -1.5em; width: calc(100% + 3em); }
#footer { padding: 2.5em 1em 0.5em 1em; }

/* XSmall Grid Overrides */
.row > .imp-xsmall { order: -1; }
.row > .col-1-xsmall { width: 8.33333%; }  .row > .off-1-xsmall { margin-left: 8.33333%; }
.row > .col-2-xsmall { width: 16.66667%; } .row > .off-2-xsmall { margin-left: 16.66667%; }
.row > .col-3-xsmall { width: 25%; }        .row > .off-3-xsmall { margin-left: 25%; }
.row > .col-4-xsmall { width: 33.33333%; } .row > .off-4-xsmall { margin-left: 33.33333%; }
.row > .col-5-xsmall { width: 41.66667%; } .row > .off-5-xsmall { margin-left: 41.66667%; }
.row > .col-6-xsmall { width: 50%; }        .row > .off-6-xsmall { margin-left: 50%; }
.row > .col-7-xsmall { width: 58.33333%; } .row > .off-7-xsmall { margin-left: 58.33333%; }
.row > .col-8-xsmall { width: 66.66667%; } .row > .off-8-xsmall { margin-left: 66.66667%; }
.row > .col-9-xsmall { width: 75%; }        .row > .off-9-xsmall { margin-left: 75%; }
.row > .col-10-xsmall { width: 83.33333%; } .row > .off-10-xsmall { margin-left: 83.33333%; }
.row > .col-11-xsmall { width: 91.66667%; } .row > .off-11-xsmall { margin-left: 91.66667%; }
.row > .col-12-xsmall { width: 100%; }       .row > .off-12-xsmall { margin-left: 100%; }

.row.gtr-25 { margin-left: -0.3125em; }
.row.gtr-25 > * { padding: 0 0 0 0.3125em; }
.row.gtr-25.gtr-uniform { margin-top: -0.3125em; }
.row.gtr-25.gtr-uniform > * { padding-top: 0.3125em; }

.row.gtr-50 { margin-left: -0.625em; }
.row.gtr-50 > * { padding: 0 0 0 0.625em; }
.row.gtr-50.gtr-uniform { margin-top: -0.625em; }
.row.gtr-50.gtr-uniform > * { padding-top: 0.625em; }

.row { margin-left: -1.25em; }
.row > * { padding: 0 0 0 1.25em; }
.row.gtr-uniform { margin-top: -1.25em; }
.row.gtr-uniform > * { padding-top: 1.25em; }

.row.gtr-150 { margin-left: -1.875em; }
.row.gtr-150 > * { padding: 0 0 0 1.875em; }
.row.gtr-150.gtr-uniform { margin-top: -1.875em; }
.row.gtr-150.gtr-uniform > * { padding-top: 1.875em; }

.row.gtr-200 { margin-left: -2.5em; }
.row.gtr-200 > * { padding: 0 0 0 2.5em; }
.row.gtr-200.gtr-uniform { margin-top: -2.5em; }
.row.gtr-200.gtr-uniform > * { padding-top: 2.5em; }
}

@media screen and (max-width: 360px) {
body, input, select, textarea { font-size: 11pt; }
#wrapper { max-width: 100%; }
#header { padding: 2.5em 1em 0.1em 1em; }
#header.alt { padding: 3.5em 1em 0.5em 1em; }

#main { border-radius: 0; }
#main > .main { padding: 2.5em 1em 0.5em 1em; }
#main > .main > .image.main:first-child {
margin: -2.5em 0 1.5em -1em;
width: calc(100% + 2em);
border-radius: 0;
}
#main > .main > .image.main:first-child img { border-radius: 0; }
}