/*
Theme Name: STBCApp
Theme URI: https://sama-consulting.com
Author: Sama Consulting
Author URI: https://sama-consulting.com
Description: Theme for the STBC Wordpress website/app
Tags: STBC, app
Version: 2024.1
Requires at least: 5.2
Tested up to: 6.5
Requires PHP: 7.4
Text Domain: stbcapp

stbcapp WordPress Theme 2011-2024
stbcapp is distributed under the terms of the GNU GPL
*/

/*******************
***DEFAULT STYLES*** 
********************/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;border-radius:0}input[type="search"]{-webkit-appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}

/*******************
*****APP STYLES***** 
********************/

/*-------- General --------*/
#page-content #wrapper {
    min-height: 90vh;
    display: flex;
    flex-direction: column;
}

body #content {
    font-family: "Poppins", sans-serif;
    /* If you add some content in the footer remove this padding */
    padding: 10px 10px 25px;
}

.no-text-decoration * {
    text-decoration: none;
}

.flex-width {
    flex-grow: 1;
    flex-basis: 0;
    min-width: 0;
}

/*-------- Header & Footer --------*/
#branding {
    border-bottom: 18px solid #05607B;
    box-shadow: 0 3px 6px rgba(0,0,0,0.20), 0 3px 8px rgba(0,0,0,0.30);
    /* box-shadow: 0 1px 1px rgba(0,0,0,0.12), 0 2px 2px rgba(0,0,0,0.12), 0 4px 4px rgba(0,0,0,0.12), 0 8px 8px rgba(0,0,0,0.12), 0 16px 16px rgba(0,0,0,0.12); */
}

#site-title {
    background: #fff;
    text-align: center;
    padding: 1.2em;
    border-bottom: 18px solid #EFAA31;
}

#site-title img {
    box-shadow: 0px 0px 7px #00000038;
    border-radius: 20px;
    padding: 8px;
}

#page-title {
    display: flex;
    align-items: center;
    background: #05607B;
    color: #fff;
    padding: 10px;
}

#page-title a {
    color: #fff;
}

#page-title h3 {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-size: 1.14em;
    margin: 0 10px;
}

#loading-screen {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center; 
    align-items: center; 
    position: fixed; 
    width: 100%; 
    height: 100%; 
    background-color: #00000020; 
    z-index: 9999;
}

#loading-screen img.favicon {
    width: 140px; /*95px;*/
    border-radius: 20px;
    box-shadow: 0px 7px 10px 10px #00000015;
}

@media only screen and (min-width: 768px) {
    #loading-screen img.favicon {
        width: 160px; /*130px;*/
        border-radius: 30px;
    }
}

#loading-screen .spinner-border {
    border-color: #05607B;
    border-right-color: transparent;
    margin-top: 25px;
}

.prolab-loading {
    margin-top: 12vh;
}

#footer .prolab-loading {
    margin: 0;    
    border-top: 2px solid #444;
    padding: 15px 39px;
}

.prolab-loading a {
    display: flex;
    align-items: center;
    color: #333;
    font-family: "Poppins", sans-serif;
    text-decoration: none;
    font-size: .65em;
}

.prolab-loading a:hover {
    color: #05607B;
}

.prolab-loading p {
    margin: 0 0 0 5px;
}

.prolab-loading strong {
    display: inline-block;
    font-size: 2.65em;
    margin: -9px 0 0 6px;
}

.prolab-loading img {
    width: 40px;
    object-fit: contain;
}


.container {
    width: 100%;
    max-width: 100% !important;
}

#footer {
    font-size: .8em;
    text-align: center;
    padding: .6em;
    /* box-shadow: 0 20px 10px -20px rgba(0,0,0,0.45) inset; */
    padding-bottom: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: auto;
}


/*-------- Menu --------*/
#menu {
    position: fixed;
    bottom: 0;
    left: 0;
    background: #EFAA31;
    width: 100%;
    color: #fff;
    z-index: 999;
    box-shadow: 0px -10px 30px -8px rgba(0, 0, 0, 0.35);
}

#menu ul {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-around;
    align-items: center;
}

#menu li {
    padding: 10px;
    text-align: center;
}

#menu a {
    text-decoration: none;
}

#menu .home a span,
#menu .contact a span,
#menu .bookmarks a span {
    display: none;
}

#menu .home a i:before,
#menu .contact a i:before,
#menu .bookmarks a i:before {
    font-family: "Font Awesome 6 Free";
    font-size: 1.5em;
    font-weight: 900;
    content: "\e3af";
    color: #fff;
    text-shadow: 2px 2px 1px #00000047;
}

#menu .contact a i:before {
    content: "\40";
}

#menu .bookmarks a i:before {
    content: "\f005";
}


/*-------- Front Page --------*/
.front-page {
    position: relative;
    padding: 10px 0 20px;
}

.summary {
    position: absolute;
    top: -35px;
    right: 5px;
    display: inline-block;
    background: #EFAA31;
    border: 0;
    border-radius: 50%;
    padding: 9px;
    width: 50px;
    height: 50px;
    font-size: 1.3em;
    color: #fff;
    text-align: center;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 36px 0px, rgba(0, 0, 0, 0.06) 0px 0px 0px 1px;
}

.summary:hover {
    color: #fff;
    box-shadow: rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;
    transition: all .5s;
}

.front-page h1 {
    border-left: 3px solid #EFAA31;
    padding-left: 8px;
    margin: 40px 0 15px;
    font-size: 1.4em;
    font-family: "Poppins", sans-serif;
    font-weight: 400;
}

.front-page .container.salles h1 {
    margin-top: 15px;
}

.list-item {
    text-align: center;
    font-family: "Poppins", sans-serif;
    font-weight: 400;
}

.list-item a.box {
    display: block;
    background: #05607B;
    width: 80px;
    height: 80px;
    padding: 15px;
    margin: 15px auto 5px;
    color: #fff;
    font-size: 2em;
    border-radius: 20px;
    box-shadow: 0 0 8px #ddd;
}

.list-item a.logo-bg {
    display: flex;
    align-items: center;
    justify-content: center;
    /* background: #f5f5f5; */
}

a.logo-bg img {
    width: 50px;
    object-fit: contain;
}

.list-item a.text {
    color: #05607B;
    text-decoration: none;
    font-size: .9em;
}

/*-------- Salle Page / Sessions List --------*/
.single-salle .session a,
.single-expert .session a, 
.single-partenaire .session a { 
    display: flex;
    justify-content: space-between;
    gap: 10px;
    position: relative;
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    padding: 15px 10px;
    border-top: 2px solid #efa931b7;
    text-decoration: none;
    color: #333;
}

.single-expert .session a, 
.single-partenaire .session a { 
    display: block;
}

.session a {
    text-decoration: none;
}

.session a:hover {
    color: #333;
}

.session h4 {
    font-size: 1.2em;
}

.session span.date, 
.session span.time-from,
.session span.time-to {
    font-size: .75em;
}

.session p.description {
    margin: 8px 0 0;
    font-size: .9em;
    font-weight: 500;
}

.session span.time {
    /* position: absolute;
    top: 20px;
    right: 15px; */
    font-family: "Orbitron", sans-serif;
    font-size: 1.3em;
}

.salle-page .nav-link {
    color: #444;
}

.salle-page .session:first-child a {
    border: none;
}

/*-------- Session Page --------*/
.session-page {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    padding: 10px;
}

.session-page .session {
    position: relative;
    margin-bottom: 15px;
}

.session-page .session h2 {
    margin: 10px 0;
    font-size: 1.35em;
}

.session-page .experts,
.session-page .partenaires {
    border-radius: 8px;
    padding: 12px;
    background: #b7d7e140;
    margin: 10px 0;
}

.session-page .experts h3,
.session-page .partenaires h3 {
    font-size: 15px;
    border-left: 3px solid #EFAA31;
    padding-left: 8px;
}

.session-page .experts-elts .expert:first-child a,
.session-page .partenaires-elts .partenaire:first-child a {
    border: none;
}

/*-------- Experts / Partenaires / Posters Pages --------*/
.experts-page .expert a, 
.partenaires-page .partenaire a,
.session-page .expert a, 
.session-page .partenaire a,
.posters-page .poster a {
    display: flex;
    align-items: center;
    position: relative;
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    padding: 15px 10px;
    border-top: 2px solid #efa931b7;
    text-decoration: none;
    color: #333;
}

.experts-page .expert a:hover,
.partenaires-page .partenaire a:hover,
.posters-page .poster a:hover {
    color: #333;
}

.expert img,
.partenaire img,
.poster img {
    width: 55px;
    height: 55px;
    object-fit: cover;
    margin-right: 15px;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
}

.partenaire img {
    object-fit: contain;
    padding: 2px 3px;
}

.poster img {
    padding: 8px;
}

img.placeholder {
    padding: 5px;
    background: #fff;
}

#content img.placeholder.big {
    padding: 10px;
}

.expert h4,
.partenaire h4,
.poster h4 {
    font-size: 1em;
    margin: 0 0 0;
}

.expert span.info1,
.partenaire span.info1,
.poster span.info1 {
    font-size: .8em;
}

span.info1 i {
    font-size: .85em;
    opacity: .88;
    margin-right: 5px;
}

.poster span.info0 {
    display: block;
    position: absolute;
    top: 20px;
    right: 15px;
    background: #EFAA31;
    text-align: center;
    border-radius: 20px;
    padding: 3px 6px;
    color: #fff;
    font-size: .7em;
    font-weight: 600;
    text-shadow: 1px 1px 3px #636363d9;
}

.experts-page .expert:first-child a,
.partenaires-page .partenaire:first-child a,
.posters-page .poster:first-child a {
    border: none;
}

#theme-dropdown {
    margin-bottom: 8px;
    font-size: .8em;
}

/*-------- Expert / Partenaire / Poster Pages --------*/
.expert-page,
.partenaire-page,
.poster-page {
    padding: 10px;
    font-family: "Poppins", sans-serif;
    font-weight: 400;
}

.expert-page .expert,
.partenaire-page .partenaire,
.poster-page .poster {
    margin-bottom: 15px;
    position: relative;
}

.expert-page .expert h2,
.partenaire-page .partenaire h2,
.poster-page .poster h2 {
    font-size: 1.3em;
}

.expert-page .expert img,
.partenaire-page .partenaire img,
.poster-page .poster img {
    width: 125px;
    height: 135px;
    display: block;
    margin: 0 auto 20px;
    text-align: center;
    border-radius: 15px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
}

.partenaire-page .partenaire img {
    height: 125px;
    padding: 5px 7px;
    object-fit: contain;
}

.poster-page .poster img {
    width: 85px;
    height: 95px;
}

.poster-page .poster span.info0 {
    position: inherit;
    display: inline-block;
    margin-bottom: 7px;
    font-size: .75em;
    padding: 3px 8px;
}

.expert-page .expert span.info1,
.partenaire-page .partenaire span.info1,
.poster-page .poster span.info1 {
    font-size: .9em;
}

span.info1 a { 
    text-decoration: none;
    color: #333;
}

span.info1 a:hover {
    border-bottom: 1px solid;
}

.expert-page  span.info1 i,
.partenaire-page span.info1 i,
.poster-page span.info1 i {
    margin: 0 8px 10px 12px;
}

.partenaire p.description {
    margin: 8px 14px 0;
    font-size: .9em;
    font-weight: 500;
}

.poster-page .poster .file-link {
    text-align: center;
}

.poster-page .poster .file-link a {
    padding: 7px 14px;
    text-decoration: none;
    background: #05607B;
    color: #fff;
    font-size: .75em;
    border-radius: 25px;
}

.expert-page .sessions,
.partenaire-page .sessions {
    border-radius: 8px;
    padding: 12px;
    background: #b7d7e140;
    margin: 10px 0;
}

.expert-page .sessions h3,
.partenaire-page .sessions h3 {
    font-size: 15px;
    border-left: 3px solid #EFAA31;
    padding-left: 8px;
}

.expert-page .sessions-elts .session:first-child a,
.partenaire-page .sessions-elts .session:first-child a {
    border: none;
}

.expert-page .session h4,
.partenaire-page .session h4 {
    font-size: 1em;
    margin-bottom: 3px;
}

.expert-page .session .description,
.partenaire-page .session .description {
    margin-top: 5px;
    font-size: .8em;
}

/*-------- Favorites Plugin Front Styles --------*/
/* Button */
.simplefavorite-button {
    border: none;
    background: none;
    color: #efaa31;
    font-size: 1.45em;
    position: absolute;
    top: -10px;
    right: -5px;
}

.simplefavorite-button i {
    font-size: .8em;
}

.archive .simplefavorite-button,
.salle-page .simplefavorite-button {
    top: inherit;
    bottom: 6px;
    right: 6px;
}

 /* List */
.bookmarks-page h3 {
    font-size: 18px;
    border-left: 3px solid #05607B;
    padding-left: 8px;
    margin-top: 28px;
}

.bookmarks-page .favorites-list {
    padding-left: 20px;
}

.bookmarks-page .favorites-list li {
    padding: .2em 0;
    border: none;
}

.bookmarks-page .favorites-list li p {
    margin: 0;
}

.bookmarks-page .favorites-list li a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid #efaa31;
}


/*-------- Vote Plugin Styles --------*/
.btn.vote-btn {
    position: absolute;
    top: 30px;
    right: 0;
    padding: 0;
    font-size: 1.25em;
    color: #05607B;
}
