/* colors
orange        f16021
dark purple   3c3a4a
med dark prpl 4c485d
med purple    7a7696
light purple  d3d2e3
beige         ece8e5
*/

* { outline-color: #d3d2e3; }

a, a:visited {
  color: #f16021;
  text-decoration: none;
}

a:active, a:hover {
  color: #f16021 !important;
  text-decoration: underline;
}

body {
  background: #ffffff url('/static/img/body-bkgd.gif') repeat;
  color: #000000;
  font-family: 'Roboto', sans-serif;
  font-size: 11pt;
  line-height: 1.3;
}

h1, h2, h3, h4, h5, h6,
.display-1, .display-2, .display-3, .display-4, .display-5, .display-6 {
  font-family: 'Playfair Display', serif;
  font-weight: bold;
}

h1, .display-1 { font-size: 30pt; }
h2, .display-2 { font-size: 28pt; }
h3, .display-3 { font-size: 18pt; }
h4, .display-4 { font-size: 15pt; }
h5, .display-5 { font-size: 13pt; }
h6, .display-6 { font-size: 11pt; }

hr.dotted { background: none; border-top: 1px dashed;}
hr.double-top { border: none; background: transparent url('/static/img/hr-double-top-bkgd.png') repeat-x; height: 7px; }
hr.double-bottom { border: none; background: transparent url('/static/img/hr-double-bottom-bkgd.png') repeat-x; height: 7px; }
hr.pre { border-top: 1px solid #000000; margin-top: 0; margin-bottom: 0; padding-top: 0; width: 15px; width: 1rem; }

.bg-accent { background-color: #f16021 !important; color: #ffffff; } /* orange */
.bg-accent-primary { background-color: #809099 !important; color: #ffffff; } /* blue-ish gray */
.bg-accent-primary a { color: #ffffff; }
.bg-accent-light { background-color: #99ba5f !important; color: #3c3a4a; } /* bright green */
.bg-beige { background-color: #ece8e5 !important; } /* beige */
.bg-disabled { background-color: #e9e9e9; } /* gray */
.bg-primary { background-color: #3c3a4a !important; color: #ffffff; } /* dark purple*/
.bg-primary a { color: #ffffff; }
.bg-secondary { background-color: #7a7696 !important; color: #ffffff; } /* medium-dark purple */
.bg-secondary a { color: #ffffff; }
.bg-light { background-color: #d3d2e3 !important; color: #3c3a4a; } /* violet */
.bg-white { background-color: #ffffff !important; } /* white */

.border-beige { border-color: #c9c9c9 !important;} /* beige */
.border-primary { border-color: #3c3a4a !important; } /* dark purple */
.border-secondary { border-color: #7a7696 !important; } /* medium purple*/
.border-light { border-color: #d3d2e3 !important; } /* violet */
.border-white { border-color: #ffffff !important; } /* white */

.breadcrumb-item+.breadcrumb-item::before { color: #f16021; content: '>'; padding: 0 4px; padding: 0 0.25rem; }

button, .button { border: 0; cursor: pointer; font-style: italic; padding: 3px 15px; padding: 0.25rem 1.5rem; position: relative; }
button:active, .button:active { left: 2px; top: 2px; }
button.bg-accent { font-style: normal; font-weight: bold; text-transform: uppercase; padding: 1px 10px; padding: 0.1rem 1rem; }
button.bg-accent:hover { background-color: #f57b47 !important; }
button.bg-beige:hover { background-color: #ece8e5 !important; }
button.bg-primary:hover { background-color: #f16021 !important; }
button.bg-primary.fancy:hover { background-color: #676480 !important; }
button.bg-white:hover { background-color: #dedbd8 !important; }
button.fancy, .button.fancy { font-style: normal; margin-bottom: 15px; margin-bottom: 1rem; padding: 8px; padding: 0.5rem; width: 100%; }
button.fancy > h5, .button.fancy > h5 { border: 1px solid; margin: 0; padding: 15px 4px; padding: 1rem 0.25rem; width: 100%; }

.font-normal { font-family: 'Roboto', sans-serif; }

.hover-accent-bg:hover, a.hover-accent-bg:hover, button.hover-accent-bg:hover { background-color: #f57b47 !important; cursor: pointer; }
.hover-accent-text:hover, a.hover-accent-text:hover, button.hover-accent-text:hover { color: #f16021 !important; cursor: pointer; text-decoration: none; }
.hover-primary-bg:hover, a.hover-primary-bg:hover, button.hover-primary-bg:hover { color: #ffffff; background-color: #3c3a4a !important; cursor: pointer; }
.hover-primary-text:hover, a.hover-primary-text:hover, button.hover-primary-text:hover { color: #3c3a4a !important; text-decoration: none !important; cursor: pointer; }
.hover-secondary-bg:hover, a.hover-primary-bg:hover, button.hover-primary-bg:hover { color: #ffffff; background-color: #676480 !important; cursor: pointer; }
.hover-secondary-text:hover, a.hover-primary-text:hover, button.hover-primary-text:hover { color: #676480 !important; text-decoration: none !important; cursor: pointer; }
.hover-no-underline:hover, a.hover-no-underline:hover, button.hover-no-underline:hover { text-decoration: none !important; cursor: pointer; }

.solid-1 { border: 1px solid; }
.solid-2 { border: 2px solid; }
.solid-3 { border: 3px solid; }

/* Down arrow animation for toggles */
.fa-angle-down { transition: transform 0.25s ease 0s; }
a[data-toggle='collapse'] .fa-angle-down { transform: rotate(-180deg); }
a[data-toggle='collapse'].collapsed .fa-angle-down { transform: rotate(0deg); }

/* YouTube video embeds */
.youtube-video-169 { position: relative; height: 0; padding-top: 25px; padding-bottom: 53%; margin-top: 16px; margin-bottom: 16px; }
.youtube-video-169 > iframe { position: absolute; top: 0; left: 0; height: 100%; width: 100%; }

/* Carousel fade timing */
.carousel-fade .carousel-inner .carousel-item { transition-duration: 1.5s !important; }

button, button[type="submit"], .button { background-color: #f16021; border: none; color: #ffffff !important; display: inline-block; font-style: normal; font-weight: bold; padding: 0.25rem 2rem; text-transform: uppercase; text-align: center; }
button:hover, button[type="submit"]:hover, .button:hover { background-color: #f57b47; color: #ffffff !important; cursor: pointer; text-decoration: none; }
button.close { color: #000000 !important; }
button.close:hover, button.navbar-toggler:hover, button.navbar-toggler:active { background-color: initial; left: 0px; top: 0px; }

#global-nav li:not(:first-child):before { content: '/'; font-size: 70%; position: absolute; top: 8px; left: -3px; }
#global-nav .nav-item a { color: #ffffff; font-size: 70%; text-transform: uppercase; }
#global-nav .nav-item a:hover { text-decoration: underline; }
#global-nav .nav-item a.active { color: #d3d2e3; text-decoration: underline; }

/* FoxyCart button styles */
#fc .fc-button { background: #f9f9f9 !important; border: 1px solid #d5d5d5 !important; color: #888888 !important; line-height: 1.9 !important; text-shadow: 1px 1px 0px white !important; }
#fc .fc-fixed-button-left a.fc-btn-action:hover { color: #333333 !important; }
#fc .fc-fixed-button-right a.fc-btn-action:hover, #fc .fc-action--checkout--button:hover { color: #ffffff !important; }

#site-nav ul.nav li, footer ul.nav li { margin: .75rem 0; }
#site-nav ul.nav a.nav-link, footer ul.nav a.nav-link { line-height: 1; padding: 0 1rem; position: relative; }
#site-nav a.nav-link, footer a.nav-link { font-size: 14px; }
#site-nav a.nav-link { color: #000000; }
#site-nav a.nav-link:hover, footer a.nav-link:hover { text-decoration: underline; }
#site-nav a.nav-link.active, footer a.nav-link.active { color: #f16021; }
footer a.nav-link { text-transform: uppercase; }
footer ul.nav li.nav-item:not(:first-child) { border-left: 1px solid #aaaaaa; }
footer a.nav-link { color: #ffffff; }

section[id$="-tabs"] + section[id$="-feature"] { background-color: #ece8e5; border: 1px solid #c9c9c9; border-top: initial; }
section[id$="-tabs"] .nav-tabs { border-bottom: 1px solid #c9c9c9; }
section[id$="-tabs"] .nav-tabs .nav-link { background-color: #ece8e5; color: #000000; border-color: #c9c9c9 #c9c9c9 #c9c9c9 #c9c9c9; }
section[id$="-tabs"] .nav-tabs .nav-link:hover { text-decoration: underline; }
section[id$="-tabs"] .nav-tabs .nav-link.active { background-color: #ece8e5; border-bottom-color: transparent; font-weight: bold; }
section[id$="-tabs"] .nav-tabs .nav-link.bg-accent { color: #ffffff !important; }

.carousel-item { min-height: 20rem; }
.carousel-indicators li { background-color: #ece8e5; height: 1rem; width: 1rem; }
.carousel-indicators li.active { background-color: #3c3a4a; }

.fa-plus-circle { transition: transform 0.25s ease 0s; }
a[data-toggle='collapse'] .fa-plus-circle { transform: rotate(-135deg); }
a[data-toggle='collapse'].collapsed .fa-plus-circle{ transform: rotate(0deg); }

input[type="checkbox"].form-check-input.form-control-lg, input[type="radio"].form-check-input.form-control-lg { height: 1.5rem; width: 1.5rem; }
input[type="checkbox"].form-check-input.form-control-md, input[type="radio"].form-check-input.form-control-md { height: 1rem; width: 1rem; }
.form-group label { font-size: 90%; font-weight: bold; line-height: 1; padding-top: 0.5rem; text-transform: uppercase; }
.form-group:has(:is(input, select, textarea):is([required], .required_field)) label::before { content: '*'; }
section:is([id^="renew-"], [id^="subscribe-"]) .form-group { margin-bottom: 0; padding: .25rem 0; }
section:is([id^="renew-"], [id^="subscribe-"]) .form-check-label { font-size: 100%; line-height: 1; padding-top: 0; }

.hilite { background-color: #ffff99; }

.img-fluid > div { cursor: default; max-width: 100%; height: auto; }
.img-fluid > div img { max-width: 100%; height: auto; }
.img-fluid > img { cursor: pointer; max-width: 100%; height: auto; }

.issue a, .issue a:hover { color: #000000; }
.issue.new::after { content: 'NEW!'; position: absolute; background-color: #7a7696; border-radius: 40%; color: #ffffff; font-size: 85%; font-style: italic; font-weight: bold; padding: 0.3rem; left: 9rem; top: -0.5rem; z-index: 1; }
.issue-img { border: 1px solid #555; box-shadow: 3px 3px 7px 0 #555; }

.page-link { background-color: #f16021; border-color: #c9c9c9; color: #ffffff !important; }
.page-link:hover { background-color: #f57b47; border-color: #c9c9c9; color: #ffffff !important; }
.page-item.disabled .page-link { background-color: #e9e9e9; border-color: #c9c9c9; color: #c9c9c9; pointer-events: none; cursor: auto; }
.price { font-size: 2.0rem; font-family: sans-serif; }
.price sup { top: -0.75em; font-size: 50%; position: relative; vertical-align: baseline; }
.price sup:nth-of-type(2) { text-decoration: underline; }

.red { color: #7a7696; }

.text-accent, .text-accent a, a.text-accent { color: #f16021; } /* orange */
.text-primary { color: #3c3a4a !important; } /* dark purple */
a.text-primary:focus, a.text-primary:hover { color: #f16021 !important; }
.text-secondary { color: #7a7696 !important; } /* violet */
.text-white { color: #ffffff !important; } /* white */

.text-underline, .text-underline:hover { text-decoration: underline !important; }
.text-no-underline, .text-no-underline:hover { text-decoration: none; }

ul.fa-list { list-style-type: none; margin-left: 1rem; padding-left: 0; }
ul.fa-list > li::before { display: none; font-family: 'Font Awesome 5 Free'; font-style: normal; font-variant: normal; font-weight: 900; text-rendering: auto; -webkit-font-smoothing: antialiased; }
ul.fa-list > li > svg[data-fa-pseudo-element=":before"] { margin-right: .5rem; }
ul.alert-list > li::before { content: '\f06a'; }
ul.check-list > li::before { content: '\f00c'; }
ul.idea-list > li::before { content: '\f0eb'; }
ul.question-list > li::before { content: '\f059'; }
