/* ==========================================================================
   Maryville Canvas — Custom CSS (WCAG 2.2 AA aligned)
   Original tweaks preserved; designer recommendations applied;
   contrast and focus-visibility issues fixed.
   ========================================================================== */

/*----- Interface Tweaks ----*/
.ic-Login__header .ic-Login__header__logo img {
    max-width: 352px;
}

.ic-Login-header__logo {
    -webkit-flex: 0 0 460px;
    flex: 0 0 460px;
    min-width: 1px;
}

.section-hidden a {
    color: #2d3b45;
    text-decoration: line-through !important;
    text-decoration-color: #51697a !important;
}

i.icon-off {
    display: none !important;
}

#course_home_content {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
/*----- END Interface Tweaks ----*/


/* ==========================================================================
   Heading hierarchy — designer recommendations
   Scoped to user-authored content so we don't fight Canvas chrome.
   Sizes use rem (16px base): 18pt≈1.5rem · 14pt≈1.17rem · 12pt=1rem.
   ========================================================================== */
.user_content h1,
.user_content h2,
.user_content h3,
.user_content h4,
.user_content h5,
.user_content h6 {
    font-family: inherit;
    color: #1f2933;          /* near-black, ~14:1 on white */
    line-height: 1.3;
}

.user_content h2 {
    font-size: 1.5rem;       /* ~18pt */
    font-weight: 700;
    margin-top: 1.75rem;
    margin-bottom: 0.75rem;
}

.user_content h3 {
    font-size: 1.17rem;      /* ~14pt */
    font-weight: 700;
    margin-top: 1.25rem;
    margin-bottom: 0.5rem;
}

.user_content h4,
.user_content h5,
.user_content h6 {
    font-size: 1rem;         /* ~12pt */
    font-weight: 700;
    margin-top: 1rem;
    margin-bottom: 0.5rem;
}


/* ==========================================================================
   Page / discussion / assignment title (h1.page-title, h2.course-title)
   Designer: near-black, slightly smaller, bottom-border divider, consistent
   across page / discussion / assignment containers.
   ========================================================================== */
        h1.page-title,
        h2.course-title,
        h1[data-testid="message_title"],
        #assignment_show .assignment-title h1.title,
        #assignment_show .title-content h1.title {
            font-family: inherit;
            font-weight: 600 !important;     /* override original 400 */
            font-size: 1.75rem;              /* slight reduction from Canvas default */
            color: #1f2933;                  /* was light gray */
            line-height: 1.25;
            padding-bottom: 0.5rem;
            margin-bottom: 1.25rem;
            border-bottom: 2px solid #c8102e; /* MU red — brand-aligned divider */
        }


/* ==========================================================================
   Spacing defaults — standardize across content blocks
   ========================================================================== */
    .user_content p,
    .user_content ul,
    .user_content ol,
    .user_content dl,
    .user_content figure,
    .user_content table,
    .user_content pre,
    .user_content iframe,
    .user_content video,
    .user_content audio {
        margin-top: 0;
        margin-bottom: 1rem;
    }

    .user_content li {
        margin-bottom: 6px;      /* designer: ~6px between list items */
    }

    .user_content li > ul,
    .user_content li > ol {
        margin-top: 6px;
        margin-bottom: 0;
    }


/* ==========================================================================
   Blockquote — inherit family + body size, no font shift
   ========================================================================== */
.user_content blockquote {
    font-family: inherit;
    font-size: 1rem;
    font-style: normal;
    color: inherit;
    line-height: 1.5;
    margin: 1rem 0;
    padding: 0.75rem 1rem;
    border-left: 4px solid #c8102e;  /* MU red accent */
    background-color: #f5f5f5;
}

.user_content blockquote p:last-child {
    margin-bottom: 0;
}


/* ==========================================================================
   Horizontal rule — defined spacing, thickness, neutral color
   ========================================================================== */
.user_content hr {
    border: 0;
    height: 2px;
    background-color: #d0d4d8;       /* neutral, 3.05:1 against white */
    margin: 2rem 0;
}


/* ==========================================================================
   Focus visibility — WCAG 2.4.7 / 2.4.13 (Focus Appearance)
   Canvas hides focus rings in places; restore a high-contrast indicator.
   ========================================================================== */
.user_content a:focus-visible,
.user_content button:focus-visible,
.user_content summary:focus-visible,
.user_content input:focus-visible,
.user_content select:focus-visible,
.user_content textarea:focus-visible,
.user_content [role="button"]:focus-visible,
.user_content [role="tab"]:focus-visible {
    outline: 3px solid #c8102e;       /* MU red */
    outline-offset: 2px;
    border-radius: 2px;
}


/* ==========================================================================
   Details / Summary component — fixed border contrast (#aaa → #767676 = 3.06:1)
   and removed font-family override so it inherits Canvas font.
   ========================================================================== */
.gray-bg {
    background-color: #595959;       /* was #787878, fails AA — now 7.0:1 */
    color: #ffffff;
}

details {
    border: 1px solid #767676;       /* meets 3:1 UI-component contrast */
    border-radius: 4px;
    padding: .5em .5em 0;
    max-width: 80ch;
    margin-bottom: 10px;
    margin-top: 10px;
}

summary {
    font-weight: bold;
    margin: -.5em -.5em 0;
    padding: .5em;
    cursor: pointer;
}

details[open] {
    padding: .5em;
}

details[open] summary {
    border-bottom: 1px solid #767676;
    margin-bottom: .5em;
}

details > p {
    margin-left: 2ch;
    margin-right: 2ch;
    padding-left: 0;
    line-height: 1.4em;
}
/* End Details component */


/*----- Page Defaults ----*/
.shaded {
    background-color: #e5e5e5;
}

.media_comment_thumbnail_center {
    width: 140px;
    margin-left: auto;
    margin-right: auto;
}

#course_home_content h4 {
    padding-top: 15px;
}

#course-banner {
    text-align: center;
}

#course_home_content .floating_links {
    float: none !important;
    text-align: right !important;
    line-height: 1.8em;
}

#course-banner-image {
    text-align: center;
    margin-bottom: 20px;
}

@media (max-width: 500px) {
    #course-banner-image {
        display: none !important;
    }
}

.table-pad-more td {
    padding: 5px !important;
}

#default-course-banner-image {
    width: 80%;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
    margin-bottom: 30px;
}

.view_all_pages {
    display: none !important;
}
/*----- End Page Defaults ----*/


/*--- Admin Tray Special Stuff --*/
ul#admin-tray-sam,
ul#admin-tray-sam ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

ul#admin-tray-sam ul {
    margin-left: 5px;
    border-left: 1px dotted #767676;  /* was #ccc — now 3:1 */
    padding-left: 5px;
}

ul#admin-tray-sam a.toggle::after {
    float: right;
    content: '\2B18';
}

input#admin-tray-sam-search {
    width: 95%;
}

ol#admin-tray-sam-results {
    border-bottom: 2px solid #767676; /* was #ccc */
    margin: 0;
    padding-left: 18px;
}

li#adm-tray-subacctray a.reload::after {
    float: right;
    content: '\21BB';
}

li#adm-tray-subacctray .rc-progress {
    position: absolute;
    margin: -4px 0px 0px 45px;
    color: #333;
    font-size: 85%;
}

li#adm-tray-subacctray .loader {
    border: 8px solid #eee;
    border-top: 8px solid #767676;    /* was #ccc */
    border-radius: 50%;
    width: 30px;
    height: 30px;
    animation: adm-tray-subacctray-load 2s linear infinite;
}

@keyframes adm-tray-subacctray-load {
    0%   { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
/* END Admin Tray */


/*----- House Styles ----*/
.mu-red {
    color: #c8102e;          /* 5.34:1 on white — passes AA */
}

.mu-gray {
    color: #54585a;          /* 7.46:1 on white */
}

.show-me {
    display: block !important;
}

#wiki_page_show .float-right {
    float: right !important;
    margin-left: 20px !important;
    margin-bottom: 20px !important;
}

#wiki_page_show .float-left {
    float: left !important;
    margin-right: 20px !important;
    margin-bottom: 20px !important;
}

#wiki_page_show .bordered {
    border: solid 1px #767676;        /* was #aaaaaa — now 3:1 */
}

#wiki_page_show h4 {
    font-size: 1.3em !important;
    line-height: 1.3em !important;
    margin-bottom: 0px;
}

#wiki_page_show img.bordered {
    border: solid 1px #767676;
}

#wiki_page_show .callout {
    background-color: #e5e5e5 !important;
    color: #1f2933;          /* explicit near-black for AA on light gray */
    font-size: 1.5rem;       /* was 25px — relative unit */
    padding: 1rem;
    border-left: 4px solid #c8102e;
}

#course_banner {
    max-width: 750px;
    margin-right: auto;
    margin-left: auto;
}

p.img-caption {
    padding-top: 10px;
    margin-bottom: 0px;
    text-align: center;
}

#default-course-banner-image img {
    border-radius: 7px;
    box-shadow: 3px 3px 5px 2px rgba(187, 187, 187, 1);
}

#default-home-copy {
    width: 80%;
    font-size: 1rem;          /* was 16px — relative */
    line-height: 1.5;         /* was 22px ≈ 1.375; bumped for readability */
    margin-left: auto;
    margin-right: auto;
}
/*----- End House Styles ----*/

/*--- DVA additions --*/

.dva:last-of-type {
  padding-bottom: 150px;
}

.dva * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: 0px;
}
.dva > *:first-child:not(.top-banner) {
  margin-top: 40px;
}
.dva a.btn {
  border: 2px solid rgb(43, 143, 201);
  background-color: #fff;
  display: inline-block;
  color: rgb(43, 143, 201);
  border-radius: 8px;
  padding: 8px 10px;
  margin: 0 5px;
  line-height: 99%;
  text-decoration: none;
}
.dva a.btn.upper {
  text-transform: uppercase;
}
.dva a.btn:hover {
  -webkit-transition: all 0.15s ease-in;
  transition: all 0.15s ease-in;
  background-color: #ddd;
  -webkit-transform: scale(1.02);
          transform: scale(1.02);
}
.dva .float-fix:after {
  content: ".";
  visibility: hidden;
  display: block;
  height: 0;
  clear: both;
}
.dva .imgShell {
  width: 90%;
  padding-top: 56.25%;
  height: auto;
  overflow: hidden;
  position: relative;
  margin: 0 auto;
  -webkit-box-shadow: 5px 5px 5px rgba(187, 187, 187, 0.712);
          box-shadow: 5px 5px 5px rgba(187, 187, 187, 0.712);
  border-radius: 5px;
  margin-bottom: 40px;
  border: 1px solid #555;
  background-color: black;
}
.dva .imgShell.medium {
  padding-top: 39.375%;
  width: 70%;
}
.dva .imgShell.small {
  padding-top: 28.125%;
  width: 50%;
}
.dva .imgShell img {
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  width: 105%;
  height: auto;
}
.dva .imgShell.top img {
  top: 0%;
  -webkit-transform: translateX(-50%) translateY(0);
          transform: translateX(-50%) translateY(0);
}
.dva .imgShell.left img {
  left: 0%;
  top: 0%;
  -webkit-transform: translateX(0) translateY(0);
          transform: translateX(0) translateY(0);
}
.dva .imgShell.background {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.dva .imgShell.background img {
  left: -10000em;
}
.dva .imgShell.background.top {
  background-position: top center;
}
.dva .imgShell.background.left {
  background-position: top left;
}
.dva .imgHold {
  display: block;
  width: 60%;
  height: auto;
  margin: 0 auto;
  -webkit-box-shadow: 5px 5px 5px rgba(187, 187, 187, 0.712);
          box-shadow: 5px 5px 5px rgba(187, 187, 187, 0.712);
  border-radius: 5px;
  margin-bottom: 40px;
  border: 1px solid #555;
  max-width: 90%;
}
.dva .imgHold.no-border {
  border: none;
}
.dva .imgHold.no-shadow {
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}
.dva .imgHold.left {
  margin: 0 0;
}
.dva .imgHold.medium {
  width: 60%;
  height: auto;
}
.dva .imgHold.small {
  width: 30%;
  height: auto;
}
.dva .imgHold.large {
  width: 100%;
  height: auto;
}
.dva .imgHold img {
  width: 102%;
  height: auto;
}
.dva li .imgHold {
  margin-top: 40px;
}
.dva .top-image {
  position: relative;
  min-height: 30%;
  background-color: rgb(171, 41, 41);
  padding: 5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.dva .top-image img {
  display: block;
}
.dva img.border {
  border: 4px solid rgb(175, 188, 190);
}
.dva .img-zone {
  margin-right: 30px;
  margin-bottom: 30px;
  width: 35%;
  max-width: 400px;
  min-width: 200px;
}
.dva .img-zone.left, .dva .img-zone.right {
  margin-bottom: 30px;
}
.dva .img-zone.left {
  float: left;
  margin-right: 30px;
}
.dva .img-zone.right {
  float: right;
  margin-left: 30px;
}
.dva .img-zone img {
  display: block;
  margin: 0px !important;
  width: 100%;
  height: auto;
}
.dva .img-zone .caption {
  display: block;
  margin-top: 10px;
  font-size: 80%;
  opacity: 0.8;
  line-height: 130%;
  width: 100%;
  padding: 8px;
  background-color: rgba(148, 148, 148, 0.1);
}
.dva .text-image {
  margin-top: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.dva .text-image h2:first-child,
.dva .text-image h3:first-child,
.dva .text-image h4:first-child,
.dva .text-image h5:first-child {
  margin-top: 0px;
  border-top: none;
}
.dva .text-image .img-zone {
  display: block;
  width: 28%;
}
.dva .text-image .text-zone {
  width: 70%;
}
.dva .text-image.right {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.dva .text-image.right .img-zone {
  margin-right: 0px;
  margin-left: 40px;
}
.dva h2 + .text-image {
  margin-top: 0px;
}
@media only screen and (max-width: 950px) {
  .dva .imgHold.small {
    width: 60%;
  }
  .dva .imgShell.small {
    padding-top: 33.75%;
    width: 60%;
  }
}
@media only screen and (max-width: 750px) {
  .dva .imgHold.medium {
    width: 100%;
  }
  .dva .imgHold.small {
    width: 100%;
    height: auto;
  }
  .dva .imgShell.medium {
    padding-top: 56.25%;
    width: 100%;
  }
  .dva .imgShell.small {
    padding-top: 56.25%;
    width: 100%;
  }
}
.dva .icon-h {
  position: relative;
  padding-top: 5px;
  font-size: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: normal;
  line-height: 90%;
}
.dva .icon-h:before {
  font-family: FontAwesome;
  content: "\f111";
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  color: #ffffff;
  background-color: rgb(163, 22, 22);
  padding: 5px;
  position: relative;
  left: -10px;
  width: 40px;
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50%;
  line-height: 10%;
}
.dva .charcoal:before {
  background-color: #333;
}
.dva .gold:before {
  background-color: rgb(180, 151, 32);
}
.dva .silver:before {
  background-color: rgb(89, 101, 102);
}
.dva .reading:before,
.dva .book:before {
  content: "\f02d";
}
.dva .assignment:before,
.dva .bookmark:before {
  content: "\f02e";
}
.dva .task:before,
.dva .pen-nib:before {
  content: url(http://dva.musites.org/icons/pen-nib.svg);
}
.dva .requirement:before,
.dva .check:before {
  content: "\f00c";
}
.dva .submit:before,
.dva .get:before {
  content: url(http://dva.musites.org/icons/get-app.svg);
}
.dva .objective:before,
.dva .bullseye:before {
  content: "\f140";
}
.dva .respond:before,
.dva .chat:before {
  content: "\f27a";
  -webkit-transform: scale(-0.8, 0.8);
          transform: scale(-0.8, 0.8);
}
.dva .post:before,
.dva .pencil:before {
  content: url(http://dva.musites.org/icons/pencil-alt.svg);
}
.dva .quiz:before,
.dva .rocket:before {
  content: "\f135";
}
.dva .lesson:before,
.dva .notes:before {
  content: url(http://dva.musites.org/icons/speaker-notes.svg);
}
.dva .project:before,
.dva .brush:before {
  content: "\f1fc";
}
.dva .reply:before,
.dva .chat-left:before {
  content: "\f27a";
}
.dva .box {
  background-color: #f5f2f0;
  padding: 25px 30px;
  margin: 20px 10px 20px 10px;
  border-radius: 5px;
  color: black;
  border: 1px solid #999;
  text-shadow: 2px 2px 2px rgba(255, 255, 255, 0.25);
}
.dva .box.blue {
  border: 1px solid;
  border-color: rgba(14, 185, 185, 0.8);
  background-color: rgba(0, 255, 255, 0.25);
}
.dva .box.purple {
  border-color: rgba(216, 91, 240, 0.8);
  background-color: rgba(207, 37, 241, 0.25);
}
.dva .box.orange {
  border-color: rgba(216, 148, 0, 0.8);
  background-color: rgba(255, 174, 0, 0.25);
}
.dva p.call-out,
.dva .call-out {
  margin-top: 0px !important;
  font-size: 1.2em !important;
  line-height: 180%;
  color: #333;
}
.dva p.call-out.box,
.dva .call-out.box {
  margin: 0px 0px 20px 0px;
}
.dva p.call-out.no-line,
.dva .call-out.no-line {
  border-left: none;
}
.dva p.call-out.line,
.dva .call-out.line {
  border-left: none;
  border-left: 4px solid rgb(89, 101, 102);
  padding-left: 20px;
}
.dva p.call-out p:last-child,
.dva .call-out p:last-child {
  margin-bottom: 0 !important;
}
.dva p.intro,
.dva .intro {
  font-size: 1.2em;
  margin-top: 20px;
  padding-bottom: 20px;
  margin-bottom: 40px;
}
.dva p,
.dva li {
  font-size: 1.1em;
  line-height: 1.8em;
}
.dva h1,
.dva h2,
.dva h3,
.dva h4,
.dva h5,
.dva h6 {
  margin-top: 40px;
  margin-bottom: 20px;
  font-weight: normal;
}
.dva h2 {
  font-weight: 700;
  border-top: solid rgba(238, 238, 238, 0.95) 2px;
  font-size: 1.8em;
  text-transform: none;
  padding: 15px 0px;
  line-height: 100%;
  margin-top: 70px;
}
.dva h3 {
  font-weight: 700;
  position: relative;
  font-size: 1.4em;
}
.dva h4 {
  font-size: 1.25em !important;
  margin-bottom: 20px !important;
}
.dva h5 {
  font-size: 1em;
  font-weight: 400;
  text-transform: uppercase;
}
.dva h6 {
  font-size: 0.9em;
  font-weight: 400;
  font-style: italic;
}
.dva h2 + h2 {
  border-top: none transparent 0px;
  margin-top: 24px;
}
.dva h2 + h3,
.dva h3 + h4,
.dva h4 + h5,
.dva h5 + h6 {
  margin-top: 0 !important;
}
.dva .columns,
.dva .c-count-3 {
  -webkit-columns: 3;
     -moz-columns: 3;
          columns: 3;
}
.dva .c-count-2 {
  -webkit-columns: 2;
     -moz-columns: 2;
          columns: 2;
}
.dva .c-count-4 {
  -webkit-columns: 4;
     -moz-columns: 4;
          columns: 4;
}
.dva sup {
  margin: 0px;
  position: relative;
  font-size: 10px;
  left: 2px;
}
.dva .t-syllabus {
  width: 90%;
  max-width: 1000px;
  border: 1px solid #666;
}
.dva .t-syllabus thead {
  background-color: #eee;
  color: #555;
}
.dva .t-syllabus td,
.dva .t-syllabus th {
  padding: 8px;
  border: 0.5px solid #555;
}
.dva .t-syllabus th {
  font-weight: bold;
  text-align: left;
}
.dva .t-syllabus .total {
  font-weight: bold;
  text-align: right;
}
.dva .t-syllabus.weight td:nth-child(1),
.dva .t-syllabus.weight th:nth-child(1) {
  width: 10%;
}
.dva .t-syllabus.weight td:nth-child(3),
.dva .t-syllabus.weight th:nth-child(3) {
  width: 20%;
}
.dva .t-syllabus.scale td:nth-child(1),
.dva .t-syllabus.scale th:nth-child(1) {
  width: 7%;
}
.dva .t-syllabus.scale td:nth-child(2),
.dva .t-syllabus.scale th:nth-child(2) {
  width: 18%;
}
.dva .t-syllabus.scale td:nth-child(3),
.dva .t-syllabus.scale th:nth-child(3) {
  width: 74%;
}
.dva .fine-print {
  padding: 10px;
}
.dva .fine-print p {
  font-size: 0.7em;
  line-height: 1.5em;
  margin-bottom: 0.5em;
  margin-left: 8px;
  text-indent: 0;
}
.dva .fine-print p sup {
  margin: 0px;
  position: relative;
  left: -8px;
}
.dva details {
  border: 1px solid #aaa;
  border-radius: 4px;
  padding: 1em;
  max-width: 98% !important;
  font-family: sans-serif;
  margin-top: 0;
  margin-bottom: 1em;
  position: relative;
}
.dva details summary {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  font-size: 1.25em;
  margin: 0;
  line-height: 95%;
  padding: 0;
  list-style-type: none;
  font-weight: bold;
  cursor: pointer;
}
.dva details summary:after {
  content: "+";
  color: #555;
  position: absolute;
  right: 1em;
}
.dva details[open] {
  padding: 2em;
}
.dva details[open] summary {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  font-size: 1em;
  border-bottom: 1px solid #aaa;
  padding-bottom: 1.5em;
  color: #aaa !important;
}
.dva details[open] summary:after {
  content: "-";
}
.dva details[open] h2:first-of-type {
  border-top: none;
  margin-top: 1em;
}
.dva .top-image {
  position: relative;
  min-height: 30%;
  background-color: rgb(171, 41, 41);
  padding: 5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.dva .top-image img {
  display: block;
}
.dva .note {
  font-style: italic;
  font-size: 0.9em;
}
.dva .instructions {
  background-color: rgb(165, 253, 224);
  padding: 10px;
  font-size: 0.95em;
  border-radius: 10px;
  margin-top: 100px;
  margin-bottom: 10px !important;
}
.dva .hl,
.dva mark {
  border-bottom: 1px rgb(226, 211, 1) solid;
  background-color: rgba(251, 255, 0, 0.5);
  border-radius: 3px;
  padding: 1px 2px;
  font-weight: 400;
  color: rgba(0, 0, 0, 0.85);
}
.dva .hl.blue,
.dva mark.blue {
  border-color: rgba(14, 185, 185, 0.8);
  background-color: rgba(0, 255, 255, 0.5);
}
.dva .hl.purple,
.dva mark.purple {
  border-color: rgba(207, 37, 241, 0.8);
  background-color: rgba(207, 37, 241, 0.5);
}
.dva .hl.orange,
.dva mark.orange {
  border-color: rgba(216, 148, 0, 0.8);
  background-color: rgba(255, 174, 0, 0.5);
}
.dva .video {
  position: relative;
  padding-top: 56.25%;
  margin-top: 0;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 20px;
  border: 4px solid #000;
  background-color: #000;
}
.dva .video.med {
  padding-top: 39.375%;
  width: 70%;
}
.dva .video.small {
  padding-top: 28.125%;
  width: 50%;
}
.dva .video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.dva .res-img {
  position: relative;
  padding-top: 100%;
}
.dva .res-img .img-box {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.dva .columnBlock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.dva .columnBlock > div {
  width: 46%;
  margin-bottom: 50px;
}
.dva .columnBlock.count-3 > div {
  width: 30%;
}
@media only screen and (max-width: 950px) {
  .dva .columnBlock > div, .dva .columnBlock.count-3 > div {
    width: 46%;
  }
}
@media only screen and (max-width: 750px) {
  .dva .columnBlock {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .dva .columnBlock > div, .dva .columnBlock.count-3 > div {
    width: 100%;
  }
}
.dva ul,
.dva ol,
.dva p {
  margin-bottom: 26px;
}
.dva .line-top {
  border-top: dotted 1px #000;
}
.dva table,
.dva td {
  border-collapse: collapse;
  border: 1px #ddd solid;
  margin-bottom: 20px;
}
.dva table {
  width: 90%;
  font-size: 85%;
  border: 2px solid black;
}
.dva table th {
  font-weight: 700;
  background-color: #555;
  color: #fff;
}
.dva table td {
  padding: 10px;
}
.dva table td p {
  margin: 0px;
  margin-bottom: 10px;
  line-height: 150%;
}
.dva table td p:last-child {
  margin-bottom: 0px;
}
.dva table.tbg {
  width: 100%;
  margin-top: 80px;
  margin-bottom: 80px;
  border: 4px solid rgb(199, 199, 199);
}
.dva table.tbg tr {
  border-bottom: 1px solid rgba(54, 54, 54, 0.308);
}
.dva table.tbg tr:last-of-type {
  border: 0;
}
.dva table.tbg th {
  text-transform: uppercase;
  text-align: left;
  color: rgba(8, 8, 8, 0.65);
}
.dva table.tbg td,
.dva table.tbg th {
  width: 33.333%;
  padding: 12px;
  border-right: 1px solid rgba(54, 54, 54, 0.308);
}
.dva table.tbg td:nth-child(1),
.dva table.tbg th:nth-child(1) {
  background-color: rgb(230, 230, 230);
}
.dva table.tbg td:nth-child(2),
.dva table.tbg th:nth-child(2) {
  background-color: rgba(255, 151, 151, 0.849);
}
.dva table.tbg td:nth-child(3),
.dva table.tbg th:nth-child(3) {
  background-color: rgba(188, 240, 192, 0.822);
  border-right: 0px none transparent;
}
.dva body {
  counter-increment: section-counter;
}
.dva ul,
.dva ol,
.dva table {
  margin-top: 10px !important;
}
.dva li {
  margin-bottom: 0.5em;
}
.dva ol.round {
  counter-reset: my-counter;
  list-style-type: none;
  padding-left: 1em;
}
.dva ol.round > li {
  white-space: normal;
  padding-left: 1.3em;
  counter-increment: my-counter;
  position: relative;
  line-height: 1.5em;
}
.dva ol.round > li:before {
  font-weight: bold;
  background-color: #333;
  content: counter(my-counter);
  color: white;
  border-radius: 50%;
  padding: 4px 5px 5px 4px;
  width: 1.15em;
  height: 1.15em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.6em;
  left: -0.75em;
  top: 0.125em;
  line-height: 99%;
}
.dva ul li::before {
  content: "⬝";
  color: #bbb;
  font-size: 1.5em;
  display: inline-block;
  width: 0.5em;
  margin-left: -0.5em;
  -webkit-transform: translateY(0px);
          transform: translateY(0px);
}
.dva ul ul,
.dva ol ul {
  margin-bottom: 2em;
  padding-left: 1em;
  padding-right: 6em;
  font-size: 0.85em;
  color: #565560;
}
.dva ul ul li,
.dva ol ul li {
  line-height: 1.4em;
  margin-bottom: 0.25em;
}
.dva ul ul li::before,
.dva ol ul li::before {
  content: "⁃";
}
.dva ul.check-list li::before {
  margin-left: -1em;
  font-family: FontAwesome;
  content: "\f00c";
  color: rgb(15, 184, 203);
  display: inline-block;
  width: 1em;
  -webkit-transform: translate(0em, 0em) scale(0.75);
          transform: translate(0em, 0em) scale(0.75);
}
.dva ul.check-list li {
  margin-bottom: 1em;
}
.dva ul {
  list-style-type: none;
}
.dva ul.qa, .dva ul.ps {
  margin-left: 100px;
}
.dva ul.qa li::before, .dva ul.ps li::before {
  position: absolute;
  width: auto;
  -webkit-transform: none;
          transform: none;
  -webkit-transform: translateX(-95%);
          transform: translateX(-95%);
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 0.8em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center;
  float: left;
  color: #fff;
  padding: 0 10px;
}
.dva ul.qa li:nth-child(odd)::before, .dva ul.ps li:nth-child(odd)::before {
  background-color: rgb(55, 67, 107);
}
.dva ul.qa li:nth-child(even), .dva ul.ps li:nth-child(even) {
  margin-bottom: 3em;
}
.dva ul.qa li:nth-child(even)::before, .dva ul.ps li:nth-child(even)::before {
  background-color: rgb(235, 166, 63);
}
.dva ul.qa li:nth-child(odd)::before {
  content: "Question";
}
.dva ul.qa li:nth-child(even)::before {
  content: "Answer";
}
.dva ul.ps li:nth-child(odd)::before {
  content: "Problem";
}
.dva ul.ps li:nth-child(even)::before {
  content: "Solution";
}
.dva ul.pills {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 99%;
}
.dva ul.pills li {
  border-color: #333;
  border-style: solid;
  border-width: 1px;
  border-radius: 8px;
  margin: 5px;
  padding: 8px;
  color: #333;
  line-height: 102%;
}
.dva ul.pills li::before {
  content: none;
}
.dva ul.pills.upper li {
  text-transform: uppercase;
}
.dva ul.pills.red li {
  border-color: rgb(163, 22, 22);
}
.dva ul.pills.gold li {
  border-color: rgb(180, 151, 32);
}
.dva ul.pills.silver li {
  border-color: rgb(89, 101, 102);
}
.dva ul.pills.charcoal li {
  border-color: #333;
}
@media only screen and (max-width: 950px) {
  .dva .columns,
  .dva .c-count-3 {
    -webkit-columns: 2;
       -moz-columns: 2;
            columns: 2;
  }
  .dva .c-count-2 {
    -webkit-columns: 1;
       -moz-columns: 1;
            columns: 1;
  }
  .dva .c-count-4 {
    -webkit-columns: 3;
       -moz-columns: 3;
            columns: 3;
  }
}
@media only screen and (max-width: 750px) {
  .dva .columns,
  .dva .c-count-3 {
    -webkit-columns: 1;
       -moz-columns: 1;
            columns: 1;
  }
  .dva .c-count-2 {
    -webkit-columns: 1;
       -moz-columns: 1;
            columns: 1;
  }
  .dva .c-count-4 {
    -webkit-columns: 1;
       -moz-columns: 1;
            columns: 1;
  }
  .dva .left {
    margin-right: 30px;
    margin-bottom: 30px;
    float: none;
  }
  .dva .right {
    float: none;
    margin-left: 30px;
  }
  .dva img {
    width: 100%;
    height: auto;
    float: none !important;
  }
  .dva .text-image {
    margin-top: 48px;
    display: block;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .dva .text-image .img-zone {
    margin-right: 0px;
    width: 100%;
    display: block;
    max-width: auto;
    min-width: auto;
  }
  .dva .text-image .img-zone img {
    width: 100%;
    height: auto;
  }
  .dva .text-image .text-zone {
    width: 100%;
    margin-right: 0px;
    margin-left: 0px;
  }
  .dva .text-image.right .img-zone {
    float: none;
    margin-right: 0px;
    margin-left: 0px;
  }
  .dva p.call-out,
  .dva .call-out {
    margin-top: 0px !important;
    line-height: 180%;
  }
  .dva .box {
    padding: 10px;
    margin: 4px 3px 4px 3px;
  }
}
.dva .worksheet {
  counter-reset: ws-counter;
}
.dva .worksheet p,
.dva .worksheet h3,
.dva .worksheet h4 {
  margin-left: 10px;
}
.dva .worksheet > h2 {
  counter-increment: ws-counter;
  padding-left: 1.5em;
  position: relative;
  border-top: none;
  font-size: 1.5em;
  border-top: none;
  margin: 0;
  margin-bottom: 10px;
}
.dva .worksheet > h2:not(:first-of-type) {
  margin-top: 3em;
}
.dva .worksheet > h2::before {
  content: counter(ws-counter);
  position: absolute;
  font-size: 0.75em;
  color: white;
  left: 0;
  top: 13px;
  line-height: 99%;
  background-color: black;
  width: 1.5em;
  height: 1.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 5px;
}
.dva .worksheet > h3 {
  margin-bottom: 0.5em;
  font-size: 1.3em;
}
.dva .worksheet > h4 {
  margin-bottom: 0.5em;
  font-size: 1.2em;
}
.dva .worksheet ol {
  padding-left: 2em;
}
.dva .copy-block {
  margin: 40px 0;
  position: relative;
  background-color: rgb(247, 243, 224);
  padding: 30px;
  padding-top: 125px;
  border-radius: 10px;
}
.dva .copy-block h2:not :first-child {
  margin-top: 40px;
}
.dva .copy-block h2 {
  font-size: 1.5em;
  margin-bottom: 5px;
  padding: 0;
  border-top: none;
  padding-top: none;
}
.dva .copy-block h3 {
  margin-top: 30px;
  margin-bottom: 15px;
  font-size: 1em;
}
.dva .copy-block ol li,
.dva .copy-block ul li,
.dva .copy-block p,
.dva .copy-block ol,
.dva .copy-block ul {
  margin-top: 0;
  font-size: 0.95em;
  margin-bottom: 0px;
}
.dva .copy-block h2:first-of-type {
  margin-top: 0px;
}
.dva .copy-block::after {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: 10px;
  color: rgba(0, 0, 0, 0.35);
  background-color: rgba(255, 255, 255, 0.35);
  padding: 10px;
  border-radius: 5px;
  position: absolute;
  font-size: 1;
  content: "Copy/Paste";
}

.assignments .dva {
  padding: 10px;
}
.assignments .dva > *:first-child {
  margin-top: 0px !important;
  border-top: none !important;
}/*# sourceMappingURL=dva.css.map */
