/* DESKTOP GENERAL RULES: Set here specific rules for desktop: usually the font-size, line-height, vertical-align, margin, padding, display, position, top, left, right, bottom, z-index, width, height */

/* TEST THE UI LIBRARY */

.mobile{ display: none; }
.desktop{ display: block; }

/*********************** TYPOGRAPHY ************************/

html,body{ font-size: 16px; line-height: 22px; margin: 0; padding: 0; }

/*Fonts: Resize the height of the browser window to see how the font-size of h1 changes. 1vh = 1% of viewport height. */

h1,.h1{ font-size: 6.0vh; line-height: 6.4vh; margin-bottom: 0.55em; }
h2,.h2{ font-size: 5.0vh; line-height: 6.2vh; margin-bottom: 0.8em; }
h3,.h3{ font-size: 3.6vh; line-height: 5.0vh; margin-bottom: 1em; }
h4,.h4{ font-size: 3.2vh; line-height: 4.2vh; margin-bottom: 1em; }
h5,.h5{ font-size: 2.9vh; line-height: 4.2vh; margin-bottom: 1em; }
h6,.h6{ font-size: 2.6vh; line-height: 4.0vh; margin-bottom: 1em; }

p,li{ font-size: 2.3vh; line-height: 3.4vh; letter-spacing: 0.02em; margin-bottom: 1.5em; max-width: 900px; }
small{ font-size: 1.9vh; line-height: 2.6vh; letter-spacing: 0.02em; margin-bottom: 1.5em; max-width: 900px; display: block; }

ul{ margin-top: 1.5em; margin-left: 1.5em; }

/*
h1,.h1{ font-size: 2.6em; line-height: 1.3em; margin-bottom: 0.8em; }
h2,.h2{ font-size: 2.2em; line-height: 1.3em; margin-bottom: 0.8em; }
h3,.h3{ font-size: 1.8em; line-height: 1.38em; margin-bottom: 0.8em; }
h4,.h4{ font-size: 1.5em; line-height: 1.38em; margin-bottom: 0.8em; }
h5,.h5{ font-size: 1.3em; line-height: 1.7em; margin-bottom: 0.8em; }
h6,.h6{ font-size: 1.2em; line-height: 1.38em; margin-bottom: 0.8em; }

p{ font-size: 1.1em; line-height: 1.6em; letter-spacing: 0.01em; margin-bottom: 1.5em; }
small{ font-size: 0.88em; line-height: 1.78em; letter-spacing: 0.01em; margin-bottom: 1.5em; display: block; }

ul{ margin-top: 1.5em; margin-left: 1.5em; }
li{ font-size: 1em; line-height: 1.6em; margin-bottom: 1.5em; }
*/

input, select, textarea{ font-size: 1.1em; line-height: 1.35em; letter-spacing: 0.02em; }

label{ font-size: 0.9em; line-height: 40px; letter-spacing: 0.02em; display: block; }
.label-checkbox{ display: inline-block; margin-right: 2em; } /* For checkboxes and radio buttons */

/************************ FORMS *************************/

input[type="email"],input[type="text"],input[type="number"],input[type="password"],select, textarea{ border-radius: 5px; }

input[type="email"],
input[type="text"],
input[type="number"],
input[type="password"],
textarea{ height: 18px; padding: 0.6em; margin: 0 0 0.8em 0; }

input[type="email"].smallersize,
input[type="text"].smallersize,
input[type="number"].smallersize,
input[type="password"].smallersize{ width: 30%; min-width: 200px; max-width: 100px; margin-right: 0.5em; }

input[type="email"].biggersize,
input[type="text"].biggersize,
input[type="number"].biggersize,
input[type="password"].biggersize{ width: 96%; max-width: 600px; margin-right: 0.5em; }

select.smallersize{ background-position: 86% 50%; }
select.biggersize{ background-position: 92% 50%; }

select{ line-height: 18px; padding: 0.6em 1.8em 0.6em 0.6em; margin: 0 0.8em 0.8em 0; }


/*********************** BUTTONS ************************/

.btn, .btn-icon, .btn-transparent{ display: inline-block; }

/* Colors, backgrounds and outlines must be set here due limitation of css animation, the styles must be inside it */

.btn{ margin-right: 8px; margin-bottom: 8px; border-radius: 0.4em; }

.btn-icon{ font-size: 1.4em; line-height: 1em; padding: 0.5em; }

.btn:hover{

    /*
    z-index: 9999;
    -webkit-animation-duration: 0.1s; animation-duration: 0.1s;
    -webkit-animation-timing-function: ease-out; animation-timing-function: ease-out;
    -webkit-animation-iteration-count: 1; animation-iteration-count: 1;
    -webkit-animation-direction: normal; animation-direction: normal;
    -webkit-animation-delay: 0; animation-delay: 0;
    -webkit-animation-play-state: running; animation-play-state: running;
    -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards;
    -ms-transform: scale(1.2, 1.2) rotate(-2deg); -webkit-transform: scale(1.2, 1.2) rotate(-2deg); transform: scale(1.2, 1.2) rotate(-2deg);
    -ms-transform-origin: 50% 50%; -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%;
        
    color: #D23D43;
    background-color: #000;
    
    */

}

.btn-primary{ font-size: 1.45em; padding: 12px 16px; }
.btn-primary span{ margin-right: 0.2em; } /* Icon */
.btn-secondary,
#btn-top a{ font-size: 0.85em; font-weight: 400; text-transform: uppercase; padding: 8px 12px; }
.btn-secondary span,
#btn-top a span{ margin-right: 0.3em; } /* Icon */
.btn-transparent span{ margin-right: 0.3em; } /* Icon */
.btn-search{ font-size: 1.45em; padding: 5px 16px; margin-top: -2px; display: inline-block; z-index: 9999; }

/*
a.btn-forward .icon{ display: inline-block; font-size: 28px; margin-top: -0.2em; line-height: 46px; transition: all .1s linear; }
a.btn-forward:hover .icon{ margin-left: 5px; }
a.btn-forward:hover .icon::after{ font-size: 0.8em; line-height: 46px; margin-left: 6px; vertical-align: top; padding: 3px 8px; }

a.btn-back .icon{ display: inline-block; font-size: 28px; margin-right: 8px; margin-top: -0.2em; line-height: 46px; transition: all .1s linear; }
a.btn-back:hover .icon{ margin-right: 18px; }
a.btn-back:hover .icon::after{ font-size: 0.8em; line-height: 46px; vertical-align: top; }

.agenda-pesquisa-periodo{ position: absolute; top: 10px; left: 50%; margin-left: -128px; min-width: 252px; }
.agenda-pesquisa-textual{ position: absolute; top: 6px; right: 0em; min-width: 310px; vertical-align: top; }
.agenda-pesquisa-textual button{ margin-top: 1px; vertical-align: top; }
.agenda-pesquisa-textual .icon-search{ font-size: 1.3em; top: 0; left: 0; }
#filtroData{ min-width: 170px; }
.prev-date{ margin: 0 16px 0 0 !important; }
.next-date{ margin: 0 !important; }
.prev-date .icon,
.next-date .icon{ font-size: 1em; }

*/

/********************* VIDEO AUDIO **********************/

.video,
.audio{ width: 100%; display: block; }

.col-1 .video,
.col-2 .video,
.col-3 .video,
.col-4 .video{ min-height: 195px; }
.col-5 .video{ min-height: 250px; }
.col-6 .video{ min-height: 306px; }
.col-7 .video{ min-height: 361px; }
.col-8 .video{ min-height: 415px; }
.col-9 .video{ min-height: 471px; }
.col-10 .video{ min-height: 527px; }
.col-11 .video{ min-height: 582px; }
.col-12 .video{ min-height: 638px; }

.col-1 .audio,
.col-2 .audio,
.col-3 .audio,
.col-4 .audio{ min-height: 440px; }
.col-5 .audio{ min-height: 440px; }
.col-6 .audio{ min-height: 440px; }
.col-7 .audio{ min-height: 440px; }
.col-8 .audio{ min-height: 440px; }
.col-9 .audio{ min-height: 440px; }
.col-10 .audio{ min-height: 440px; }
.col-11 .audio{ min-height: 440px; }
.col-12 .audio{ min-height: 440px; }

/****************** COLUMNS STRUCTURE *******************/

.wrapper{ margin: 0; }

/* Vertical structure*/

.container,
.container-fullvertical-height{ padding: 0; }

.container{ max-width: none; overflow: hidden; }
.container-fullvertical-height{ max-width: none; overflow: hidden; min-height: 100vh; /*height: 100vh;*/ display: flex; justify-content: center; align-items: center; }

/* Horizontal structure*/

.row,
.row-fullhorizontal,
.row-fullhorizontal-nospace{ display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.row{ margin: 0 auto; max-width: 1180px; padding: 9em 0 6em 0; /*overflow: hidden;*/ }
.row-fullhorizontal{ padding: 6.5em 0 2em 0; }
.row-fullhorizontal-nospace{ padding: 0; }

.row-fullhorizontal .col-1,.row .col-1,.row-fullhorizontal .col-2,.row .col-2,.row-fullhorizontal .col-3,.row .col-3,.row-fullhorizontal .col-4,.row .col-4,.row-fullhorizontal .col-5,.row .col-5,.row-fullhorizontal .col-6,.row .col-6,.row-fullhorizontal .col-7,.row .col-7,.row-fullhorizontal .col-8,.row .col-8,.row-fullhorizontal .col-9,.row .col-9,.row-fullhorizontal .col-10,.row .col-10,.row-fullhorizontal .col-11,.row .col-11,.row-fullhorizontal .col-12,.row .col-12{ margin-left: 2%; margin-right: 2%; }

.row-fullhorizontal .col-1,.row .col-1{ width: 4.33333333%; }
.row-fullhorizontal .col-2,.row .col-2{ width: 12.66666667%;}
.row-fullhorizontal .col-3,.row .col-3{ width: 21%; }
.row-fullhorizontal .col-4,.row .col-4{ width: 29.33333333%; }
.row-fullhorizontal .col-5,.row .col-5{ width: 37.66666667%; }
.row-fullhorizontal .col-6,.row .col-6{ width: 46%; }
.row-fullhorizontal .col-7,.row .col-7{ width: 54.33333333%; }
.row-fullhorizontal .col-8,.row .col-8{ width: 62.66666667%; }
.row-fullhorizontal .col-9,.row .col-9{ width: 71%; }
.row-fullhorizontal .col-10,.row .col-10{ width: 79.33333333%; }
.row-fullhorizontal .col-11,.row .col-11{ width: 87.66666667%; }
.row-fullhorizontal .col-12,.row .col-12{ width: 96%; }

.row-fullhorizontal-nospace .col-1,.row-fullhorizontal-nospace .col-2,.row-fullhorizontal-nospace .col-3,.row-fullhorizontal-nospace .col-4,.row-fullhorizontal-nospace .col-5,.row-fullhorizontal-nospace .col-6,.row-fullhorizontal-nospace .col-7,.row-fullhorizontal-nospace .col-8,.row-fullhorizontal-nospace .col-9,.row-fullhorizontal-nospace .col-10,.row-fullhorizontal-nospace .col-11,.row-fullhorizontal-nospace .col-12{ margin: 0;}

.row-fullhorizontal-nospace .col-1{ width: 8.33333333%; }
.row-fullhorizontal-nospace .col-2{ width: 16.66666667%;}
.row-fullhorizontal-nospace .col-3{ width: 25%; }
.row-fullhorizontal-nospace .col-4{ width: 33.33333333%; }
.row-fullhorizontal-nospace .col-5{ width: 40.66666667%; }
.row-fullhorizontal-nospace .col-6{ width: 50%; }
.row-fullhorizontal-nospace .col-7{ width: 59.33333333%; }
.row-fullhorizontal-nospace .col-8{ width: 66.66666667%; }
.row-fullhorizontal-nospace .col-9{ width: 75%; }
.row-fullhorizontal-nospace .col-10{ width: 83.33333333%; }
.row-fullhorizontal-nospace .col-11{ width: 91.66666667%; }
.row-fullhorizontal-nospace .col-12{ width: 100%; }

/* */

img{ width: 100%; height: auto; display: block; }
/* .agenda-shows img{ width: auto; } - Avoid the wordpress resize on agenda category page */

.pull-right{ position: absolute; right: 0; }

.col-content-left,
.col-content-right,
.col-content-center{ padding: 2em 2.6em; }

.col-content-left{ margin: 0; }
.col-content-right{ margin-left: 55% !important; }
.col-content-center{ margin: auto auto !important; width: auto; }

/*
.col-content-left{ position: absolute; left: 0; margin-top: -7em; padding: 8em 4em 4em 4em; z-index: 9; background-image: url(../images/content-bg-left.svg); background-position: 0 0; background-size: 100% 100%; background-repeat: no-repeat; }
.col-content-right{ position: absolute; right: 0; margin-top: -7em; padding: 8em 4em 4em 4em; z-index: 9; background-image: url(../images/content-bg-right.svg); background-position: 100% 0; background-size: 100% 100%; background-repeat: no-repeat; }
*/

/*********************** HIGHLIGHT TEXT ************************/

.light h1 span, .light h2 span, .light h3 span, .light h4 span, .light h5 span, .light h6 span, .light p span, .light small span, .light li span, .semidark h1 span, .semidark h2 span, .semidark h3 span, .semidark h4 span, .semidark h5 span, .semidark h6 span, .semidark p span, .semidark small span, .semidark li span, .dark h1 span, .dark h2 span, .dark h3 span, .dark h4 span, .dark h5 span, .dark h6 span, .dark p span, .dark small span, .dark li span{ padding: 0 0.18em; } /* Highlight on text - Inner padding */

/*********************** CARDS LIST ************************/

ul.cards-list-2,
ul.cards-list-3,
ul.cards-list-4{ margin: 0; }

.cards-list-2 li,
.cards-list-3 li,
.cards-list-4 li{ display: inline-block; vertical-align: top; margin-right: 1em; margin-bottom: 1em; padding: 1.5em 1.5em 0 1.5em; }

.cards-list-2 li{ width: 42%; }
.cards-list-3 li{ width: 27%; }
.cards-list-4 li{ width: 19%; }

/*********************** ACCORDION ************************/

/* Also check interaction-functions.js */

.accordion li a.accordion-switcher{ text-decoration: none; transition: 0.5;}

.accordion li a.accordion-switcher::before{ font-family: 'alexduarte-icons'; content: "\e900"; margin-right: 0.5em; }

.accordion li a.accordion-switcher.on::before{  content: "\e903"; }

.accordion-content{ display: none; /* overflow: hidden; */} /* Hiddent content */

/*********************** MAP ************************/

#map{ width: 100%; height: 450px; min-height: 450px; margin: 0; padding: 0; display: block; border-radius: 0.2em; }
