/*
Theme Name: GitLabFrance
Theme URI: https://wordpress.com/themes/libre/
Description: A stylish, classic look for your personal blog or long-form writing site. The main navigation bar stays fixed to the top while your visitors read, keeping your most important content at hand, while three footer widget areas give your secondary content a comfortable home.
Version: 1.0.3
Author: Automattic
Author URI: http://wordpress.com/themes/
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: libre
Tags: light, black, white, right-sidebar, two-columns, custom-background, custom-menu, custom-header, editor-style, full-width-template, responsive-layout, accessibility-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Libre is based on Underscores http://underscores.me/, (C) 2012-2015 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
*/

:root {
    --color: rgb(84, 84, 84);
    --linkcolor: #1781b1;
    --highlightcolor: #be261e;
    --font-title: 'Lato';
    --button-color: #5ba0d0;
}

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/

html {
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}
body {
    margin: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
}
audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
}
audio:not([controls]) {
    display: none;
    height: 0;
}
[hidden],
template {
    display: none;
}
a {
    background-color: transparent;
}
a:active,
a:hover {
    outline: 0;
}
abbr[title] {
    border-bottom: 1px dotted;
}
b,
strong {
    font-weight: bold;
}
dfn {
    font-style: italic;
}
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}
mark {
    background: #ff0;
    color: #404040;
}
small {
    font-size: 13px;
    font-size: .8125rem;
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sup {
    top: -0.5em;
}
sub {
    bottom: -0.25em;
}
img {
    border: 0;
}
svg:not(:root) {
    overflow: hidden;
}
figure {
    /*margin: 1em 40px;*/
}
hr {
    box-sizing: content-box;
    height: 0;
}
pre {
    overflow: auto;
}
code,
pre {
    margin: 1em 0;
    font-family: "Courier New", Courier, monospace;
    font-size: 1em;
    color: #000;
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}
button {
    overflow: visible;
}
button,
select {
    text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}
button[disabled],
html input[disabled] {
    cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}
input {
    line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto;
}
input[type="search"] {
    -webkit-appearance: textfield;
    box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}
fieldset {
    border: 1px solid;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.875em;
}
legend {
    border: 0;
    padding: 0;
}
textarea {
    overflow: auto;
}
optgroup {
    font-weight: bold;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
td,
th {
    padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/

body,
button,
input,
select,
textarea {
    color: #404040;
    /*	font-family: "Libre Baskerville", Libre, Georgia, Times, serif;*/
    font-family: 'Lato', sans-serif;
    font-size: 18px;
    font-size: 1rem;
    line-height: 1.75;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    clear: both;
    font-family: 'Lato', sans-serif;
    font-weight: bold;
    margin: 0 0 .875em;
}
h1 {
    font-size: 29px;
    font-size: 1.8125rem;
    line-height: 1.3;
}
h2 {
    font-size: 23px;
    font-size: 1.4375rem;
    line-height: 1.3;
}
h3 {
    font-size: 18px;
    font-size: 1rem;
}
h4 {
    font-size: 14px;
    font-size: .875rem;
}
h5 {
    font-size: 13px;
    font-size: .8125rem;
}
h6 {
    font-size: 12px;
    font-size: .75rem;
}
p {
    margin-top: 0;
    margin-bottom: 1.75em;
}
dfn,
cite,
em,
i {
    font-style: italic;
}
blockquote {
    margin: 0 1.75em 1.75em 2.25em;
    font-size: 18px;
    font-size: 1rem;
}
address {
    margin: 0 0 1.75em;
}
pre {
    font-family: "Libre Baskerville", Libre, Georgia, Times, serif;
    margin-bottom: 1.75em;
    max-width: 100%;
    overflow: auto;
}

kbd,
tt,
var {
    font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
    font-size: 16px;
}
abbr,
acronym {
    border-bottom: 1px dotted;
    cursor: help;
}
mark,
ins {
    background: #fff9c0;
    text-decoration: none;
}
big {
    font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/

html {
    box-sizing: border-box;
}
*,
*:before,
*:after {
    /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
    box-sizing: inherit;
}
body {
    background: #fff;
    /* Fallback for when there is no custom background color defined. */
    word-wrap: break-word;
    overflow-x: hidden;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
}
blockquote,
q {
    quotes: "" "";
}
blockquote {
    position: relative;
}
blockquote:before {
    content: "\201c";
    display: block;
    font-size: 72px;
    font-size: 4rem;
    line-height: 1;
    position: absolute;
    top: 0;
    left: -.6em;
}
blockquote blockquote {
    margin-right: 0;
}
blockquote.alignleft,
blockquote.alignright {
    max-width: 47%;
}
blockquote.alignleft,
blockquote.aligncenter {
    margin-left: 2em;
}
blockquote.alignright {
    margin-left: 3.5em;
}
.comments-area blockquote {
    font-size: 18px;
    font-size: 1rem;
}
.intro {
    font-style: italic;
    font-size: 23px;
    font-size: 1.4375rem;
}
hr {
    background-color: #404040;
    border: 0;
    height: 1px;
    margin-bottom: 1.75em;
}
ul,
ol {
    margin: 0 0 1.75em 0;
    padding-left: 1.75em;
}
ul {
    list-style: disc;
}
ol {
    list-style: decimal;
}
li > ul,
li > ol {
    margin-bottom: 0;
    margin-left: .4375em;
}
dt {
    font-weight: bold;
}
dd {
    margin: 0 1.75em 1.75em;
}
img {
    height: auto;
    /* Make sure images are scaled correctly. */
    max-width: 100%;
    /* Adhere to container width. */
}
table {
    margin: 0 0 1.75em;
    width: 100%;
}
td {
    padding: 3px;
}
caption {
    font-weight: bold;
    padding: .4375em 0;
}
.display-flex {
	display:flex;
}
/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/

label {
    font-style: italic;
}
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
#infinite-handle span {
    border: 0 none;
    border-bottom: 2px solid;
    background: transparent;
    color: #404040;
    font-size: 18px;
    font-size: 1rem;
    font-weight: bold;
    padding: 0.21875em 0;
    transition: 0.2s;
}
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
#infinite-handle span:hover {
    border-bottom-width: 4px;
    margin-bottom: -2px;
}
button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
    border-bottom-width: 4px;
    margin-bottom: -2px;
    outline: none;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"] {
    color: #404040;
    border: 0 none;
    border-bottom: 2px solid;
    box-sizing: border-box;
    font-size: 18px;
    font-size: 1rem;
    margin-right: -5px;
    padding: 0.21875em 0;
    transition: 0.2s;
}
input[type="file"] {
    width: 100%;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
    border-bottom-width: 4px;
    margin-bottom: -2px;
    color: #404040;
    outline: none;
}
textarea {
    padding-left: 3px;
    width: 100%;
}

/*-- CF7 forms */

.wpcf7 input[type="text"], .wpcf7 input[type="tel"],
.wpcf7 input[type="email"],
.wpcf7 select,
.wpcf7 input[type="url"] {
    background: #eee;
    border: 0;
    padding: 0.21875em 0.51875em;
    max-width: 100%;
	min-width: 100%;
}
/* #fff bg fields on .light-fields class wrapper */
.light-fields .wpcf7 input[type="text"], .light-fields .wpcf7 input[type="tel"],
.light-fields .wpcf7 input[type="email"],
.light-fields .wpcf7 select,
.light-fields .wpcf7 input[type="url"]  {
	 background: #fff;
}

.wpcf7 .light-fields input[type="text"], .wpcf7 .light-fields input[type="tel"],
.wpcf7 .light-fields input[type="email"],
.wpcf7 .light-fields select,
.wpcf7 .light-fields input[type="url"]  {
	 background: #fff;
}
.wpcf7 input[type="submit"] {
    background: #3e82a2;
    color: #fff;
    padding: 0.21875em 0.8em;
}
input.referer-page {
    display: none;
}
.full-width-form select, .full-width-form input, .full-width-form textarea , .full-width-form .wpcf7-form-control-wrap {   
    width: 100%;
}

/* cf7 messages  */
.wpcf7 form .wpcf7-response-output {
    border-radius: 4px;
    padding: 0.6em 1em; 
	margin-right: 0;
	margin-left: 0;	
}
.wpcf7 form.sent .wpcf7-response-output {
    border-color: #46b450;
    background-color: #d0f1b9;    
    color: #298031;
	border:0;
}
.wpcf7 form.spam .wpcf7-response-output{
	border-color: #f56e28;
	background-color: #ffefe6;    
    color: #fb5500;
	border:0;
}

/* referral input */


/*-- Layout */

.site {
    margin-top: 3.5em;
    padding: 0 1.75em;
}
.custom-background .site {
    background-color: #fff;
    padding-left: 0;
    padding-right: 0;
    position: relative;
    z-index: 0;
}
.custom-background .site-header,
.custom-background .site-footer,
.custom-background .site-content {
    padding-left: 1.75em;
    padding-right: 1.75em;
}
.site-footer {
    clear: both;
    width: 100%;
}

/*-- Header */

.site-header {
    margin-bottom: 3.5em;
    position: relative;
    padding-top: 1.75em;
}
.site-branding {
    max-width: 75%;
}
.custom-header {
    display: block;
    margin: 0 auto 1.75em;
}
.site-logo {
    clear: both;
    display: block;
    margin-bottom: 1.75em;
    max-width: 100%;
    max-height: 300px;
    width: auto;
    height: auto;
    transition: 0.2s;
}
.site-title {
    clear: none;
    display: inline-block;
    font-weight: bold;
    line-height: 1.2;
    margin: 0 .4375em 0 0;
    vertical-align: baseline;
}
.singular .site-title {
    font-size: 29px;
    font-size: 1.8125rem;
}
.site-description {
    font-style: italic;
    vertical-align: bottom;
}
.to-main a {
    background: #eee;
    padding: 6px 10px;
    border-radius: 3px;
}
.to-main a:hover {
    background: #e6e6e6;
}
.to-main a,
.to-main a:visited,
.to-main a:active,
.main-navigation .to-main.current-menu-item > a {
    text-decoration: none;
    border-bottom: 0;
}

/*-- Posts */

.entry-title {
    font-size: 29px;
    font-size: 1.8125rem;
    margin: 0 0 .4375em;
}
.entry-meta,
.entry-footer {
    font-size: 14px;
    font-size: .875rem;
    font-style: italic;
}
.entry-meta {
    margin: 0 0 1.75em;
}
.entry-meta a:hover,
.entry-meta a:focus,
.entry-meta a:active {
    text-decoration: underline;
}
.entry-meta:after,
.page-template-right-column-page-php.singular .entry-meta:after {
    border-top: 1px solid;
    content: "";
    display: block;
    margin-top: .875em;
    width: 25%;
}
.singular .entry-meta:after {
    width: 12.5%;
}
.single .entry-meta {
    margin-bottom: 3.5em;
}
.single .entry-meta span {
    margin: 0;
}
.blog .entry-meta span,
.archive .entry-meta span,
.search .entry-meta span,
.entry-footer span {
    clear: both;
    display: block;
    margin: 0 0 0.328125em;
    width: 100%;
}
.more-link {
    font-style: italic;
}
.page-header {
    margin: 0 0 3.5em;
}
.page-title {
    font-size: 29px;
    font-size: 1.8125rem;
}
.page-links {
    word-spacing: 3px;
}

/* stripe table */
.stripeTable tr:nth-child(even) {
    background-color: #f8f8f8;
}
.entry table.stripeTable tr td {    
    border-width: 1px 0 0 0px;
	}
.entry table.stripeTable {
    border-width: 0 0px 1px 0;
}

/*-- Footer */

.site-footer {
    font-size: 14px;
    font-size: .875rem;
    margin: 5.25em 0 3.5em;
    padding-bottom: 1.75em;
}
.site-info {
    font-style: italic;
}
.site-info .sep {
    clear: both;
    display: block;
    visibility: hidden;
    width: 100%;
    height: 0;
}

/* New */
#new_footer {
    clear: both;
	background-color: #f1f1f1;
}
#new_footer #footer {
    min-height: 220px;
    padding: 15px 0;
    margin: 0 !important;
}
#new_footer #footer .row {
    float: none;
    margin: 0 auto;
    width: 1064px;
}
#new_footer h3 {
    color: #000000;
    font: bold 12.5pt/9pt arial, helvetica, sans-serif;
    margin-bottom: 5px;
    margin-top: 1px;
    text-align: left;
}
#copyrights {
    float: left;
    width: 100%;
    font-size: 12px;
    text-align: center;
    padding-top: 5px;
}
#container {
    margin: 20px 40px 20px 40px;
}
.social {
    margin: 8px 0px 7px 5px;
}
.social a {
    margin: 0 5px 0 0;
    height: 20px;
    width: 20px;
    display: inline-block;
}
.social a#fb {
    background: url(https://almtoolbox.com/images/sprite.png) left -25px no-repeat
}
.social a#twitter {
    background: url(https://almtoolbox.com/images/sprite.png) -24px -25px no-repeat
}
.social a#linkedin {
    background: url(https://almtoolbox.com/images/sprite.png) -48px -25px no-repeat
}
.social a#youtube {
    background: url(https://almtoolbox.com/images/sprite.png) -72px -25px no-repeat
}
.social a#googleplus {
    background: url(https://almtoolbox.com/images/sprite.png) -96px -25px no-repeat
}

/*********************************************
	LINKS LIST
*********************************************/

.links_list_title {
    padding-left: 5px;
    padding-bottom: 3px;
    border-bottom: 1px solid #cccaca;
}
.links_list {
    float: left;
    margin: 0 30px 0 0;
    padding: 10px 0 30px;
    width: 15%;
}

/*.links_list_social {
    margin: 0;
    width: 20%;
}*/

.links_list ul {
    float: left;
    padding: 5px;
    list-style: none;
}

.links_list a, .links_list,
.links_list_title {
    font-size: 13px;
	line-height:2;
    color: #333;
    text-decoration: none;
}
.links_list a:hover {
    color: #000;
}



/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/


/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/

a {
    color: #4592b7;
    text-decoration: none;
    transition: 0.2s;
}
.textwidget a,
.entry-content a,
.comment-content a {
    border-bottom: 1px solid;
}

/*a:visited {
    color: #404040;
}*/

a:hover,
a:focus,
a:active {
    color: #549fc3;
}
.textwidget a:hover,
.textwidget a:focus,
.textwidget a:active,
.entry-content a:hover,
.entry-content a:focus,
.entry-content a:active,
.comment-content a:hover,
.comment-content a:focus,
.comment-content a:active {
    border-width: 3px;
}
a.no-line {
    border: 0 none;
}
a:focus {
    outline: thin dotted;
}
a:hover,
a:active {
    outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/

.main-navigation {
    display: block;
    font-size: 14px;
    font-size: .875rem;
    width: 100%;
}
.main-navigation > div > ul {
    border-bottom: 2px solid;
    padding-bottom: 1.75em;
}
.main-navigation ul {
    display: none;
    list-style: none;
    margin: 0;
    padding-left: 0;
}
.main-navigation li {
    clear: both;
    display: block;
    margin: 1.75em 0 0;
    position: relative;
    vertical-align: top;
    width: 100%;
}
.main-navigation a {
    border-bottom: 0 solid transparent;
    text-decoration: none;
}
.main-navigation a:hover,
.main-navigation a:focus,
.main-navigation a:active {
    border-bottom: 2px solid;
}
.main-navigation ul ul {
    padding-left: 1.75em;
}
.main-navigation ul ul a {
    border-bottom: 2px solid transparent;
}
.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a {
    border-bottom: 2px solid;
}

/* Small menu. */

.menu-toggle,
.main-navigation.toggled ul {
    display: block;
}
.menu-toggle {
    position: absolute;
    right: 1.75em;
    top: 1.75em;
}
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
    border-top: 1px solid;
    border-bottom: 1px solid;
    font-weight: bold;
    line-height: 1.3;
    margin: 0 0 3.5em;
    overflow: hidden;
    padding: .875em 0;
}
.site-main .post-navigation {
    font-size: 23px;
    font-size: 1.4375rem;
}
.comment-navigation .meta-nav,
.posts-navigation .meta-nav,
.post-navigation .meta-nav {
    display: block;
    font-size: 14px;
    font-size: .875rem;
    font-style: italic;
    font-weight: normal;
    margin: 0 0 .4375em;
}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
    text-align: right;
    margin-top: 0.875em;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/


/* Text meant only for screen readers. */

.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
}
.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: .875rem;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 1.4375rem .875rem;
    text-decoration: none;
    top: 37px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/

.alignleft {
    display: inline;
    float: left;
    margin: .875em 1.75em .875em 0;
}
.alignright {
    display: inline;
    float: right;
    margin: .875em 0 .875em 1.75em;
}
.aligncenter {
    clear: both;
    display: block;
    margin: .875em auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/

.clear:before,
.clear:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after,
.hentry:before,
.hentry:after,
.page-header:before,
.page-header:after,
.comment-body:before,
.comment-body:after {
    content: "";
    display: table;
}
.clear:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after,
.hentry:after,
.page-header:after,
.comment-body:after {
    clear: both;
}
.header-logo {
    width: 242px;
    float: left;
    margin: 0;
    position: relative;
}
.header-logo a {
    height: 80px;
    width: 190px;
    background: url('https://almtoolbox.com/fr/images/logo.png') center top no-repeat;
    float: left;
    margin: 6px 0 0;
    display: block;
}
.slogan {
    color: #333;
    font-size: 12px;
    position: absolute;
    top: 61px;
    left: 82px;
	width:100%;
}

/* Home  */

.post-hp {
    margin: 0 0 3em 0;
    padding: 0 0 1em 0;
    border-bottom: 1px solid #ccc;
}
.post-hp h1 {
    font-size: 2.4rem;
}
.post-thumb {
    margin: 0 0 1em 0;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/

.widget {
    font-size: 14px;
    font-size: .875rem;
    margin: 0 0 3.5em;
    overflow: hidden;
}
.widget a:hover,
.widget a:focus,
.widget a:active {
    text-decoration: underline;
}
.error404 .widget {
    margin-top: 1.75em;
}
.widget-title,
.widgettitle {
    font-size: 18px;
    font-size: 1rem;
    margin-bottom: .875em;
}
.widget ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.widget ul ul {
    padding-left: .875em;
}
.widget li {
    list-style: none;
    padding-top: .4375em;
}
.widget ul ul li:before {
    content: "-";
    display: inline-block;
    margin-left: -.875em;
    margin-right: .4375em;
}

/* Calendar */

.widget_calendar td {
    text-align: center;
}
.widget_calendar th {
    font-weight: bold;
}
td#prev {
    font-style: italic;
    text-align: left;
}
td#next {
    font-style: italic;
    text-align: right;
}

/* Recent Comments */

.widget_recent_comments a {
    font-style: italic;
}
.widget_recent_comments .comment-author-link,
.widget_recent_comments .comment-author-link a {
    font-style: normal;
    font-weight: bold;
}

/* Archives */

.widget .post-count {
    background: white;
    float: right;
    letter-spacing: 1px;
    padding-left: .4375em;
    position: relative;
    z-index: 1;
}
.widget_archive li,
.widget_categories li {
    position: relative;
}
.widget_categories ul ul li:before {
    display: none;
}
.widget_archive a,
.widget_categories a {
    background-color: white;
    padding-right: .4375em;
}
.widget_archive a:after,
.widget_categories a:after {
    border-bottom: 1px dotted;
    content: "";
    display: inline-block;
    position: absolute;
    left: 0;
    top: 18px;
    width: 100%;
    z-index: -1;
}

/* Make sure select elements fit in widgets. */

.widget select {
    max-width: 100%;
    margin-left: 1px;
}

/* Search */

.widget_search .search-submit {
    display: none;
}

/* */

.widget_rss li {
    margin-top: .4375em;
    padding-top: .4375em;
}
.rsswidget {
    font-weight: bold;
}
.rss-date {
    display: block;
    font-style: italic;
    width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/


/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/

.sticky {
    display: block;
}
.hentry {
    margin-bottom: .4375em;
}
.byline,
.updated:not(.published) {
    display: none;
}
.single .byline,
.group-blog .byline {
    display: inline;
}
.entry-content {
    margin: 0 0 3.5em;
}
.page-content {
    margin: 1.75em 0 0;
}
.page-links {
    clear: both;
    margin: 0 0 1.75em;
}
.entry-content table {
    border-width: 0 1px 1px 0;
    border-style: solid;
    border-color: #ccc;
    font-size: 0.9em;
}
.entry-content table tr td {
    padding: 5px 10px;
    border-width: 1px 0 0 1px;
    border-style: solid;
    border-color: #ccc;
}
.entry-content table tr th {
    border-width: 1px 0 0 1px;
    border-style: solid;
    border-color: #ccc;
    padding: 5px 10px;
    background: #f4f4f4;
    color: #666;
    font-weight: bold;
    text-align: center;
}
.alm-box {
    background: #fffbd0;
    padding: 1.1em 1.2em;
    margin: 20px 0;
    border-radius: 4px;
}
.grecaptcha-badge {
    visibility: hidden;
}
.entry-content p {
	line-height: 1.7em;
    font-size: 16px;
}
.entry-content ol li, .entry-content ul li {
	margin: .5em 0 1em 0;
	line-height: 1.7em;
    font-size: 16px;
}
pre {
    overflow: auto;
    padding: 1em;
    border: 1px solid #ddd;
    background: #f1f1f1;
}
pre.script {
    border: 1px dashed #ccd;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background: #ffffdd;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/

.comments-area {
    margin: 0 0 3.5em;
}
.comment-list {
    list-style: none;
    margin: 0 0 3.5em;
    padding: 0;
}
.comment-list .children {
    list-style: none;
}
.comment-content a,
.entry-content a {
    word-wrap: break-word;
}
.comment-meta {
    font-size: 14px;
    font-size: .875rem;
    font-style: italic;
    margin: 0 0 1.75em;
}
.comment .comment-meta:after {
    border-top: 1px solid;
    content: "";
    display: block;
    margin-top: .875em;
    width: 25%;
}
.comment .comment-metadata span {
    margin: 0 1.75em 0 0;
}
.comment-author {
    clear: both;
    display: block;
    font-size: 18px;
    font-size: 1rem;
    font-style: normal;
    font-weight: bold;
    position: relative;
}
.comment .avatar {
    float: left;
    margin-right: .875em;
}
.says {
    display: none;
}
.comment-list .comment {
    margin-top: 3.5em;
}
.bypostauthor {
    display: block;
}
.no-comments {
    font-size: 14px;
    font-size: .875rem;
    font-style: italic;
    margin: 1.75em 0;
}
#cancel-comment-reply-link {
    float: right;
}
.comment-form label {
    margin-right: .875em;
    width: 7em;
}
.form-allowed-tags,
.form-allowed-tags code {
    font-size: 13px;
    font-size: .8125rem;
}
.comment-subscription-form {
    margin-bottom: 0.4375em;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/


/* Globally hidden elements when Infinite Scroll is supported and in use. */

.infinite-scroll .posts-navigation,

/* Older / Newer Posts Navigation (always hidden) */

.infinite-scroll.neverending .site-footer {
    /* Theme Footer (when set to scrolling) */
    display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */

.infinity-end.neverending .site-footer {
    display: block;
}
#infinite-footer {
    border: 0;
    z-index: 999;
}
#infinite-footer .container {
    background: rgba(255, 255, 255, 0.9);
    padding: .4375em 0;
    position: relative;
    border-top: 0;
}
#infinite-footer .blog-credits {
    color: #404040;
    font-size: 14px;
    font-size: .875rem;
    font-style: italic;
}
#infinite-footer .blog-info a,
#infinite-footer .blog-credits a {
    color: #404040;
}
#infinite-footer .blog-info a:hover,
#infinite-footer .blog-credits a:hover,
#infinite-footer .blog-info a:focus,
#infinite-footer .blog-credits a:focus,
#infinite-footer .blog-info a:active,
#infinite-footer .blog-credits a:active {
    text-decoration: none;
}
#infinite-handle span {
    border-radius: 0;
}
.jetpack-video-wrapper {
    margin-bottom: 1.75em;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/

.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
    border: none;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0;
}

/* Make sure embeds and iframes fit their containers. */

embed,
iframe,
object {
    max-width: 100%;
}
/* Border on post images */
.entry-content p img.border,
.entry-content img.border {
	border: 1px solid #ccc;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/

.wp-caption {
    max-width: 100%;
    padding: 0;
    margin-bottom: 1.75em;
}
.wp-caption img[class*="wp-image-"] {
    display: block;
    margin: 0 auto;
}
.wp-caption-text {
    font-size: 14px;
    font-size: .875rem;
    font-style: italic;
    position: relative;
}
.wp-caption-text:after {
    border-top: 1px solid;
    clear: both;
    content: "";
    display: block;
    margin-top: .875em;
    padding-top: .875em;
    width: 25%;
}
.wp-caption .wp-caption-text {
    margin: 0.8075em 0;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/

.gallery {
    margin-bottom: 1.75em;
}
.gallery-item {
    display: inline-block;
    padding: 0.4375em;
    margin: 0;
    text-align: center;
    vertical-align: top;
    width: 100%;
}
.gallery-columns-2 .gallery-item {
    max-width: 50%;
}
.gallery-columns-3 .gallery-item {
    max-width: 33.33%;
}
.gallery-columns-4 .gallery-item {
    max-width: 25%;
}
.gallery-columns-5 .gallery-item {
    max-width: 20%;
}
.gallery-columns-6 .gallery-item {
    max-width: 16.66%;
}
.gallery-columns-7 .gallery-item {
    max-width: 14.28%;
}
.gallery-columns-8 .gallery-item {
    max-width: 12.5%;
}
.gallery-columns-9 .gallery-item {
    max-width: 11.11%;
}
.gallery-caption {
    display: block;
}
#return-to-top {
    position: fixed;
    bottom: 84px;
    right: 20px;
    background: rgb(0, 0, 0);
    background: rgba(0, 0, 0, 0.7);
    width: 50px;
    height: 50px;
    display: block;
    text-decoration: none;
    -webkit-border-radius: 35px;
    -moz-border-radius: 35px;
    border-radius: 35px;
    display: none;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#return-to-top i {
    color: #fff;
    margin: 0;
    position: relative;
    left: 16px;
    top: 13px;
    font-size: 19px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#return-to-top:hover {
    background: rgba(0, 0, 0, 0.9);
}
#return-to-top:hover i {
    color: #fff;
    top: 5px;
}

/* Sign up popup */

.sg-popup-content {
    background: #0d577a !important;
    padding-right: 14px !important;
    padding-left: 14px !important;
    box-sizing: border-box !important;
}
.sg-popup-content .popup-signup {
    margin: 6% 1em 8%;
    max-width: 600px;
}
.sg-popup-content h2 {
    margin-bottom: 27px;
    line-height: 1.3;
    color: #fff;
    font-size: 1.5em;
}
.popup-signup .wpcf7-form-control-wrap {
    position: static;
}
.popup-signup input[type="submit"] {
    border: 0;
    background: #fba422;
    padding: 0.21875em 0.9em;
}
.popup-signup div.wpcf7-mail-sent-ok,
.popup-signup .wpcf7-response-output {
    border: 2px solid #fff;
    color: #fff;
}

/* Sticky banner */
.sticky-banner {
    position: fixed;
    z-index: 0;
    bottom: 0;
	left:0;
    width: 100vw;
    height: 60px;
	color:#111;
    /*background-color: #fafafa;*/
    padding: 11px 0;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
    z-index: 1;
	background-color: #ffe9bd;
    padding: 11px 0;
    border-top: 2px solid #ffdd9f;
	box-sizing: content-box;
}
.sticky-banner .sticky-banner-content {
    max-width: 1115px;
    height: 60px;
    padding: 0;
    margin: 0 auto;
    /*display: flex;
    justify-content: space-between;
	align-items: center;*/
}
.sticky-text {
    width: 100%;
    font-size: 20px;
    margin: .2em 0 0em 0;
    line-height: 1.2em;
}
.sticky-subheader {
    font-size: 18px;
    margin: .2em 0 0em 0;
}
.sticky-banner-button {
    display: inline-block;
    padding-left: 20px;
    padding-right: 20px;
    min-width: 120px;
    color: var(--button-color);
    border: 1px solid var(--button-color);
    background-color: #fff;
    border-radius: 3px;
    font-size: 16px;
    line-height: 35px;
}
.sticky-banner .dismiss-btn {
     position: absolute;
    left: 40px;
    height: 20px;
    opacity: .8;
    padding: 0;
    cursor: pointer;
    box-sizing: initial;
    top: calc(50% - 14px);
    opacity: 1;
    -webkit-transition: opacity 1000ms linear;
    transition: opacity 1000ms linear;
}
.sticky-banner .wpcf7 form .wpcf7-response-output {
	position: absolute;
    right: 70px;
    top: 23px;
    font-size: 13px;
    border: 0;
    color: #25942f;
}
.banner-signup {
	 display:flex;	
	margin-top: 14px;	 
 }
 .banner-signup h2{
	 line-height: 1.5;
    font-size: 19px;
	/*max-width: 580px;*/
 }
  .banner-signup h2 span{
	/*display:inline-block;
    font-size: 18px;*/
 }
  .wpcf7 .banner-signup input[type="email"]{	  
	  margin: auto 9px 0;
	  font-size: 15px;
    border: 1px solid #ABB0B2;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    color: #343434;
    background-color: #fff;
    box-sizing: border-box;
    height: 32px;
    padding: 0px 0.4em;
    display: inline-block;
    width: 305px;
  }
  .wpcf7 .banner-signup input[type="submit"]{
	  cursor: pointer;
  font-size: 13px;
    border: 1px solid #26a;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    letter-spacing: .03em;
    color: #fff;
    background-color: #26a;
    box-sizing: border-box;
    height: 32px;
    line-height: 32px;
    padding: 0 18px;
    display: inline-block;
    margin: 0;
    transition: all 0.23s ease-in-out 0s;
  }
  
.sticky-banner-slideUp {
  animation: slideUp 0.8s forwards;
 -webkit-animation: slideUp 0.8s forwards;
  -moz-animation: slideUp 1s forwards;
}  

@-moz-keyframes slideUp{	
	0%{bottom: -80px;opacity:1}
	100%{bottom: 0;opacity:1}
}
@-webkit-keyframes slideUp{
	0%{bottom: -80px;opacity:1}
	100%{bottom: 0;opacity:1}
	}
@-o-keyframes slideUp{
	0%{bottom: -80px;opacity:1}
	100%{bottom: 0;opacity:1}
	}
@keyframes slideUp{
	0%{bottom: -80px;opacity:1}
	100%{bottom: 0;opacity:1}
	}
.sticky-banner-slideDown {
  animation: slideDown 0.5s forwards;
 -webkit-animation: slideDown 0.5s forwards;
  -moz-animation: slideDown 0.5s forwards;
}

@-moz-keyframes slideDown{
	0%{bottom: 0;opacity:1}
	100%{bottom: -80px;opacity:0.6}
}
@-webkit-keyframes slideDown{
	0%{bottom: 0;opacity:1}
	100%{bottom: -80px;opacity:0.6}
	}
@-o-keyframes slideDown{
	0%{bottom: 0;opacity:1}
	100%{bottom: -80px;opacity:0.6}
	}
@keyframes slideDown{
	0%{bottom: 0;opacity:1}
	100%{bottom: -80px;opacity:0.6}
	}
/* Mobile */	
.sticky-banner-slideDown {
  animation: slideDown 1s forwards;
 -webkit-animation: slideDown 1s forwards;
  -moz-animation: slideDown 1s forwards;
}

/* Linkedin button */ 

.linkedin-bottom {
	font-size: 17px;
    margin: 15px auto;
    background-color: #eee;
    padding: 0.9rem 1.5rem;
    display: inline-block;
    border-radius: 7px;
    font-weight: 600;
    font-family: 'Lato';
}
.linkedin-bottom img, .linkedin-bottom span {
	margin-right: 8px;
    vertical-align: middle;
}
.linkedin-bottom:hover {
	background-color: #dddddd;
}


@media screen and ( min-width: 45em) {
    .site-logo {
        max-width: 300px;
    }
    .menu-toggle {
        display: none;
    }
    .main-navigation > div > ul {
        border: 0;
        padding-bottom: 0;
    }
    .main-navigation li {
        clear: none;
        display: inline-block;
        margin: 0 1.75em 0 0;
        width: auto;
    }
    .main-navigation ul {
        display: block;
    }
    .main-navigation ul ul {
        background: white;
        float: left;
        margin-left: -0.875em;
        padding: 0 0.875em;
        position: absolute;
        top: 1.75em;
        left: -999em;
        text-align: left;
        width: 180px;
        z-index: 99999;
    }
    .main-navigation ul ul li {
        padding: 0.4375em 1.75em 0.4375em 0;
        position: relative;
        margin: 0;
        width: 180px;
    }
    .main-navigation ul ul .current_page_item > a,
    .main-navigation ul ul .current-menu-item > a {
        border-bottom: 0;
    }
    .main-navigation ul > li.menu-item-has-children,
    .main-navigation ul > li.page_item_has_children {
        margin-right: 2.625em;
    }
    .main-navigation ul > li.menu-item-has-children > a:after,
    .main-navigation ul > li.page_item_has_children > a:after {
        content: "\203A";
        display: block;
        transform: rotate(90deg);
        font-size: 23px;
        font-size: 1.4375rem;
        line-height: 1;
        margin-top: -3px;
        position: absolute;
        top: 14%;
        right: -.75em;
    }
    .main-navigation ul ul > li.menu-item-has-children,
    .main-navigation ul ul > li.page_item_has_children {
        margin-right: auto;
    }
    .main-navigation ul ul > li.menu-item-has-children > a:after,
    .main-navigation ul ul > li.page_item_has_children > a:after {
        transform: rotate(0deg);
        top: 12%;
    }
    .main-navigation ul ul a {
        display: inline;
        margin: 0;
        position: relative;
    }
    .main-navigation ul ul ul {
        left: -999em;
        top: 0;
    }
    .main-navigation ul li:hover > ul,
    .main-navigation ul li.focus > ul {
        left: auto;
    }
    .main-navigation ul ul li:hover > ul,
    .main-navigation ul ul li.focus > ul {
        left: 100%;
    }
    .site {
        margin-top: 5.25em;
    }
    .site-header {
        margin-bottom: 1.5em;
    }
    .site-branding {
        max-width: 100%;
    }
    .error404 .widget-areas .widget-area {
        float: left;
        width: 30%;
        margin-right: 5%;
    }
    .error404 .widget-areas .widget-area:last-of-type {
        margin-right: 0;
    }
    .footer-widgets > div {
        width: 100%;
    }
    .footer-widgets > div:nth-child(1):nth-last-child(3) {
        float: left;
        width: 40%;
        margin-right: 5%;
    }
    .footer-widgets > div:nth-child(2):nth-last-child(2),
    .footer-widgets > div:nth-child(3):nth-last-child(1) {
        float: left;
        width: 25%;
        margin-right: 5%;
    }
    .footer-widgets > div:nth-child(1):nth-last-child(3):last-of-type,
    .footer-widgets > div:nth-child(2):nth-last-child(2):last-of-type,
    .footer-widgets > div:nth-child(3):nth-last-child(1):last-of-type {
        margin-right: 0;
    }
    .footer-widgets > div:nth-child(1):nth-last-child(2),
    .footer-widgets > div:nth-child(2):nth-last-child(1) {
        float: left;
        width: 47%;
        margin-right: 6%;
    }
    .footer-widgets > div:nth-child(1):nth-last-child(2):last-of-type,
    .footer-widgets > div:nth-child(2):nth-last-child(1):last-of-type {
        margin-right: 0;
    }
    h1,
    .singular .entry-title {
        font-size: 47px;
        font-size: 2.4rem;
        margin: 0 0 0.4375em;
    }
    .site-title {
        font-size: 47px;
        font-size: 2.9375rem;
    }
    h2,
    .singular.page-template-right-column-page-php .entry-title {
        font-size: 29px;
        font-size: 1.8125rem;
        margin: 0 0 0.4375em;
    }
    h3 {
        font-size: 23px;
        font-size: 1.4375rem;
    }
    h4 {
        font-size: 18px;
        font-size: 1rem;
    }
    h5 {
        font-size: 14px;
        font-size: .875rem;
    }
    h6 {
        font-size: 13px;
        font-size: .8125rem;
    }
    .entry-footer span {
        clear: none;
        display: inline;
        margin: 0 1.75em 0 0;
    }
    .site-info {
        text-align: center;
    }
    .site-info .sep {
        clear: none;
        display: inline;
        margin: 0 .4375em;
        visibility: visible;
        width: auto;
        height: auto;
    }
    .hentry {
        margin-bottom: 3.5em;
    }
    .comment-navigation .nav-previous,
    .posts-navigation .nav-previous,
    .post-navigation .nav-previous {
        float: left;
        width: 50%;
    }
    .comment-navigation .nav-next,
    .posts-navigation .nav-next,
    .post-navigation .nav-next {
        float: right;
        margin-top: 0;
        width: 50%;
    }
    blockquote {
        font-size: 23px;
        font-size: 1.4375rem;
        margin-left: 3.5em;
    }
    blockquote.alignleft {
        margin-left: 3em;
    }
    blockquote:before {
        font-size: 129px;
        font-size: 8.0625rem;
        left: -.6em;
    }
}
@media screen and ( min-width: 55em) {
    .site {
        margin: 1em auto 0;
        width: 50em;
        padding: 0;
    }
    .custom-background .site {
        width: 53.5em;
    }
    .sticking .site-header {
        width: 50em;
    }
    .custom-background.sticking .site-header {
        width: 53.5em;
    }
    .sticking .site-description {
        display: none;
    }
    .sticking .site-logo {
        clear: none;
        display: inline-block;
        margin-bottom: 0;
        margin-right: 0.4375em;
        max-width: 150px;
        max-height: 50px;
        vertical-align: middle;
    }
    .sticking .site-content {
        padding-top: 1.75em;
    }
    .singular .content-area {
        float: left;
        margin: 0 -25% 0 0;
        width: 100%;
    }
    .singular .site-main {
        margin: 0 32% 0 0;
    }
    .singular .site-content .widget-area {
        float: right;
        overflow: hidden;
        width: 25%;
    }
    .page-template-fullwidth-page-php .site-main,
    .page-template-right-column-page-php .site-main {
        margin: 0 auto;
    }
    #infinite-handle span,
    .infinite-loader {
        margin-left: 32%;
    }
    .blog .entry-header,
    .archive .entry-header,
    .search .entry-header,
    .page-template-right-column-page-php .entry-header,
    .page-title,
    .search-no-results .page-header,
    .error404 .page-header {
        float: left;
        width: 25%;
        z-index: 99;
    }
    .archive .page-header .vcard {
        clear: both;
        display: block;
        width: 100%;
    }
    .no-taxonomy-description.archive .page-header .vcard {
        clear: none;
        display: inline;
        width: auto;
    }
    .no-taxonomy-description .page-title,
    .error404 .page-title {
        width: 100%;
    }
    .blog .entry-content,
    .archive .entry-content,
    .search .entry-summary,
    .search .entry-content,
    .page-template-right-column-page-php .entry-content,
    .taxonomy-description,
    .search-no-results .page-content,
    .error404 .page-content {
        float: right;
        margin: 0 0 1.75em;
        width: 68%;
    }
    .blog .entry-meta > span,
    .archive .entry-meta > span,
    .search .entry-meta > span,
    .page-template-right-column-page-php .entry-meta > span {
        clear: both;
        display: block;
        width: 100%;
    }
    blockquote.alignleft,
    blockquote.aligncenter {
        margin-left: 0;
    }
}
@media screen and ( min-width: 70em) {
    .site {
        margin: 0em auto 0;
        width: 62em;
        padding: 0;
    }
    .custom-background .site {
        width: 65.5em;
    }
    /*.sticking .site {
        margin-top: 15em;
    }*/
    .site-branding {
        display: inline-block;
        width: 49.5%;
        transition: 0.3s;
        vertical-align: bottom;
    }
    .sticking .site-branding {
        vertical-align: middle;
    }
    .site-description {
        clear: none;
        display: inline;
        line-height: 1.3;
        margin: 0 0 3.5em;
        vertical-align: baseline;
    }
    .sticking .site-header {
        width: 62em;
        margin: 0 auto;
        padding-top: 0.4375em;
        padding-bottom: 0.4375em;
        background: white;
        position: fixed;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        z-index: 999;
    }
    .custom-background.sticking .site-header {
        width: 65.5em;
    }
    .admin-bar.sticking .site-header {
        top: 24px;
    }
    .sticking .site-title {
        font-size: 18px;
        margin-right: 0;
    }
    .main-navigation {
        display: inline-block;
        text-align: left;
        width: 50%;
        vertical-align: middle;
    }
    .main-navigation li {
        display: inline-block;
        margin-right: 0;
        margin-left: 1.75em;
    }
    .main-navigation ul > li.menu-item-has-children,
    .main-navigation ul > li.page_item_has_children {
        margin-right: .875em;
    }
    .comment .comment-content {
        float: right;
        width: 70%;
    }
    .comment .comment-meta {
        float: left;
        width: 25%;
    }
    .comment .comment-metadata span {
        clear: both;
        display: block;
        margin: 0 0 0.4375em;
    }
    .comment .comment-metadata span.comment-author {
        margin-bottom: 0;
    }
    .comment .avatar {
        float: none;
        margin: 0;
        max-width: 44px;
        height: auto;
        position: absolute;
        top: 4px;
        left: -4em;
    }
}
@media screen and ( min-width: 80em) {
    .site,
    .sticking .site-header {
        width: 68em;
    }
    .custom-background .site,
    .custom-background.sticking .site-header {
        width: 71.5em;
    }
}
@media screen and (max-width: 650px) {
    .m-width {
        width: 100% !important;
        max-width: 100%;
    }
	.display-flex-m {
		display:block;
	}
	.main-navigation ul {
		display:block !important;
	}
	#container {
		margin:0 !important;
		padding:0 !important;
	}
    .site {
        margin-top: 0;
    }
    .entry-title,
    .post-hp h1,
    h1 {
        font-size: 1.8125rem;
    }
    .sticky-banner {
        padding: 7px 0.5em 1em;
    /* box-sizing: border-box; */
		width: 97%;
		height:auto;
    }
    .sticky-banner .sticky-banner-content, .banner-signup {
        display: block;
        height: auto;
		max-width: 95%;
    }
	.wpcf7 .banner-signup input[type="email"] {
		margin: auto 0 14px;
	}
    .sticky-banner .sticky-banner-button {
        margin: 1em 0;
    }
    .sticky-banner .dismiss-btn {
        right: 40px;
        left: auto;
        bottom: 76px;
        top: auto;
    }
}
