/*////////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* MAIN CONTENT //////////////////////////////////////////////////////////////////////////////////////////*/
html, body{/*background:#111;*/font-size: 16px;font-family: 'Source Sans Pro', sans-serif;color: #586F91;}
.main {background: #fff;left: 0;position: relative;padding-bottom: 50px;min-height: 600px;z-index:105;}
.main, .responsive_fullscreen_header{webkit-transition: left 500ms ease;-webkit-transition: left 500ms ease;transition: left 500ms ease;}
.no_button_styling {background: none;border: none !important;}
/*////////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* Text Elements /////////////////////////////////////////////////////////////////////////////////////////*/
a {color: #007bff;text-decoration: none;}
a:hover, a:focus {    color: #0056b3;
    text-decoration: underline;}
    h1, h2, h3, h4, h5, h6 {
        color: #3d4246;
    }
    h3 span {
        font-size: 16px;
        color: #586f91;
    }
    h5 { font-size:18px; }
    /* Default colour styles */ 
    .danger{color:#CA1E47;}
    .alert{color:#F29500;}
    .passive{color:#85CC8E;}
    .tandf{color:#688FCA;}
    .dusk{color:#C17270;}
    .cyan{color:#448391;}
    .purple{color:#7368A0;}
    .slate{color:#333333;}
    .med_slate{color:#5F5F5F;}
    .mute_slate{color:#CFCFCF;}

/*Header Text / Title and SubTitle*/
.header-title, .header-subtitle{display: block;text-align: center;position: absolute;color: #fff;width: 100%;}
.header-title {line-height: 100vh; /* This value will get switched out by JS */font-size: 8vmin;}
.reduced_header .header-title {line-height: 28vh;}
.reduced_header .header-subtitle {line-height: 37vh;}
.header-subtitle {line-height: 110vh;margin-top:2vmin;font-size: 4vmin;}

/*Block Quotes for Routledge generated book quotes*/
.product_reviews-bq .fa {padding: 5px;font-size: 0.7em;position: absolute;}
.product_reviews-bq .fa-quote-left {margin-left: -22px;}
.product_reviews-bq p {margin-left: 22px;}
.citation{font-size: 0.7em;color: #688FCA;display: block;padding-top: 10px;}
blockquote {border-left: 5px solid #E0E6F0;}
.html5warning{background:#CA1E47;color:#fff;text-align: center;margin:0;padding:0;position: absolute;top:0;left:0;z-index:400;width:100%;}
.html5logo{font-size:3em;}

/*Block Quotes for Routledge generated book quotes*/
.product_reviews-bq .fa {padding: 5px;font-size: 0.7em;position: absolute;}
.product_reviews-bq .fa-quote-left {margin-left: -22px;}
.product_reviews-bq p {margin-left: 22px;}
.citation{font-size: 0.7em;color: #688FCA;display: block;padding-top: 10px;}
blockquote {
    border-left: 5px solid #4ea6a6;
    background: #f2f7f8;
    padding: 20px;
    margin-left: 25px;
}
.html5warning{background:#CA1E47;color:#fff;text-align: center;margin:0;padding:0;position: absolute;top:0;left:0;z-index:400;width:100%;}
.html5logo{font-size:3em;}

/*//////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* RESPONSIVE HEADER ///////////////////////////////////////////////////////////////////////////////////*/
.responsive_fullscreen_header {
    background: url(../img/bg.jpg) repeat scroll center center / cover #333333;
    left: 0;
    position: relative;
}
.reduced_header{height:300px;}/*Header image size when you DON'T want fullscreen*/
nav::before {content: "";background: #111;display: block;width: 100%;height: 44px;z-index: 1;position: fixed;left: 0;top: 0;-webkit-transition: left 500ms ease;transition: left 500ms ease;}
/*/////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* FOOTER //////////////////////////////////////////////////////////////////////////////////////////////*/
footer{background:#333;color: #fff;-webkit-transition: left 500ms ease;transition: left 500ms ease;position:relative;left:0;}
.cw-navigation-main {margin-top: 25px;}
.FOOTER_information {display: none;}
.FOOTER_cookies{background:#111;color:#fff;text-align: center;height:44px;line-height:44px;font-size: 0.5em;}
.FOOTER_copyright{background:#222;color:#fff;text-align: center;height:44px;line-height:44px;font-size: 0.6em;}
.FOOTER_social {background: #688FCA;color: #fff;position: relative;z-index: 10;height: 150px;line-height: 150px;}
.FOOTER_social>.social>li>a {color:#fff;text-decoration: none;}
.social{margin:0;padding:0;display: -webkit-box;display: flex;display: -webkit-flex;display: -ms-flexbox;-webkit-box-pack: start;-ms-flex-pack: center;-webkit-box-orient: horizontal;-webkit-box-direction: normal;-ms-flex-direction: row;flex-direction: row;-webkit-flex-direction: row;-ms-flex: row;flex-wrap: wrap;-webkit-flex-wrap: wrap;-ms-flex-wrap: wrap;-ms-flex-line-pack: center;align-content: center;-webkit-align-content: center;-ms-flex-align: center;-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;-webkit-justify-content: center;-ms-justify: center;-webkit-box-align: center;-ms-flex-align: center;align-items: center;-webkit-align-items: center;}
.social>li>a>i {font-size: 2em;top: 6px;position: relative;width: 34px;text-align: center;}
.social>li>a>span {display:none;}
.social>li{list-style: none;text-align: center;display: inline-block;padding-left: 20px;padding-right: 20px;}
.social>li>a:hover {color: #043C6C;}
#return {width: 44px;position: fixed;height: 44px;right: 0px;z-index: 200000;background: #111;bottom: 0;line-height: 39px;font-size: 2em;color: #fff;text-align: center;cursor: pointer;display: none;}

/*////////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* Page Blurb ////////////////////////////////////////////////////////////////////////////////////////////*/
.product_reviews, .product_description {margin: 0;padding-left: 5%;padding-right: 5%;z-index: 200;padding-top: 40px;padding-bottom: 40px;position: relative;webkit-transition: left 500ms ease;-webkit-transition: left 500ms ease;transition: left 500ms ease;left:0;}
.product_reviews{background: #E0E6F0;}
.product_description{background: #fff;z-index: 300;}
.product_reviews p, .product_description p,.product_reviews h1, .product_description h1,.product_reviews ul, .product_description ul   {max-width:1280px; margin-left:auto;margin-right:auto;}
.product_reviews blockquote:last-child {margin-bottom: 0;}
.product_reviews_arrow {font-size: 46px;position: absolute;border-radius: 100px;background: #E0E6F0;text-align: center;left: 50%;height: 50px;line-height: 50px;width: 50px;margin-left: -25px;bottom: -22px;}
.product_description_arrow {font-size: 46px;position: absolute;border-radius: 100px;background: #fff;text-align: center;left: 50%;height: 50px;line-height: 50px;width: 50px;margin-left: -25px;bottom: -22px;}
/*////////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* NAVIGATION ////////////////////////////////////////////////////////////////////////////////////////////*/
.navigation_button {position: fixed;left: 0px;top: 0px;color: #fff;background: #111;font-size:2em;height: 44px;line-height: 44px;width: 44px;text-align: center;cursor: pointer;z-index: 10000000;webkit-transition: all 500ms ease;-webkit-transition: all 500ms ease;transition: all 500ms ease;}
.mobile-navigation_reveal {left:0 !important;}
.mobile-navigation_buttonmove{left: 100%;margin-left: -46px;}/*Colour button switches to on menu reveal*/
.mobile-navigation_shift{left:100%;}/*how much the page shifts on menu reveal*/
.navigation_shift{left:25%;}/*how much the page shifts on menu reveal*/
.navigation_shift_long{left:75%;}/*how much the page shifts on menu reveal*/
.navigation_reveal {left:0 !important;}
.navigation_buttonmove{left:25% !important;background:#111;}
nav{position: fixed;background:#333;width: 100%;height:100%;left:-100%;color: #fff;top:0;z-index:500;-webkit-transition: left 500ms ease;transition: left 500ms ease;}
.cw-navigation-main{margin: 0;padding: 0;margin-top: 25px;height: 90%;padding-bottom: 70px;overflow-y: auto;}
.cw-navigation-main>li {display: block;background: #222;margin: 6px;font-size: 1em;line-height: 43px;min-height: 44px;padding-top: 0;padding: 0;border-radius: 0;text-align: center;list-style: none;border:0;}
.header-author {display:none;}
.header-edition {display:none;}
.SUBMENU_child {display: none;background: #555;padding: 0;border-left: 2px solid #222;border-right: 2px solid #222;margin-top: -2px;}
.cw-navigation-main a{text-decoration:none;color: #fff;display: block;text-align: left;padding-left:10px;border: 2px solid #222;position:relative;text-overflow: ellipsis;height: 47px;}
.mobile-navigation_reveal .brand-ribbon {display: block;bottom: 0;left: 0;background: #111;width: 100%;padding-top: 4px;position: absolute;height: 50px;}
.mobile-navigation_reveal .brand-ribbon img {height: 40px;margin-left: 4px;}
.SUBMENU_parent {position: relative;width: 100%;margin: 0;top: 0;padding: 0;display: none;-webkit-backface-visibility: hidden;-webkit-transform: translateZ(0);left: 0;background: #333;}
.nav_anchor .fa-times {position: absolute;right: 18px;margin-top: 13px;}
.SUBMENU_button-child>.SUBMENU_open::after {content: "\f00d";}
.submenu_reveal .nav_anchor {background: #688FCA;}
.SUBMENU_open {background: #688FCA;}
.SUBMENU_child a {border: 2px solid #333;}
.cw-navigation-main i {width: 20px;text-align: center;margin-left: -4px;}
/*///////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* Page Tabs ////////////////////////////////////////////////////////////////////////////////////////////*/
#page_pills{display: -webkit-box;display: flex;display: -webkit-flex;display: -ms-flexbox;-webkit-box-pack: start;-ms-flex-pack: center;-webkit-box-orient: horizontal;-webkit-box-direction: normal;-ms-flex-direction: row;flex-direction: row;-webkit-flex-direction: row;-ms-flex: row;flex-wrap: wrap;-webkit-flex-wrap: wrap;-ms-flex-wrap: wrap;-ms-flex-line-pack: start;align-content: flex-start;-webkit-align-content: flex-start;-ms-flex-align: center;-webkit-box-pack: start;-ms-flex-pack: start;justify-content: flex-start;-webkit-justify-content: flex-start;-ms-justify: center;-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;-webkit-align-items: flex-start;margin-bottom: 10px;overflow: hidden;}
#page_pills_2{display: -webkit-box;display: flex;display: -webkit-flex;display: -ms-flexbox;-webkit-box-pack: start;-ms-flex-pack: center;-webkit-box-orient: horizontal;-webkit-box-direction: normal;-ms-flex-direction: row;flex-direction: row;-webkit-flex-direction: row;-ms-flex: row;flex-wrap: wrap;-webkit-flex-wrap: wrap;-ms-flex-wrap: wrap;-ms-flex-line-pack: start;align-content: flex-start;-webkit-align-content: flex-start;-ms-flex-align: center;-webkit-box-pack: start;-ms-flex-pack: start;justify-content: flex-start;-webkit-justify-content: flex-start;-ms-justify: center;-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;-webkit-align-items: flex-start;margin-bottom: 10px;overflow: hidden;}
.nav-pills>li.active>a, .nav-pills>li.active>a:hover, .nav-pills>li.active>a:focus {
    color: #fff;
    background-color: #565f6c;
    border-radius: 2px;
    height: 40px;
    padding: 0;
    padding-left: 10px;
    line-height: 40px;
    padding-right: 30px;
    border: 2px solid #565f6c;
}
.tab-pane>.nav-pills>li.active>a, .tab-pane>.nav-pills>li.active>a:hover, .tab-pane>.nav-pills>li.active>a:focus {color: #fff;background-color: #565f6c;border-radius: 0;}
.nav-pills>li {margin: 2px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-flex-grow:1;-ms-flex:1;-ms-flex-preferred-size: auto;}
.nav-pills > li.active::after {bottom: 3px;color: #fff;content: "\f103";font-family: FontAwesome;font-size: 1.4em;pointer-events: none;position: absolute;text-align: right;width: 100%;padding-right: 10px;}
.nav-pills > li::after {bottom: 10px;color: rgba(88, 111, 145, 0.43);content: "\f067";font-family: FontAwesome;font-size: 0.7em;pointer-events: none;position: absolute;text-align: right;width: 100%;padding-right: 10px;}
.tab-content > .tab-pane > .nav-pills > li.active::after {bottom: 7px;color:#fff;content: "\f107";font-family: FontAwesome;font-size: 1.4em;pointer-events: none;position: absolute;text-align: right;width: 100%;}
.nav>li>a {
    position: relative;
    display: block;
    padding: 5px 15px;
    background: none;
    border-radius: 2px;
    color: #0d6efd;
    border: 2px solid #0d6efd;
}
#page_pills li:first-child {margin-left: 1px;}
#page_pills li:last-child {margin-right: 1px;}

.nav-tabs { border-bottom: none; }
.nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover {
    color: #ddebff;
    cursor: default;
    background-color: #0D6EFD;
    border: 2px solid #0D6EFD;
    /* border-bottom: 3px solid #0D6EFD; */
}
.nav>li>a:hover, .nav>li>a:focus {
    text-decoration: none;
    background-color: #90bdff;
    border-color: #90bdff;
    color: #0d6efd;
}

.top-level-tab { background: #f1f4f8; padding: 10px 20px; }

.tab-content { color:#333; }
.tab-pane>#page_pills {padding-left: 0;padding-right: 0;padding-top: 0;}
.horiz_navigation_button {position: fixed;top: 0;left: 0;z-index: 1000;font-size: 2em;width: 44px;text-align: center;height: 44px;line-height: 44px;}
.horizontal_menu {padding-top: 44px;}
.horizontal_menu>ul>li>a {text-decoration: none;color: #fff;background: none;display: block;text-align: left;padding-left: 10px;border: 2px solid #222;position: relative;text-overflow: ellipsis;overflow: hidden;height: 47px;}
.horizontal_menu>ul>li {display: block;background: #222;margin: 6px;font-size: 1em;line-height: 43px;min-height: 44px;padding-top: 0;padding: 0;border-radius: 0;text-align: center;list-style: none;border: 0;}
.horizontal_menu img {height: 44px;position: absolute;bottom: 5px;left: 5px;}
.navigation_reveal .dropdown-menu {position: relative;float: none;background: none;margin: 0;padding: 0;}
.navigation_reveal>ul>li>ul>li>a, .navigation_reveal>ul>li>ul>li>ul>li>a{text-decoration: none;color: #fff;display: block;text-align: left;border: 2px solid #222;position: relative;text-overflow: ellipsis;height: 47px;background: #333;padding: 0 0 0 10px;line-height: inherit;}
.navigation_reveal>ul>li>ul>li>ul>li>a{background:#444;}
.horizontal_menu .open>a, .horizontal_menu .open>a:hover, .horizontal_menu .open>a:focus {background:none; border:none;}
/*///////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* Rows and Columns /////////////////////////////////////////////////////////////////////////////////////*/
.row {margin-left: auto;margin-right: auto;max-width: 1280px;background: none;}
/*///////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* SAMS /////////////////////////////////////////////////////////////////////////////////////////////////*/

.LOGINFORM_modal {position: fixed;padding: 15px;top: 0;left: 0;background: #fff;width: 100%;height: 100%;z-index: 100000;}
.LOGINFORM_close {position: relative;float: right;font-size: 1.5em;margin-top: -6px;z-index: 20000;width: 44px;height: 44px;margin-right: -6px;line-height: 44px;text-align: center;cursor: pointer;}
.LOGINFORM-new .fa, .LOGINFORM-exist .fa {font-size: 3em;}
.global_form_loader footer{display:none;}
.LOGINFORM_return i, #LOGINFORM_submit_button i {font-size: 2em;}
/*///////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* CUSTOM ///////////////////////////////////////////////////////////////////////////////////////////////*/
.well .plyr--audio .plyr__controls {
    background: #fff;
}
ul.included {
    padding-left: 0;
}
ul.included.sub {
    padding-left: 10px;
}
ul.included li {
    padding-left: 0;
    list-style: none;
    background: #e5e5ec;
    color: #394148;
    margin-left: 0;
    display: table;
    padding: .25em .4em;
    margin-bottom: 5px;
}
footer {
    background: #2e343b;
    padding: 2rem 0;
    font-size: 90%;
    color: #6b6f77;
}
.footer-copyright a {
    color: #939aa4;
}
footer p {
    margin-bottom: 10px;
}
footer a:hover {
    color: #a9afb8;
}
.cw-navigation-main {margin-top: 25px;}


section.exercises {
    padding: 40px 0px 40px 0px;
    background: #F1F4F8;
}
section.instructor-resources {
    padding: 40px 0px 40px 0px;
}
section.home {
    padding: 40px 0px 40px 0px;
}
section.about {
    background: #F1F4F8;
    padding: 40px 0px 40px 0px;
}
section.reviews {
    background: #fff;
    padding: 40px 0px 40px 0px;
}
.main.cropped {
    padding: 30px 0 40px 0;
    min-height: initial;
}

/*///////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* CUSTOM ///////////////////////////////////////////////////////////////////////////////////////////////*/
.well--task {
    background: #f1f4f8;
    padding: 20px;
}
.well--task h2 {
    background: #a4b0c1;
    color: #fff;
    padding: 10px;
    margin: -20px -20px 10px -20px;
    font-size: 23px;
    text-indent: 10px;
}
ul.key-terms {
    padding: 0;
}
ul.key-terms li {
    list-style: none;
    padding: 5px 9px;
    margin: 4px 4px;
    display: inline-block;
    background: #F1F4F8;
}
.youtube-well {
    padding: 20px 20px 10px 20px;
    margin-bottom: 20px;
    background-color: #F2F7F8;
    border: 0px solid #e3e3e3;
    border-radius: 4px;
}
.accordion {
    background: none;
    margin: 5px 0;
    padding: 15px;
    color: #307bfe;
    cursor: pointer;
    border: none;
    width: 100%;
    text-align: left;
    outline: none;
    font-size: 15px;
    transition: 0.4s;
    font-weight: 600;
}
.accordion:hover {text-decoration: underline;}
.panel {padding: 20px;display: none;background-color: #f1f4f8;overflow: hidden;}
.accordion.active > .panel {padding: 20px;}
.accordion:after {font-family: "FontAwesome";content: "\f078";font-weight: 900;font-size: 13px;color: #307bfe;float: right;margin: 5px 0px 0px 0px;}
.accordion.active:after {content: "\f077";}
.accordion:focus {outline: none;}
button.accordion.active {background: #e0e4ea;}

.accordion--keypoints {background: #3c69a9;margin: 5px 0;padding: 15px;color: #fff;cursor: pointer;width: 100%;border: none;text-align: left;outline: none;font-size: 15px;transition: 0.4s;}
.accordion--keypoints:hover {background-color: #4675B6;}
.panel {padding: 20px;display: none;background-color: #f1f4f8;overflow: hidden;}
.accordion--keypoints.active > .panel {padding: 20px;}
.accordion--keypoints:after {font-family: "FontAwesome";content: "\f078";font-weight: 900;font-size: 13px;color: #fff;float: right;margin: 5px 0px 0px 0px;}
.accordion--keypoints.active:after {content: "\f077";}
.accordion--keypoints:focus {outline: none;}
button.accordion--keypoints.active {background: #4675B6;}
/* ////////////////////////////////////////////////////////////////////////////
////// CSS GRID STYLES //////////////////////////////////////////////////////*/
.grid {display: -ms-grid;display: grid;grid-gap: 10px;-ms-grid-columns: 1fr;grid-template-columns: repeat(1, 1fr);-ms-grid-rows: 1fr;grid-template-rows: repeat(1, 1fr);background-color: #fff;color: #444;}.grid > *:nth-child(1) {-ms-grid-row: 1;-ms-grid-column: 1;}
.grid-2 {display: -ms-grid;display: grid;grid-gap: 10px;-ms-grid-columns: 1fr;grid-template-columns: repeat(1, 1fr);-ms-grid-rows: 1fr;grid-template-rows: repeat(1, 1fr);background-color: #fff;color: #444;}.grid-2 > *:nth-child(1) {-ms-grid-row: 1;-ms-grid-column: 1;}
.grid-3 {display: -ms-grid;display: grid;grid-gap: 10px;-ms-grid-columns: 1fr;grid-template-columns: repeat(1, 1fr);-ms-grid-rows: 1fr;grid-template-rows: repeat(1, 1fr);background-color: #fff;color: #444;}.grid-3 > *:nth-child(1) {-ms-grid-row: 1;-ms-grid-column: 1;}
.grid-4 {display: -ms-grid;display: grid;grid-gap: 10px;-ms-grid-columns: 1fr;grid-template-columns: repeat(1, 1fr);-ms-grid-rows: 1fr;grid-template-rows: repeat(1, 1fr);background-color: #fff;color: #444;}
.grid-4 > *:nth-child(1) {-ms-grid-row: 1;-ms-grid-column: 1;}

/* ////////////////////////////////////////////////////////////////////////////
////// CARD STYLES //////////////////////////////////////////////////////////*/
.card--content {position: relative;display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;width: 100%;background: #F1F4F8;padding: 20px 20px;vertical-align: top;text-decoration: none;border-radius: 2px;margin-bottom: 0px;-webkit-transition: all 300ms linear;-o-transition: all 300ms linear;transition: all 300ms linear;height: fit-content;}
/*.card--content:hover,.card--content:focus,.card--content.focus,.card--content:active,.card--content.active,.open>.dropdown-toggle.card--content {color:#fff;background-color:#3c69a9;border-color:#3c69a9;text-decoration:none}
.card--content:hover .title,.card--content:focus .title,.card--content.focus .title,.card--content:active .title,.card--content.active .title,.open>.dropdown-toggle.card--content .title {color:#fff}*/
.card--content .card-block {padding: 0px;margin-left: auto;margin-right: auto;}
.card--content .chapter {color: #586F91;margin: 0;}
.card--content .title {font-size: 24px;color: #3d4246;margin: 9px 0px;}
.card--content .subtitle { color: #3d4246; font-size: 18px; margin: 0px 0px 20px 0; }
.card--content .video {}
.card--content p {
    color: #586F91;
    font-size: 18px;
}
/*.card--content:hover p,.card--content:focus p,.card--content.focus p,.card--content:active p,.card--content.active p,.open>.dropdown-toggle.card--content p {color:rgb(255 255 255 / 70%);}
.card--content::after {
    color: #307bfe;
    content: "\f138";
    font-family: FontAwesome;
    font-size: 25px;
    float: right;
    position: absolute;
    right: 0;
    margin: auto 0;
    padding: 20px;
}
.card--content:hover::after,.card--content:focus::after,.card--content.focus::after,.card--content:active::after,.card--content.active::after,.open>.dropdown-toggle.card--content::after {color:#fff}*/
.skill-icon {
    background: #3d4246;
    color: #ffffff;
    font-size: 18px;
    margin: -20px -20px 10px -20px;
    font-weight: 700;
    display: block;
    padding: 5px 15px;
}
.btn-card--link {
    color: #307bfe;
    background: none;
    font-weight: 600;
    border-radius: 2px;
    padding: 8px 12px;
    margin-bottom: 10px;
    border: 2px solid;
    border-color: #307bfe;
    width: fit-content;
}
.btn-card--link:hover, .btn-card--link:focus, .btn-card--link.focus, .btn-card--link:active, .btn-card--link.active, .open>.dropdown-toggle.btn-card--link {
    color: #fff;
    background-color: #307bfe;
    border-color: #307bfe;
}
.btn-card--link.active.focus, .btn-card--link.active:focus, .btn-card--link.active:hover, .btn-card--link:active.focus, .btn-card--link:active:focus, .btn-card--link:active:hover, .open>.dropdown-toggle.btn-card--link.focus, .open>.dropdown-toggle.btn-card--link:focus, .open>.dropdown-toggle.btn-card--link:hover {
    color: #fff;
    background-color: #307bfe;
    border-color: #307bfe;
}
.btn-card--link::after {
    color: #307bfe;
    content: "\f178";
    font-family: FontAwesome;
    margin: 0px 0px 0px 8px;
}
.btn-card--link:hover::after {
    color: #fff;
}

.card--content .check-list {
    overflow: hidden;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 10;
    -webkit-box-orient: vertical;
}
ul.check-list {
    list-style: none;
    padding: 0px 15px;
}
.check-list li::before {
    color: #ffffff;
    content: "\f00c";
    font-family: FontAwesome;
    margin: 0px 10px 0px 0px;
    background: #97753d;
    border-radius: 50%;
    padding: 5px;
    font-size: 10px;
}
.exercise-header {
    background: #f1f4f8;
    height: auto;
    min-height: 160px;
    padding: 0px 0px 40px 0px;
}
.exercise-header .header-reduced-title {
    margin: 20px 0px 6px 0px;
}
.exercise-header p {
    font-size: 19px;
}
h3 {
    color: #3d4246;
}

.item-content {
    padding: 15px;
    border-left: 5px solid #dca300;
    box-shadow: none;
}
.textcentered {
    text-align: center;
}

.header-hero-author { color: #fff; font-size: 28px; }
.header-hero-title { color:#fff; font-size:60px; }
.header-hero-subtitle { color:#fff; font-size:50px; }
.header-hero-edition { color:#fff; font-size:36px; }

.hero {
    position: absolute;
    background: none;
    bottom: 10%;
    padding: 20px;
    width: 100%;
    margin-left: auto;
    text-align: left;
    margin-right: auto;
}

.header-content {
    margin-bottom: 25px;
    background: rgba(0,0,0,0.5);
    padding: 10px 20px;
}

.header-title-intro {
    color: #fff;
    font-size: 7vmin;
    line-height: 7vmin;
    margin: 5px 0px;
    text-transform: uppercase;
    font-weight: 600;
}
.header-subtitle-intro {
    color: #fff;
    font-size: 8vmin;
    line-height: 8vmin;
    padding: 2px 0px;
    margin: 5px 0px;
}
.header-subtitle-intro-second {
    color: #fff;
    font-size: 4vmin;
    line-height: 4vmin;
    padding: 2px 0px;
    margin: 5px 0px;
    font-weight: 600;
    text-transform: uppercase;
}
.header-author-intro {
    color: #fff;
    font-size: 3vmin;
    line-height: 3vmin;
    padding: 0px 10px;
    margin: 0px 0px;
    text-transform: uppercase;
    font-weight: 600;
}
.header-edition-intro {
    color: #fff;
    font-size: 3vmin;
}
span.ampersands {
    color: #fff;
}

.btn-primary {
    color: #fff;
    background: #0D6EFD;
    border-radius: 2px;
    padding: 8px 12px;
    margin-bottom: 10px;
    border: 2px solid;
    border-color: #0D6EFD;
    box-shadow: 0 2px 4px 0 rgba(0,25,85,.1);
    -webkit-transition: .3s ease;
    -moz-transition: .3s ease;
    -o-transition: .3s ease;
    -ms-transition: .3s ease;
    transition: .3s ease;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary.focus, .btn-primary:active, .btn-primary.active, .open>.dropdown-toggle.btn-primary {
    color: #fff;
    background-color: #0c418f;
    border-color: #0c418f;
}
.btn-primary.active.focus, .btn-primary.active:focus, .btn-primary.active:hover, .btn-primary:active.focus, .btn-primary:active:focus, .btn-primary:active:hover, .open>.dropdown-toggle.btn-primary.focus, .open>.dropdown-toggle.btn-primary:focus, .open>.dropdown-toggle.btn-primary:hover {
    color: #fff;
    background-color: #0c418f;
    border-color: #0c418f;
}

.powerpoints .list-inline li a {
    background: #eee;
}

.btn-card {
    color: #fff;
    background-color: #becfd9;
    border-color: #becfd9;
    border-radius: 2px;
    padding: 6px 10px;
    margin-bottom: 10px;
    box-shadow: 0 2px 4px 0 rgba(0,25,85,.1);
    -webkit-transition: .3s ease;
    -moz-transition: .3s ease;
    -o-transition: .3s ease;
    -ms-transition: .3s ease;
    transition: .3s ease;
}
.btn-card:hover, .btn-card:focus, .btn-card.focus, .btn-card:active, .btn-card.active, .open>.dropdown-toggle.btn-card {
    color: #fff;
    background-color: #a4b5bf;
    border-color: #a4b5bf;
}
.btn-card.active.focus, .btn-card.active:focus, .btn-card.active:hover, .btn-card:active.focus, .btn-card:active:focus, .btn-card:active:hover, .open>.dropdown-toggle.btn-card.focus, .open>.dropdown-toggle.btn-card:focus, .open>.dropdown-toggle.btn-card:hover {
    color: #fff;
    background-color: #a4b5bf;
    border-color: #a4b5bf;
}

.btn-primary-home {
    color: #fff;
    background: #e2a902;
    border: 2px solid #e2a902;
    font-weight: 500;
    padding: 10px 12px;
    border-radius: 2px;
    margin-bottom: 10px;
}

.btn-primary-home.active.focus, .btn-primary-home.active:focus, .btn-primary-home.active:hover, .btn-primary-home:active.focus, .btn-primary-home:active:focus, .btn-primary-home:active:hover, .open>.dropdown-toggle.btn-primary-home.focus, .open>.dropdown-toggle.btn-primary-home:focus, .open>.dropdown-toggle.btn-primary-home:hover {
    color: #fff;
    background-color: #f3b80e;
    border-color: #f3b80e;
}
.card-title {
    margin-bottom: .75rem;
    color: #384047;
    font-size: 23px;
    margin-top: 5px;
}
.card-edition {
    color: #717f86;
    margin-bottom: 0.7rem;
}
.card-block {
    padding: 1.25rem;
}
span.glossary-title {
    font-weight: 700;
    color: #b13432;
}

span.green {
    font-weight: 700;
    color: #2d9222;
}

.glossary-item {
    background: #F2F7F8;
    padding: 9px 20px;
    margin: 10px 0px;
}

.alf-question>li> i {
    font-style: normal;
    padding: 10px;
    width: 100%;
    position: relative;
    display: block;
    background: #fff;
    font-weight: 300;
}

/*/////////////////////////////////////////////
/////////////// SALVATTORE STYLES //////////*/
#grid-1, #grid-2, #grid-3 {margin-top: 0px;}
/*//// grid columns 1 ////*/
#grid-1[data-columns]::before {content: '1 .column.size-1of1';}
@media screen and (max-width: 480px){#grid-1[data-columns]::before {content: '1 .column.size-1of1';}}
@media screen and (min-width: 481px) and (max-width: 768px) {#grid-1[data-columns]::before {content: '1 .column.size-1of1';}}
@media screen and (min-width: 769px) {#grid-1[data-columns]::before {content: '1 .column.size-1of1';}}
/*//// grid columns 2 ////*/
#grid-2[data-columns]::before {content: '2 .column.size-1of2';}
@media screen and (max-width: 480px){#grid-2[data-columns]::before {content: '1 .column.size-1of1';}}
@media screen and (min-width: 481px) and (max-width: 768px) {#grid-2[data-columns]::before {content: '2 .column.size-1of2';}}
@media screen and (min-width: 769px) {#grid-2[data-columns]::before {content: '2 .column.size-1of2';}}
/*//// grid columns 3 ////*/
#grid-3[data-columns]::before {content: '3 .column.size-1of3';}
@media screen and (max-width: 480px){#grid-3[data-columns]::before {content: '1 .column.size-1of1';}}
@media screen and (min-width: 481px) and (max-width: 768px) {#grid-3[data-columns]::before {content: '2 .column.size-1of2';}}
@media screen and (min-width: 769px) {#grid-3[data-columns]::before {content: '3 .column.size-1of3';}}
/*//// grid columns 4 ////*/
#grid-4[data-columns]::before {content: '4 .column.size-1of3';}
@media screen and (max-width: 480px){#grid-4[data-columns]::before {content: '1 .column.size-1of1';}}
@media screen and (min-width: 481px) and (max-width: 768px) {#grid-4[data-columns]::before {content: '2 .column.size-1of2';}}
@media screen and (min-width: 769px) {#grid-4[data-columns]::before {content: '4 .column.size-1of4';}}
.masonry {
    margin-bottom: 50px;
    margin-top: 0px !important;
}
.item { position: relative; display: block; margin-bottom: 0.75rem; margin: 12px 8px ; -webkit-animation-duration: 0.2s; animation-duration: 0.2s; -webkit-animation-fill-mode: both; animation-fill-mode: both;} 
.item.rss-card {
    padding: 15px;
    border-radius: 2px;
    display: inline-block;
    margin: 5px;
    width: 100%;
}
.card-title a {
    color: #4285f4;
}
.card-title a:hover {color: #5392fb;}
.itemDate {
    color: #717f86;
    margin-bottom: 0.7rem;
}
i.fa.fa-calendar {
    padding-right: 5px;
    display: initial;
}

.item.gall {
    position: relative;
    display: block;
    -webkit-animation-duration: 0.2s;
    animation-duration: 0.2s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    margin-bottom: 15px;
    box-shadow: none;
    border: none;
    border-radius: 0;
}
/* Again, you’re free to use and define the classes: */
.column { float: left; }
.size-1of1 { width: 100%; }
.size-1of2 { width: 50%; }
.size-1of3 { width: 33%; }
.size-1of4 { width: 25%; }
/* These are the classes that are going to be applied: */
.column { float: left; }
.size-1of3 { width: 33%; }

.collection { margin: 20px 0;; padding-left: 0; list-style-type: none; border-top: 1px solid #d9e3e6; border-radius: 2px; overflow: hidden; position: relative; border-left: none; border-right: none; }
.collection a { color: #333; text-decoration: none; }
.collection .collection-item {background-color: #f2f7f8;line-height: 1.5rem;padding: 10px 65px 10px 20px;margin: 0;border-bottom: 1px solid #d9e3e6;}
.collection-item { position: relative; padding-left: 30px; }
.collection-item:hover { background-color: #d9e3e6; transition: all 0.3s cubic-bezier(.25,.8,.25,1); }
.collection-item p { margin: 0; }
.collection-item.last { border-bottom: none; border-radius: 0 0 2px 2px; }
.collection.no-margin { margin: 10px -20px -10px -20px !important; }
.collection-item.no-link { pointer-events: none; color: #333; }
.collection-item.external-notice { font-size: 14px; padding: 5px 20px; color: #767676; }
.collection { border-left: 1px solid #d9e3e6; border-right: 1px solid #d9e3e6; }
.collection a { color: #0d6efd !important; text-decoration: underline; }
.link-icon { position: absolute; top: 25px; right: 25px; }

.collection.on-this-page { max-height: 400px; overflow-y: scroll; }


.collection-item.audio { background: #fff; padding: 15px 20px; }
.collection-item.audio:hover { background-color:#fff ; }
.collection-item.audio p { margin: 10px 0; }
.btn-accordion {display:block; background: #f2f7f8;margin: 5px 0;padding: 10px 15px;color: #3d4246;cursor: pointer;width: 100%;border: none;text-align: left;outline: none;font-size: 15px;font-weight: 600;border-radius: 2px;}
.btn-accordion:after { font-family: "FontAwesome", "Source Sans Pro"; content: "Hide \f107"; font-weight: 600; color: #007bff; margin: auto 0px auto 18px; float: right; }
.btn-accordion[aria-expanded=false]:after { font-family: "FontAwesome", "Source Sans Pro"; content: "Show \f105"; font-weight: 600; color: #007bff; margin: auto 0px auto 18px; float: right; }
.btn-accordion:focus {outline: none;color: #3d4246;}
button.btn-accordion.active {background: #e0e4ea;color: #3d4246;}
.collection.light .collection-item { background-color: #fff; }
.btn-accordion {display:block; background: #f2f7f8;margin: 5px 0;padding: 10px 15px;color: #3d4246;cursor: pointer;width: 100%;border: none;text-align: left;outline: none;font-size: 15px;font-weight: 600;border-radius: 2px;}
.btn-accordion:after { font-family: "FontAwesome", "Source Sans Pro"; content: "Hide \f107"; font-weight: 600; color: #007bff; margin: auto 0px auto 18px; float: right; }
.btn-accordion[aria-expanded=false]:after { font-family: "FontAwesome", "Source Sans Pro"; content: "Show \f105"; font-weight: 600; color: #007bff; margin: auto 0px auto 18px; float: right; }
.btn-accordion:focus {outline: none;color: #3d4246;}
button.btn-accordion.active {background: #e0e4ea;color: #3d4246;}
.collection.light .collection-item { background-color: #fff; }

.video-container {
    max-width: 720px;
}

.collapse, .collapsing { background-color: #f2f7f8; padding: 10px 20px; }

.collection-item p {
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}




.carousel-inner>.item {
    border: none;
    border: 0px solid #e5e5e5;
    box-shadow: 0px 0px 10px #d3dbe3;
}

a.scroll {
    color: #30363d;
}

a.scroll:hover {
    color: #434a52;
}
.col-lg-12.col-md-12.col-sm-12.page-wrap {
    padding: 0;
    padding-top: 20px;
}
.hero.reduced {
    position: absolute;
    bottom: 30px;
    background: rgba(0, 55, 96, 0);
    padding: 20px;
    width: 100%;
    margin-left: auto;
    text-align: left;
    margin-right: auto;
    top: auto;
}
.header-reduced-title {
    color: #3d4246;
    font-size: 32px;
    max-width: max-content;
}
.header-reduced-subtitle {
    color: #fff;
    font-size: 25px;
}

img.img-responsive.author {
    width: 200px;
    border-radius: 50%;
    margin-left: auto;
    margin-right: auto;
    border: 4px solid #bdcb38;
    margin-bottom: 30px;
}
.title-author {
    font-size: 25px;
    color: #30363d;
    margin-bottom: 15px;
}
.about-author-card {
    position: relative;
    display: block;
    margin-bottom: .75rem;
    background-color: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 4px;
    /*box-shadow: 0px 0px 10px #d3dbe3;*/
    margin: 12px 8px;
    -webkit-animation-duration: 0.2s;
    animation-duration: 0.2s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    padding: 1.25rem;
    max-width: 400px;
    /*margin-left: auto;
    margin-right: auto;*/
}
.author-img { margin: -20px -20px 0px -20px;; }
.author-photo { border-radius: 4px 4px 0 0px; }

.header-scroll_icon {
    font-size: 30px;
    position: absolute;
    border-radius: 100px;
    text-align: center;
    left: 50%;
    height: 50px;
    line-height: 48px;
    width: 50px;
    margin-left: -25px;
    bottom: 10px;
    z-index: 400;
    -webkit-transition: left 500ms ease;
    transition: left 500ms ease;
    color: #fff;
}
.bounce {
    animation-iteration-count: infinite;
    -webkit-animation-iteration-count: infinite;
    -moz-animation-iteration-count: infinite;
    -o-animation-iteration-count: infinite;
    animation-duration: 2s;
}

.card--service {
    padding: 1.25rem;
    background: #fff;
}
.card--service .skill-icons {
    background: #144473;
    color: #fff;
    border-radius: 50%;
    padding: 10px;
    font-size: 13px;
    margin-bottom: 0px;
}
.card--service h3 {
    color: #3d4246;
}
/*///////////////////////////////////////////////////
/////////////// Chapter footer STYLES //////////////////*/
.foot-next {
    background: #565f6d;
    padding-top: 17px;
    padding-bottom: 17px;
}
.foot-next a {
    color: #fff;
}
a.next-link {
    float: right;
    text-align: right;
}
a.back-link {
    float: left;
}
.light {
    color: #d8d6d2;
}
a.back-link, .next-link {
    width: 50%;
    font-size: 17px;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.foot-next i.fa.fa-long-arrow-left {
    float: left;
    margin-right: 15px;
    margin-top: 14px;
}
.foot-next i.fa.fa-long-arrow-right {
    float: right;
    margin-left: 15px;
    margin-top: 14px;
}
.foot-next i.fa.fa-long-arrow-left, .foot-next i.fa.fa-long-arrow-right {font-size: 25px;}

.well {
    padding: 20px;
    margin-bottom: 20px;
    background-color: #F2F7F8;
    border: 0px solid #e3e3e3;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 0px 0px rgba(0,0,0,.05);
    box-shadow: inset 0 0px 0px rgba(0,0,0,.05);
}
.well h3 {
    margin: 0px 0px 6px 0px;
}
li.btn.btn-primary a {
    color: #fff;
}
.breadcrumb {
    background: none;
    padding: 0;
    margin: 100px 0px 6px 0px;
    font-size: 18px;
}
.breadcrumb>li+li:before {
    padding: 0 5px;
    color: #a5b8d1;
    content: "\f105";
    font-family: FontAwesome;
}
.breadcrumb>.active {
    color: #a4b0c1;
}
dd {
    margin-left: 20px;
}
dt {
    font-weight: bold;
    margin-top: 15px;
}
/*///////////////////////////////////////////////////
/////////////////// Card STYLES //////////////////////*/
.card-block-image {
    background: #F2F7F8;
    min-height: 150px;
    position: relative;
    text-align: center;
}
.card-block-image h3 {
    padding: 50px 20px 10px 20px;
    margin: 0;
}
.card-block-image p {
    padding: 20px 20px 20px 20px;
}

/*///////////////////////////////////////////////////
/////////////////// Modal STYLES //////////////////////*/
.material-globe-modal .modal-dialog {
    position: relative;
    width: 100%;
    margin: 0px;
}
.material-globe-modal {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 200000;
    display: none;
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    outline: 0;
}
.material-globe-modal .modal-content {
    min-height: 100vh;
    position: relative;
    background-color: #fff;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 0px solid #999;
    border: 0px solid rgba(0,0,0,.2);
    border-radius: 0px;
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.material-globe-modal .modal-header {
    height: 250px;
    background: #ff454a;
}
.material-globe-modal .modal-header .modal-title {
    color: #fff;
    font-size: 35px;
    margin-top: 120px;
}
.material-globe-modal .close {
    color: #fff;
    font-size: 40px;
    opacity: 1;
    float: left;
}
.modal-footer {
    padding: 15px;
    text-align: right;
    border-top: none;
    text-align: left;
}
.btn-close {
    background: #d03236;
    color: #fff;
    border-radius: 2px;
}
.btn-close:hover {
    background: #d03236;
    color: #fff;
}
.btn-close.focus, .btn-close:focus, .btn-close:hover {
    color: #fff;
}
.btn-default {
    color: #fff;
    background-color: #ff454a;
    border-color: #ff454a;
    border-radius: 2px;
}
.btn-default:hover {
    color: #fff;
    background-color: #ff676b;
    border-color: #ff676b;
}
body.modal-open .modal {
    padding-right: 0px !important;
}
body.modal-open .return {display: none;}
body.modal-open {
    overflow: hidden;
    position: fixed;
    width: 100%;
}

span.label.label-card {
    background: rgb(48, 54, 61);
    display: inline-block;
    padding: .2em .6em .3em;
    font-size: 75%;
    font-weight: 500;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 2px;
    margin: 15px;
}
.card-item {
    padding: 0.25rem;
}

span.SAMS_user_information {
    display: none;
}
.SAMS_user_information {
    position: absolute;
    bottom: 50px;
    font-size: 0.8em;
    width: 100%;
    background: #384C6B;
    text-align: center;
    font-weight: 100;
    height: 30px;
    color: #fff;
    padding-left: 8px;
    line-height: 30px;
    left: 0;
}
.SAMS_functions {
    list-style: none;
    width: 360px;
    margin: 0;
    padding: 0;
    background: none;
    position: relative;
    bottom: 0px;
    height: 51px;
    text-align: center;
    margin-left: auto;
    /* margin-right: auto; */
    margin-top: 20px;
}
.SAMS_functions>li {
    display: inline-block;
    width: 48%;
    height: 45px;
    margin: 0.5%;
    line-height: 44px;
    border: 0px solid #A5C7FA;
    cursor: pointer;
}
.SAMS_functions a {
    color: #575C63;
    display: block;
    cursor: pointer;
    background: #CDD4DC;
    border-radius: 0px;
    font-weight: 700;
}
.SAMS_functions a:hover {
    color: #575C63;
    display: block;
    cursor: pointer;
    background: #DDE3E8;
    font-weight: 700;
}
.SAMS_functions>li:hover {
    border: none;
    background: none;
}

.lesson-list { line-height: 35px; margin: 20px -20px 20px -20px; }
.lesson-tag { position: relative; background: #9ebfef; color: #ffffff; padding: 3px 6px; border-radius: 4px; }

.download-card { position: relative; margin: 30px 0; background: #fff; display: block; max-width: 750px; border-radius: 4px; border:1px solid #d9e3e6; }
.download-title { position: relative; display: block; text-align: center; padding: 20px 30px; }
.download-title h3 { margin: 0px 0px 20px 0px; }
.file-list { margin: 10px 0 0; border: 1px solid #e0e0e0; border-radius: 2px; max-height: 450px; overflow: auto; position: relative; border-bottom: 0; border-right: 0; border-left: 0; }
.file-list a.file-item { display: block; -webkit-transition: .25s; transition: .25s; color: #333; }
.file-list .file-item { background-color: #fff; line-height: 1.5rem; padding: 10px 20px; margin: 0; border-bottom: 1px solid #e0e0e0; }
.file-list .file-item.active { background-color: #26a69a; color: #eafaf9; }
.file-list a.file-item:not(.active):hover { background-color: #ededed; text-decoration: none; }
.file-item p { color: #0D6EFD; }
.no-decor { color: #333 !important; text-decoration: none; display: inline-block; margin: 0 3px 0px; }
.file-type { font-family: 'Source Code Pro', monospace; color: #949494; }
.download-card-sub { font-size: 22px; color: #97753d; }



.biography-card { position: relative; background: #f1f4f8; border-radius: 4px; box-shadow: 0 3px 6px rgb(0 0 0 / 16%), 0 3px 6px rgb(0 0 0 / 23%); width: 100%; }
.biography-card-heading { padding: 10px 20px; }
.biography-card-image { display: flex; align-items: center; justify-content: center; padding: 0 10px; }
.biography-card-image img { box-shadow: 0 3px 6px rgb(0 0 0 / 16%), 0 3px 6px rgb(0 0 0 / 23%); border-radius: 4px; }
.biography-card-content { padding: 10px 20px; margin: 20px 0 0; max-height: 400px; overflow-y: scroll; }
.chapter-reference { padding: 10px 20px; }


.item.gall {
    position: relative;
    display: block;
    -webkit-animation-duration: .2s;
    animation-duration: .2s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    margin-bottom: 15px;
    box-shadow: none;
    border: 1px solid #e5e5e5;
    border-radius: 0;
    height: max-content;
    margin: 12px 7px;
}
.card-block-image {
    position: relative;
}
.card-block-image--text {
    padding: 15px;
    background: #f2f3f8;
}

.nav-tabs>li { margin: 5px 5px 0px 0px!important; }

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



.grid-item {
  margin: 0;
  display: grid;
  grid-template-rows: 1fr auto;
}

.grid-item > .audio-card {
  grid-row: 1 / -1;
  grid-column: 1;
}

.grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-flow: dense;
  gap: 10px;
}

.sub-section { position: relative; padding: 40px 30px; background: #f1f4f8; margin: 20px 0; }
.sub-section h3 { margin: 0 0 25px 0; }
.sub-section > .grid-container > .grid-item > .audio-card { background-color: #fff !important; }



.left-align { text-align: left !important; }

.spacer-s { clear: both; height: 10px; }

.img-fluid { max-width: 100%; height: auto; }


/* ////////////////////////////////////////////////////////////////////////////
////// GALLERY STYLES ///////////////////////////////////////////////////////*/
.responsive-gal {display: grid;grid-template-columns: repeat(1, 1fr);grid-template-rows: repeat(1, 1fr);grid-column-gap: 10px;grid-row-gap: 5px;}
.item.gall {position: relative;display: block;-webkit-animation-duration: 0.2s;animation-duration: 0.2s;-webkit-animation-fill-mode: both;animation-fill-mode: both;margin-bottom: 15px;box-shadow: none;border: 1px solid #e5e5e5;border-radius: 0;height: max-content;margin: 12px 7px;}
.lazyload {width: 100%;border-radius: .25rem .25rem 0 0;position: relative;}
.card-block-image {position: relative;}
.item.gall img {width: 100%;}
a.image-link--gallery {
    position: relative;
    display: block;
    max-width: 400px;
    margin: 0px 0px 10px 0px;
}

a.image-link--gallery.full-width { max-width: 100% !important; }
.image-link--gallery:focus:before {opacity: 1;}
.image-link--gallery:hover:before {opacity: 1;}
.image-link--gallery:before {background: none repeat scroll 0 0 rgba(44, 62, 80, 0.6);color: #FFFFFF;font-family: "FontAwesome";font-weight: 900;content: "\f065";font-size: 1.3rem;height: 100%;width: 100%;opacity: 0;position: absolute;text-decoration: none;z-index: 50;-webkit-transition: all 300ms linear;-moz-transition: all 300ms linear;-ms-transition: all 300ms linear;-o-transition: all 300ms linear;transition: all 300ms linear;text-align: center;padding-bottom: 0%;border-radius: .25rem .25rem 0 0;padding: 15px;left: 0;text-align: right;}


.image-link--gallery:hover::after {opacity: 1;}
.card-block-image--text {padding: 15px;background: #F2F3F8;}
.card-block-image--text h2 {font-size: 23px;}
.card-block-image--text h3 {font-size: 20px;color: #586f91;}
.card-block-image--text h4 {font-size: 16px;}

.mfp-content figcaption {background: none;color: #fff;padding: 0;}
.mfp-title h3 {color: #fff;}
.mfp-title p {font-size: 20px;}
figcaption {background: #f1f4f8;color: #203047;padding: 15px;font-size: 90%;}

.author-carousel { margin: 100px 0; }
.author-card { position: relative; display: block; margin: auto; background-color: #fff; border: 1px solid #e5e5e5; border-radius: 4px; padding: 1.25rem; max-width: 750px; }
.author-img { display: flex; align-content: center; }
.author-img img { width: auto !important; max-height: 280px; margin: 20px auto; border-radius: 200px; }
.read-more-container + [data-readmore-toggle], .read-more-container[data-readmore] { width: auto !important; }
.owl-theme .owl-nav [class*=owl-] {color: #FFF !important;padding: 0 0 !important;margin: 0 !important;background: #9c9c9c !important;display: flex !important; height: 30px;width: 60px;align-items: center;justify-content: center;}
.owl-next { position: absolute; left: 70px; top: -30px;  }
.owl-prev { position: absolute; left: 0; top: -30px; }

.text-card { background-color: #fff; width: 100%; height: auto; padding: 10px 20px; border-radius: 2px; border:1px solid #d9e3e6; margin-top: 20px; }
.text-card-title { font-size: 22px; font-weight: 400; margin: 10px 0; color: #333; }
.text-card-subtitle { font-size: 18px; font-weight: 400; margin: 10px 0; color: #333; }

.video-card { position: relative; max-width: 750px; transition: 0.3s; margin: 30px 0; background:#fff; }
.video-info { padding:20px; }
.portrait { max-width: 350px !important; }
.header-video { margin: 0 !important; }
.container-video { display: none; }
.video-title { font-weight: 300; margin: 0 !important; }
.video-title.with-owl { margin: 0px 0px 50px 0 !important; }

.video-header { height: auto; background-color: #fafafa; padding: 20px 30px; text-align: center; }
/*///////// Add the following CSS if using an iframe video source such as youtube ///////// */
.video-area { position: relative; padding-bottom: 56.25%; /* 16:9 */ }
.video-area iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.remove { display: none; }
.add { display: block; }

.audio-card { position: relative; display: block; background: #f1f3f4; max-width: 750px; border-radius: 4px; margin: 20px 0; }
.audio-header { padding: 15px 30px; }
.audio-header h3 { margin: 0 !important; }
.audio-card audio { width: 100%; }

.media-content { position: relative; width: 100%; height: auto; }
.media-content h3 { margin: 20px 0 50px; }

/*
@media only screen and (min-width: 1183px) {
    .header-video { display: none; }
    .container-video { display: block; }
}
*/

.global-IDH { margin: 30px 0px; }
.global-IDH h4 { line-height: 36px; }
.global-IDH p { line-height: 30px; }


.missing { position: relative; background: #f8d7da; color: #842029; border-color: #f5c2c7; border: 1px solid transparent; border-radius: 0.25rem; }


.component-stage { background-color: #fff; }


.resources-carousel { margin-top: 50px; }
.download-card.in-crsl { margin: 0!important; }

.subject-btn { margin: 15px 0 0 0;}
.unit-btn { margin: 10px 0; }

.download-card .title { font-size: 24px; }



.truncate {
  width: 250px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.tab-heading { /*text-align: center;*/ }
.tab-subheading { color: #3d4246; font-size: 20px; /*text-align: center;*/ }


.chapter-division { margin: 50px 0; }
.chapter-division-heading { font-weight: 700; font-size: 20px; margin: 20px 0 5px; }

.extended-heading { font-size: 24px; line-height: 32px; margin: 20px 0px 40px 0; } 

.book-card { position: relative; display: block; text-align: left; background-color: #f5f5f5; color: #707070; padding: 30px; margin: 0 0 20px 5px; max-width: 450px; border-radius: 5px; }
.book-cover { width: 100%; height: auto; display: block; margin: 20px auto 35px auto; }
.book-card p { font-size: 16px; line-height: 25px; }

.further-resources-carousel { margin: 50px 0 0 0; }



span.light-heading {
    color: #fff;
    font-weight: 100;
}
span.ampersands {
    color: #716b64;
}


.engineers-heading { margin: 0 0 80px 0; }
.bio-card { background-color: #f1f4f8; width: 100%; height: auto; border-radius: 2px; box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24); font-family: 'Roboto', sans-serif; transition: all 0.3s cubic-bezier(.25,.8,.25,1); }
.bio-card-text { padding-top: 20px; padding-bottom: 20px; padding-left: 10px; padding-right: 10px; }
.bio-title { text-align: center; font-weight: 300; font-size: 26px; color:#333; }
.bio-subtitle { text-align: center; color: #757575; margin: 20px 0; }
.bio-card-image { padding: 20px 0 0; }
.bio-image { display: block; margin-left: auto; margin-right: auto; max-width: 250px; box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24); border-radius: 4px; }
.tag { background: #97753d; color: #ffe4b8; padding: 3px 12px; border-radius: 4px; }


.image-carousel { margin: 80px 0px 0; }
.image-card { position: relative; display: block; max-width: 400px; background: #fff; }
.image-card-image {  }
.image-card-text { padding: 10px 20px; }

table { background: #fff; text-align: center; }
.table>tbody>tr>td, .table>tbody>tr>th, .table>tfoot>tr>td, .table>tfoot>tr>th, .table>thead>tr>td, .table>thead>tr>th { border-top: 1px solid #000; }
td p { margin: 10px 0; }







.tabs-carousel { margin-top: 15px; }
.tab-button { position: relative; display: block; text-align: center; background: #fff; color: #22857b; border: 1px solid #80cbc4; padding: 5px 10px; border-radius: 5px; }
.tab-button:hover, .tab-button:active { background: #80cbc4; color: #fff; text-decoration:none; }
.owl-nav { display: flex; align-items: center; justify-content: center; }
.owl-theme .owl-nav [class*=owl-] {color: #FFF !important;padding: 0 0 !important;margin: 5px !important;background: #9c9c9c !important;display: flex !important; height: 30px;width: 60px;align-items: center;justify-content: center;}

.on-this-page.side {
    display: none;
    height: max-content;
    overflow: auto;
    position: fixed;
    top: 50px;
    height: 90vh;
}

.question-option {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 38px;
}






.sticky { position: sticky; position: -webkit-sticky; top: 45px; }
.on-this-page { overflow-y: scroll; max-height: 80vh; }

.on-this-page-nav { left:0; display:none; }

.on-this-page-link { border: none!important; margin: 5px 0!important; }
.dropdown a { border:none !important; margin: 5px 0; }

.mobile-on-this-page { display:none; }
.mobile-on-this-page { position: sticky; position: -webkit-sticky; top: 45px; z-index:9; /*max-height:80vh; overflow-y:scroll;*/ }


.toc-card { scroll-margin-top: 70px; }
/*.indented-card { max-width:97%; margin-left:30px }*/



@media only screen and (max-width: 767px) {
  .sticky { display: none; }
  .mobile-on-this-page { display: block; }
  .on-this-page-nav { display:block; }
  .toc-card { scroll-margin-top: 100px; }
}



.card--video, .text-card.home-card { background-color: #f5f5f5; }

.card--video.chapter-video { max-width:750px; background-color:#fff; }