/* ============================================================
   LEGACY BASE STYLES
   The old page templates were built while the Hello Elementor
   theme was active, and they lean on its base styles and on the
   site's "Additional CSS" box. This file carries both forward so
   each moved page looks the same as it does today. It loads only
   on those moved pages, and can shrink as page styles get cleaned
   up.

   Parts 1 and 2 come from Hello Elementor 2.5.0 (GPL v3 or later).
   ============================================================ */

/* ---- 1. Hello Elementor reset (style.css) ---- */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
   }
*,
*::before,
*::after {
  box-sizing: border-box;
   }
body {
  margin: 0;
  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: 400;
  line-height: 1.5;
  color: #333333;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
h1, h2, h3, h4, h5, h6 {
  margin-top: .5rem;
  margin-bottom: 1rem;
  font-family: inherit;
  font-weight: 500;
  line-height: 1.2;
  color: inherit; }
h1 {
  font-size: 2.5rem; }
h2 {
  font-size: 2rem; }
h3 {
  font-size: 1.75rem; }
h4 {
  font-size: 1.5rem; }
h5 {
  font-size: 1.25rem; }
h6 {
  font-size: 1rem; }
p {
  margin-top: 0;
  margin-bottom: .9rem; }
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
   }
pre {
  font-family: monospace, monospace;
  font-size: 1em;
  white-space: pre-wrap; }
a {
  background-color: transparent;
  text-decoration: none;
  color: #CC3366; }
  a:hover, a:active {
    color: #333366; }
  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; }
abbr[title] {
  border-bottom: none;
  text-decoration: underline dotted;
   }
b,
strong {
  font-weight: bolder; }
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
   }
small {
  font-size: 80%; }
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }
sub {
  bottom: -0.25em; }
sup {
  top: -0.5em; }
img {
  border-style: none;
  height: auto;
  max-width: 100%; }
details {
  display: block; }
summary {
  display: list-item; }
figcaption {
  font-size: 16px;
  color: #333333;
  line-height: 1.4;
  font-style: italic;
  font-weight: 400; }
template {
  display: none; }
[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; }
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    -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; } }
label {
  display: inline-block;
  line-height: 1;
  vertical-align: middle; }
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.5;
  margin: 0;
   }
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%;
  border: solid 1px #666666;
  border-radius: 3px;
  padding: 0.5rem 1rem;
  transition: all .3s; }
  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; }
button,
input {
  overflow: visible; }
button,
select {
  text-transform: none; }
button,
[type="button"],
[type="reset"],
[type="submit"] {
  width: auto;
  -webkit-appearance: button; }
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }
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: #CC3366;
  text-align: center;
  white-space: nowrap;
  user-select: none;
  background-color: transparent;
  border: 1px solid #CC3366;
  padding: 0.5rem 1rem;
  font-size: 1rem;
  border-radius: 3px;
  transition: all .3s; }
  button:focus,
  [type="submit"]:focus,
  [type="button"]:focus {
    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: #CC3366;
    text-decoration: none; }
  button:not(:disabled),
  [type="submit"]:not(:disabled),
  [type="button"]:not(:disabled) {
    cursor: pointer; }
fieldset {
  padding: 0.35em 0.75em 0.625em; }
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
   }
progress {
  vertical-align: baseline; }
textarea {
  overflow: auto;
  resize: vertical; }
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
   }
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
   }
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
   }
select {
  display: block; }
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;
    line-height: 1.5;
    vertical-align: top;
    border: 1px solid #cccccc; }
  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 #cccccc; }
  table tbody > tr:nth-child(odd) > td,
  table tbody > tr:nth-child(odd) > th {
    background-color: #f7f7f7; }
  table tbody tr:hover > td,
  table tbody tr:hover > th {
    background-color: #e9e9e9; }
  table tbody + tbody {
    border-top: 2px solid #cccccc; }
  @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; } }
dl,
dt,
dd,
ol,
ul,
li {
  margin-top: 0;
  margin-bottom: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

/* ---- 2. Hello Elementor general classes (theme.css, header and footer layout left out) ---- */
.page-content a, .comments-area a { text-decoration: underline; }
.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; }
.hide { display: none !important; }
.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); height: 1px; overflow: hidden; position: absolute !important; width: 1px; word-wrap: normal !important; }
.screen-reader-text:focus { background-color: #eeeeee; clip: auto !important; 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; }
.post .entry-title a { text-decoration: none; }
.post .wp-post-image { width: 100%; max-height: 500px; object-fit: cover; }

/* ---- 3. The site's "Additional CSS" box ---- */
h2 { padding-top: 30px; }
h3 { padding-top: 20px; }
h4 { padding-top: 20px; }
ul { padding-bottom: 30px; }
ol { padding-bottom: 30px; }
hr.wp-block-separator { margin: 40px 0 40px 0; border: 1px solid #cccccc; }
