/* MOBILE GENERAL RULES: Set here specific rules for mobile: 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: block; }
.desktop{ display: none; }

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

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

h1,.h1{ font-size: 2.5em; line-height: 1.35em; margin-bottom: 0.8em; }
h2,.h2{ font-size: 2.4em; line-height: 1.35em; margin-bottom: 0.8em; }
h3,.h3{ font-size: 2.1em; line-height: 1.35em; margin-bottom: 0.8em; }
h4,.h4{ font-size: 2em; line-height: 1.38em; margin-bottom: 0.8em; }
h5,.h5{ font-size: 1.9em; line-height: 1.38em; margin-bottom: 0.8em; }
h6,.h6{ font-size: 1.5em; line-height: 1.38em; margin-bottom: 2.2em; }

p{ font-size: 1.6em; line-height: 1.4em; letter-spacing: 0.01em; margin-bottom: 1.4em; }
small{ font-size: 4vw; line-height: 1.4em; letter-spacing: 0.01em; margin-bottom: 2.2em; display: block; }

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

input, select, textarea{ font-size: 1.6em; line-height: 40px; letter-spacing: 0.02em; }

label{ font-size: 1.6em; line-height: 100px; 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: 10px; }

input[type="email"],
input[type="text"],
input[type="number"],
input[type="password"],
textarea{ height: 40px; 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,
input[type="email"].biggersize,
input[type="text"].biggersize,
input[type="number"].biggersize,
input[type="password"].biggersize{ width: 96%; min-width: none; max-width: none; margin-right: 0.5em; }

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

select{ line-height: 40px; padding: 0.6em 1.8em 0.6em 0.6em; margin: 0 0.8em 0.8em 0; width: 100%; }


/*********************** 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: 16px; margin-bottom: 16px; border-radius: 10px; }

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

.btn-primary{ font-size: 1.8em; padding: 0.6em; }
.btn-primary span{ margin-right: 0.1em; } /* Icon */
.btn-secondary{ font-size: 1.3em; padding: 0.6em; }
.btn-secondary span{ margin-right: 0.2em; } /* Icon */
.btn-transparent span{ margin-right: 0.2em; } /* Icon */
.btn-search{ font-size: 1.8em; padding: 0.6em; margin-top: -2px; display: inline-block; z-index: 9999; }

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

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

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

/****************** 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; }

/* Horizontal structure*/

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

.row,
.row-fullhorizontal{ padding: 8em 2em 8em 2em; } /* Affected by bottom menu */
.row-fullhorizontal-nospace{ padding: 0; }

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

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

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

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

/* */

img{ width: 100%; height: auto; display: block; }

.pull-right{ display: block; }

.col-content-left,
.col-content-right,
.col-content-center{ display: block; }

/* Custom margins, paddings and other specific rules below */

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


/*********************** 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: 1.5em 2.5em 0 0; }

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

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

/* Also check interaction-functions.js */

.accordion li a.accordion-switcher{ text-decoration: none; transition: 0.5; margin-right: 1em}

.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; padding-right: 3em; /* overflow: hidden; */} /* Hiddent content */

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

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

