body {
     /*  background: url(/images/layout/magnet-academy/magnet-academy-pattern-blue-lightning.png) repeat; */
       background: url(/images/layout/magnet-academy/magnet-academy-pattern-blue-background.png) repeat; 
}

/* ---- Headings ----- */
h1, h2, h3, h4, h5 {
font-family: 'Zen Maru Gothic', sans-serif;
/*margin-top: 15px;*/
}


body, html {
  height: 100%;
  font-family: 'Atkinson Hyperlegible', sans-serif;
  font-size: 1rem;
  overflow-x: hidden;
}

header {
    position: relative;
}

h1 {
	font-size:1.75rem;
	font-weight: 600;
} 

h2 {
	font-size:1.5rem;
	font-weight: 600;
} 

h3 {
	font-size:1.2rem;
	margin: 15px 0px;
} 

h4, h5, h6 {
	font-size:1rem;
	font-weight: 600;
} 


/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) { 


	h4 {
		font-size:1.1rem;
	} 

	h5, h6 {
		font-size:1rem;
	}
}

/* Medium devices (tablets, 768px and up, The navbar toggle appears at this breakpoint) */
@media (min-width: 768px) { 
	h1 {
		font-size:2rem;
	} 

	h2 {
		font-size:1.75rem;
	} 

	h3 {
		font-size:1.5rem;
	} 

	h4 {
		font-size:1.2rem;
	} 

	h5, h6 {
		font-size:1.1rem;
	}
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) { 

	body, html {
		font-size: 1.125rem;
	}

	h1 {
		font-size:2.5rem;
	} 

	h2 {
		font-size:2rem;
		font-weight: 600;
	} 

	h3 {
		font-size:1.75rem;
		font-weight: 600;
	} 

	h4 {
		font-size:1.5rem;
	} 

	h5, h6 {
		font-size:1.25rem;
	}

}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {


	h1 {
		font-size:3rem;
	} 

}


/* ------- sub headings ----- */


.heading-secondary, .heading-tertiary, .font-tertiary {
    font-family: 'Zen Maru Gothic', sans-serif; 
}



.heading-secondary {
    font-size: 1.75rem;
    font-weight: 400;
}

@media (min-width: 992px) {

    .heading-secondary {
        font-size: 2.5rem;
        font-weight: 600;
    }
}


.heading-tertiary {

    font-size: 1.25rem;
    font-weight: 600;
}

@media (min-width: 992px) {

    .heading-tertiary {
        font-size: 1.75rem;
    }
}

.font-tertiary {
    font-size: 1rem;
}

@media (min-width: 768px) { 
    
    .font-tertiary {
        font-size: 1.1rem;
    }
}

@media (min-width: 992px) {

    .font-tertiary {
        font-size: 1.25rem;
    }
}


/* Skip to main content for accessibility */
a.skip-main {
    left:-999px;
    position:absolute;
    top:auto;
    width:1px;
    height:1px;
    overflow:hidden;
    z-index:-999;
}
a.skip-main:focus, a.skip-main:active {
    color: #fff;
    background-color:#000;
    left: auto;
    top: auto;
    width: 30%;
    height: auto;
    overflow:auto;
    margin: 10px 35%;
    padding:5px;
    border-radius: 15px;
    border:4px solid yellow;
    text-align:center;
    font-size:1.2em;
    z-index:999;
}

/* -------- links for default in content area -------- */
a:link {

  padding: 2px 1px 0;
  color: #810871;
  text-decoration: underline #810871  1px dashed;
  font-weight: bold;
}

a:visited {
  color: #015c77;
}

a:hover {
  color: #AF0442;
  text-decoration: underline #AF0442 1px dashed;
}


a:active {
  /*background-color: #265301;
  color: #CDFEAA;*/
}

a:focus {
  /*background-color: #BAE498;*/
}

/* -------- links intro text with light blue background  -------- */

a.intro-text-link {
    text-decoration: underline 1px dashed;
    color: #000000;
    font-size: 1.125rem;
    font-weight: 800;
}

a.intro-text-link:hover {
    text-decoration: none;
}


/* -------- links on primary nav bar  -------- */
a.navigation-bar:link {
  text-decoration: none;
 font-weight: 700;
 font-size: 21px;
 border-bottom: 3px solid transparent;
 font-family: 'Zen Maru Gothic', sans-serif;
 color: #000000;
}

a.navigation-bar:hover {
  border-bottom: 3px dotted #D300FF;
 /* color: #f4d0d6; */
 color: #D300FF;

}

/* -------- advance search button -------- */


.button-advance-search {
  background-color: #4c4184;
  border: none;
  color: white;
  padding: 5px 10px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-size: 1.2rem;
  font-weight: 600;
  margin: 4px 2px;
  border-radius: 20px
}

.button-advance-search:hover {
  background-color: #B9FF5F;
  color: black;
}

/* -------- search button -------- */


.button-search {
  background-color: #B9FF5F;
  border: none;
  padding: 6px 15px;
  text-align: center;
  text-decoration: none;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-size: 1rem;
  margin: 4px 2px;
  font-weight: 700;

 
}

.button-search:hover {
  background-color: #97F0FF;
}


/* -------- tag button -------- */

a.tag {
  color: #000000;
  background-color: #97F0FF;
  border: 1px solid #1acfff;
  border-color: #1acfff;
  padding: 8px 16px;
  text-decoration: none;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 200%;
}

a.tag:link {
  color: #000000;
}

a.tag:visited {
  color: #4c4184;
}

a.tag:hover {
  background-color: #ffffff;
  /*border-color: #1acfff;*/
}

a.tag:focus {
  border-bottom: 1px solid;
  background: #BAE498;
}



/* -------- Call To Action / Read more button - -------- */

a.rectangle {
  display: inline-block;
  background-color: #B9FF5F;
  color: #000000;
  padding: 0.1rem .75rem 0.2rem .75rem;
  text-decoration: none;
  font-family: 'Zen Maru Gothic', sans-serif;
}

a.rectangle:link {
  color: #000000;
}

a.rectangle:visited {
  /*color: #437A16;*/
}

a.rectangle:focus {
 /* border-bottom: 1px solid;
  background: #BAE498;*/
}

a.rectangle:hover {
  background-color: #97F0FF ;
  cursor: pointer;
}

a.rectangle:active {
  /*background-color: black;*/
}


/* -------- white box with shadow  -------- */

.content-box-shadow {
 /* width: 100px;
  height: 100px;*/
  background: #ffffff;
  box-shadow: -12px 0 8px -10px #d2d2d2, 12px 0 8px -10px #d2d2d2; /* /* offset-x | offset-y | blur-radius | spread-radius | color  */
  /*box-shadow: -60px 0px 100px -90px #000000, 60px 0px 100px -90px #000000;
  clip-path: inset(0px -15px 0px -15px);
  position: relative;
  margin: 0 50px;*/
}

/* -------- classess for pagebase content -------- */

/*  for dominant image   */
.item-image-block {
    padding: 0px;
    margin: 0px;
}

.item-image-caption{
    font-size: 1rem;
    margin-bottom: 0px;
    color: #4c4184;
    line-height: 1rem;
    margin-top: 15px;
    text-align: left;
}

.image-content-container {
    width: 100%;

}

@media (min-width: 992px) {
    .image-content-container {
        width: 50%;
        float: right;
        padding: 15px;
        margin: 15px;
    }
}

/*  intro text  */
.intro-text {
    font: bold 1.125rem/1.5rem 'Zen Maru Gothic', sans-serif;
}


/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) { 

    .intro-text {
        font-size: 1.25rem;
    }

}

.item-image-credit {
    font: 0.75rem  Atkinson Hyperlegible, sans-serif;
    color: #53565a;
    text-align: left;
}

.item-image-credit {
    padding-top: 10px;
}

.published-modified-dates {
    font: italic 0.875rem  Atkinson Hyperlegible, sans-serif;
}

.published-modified-dates {
    color: #53565a;
}

.story-by {
    font: bold 1rem  Zen Maru Gothic, sans-serif;

}

.remove-margin-bottom p {
    margin-bottom:  0px;
    line-height: 1.2rem;
}

.space {
    height: 20px;
    clear: both;
}

/* -------- background colors -------- */
        
.background-purple {
    background-color: #4C4184;
    color: #fff;
}

.background-light-gray-apple {
     background-color: #F2F2F2;
}

.background-light-gray {
    background-color: #F2F2F2;
}

.background-white {
    background-color: #ffffff;
}

.background-dark-red {
    background-color: #e31837;
    color: #fff;
}

.background-dark-blue {
    background-color: #007CAD;
    color: #fff;
}

.background-blue-ma {
    background-color: #1ACFFF;
}

.background-light-blue-ma{
    background-color: #97F0FF;
}

.background-green {
    background-color: #B9FF5F;
}

.background-light-green {
    background-color: #D7FFA9;
}

.background-pink-ma {
    background-color: #BC05C1;
    color: #fff;
}

.background-pink-ma a.ways-to-learn-link {
    color: #fff;
    text-decoration: none;
}

.background-green-ma {
  background-color: #b9ff5f;  
}


.fontsize-xs {
    font-size: 0.625rem;
}

.fontsize-sm {
    font-size: 0.75rem;
}


.fontsize-md {
    font-size: 0.875rem;
}

.fontsize-lg {
    font-size: 1rem;
}

.fontsize-xl {
    font-size: 1.0625rem;
}


.white-text  {
    color: #ffffff;
}

.black-text  {
    color: #000000;
}

/* -------- all line colors -------- */

.light-gray-line {
    border: solid 2px #e7e7e7;
}

/*SEARCH FORM*/
.search-form {
    border-radius: 30px !important;
    /*border-radius:Top-left, Top-right, Bottom-right, Bottom-left;*/
}
/*to cange only one form and not all give unique class name like  class="search-form" */
 .search-btn {
    border-radius: 0px 30px 30px 0px;
    cursor:pointer;
}


/* ----- make acknowledge center on mobile view ----- */
.maglab-acknowledgement {
    color: white;
    text-align: center;
}


@media (min-width: 768px) { 
    
    .maglab-acknowledgement {
        text-align: right;
    }
}


/* ----- make maglab logo center on mobile view ----- */
.maglab-logo {
    text-align: center;
}


@media (min-width: 768px) { 
    
    .maglab-logo {
        text-align: left;
    }
}
/* ----- horizontal rule style ----- */


hr { 
    background: url('/images/layout/magnet-academy/lightning-icon.jpg') no-repeat top center;
    display: block;
    height: 60px;
    border: 0;
    position: relative;
    margin: 0;
    padding: 1rem 0;
    background-size: 40px 60px;
}
hr:before,
hr:after {
    content: '';
    display: block;
    position: absolute;
    background: #1ACFFF;
    height: 2px;
    top: 24px;
}
hr:before {
    left: 0;
    right: 50%;
    margin-right: 20px;
}
hr:after {
    right: 0;
    left: 50%;
    margin-left: 20px;
}


/* -------- intro text -------- */
.intro-text {
   font-family: 'Zen Maru Gothic', sans-serif;
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.5rem;
    /*margin-top: 30px;*/
}



/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) { 

    .excerptText {
        font-size: 1.25rem;
       /* line-height: 1.5rem;*/

    }

}

/*----- tab with blue background on homepage ----- */

.nav-link.blue-background-active.active {
    background-color: #1ACFFF;
}

 
/* ---------- mega menu ------ */    
.megamenu-li {
  position: static;
}

.megamenu {
  position: absolute;
  width: 100%;
  left: 0;
  right: 0;
  padding: 10px;
}

.megamenu a {
    font-weight: normal;
     color: #53565a;
   text-decoration: none;
}


.megamenu .dropdown-item {
    white-space: normal;
    cursor: pointer;

}

.navbar-expand-xl .navbar-nav .nav-link {
    padding-left: 18px;
    padding-right: 18px;
}

.heading-menu {
    font: 1.125rem 'Poppins', sans-serif;

}


/* ----- for cards on pioneers and museum section  ---------- */


.tile-link {
    text-decoration: none;
    color:  #000000;
    background-color: #1ACFFF;
}


.tile-link:hover {
    text-decoration: none;
    color:  #000000;
    background: #B9FF5F;
    transition: all, 0.4s, ease;
    cursor: pointer;
}

a.pioneers {
    text-decoration: none;
    color: black;
}

/* ----- for black line on the bottom ---------- */
.black-line:after {
    content: " ";
    display: block;
    border-bottom: 2px solid #000000;
}


/* ----- for black line on top with font awesome icon ---------- */

.black-line-top-container:{
   position: relative;
   display: flex;
   justify-content: space-between;
   align-items: center;
   background: #000000;
   padding: 1em;
   overflow: hidden;
}

/*.black-line-top-container::before{*/
/*  position: absolute;*/
/*  top: calc(15% - 1px);*/
/*  right: 15px;*/
/*  left: 15px;*/
/*  Content: "";*/
/*  Background-color: black;*/
/*  height: 2px;*/
/*}*/

.black-line-top-container::before, .black-line-top-container::after{
  position: absolute;
  content: "";
  background-color: #000;
  height: 2px;
  /*width: 30%;*/
  width: calc(50% - 50px);
  top: 48px;
}

@media (min-width: 992px) { 
    .black-line-top-container::before, .black-line-top-container::after{
	    top: 54px;
    }
}

.black-line-top-container::before{
  left: 10px;
}

.black-line-top-container::after{
  right: 10px;
}


/* for pioneer headshot on pioneer main page section */
.avatar {
  border: 0.3rem solid rgba(#fff, 0.3);
  margin-top: -6rem;
  margin-bottom: 1rem;
  max-width: 9rem;
}


/* ----- make pioneer headshot smaller on laptop and mobile  ----- */



@media (max-width: 992px) { 
    .img-smaller {
        width: 50%;
        height: 50%;
    }
}


.content-box-outer {
    width: 100%;
}

.content-box-inner {
    padding: 20px;
}

.content-box-inner-shorter {
    padding: 10px 20px;
}


/* ------- Override Bootstrap 4 --------- */

/*.container .container {*/
/*    padding-left: 0;*/
/*    padding-right: 0;*/
/*}*/

.container {
    padding-left: 30px;
    padding-right: 30px;
}

.secondary-image-container {
	width: 100%;

}

@media (min-width: 992px) {
    .secondary-image-container {
        /*width: 50%;*/
        max-width: 300px;
        background: #f2f2f2;
        float: right;
	    padding: 15px;
	    margin: 15px;
    }
    
}

.content-box-outer-border {
    width: 90%;
    border: 2px solid #B9ff5F;
    margin-bottom: 40px;
    margin-left: auto;
    margin-right: auto;
}

.content-box-outer-border > h4 {
    background-color: #B9ff5F;
}

@media (min-width: 576px) { 

    .content-box-outer-border {
        width: 100%;
    }
}


.content-box-inner {
    padding: 20px;
}


.text-muted {
    color: #424242 !important;
}





/* -------  Bootstrap 4 image grid --------- */

.row-image-grid {
  display: flex;
  flex-wrap: wrap;
  padding: 0 4px;
}

/* Create four equal columns that sits next to each other */
.column-image-grid {
  flex: 25%;
  max-width: 25%;
  padding: 0 4px;
}

.column-image-grid img {
  margin-top: 8px;
  vertical-align: middle;
  width: 100%;
}

/* Responsive layout - makes a two column-layout instead of four columns */
@media screen and (max-width: 800px) {
  .column-image-grid {
    flex: 50%;
    max-width: 50%;
  }
}

/* Responsive layout - makes the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 600px) {
  .column-image-grid {
    flex: 100%;
    max-width: 100%;
  }
}

/* -------  Bootstrap 4 image grid --------- */

.hidden {
    display: none;
}

.data-nav .list-group-item {
    display: inline-block;
    cursor: pointer;
    color: #E31837;
}

.center {
    text-align: center;
}

.tut-container {
    margin: 0 auto;
}

.tut-container iframe {
    max-width: none;
    -webkit-transform-origin: 0 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -o-transform-origin: 0 0;
    transform-origin: 0 0;
}

/* left info box width */ 
@media (min-width: 576px) {
    .w-sm-40 {
        width: 40%;
    }
}

/* ------ pull quote ------ */

.quote-icon {
    background: url(/images/layout/quote_top_left.png) top left no-repeat;
    /*padding-left: 85px;
    margin-top: 30px;
    line-height: 18px;*/
}

.quote-text {
    font-family: 'Zen Maru Gothic', sans-serif;
    font-size: 1.5rem;
    line-height: 1.75rem;
    font-weight: bolder;
    color: #4c4184;
}
    
.quote-source {
    font-family: 'Zen Maru Gothic', sans-serif;
    font-size: 1.125rem;
    color: #53565a;
    font-weight: 600;
}

.quote-max-width {
    max-width: 600px;
}
    
@media (min-width: 992px) { 

    .quote-text {
        font-size: 1.667rem;
        padding-bottom: 25px;
    }
}

/* ------------------ for speech bubbles ------------------ */



/* CSS talk bubble */


.speech-talk-bubble{
	/*margin: 5px 20px;*/
	margin-top: 5px;
	margin-bottom: 5px;
  position: relative;
	height: auto;

}


.speech-whitebackground {

	background-color: white;
}


.speech-lightgreenbackground {

	background-color: #d7ffa9;
}


.speech-lightbluebackground{

	background-color: #97f0ff;
}

.speech-border-pink{
  /*border: 4px solid #d300ff;*/
  border: 4px solid #AF0442;
}

.speech-border-dark-blue{
  /*border: 4px solid #1acfff;*/
  border: 4px solid #015c77;
}

.speech-border-purple{
  border: 4px solid #4c4184;
}


/* 1 - Right triangle placed top left flush. */
.speech-tri-right.border.left-top:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: -30px;
	right: auto;
  top: -30px;
	bottom: auto;
	border: 32px solid;
	border-color:  transparent transparent #015c77 #015c77;
}
.speech-tri-right.left-top:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: 0px;
	right: auto;
  top: -30px;
	bottom: auto;
	border: 22px solid;
	border-color: transparent transparent #015c77 #015c77;
}


/* 2 - Right triangle, placed bottom left side slightly in*/
.speech-tri-right.speech-border-dark-blue.btm-left:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
	left: -4px;
  right: auto;
  top: auto;
	bottom: -30px;
	border: 26px solid;
	border-color: transparent transparent transparent #015c77;
}
.speech-tri-right.btm-left:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
	left: 0px;
  right: auto;
  top: auto;
	bottom: -20px;
	border: 22px solid;
	border-color: transparent transparent transparent white;
}



/* 3 - Right triangle, placed bottom right side slightly in*/
.speech-tri-right.speech-border-pink.btm-right-in:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: -4px;
	bottom: -32px;
	border: 16px solid;
	border-color: #AF0442 #AF0442 transparent transparent;
}
.speech-tri-right.btm-right-in:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: 0px;
	bottom: -20px;
	border: 12px solid;
	border-color: white white transparent transparent;
}


/* 4 - Right triangle, placed bottom right side slightly in*/
.speech-tri-right.border.btm-right:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: -8px;
	bottom: -40px;
	border: 20px solid;
	border-color: #4c4184 #4c4184 transparent transparent;
}
.speech-tri-right.btm-right:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: 0px;
	bottom: -20px;
	border: 12px solid;
	border-color: #97f0ff #97f0ff transparent transparent;
}


/* 5 - Right triangle placed top right flush. */
.speech-tri-right.speech-border-purple.right-top:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  	left: auto;
	right: -4px;
  	top: -36px;
	bottom: auto;
	border: 16px solid;
	/*border-color: green transparent transparent transparent;*/
	border-color: transparent #4c4184 #4c4184 transparent ;
}
.speech-tri-right.right-top:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: 0px;
  top: -26px;
	bottom: auto;
	border: 14px solid;
	/*border-color: white transparent transparent transparent;*/
	border-color: transparent white white  transparent;
}

/* talk bubble contents */
.speech-talktext{
  padding: .75em;
	text-align: left;
  line-height: 1.5em;
}

.pull-quote-image {
    min-width: 70px;
    min-height: 57px;
    background-size: cover;
    background-image: url("/images/layout/magnet-academy/quote_top_left.png");
}

/* ---------- tooltip ------ */ 


    .popup-box {
        position: absolute;
        background: #d4f9ff;
        border: 1px solid #ccc;
        margin: 50px 0px 0px -80px;
        padding: 20px 40px 20px 20px;
        max-width: 400px;
        z-index: 1;
    }
    .popup-box .popup-box {
        background: #97f0ff;
    }
    .popup-box p {
         font-weight: bold;
     }
     
    .popup-text {
        display: inline-block;
        font-weight: bold;
    }
    .popup-closed {
        display: none;
    }
    .popup, .popup-opened {
        display: inline-block;
    }
    .popup-outer-icon {
        padding: 0px 10px;
        border-radius: 50%;
        font-size: 30px;
        font-weight: bolder;
         cursor: pointer;
         background: #1ACFFF;
         color: #ffffff;
    }
    .popup-close {
        cursor: pointer;
        position: absolute;
        right: 6px;
        top: 6px;
        padding: 0px 8px;
        background: #1ACFFF;
        color: #ffffff;
    }

/* ---------- tooltip ------ */ 


.nav-tabs .nav-link {
    margin-bottom: 0px;
    border: 0px solid transparent; 
    /*border-top-left-radius: 0rem; 
    border-top-right-radius: 0rem; */
    border-radius: 0rem;
    padding: 8px 15px;
}

/* home page vertical tabs */
.left-tabs .nav-link {
    background-color: #97F0FF;
    margin-bottom: 10px;
    border-radius: 15px;
    margin-right: 8px;
}

.left-tabs .nav-link.active {
    background-color: #1ACFFF;
    border-radius: 0;
    border: 0;
    margin-right: -1px;
    transition: .25s;
}

@media screen and (max-width: 767px) {
  .left-tabs .nav-link.active {
        border-radius: 15px;
        margin-right: 8px;
    }
}

.left-tabs .nav-link:hover {
    background-color: #1ACFFF;
    border: 0;
}
/* home page vertical tabs */

.max-height-300 {
    max-height: 300px;
}
.layout-icon {
    width: 40px;
    height: auto;
}

/* ---- blueimp overrides ---- */
.blueimp-gallery .title-container {
    position: absolute;
    left: 0;
    top: 0;
    color: #fff;
    width: 100%;
    text-align: center;
}
.blueimp-gallery .title {
    display: inline-block;
    font-size: 18px;
}
.blueimp-gallery .title:not(:empty) {
    padding: 20px;
    background: rgba(0, 0, 0, 0.75);
}
.blueimp-gallery .description {
    width: 100%;
    position: absolute;
    text-align: center;
    color: #fff;
    bottom: 20px;
}
.blueimp-gallery .download {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 20px;
    cursor: pointer;
}
/* ---- blueimp overrides ---- */