* {
    box-sizing: border-box;
}

body {
    background-color: #EFEFEF;
    color: #222;
    font-family: "Fira Sans", sans-serif;
    font-weight: 400;
    line-height: 1.4;
    min-width: 320px;
    margin: 0;
    padding: 0;
    text-align: center;
    -webkit-font-smoothing: antialiased;
}

.hero {
    background-color: #344B4B;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding-bottom: 3em;
    color: #FFF;
}

@media screen and (min-width: 1200px) {
    .hero {
        padding-bottom: 4em;
    }
}

.page-home .hero,
.page-contact .hero,
.page-convince .hero,
.page-sessions .hero {
    background-image: url("../images/bg-hero-people.jpg");
}

@media screen and (max-width: 400px) {
    .page-home .hero,
    .page-contact .hero,
    .page-convince .hero,
    .page-sessions .hero {
        background-position: 70% bottom;
    }
}

.page-venue .hero {
    background-image: url("../images/bg-hero-venue.jpg");
    background-position: right bottom;
}

.page-schedule .hero {
    background-image: url("../images/bg-hero-schedule.jpg");
    background-position: center bottom;
}

.site-nav,
.site-footer-content {
    font-size: .8em;
}

.site-nav {
    width: 100%;
    text-align: right;
    border-bottom: 1px solid rgba(255,255,255,.5);
}

.site-nav a,
.site-nav a:visited {
    color: #FFF;
    font-weight: 400;
    display: inline-block;
    padding: 1em .5em;
    text-decoration: none;
    border-top: 4px solid transparent;
    border-bottom: 3px solid transparent;
    -webkit-transition: border-bottom 0.2s ease-out;
    -moz-transition: border-bottom 0.2s ease-out;
    -o-transition: border-bottom 0.2s ease-out;
    transition: border-bottom 0.2s ease-out;
}

.site-nav a:hover {
    border-bottom: 3px solid rgba(255,255,255,.5);
}

.site-nav a:active {
    border-bottom: 3px solid rgba(255,255,255,8);
}

.site-nav a.active {
    border-bottom: 3px solid rgba(255,255,255,.5);
}

.permanent-left {
    position: absolute;
    left: 0;
    margin-left: .5em;
}

@media screen and (max-width: 480px) {
    .show-on-big {
        display: none !important;
    }
    .show-on-small {
        display: inline-block;
    }
}

@media screen and (min-width: 481px) {
    .show-on-big {
        display: inline-block;
    }
    .show-on-small {
        display: none;
    }
}

.buttonesque {
    background: #C6715A;
    color: white;
    text-decoration: none;
    border-radius: .2em;
}

.buttonesque:hover {
    background: #8A351E;
}

.site-nav .buttonesque {
    padding: .5em;
    margin: .5em 1em .5em 0;
    border: 0;
}

.site-nav .buttonesque:hover {
    border-bottom: 0;
}

.buttonesque.order {
    display: inline-block;
    font-size: 1.1em;
}

.buttonesque.order em {
    font-style: normal;
    font-weight: 500;
    display: block;
    padding: .4em .6em;
}

.buttonesque.order span {
    font-size: .8em;
    font-weight: 300;
    display: block;
    background: #BE664E;
    border-radius: 0 0 .2em .2em;
    padding: .1em 0;
}

.buttonesque.order:hover span {
    background: #732C19;
}

@media screen and (min-width: 800px) {
    .buttonesque.order span {
        font-size: .6em;
    }
}

.branding {
    background: url("../images/agilecampnl-logo-base.svg") no-repeat center;
    background-size: contain;
    width: 80%;
    height: 5em;
    overflow: hidden;
    margin: 0 auto;
    margin-top: 3em;
    margin-bottom: 2em;
}


@media screen and (min-width: 800px) {
    .branding {
        margin-top: 4em;
        height: 6em;
    }
    .branding.branding-secondary {
        margin-top: 3em;
        height: 4em;        
    }
}

@media screen and (min-width: 1200px) {
    .branding {
        margin-top: 5em;
        height: 8em;
    }
    .branding.branding-secondary {
        margin-top: 4em;
        height: 4em;        
    }
}

.branding > * {
    margin-left: -9999em;
    white-space: nowrap;
    display: block;
}

.hero .copy {
    font-size: 1.1em;
    font-weight: 300;
    margin: 0 auto;
    margin-bottom: 1.5em;
    width: 90%;
    max-width: 28em;
}

.hero .copy p {
    margin-bottom: .5em;
}

.hero .copy em {
    font-style: normal;
    font-weight: 500;
}

@media screen and (min-width: 800px) {
    .hero .copy,
    .hero .buttonesque.order {
        font-size: 1.4em;
    }

}

.page-venue .hero .copy {
    padding-top: 2em;
}

.page-venue .hero .logo-collectiv {
    background: url("../images/logo-collectiv.svg") no-repeat center;
    background-size: contain;
    height: 3em;
    width: 100%;
    max-width: 40em;
    margin: 1em auto -.2em auto;
    overflow: hidden;
    text-indent: -9999em;
}


.factoids {
    background: white;
    padding: 2em 0 1em 0;
    text-align: center;
}

.factoids ul {
    list-style: none;
    padding: 0;
    margin: 0 0 0 -1em;
}

.factoids ul li {
    text-align: center;
    display: inline-block;
    margin-left: 1em;
    margin-bottom: 1em;
}

.factoids ul li strong {
    font-size: 1.5em;
    font-weight: 600;
    display: inline-block;
}

.factoids ul li p {
    margin: 0;
    padding: 0;
}

.strikethru {
    text-decoration: line-through;
}

.content {
    padding: 0 0 2em 0;
}

.content article + article {
    margin-top: 1.5em;
}

.content h2 {
    margin-top: 2em;
    line-height: 1.2;
}

.content article:first-child .wrap h2:first-child {
    margin-top: 1em;
}

.content article:first-child .wrap.highlight h2:first-child {
    margin: .2em 0 0;
}

.content strong {
    font-weight: 500;
}

.content a,
.content a:visited,
.wrap a,
.wrap a:visited {
    color: #336699;
    text-decoration: none;
    border-bottom: 1px solid #336699;
}

.content a:hover,
.wrap a:hover {
    border-bottom: 1px solid transparent;
}

.content ol {
    padding-left: 1.5em;
}

.content ol li + li {
    margin-top: 3em;
}

.content table.day-schedule {
    width: 100%;
}

.content table.day-schedule tr th,
.content table.day-schedule tr td {
    width: 26%;
    padding: .25em;
}

.content table.day-schedule tr th:first-child {
    width: 22%;
}

.content table.day-schedule tr td {
    background: white;
    color: #999;
    font-size: .9em;
    text-align: center;
}

.content table.day-schedule .cell-full {
    text-align: center;
    color: #000;
}

.content table.day-schedule thead th {
    text-align: center;
}

.content table.day-schedule tbody th {
    font-weight: normal;
}

.wrap {
    width: 90%;
    max-width: 40em;
    margin: 0 auto; 
    text-align: left;
}

.wrap > * {
    max-width: 100%;
}

.wrap.highlight {
    background: #FFF;
    padding: 1.2em 1.5em .8em 1em; 
    border-radius: 3px;
    position: relative;
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,.25);
    max-width: 42em;
    margin-top: 2em;
}

.wrap.highlight h2 {
    margin-top: 0;
}

.wrap.alert {
    background-color: #F7FCEF;
    border: 2px solid green;
    box-shadow: 5px 5px 25px 5px rgba(159, 233, 132, 0.65);
    color: black;
    margin-top: -3em;
    margin-bottom: -4em;
    text-align: center;
}

.wrap.alert hr {
    color: green;
    height: 1px;
    margin: 2em 0;
}

.wrap.alert div {
    text-align: left;
}

.wrap.alert h2:last-child {
    margin-bottom: .4em;
}

.photo {
    border-radius: 3px;
    box-shadow: 0px 2px 8px rgba(0,0,0,.2);
    border: 6px solid #FFF;
    background-color: #344B4B;
}

.roto-pica {
    transform: rotate(-2deg);
    margin-top: -1.2em;
}

.engagement-box {
    padding: 1em 0 2em 0;
}

.engagement-box .wrap {
    text-align: center;
}

.button-linkedin {
    background-image: url("../images/linkedin-logo.png");
    background-color: #F5F5F5;
    background-repeat: no-repeat;
    background-size: 1.4em;
    background-position: .5em center;
    padding: .5em .5em .5em 2.5em;
    display: inline-block;
    border-radius: .2em;
    text-decoration: none;
    color: #336699;
    font-size: .9em;
}

.button-submit {
    border-radius: .2em;
    background-color: #F5F5F5;
    border: 0;
    padding: .5em .3em;
    font-family: "Fira Sans", sans-serif;
    cursor: pointer;
    color: #336699;
    font-size: 1rem;
}

.email-input {
    font-size: 16px;
    border: none;
    font-family: "Fira Sans", sans-serif;
    padding: .5em;
    background: #FFF;
    max-width: 12em;
}

.newsletter-form > * {
    display: inline;
}

.newsletter-form > label {
    display: none;
}

.site-footer {
    background-color: #344B4B;
    color: #FFF;
}

.site-footer-courtesy {
    background: #121D1D;
    padding: 1.4em .5em 1em .5em;
    text-align: right;
}

.site-footer-illustration {
    height: 2em;
    display: inline-block;
}




/* Sessions */

.sessions {
    font-size: .8em;
    padding-bottom: 2em;
    overflow: visible;
}

@media screen and (min-width: 540px) {
    .sessions {
        font-size: .9em;
    }
}

.session .wrap {
    background: #FFF;
    padding: 1em 1.5em 1em 1em; 
    border-radius: 3px;
    position: relative;
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,.25);
    max-width: 50em;
}

@media screen and (min-width: 540px) {
    .session .wrap {
        padding: 2em 2.5em 2em 2em; 

    }
}

.session + .session {
    margin-top: 2em;
}

.session-title,
.session-properties,
.session-description {
    margin: 0;
    padding: 0;
}

.session-title {
    margin: 0 0 .5em 0 !important;
    max-width: 90%
}

.session-title a,
.session-title a:visited {
    color: #333;
    border-color: #333;
}

.session-properties tr th {
    width: 9em;
    color: gray;
    text-transform: uppercase;
    font-size: .7em;
    font-style: normal;
    font-weight: 400;
    line-height: 2.2;
    vertical-align: top;
}

@media screen and (max-width: 540px) {
    .session-properties tr th {
        display: block;
        width: 100%;
        white-space: nowrap;
    }
    .session-properties tr td {
        display: block;
        width: 100%;
        margin-bottom: .5em;
    }
}

.session-audience ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.session-audience ul li {
    display: inline-block;
    color: #333;
    font-weight: normal;
    white-space: nowrap;
}

.session-audience ul li:not(:last-child)::after {
    content: ", ";
}

.session-description p {
    margin: 0 0 .5em 0;
}
.session-description h4 {
    font-weight: normal;
    font-style: italic;
    margin: .5em 0;
}

.session-description ul {
    margin: .5em 0;
    padding: 0 0 0 1em;
}

.session-description ul li {
    margin: 0;
}

.session-photo {
    background-color: rgb(255,255,255);
    border-radius: 100% 100%;
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,.25);
    width: 9em;
    height: 9em;
    position: absolute;
    right: 0;
    margin: -3em -1em 0 0;
    opacity: .9;
}

@media screen and (max-width: 540px) {
    .session-photo {
        margin: 1em -1em 0 0;
    }
}

.session-photo > img {
    border-radius: 100% 100%;
    width: 100%;
    height: 100%;
    border: 6px solid white;
}

.session.multi-presenter .session-photo + .session-photo {
    margin-right: 7em;
}

@media screen and (max-width: 30em) {
    .session.multi-presenter .session-photo {
        margin-top: -3em;
    }
    .session.multi-presenter .session-photo + .session-photo {
        margin-top: 4em;
        margin-right: -1em;
    }
}


.profile-photo {
    background-color: rgb(255,255,255);
    border-radius: 100% 100%;
    box-shadow: 0px 1px 2px 0px rgba(0,0,0,.25);
    width: 12em;
    height: 12em;
    display: inline-block;
    margin: 0;

}

.profile-photo img {
    border-radius: 100% 100%;
    width: 100%;
    height: 100%;
    border: 8px solid white;
}

.profile-photo a {
    text-decoration: none;
    border: 0;
}

.profile-photo a:hover {
    border: 0;
    transform: scale(1.2);
}

.organisers .profile-photo {
    height: 9em;
    width: 9em;
}

.organisers .profile-photo img {
    border: 6px solid white;
}

.organisers .profile-photo + .profile-photo {
    margin-left: .5em;
}

.photo-gallery {
    min-width: 100%;
    height: 16rem;
}

.photo-gallery ul {
    margin: 0;
    padding: 0;
    height: 16rem;
    white-space: nowrap;
    font-size: 0;
    overflow-y: hidden;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
}

.photo-gallery li {
    display: inline-block;
    height: 16rem;
    width: 40%;
    background-size: cover;
    background-position: center;
    margin: 0;
    padding: 0;
}

@media screen and (max-width: 45em) {
    .photo-gallery {
        height: 12rem;
    }
    .photo-gallery ul {
        height: 12rem;
    }
    .photo-gallery li {
        height: 12rem;
        width: 60%;
    }
}

.photo-gallery-1 {
    background-image: url(../../2019/pics/photo-impression-2019-1.jpg)
}

.photo-gallery-2 {
    background-image: url(../../2019/pics/photo-impression-2019-3.jpg)
}

.photo-gallery-3 {
    background-image: url(../../2019/pics/photo-impression-2019-2.jpg)
}

.photo-gallery-4 {
    background-image: url(../../2019/pics/photo-impression-2019-4.jpg)
}

.photo-gallery-5 {
    background-image: url(../../2019/pics/photo-impression-2019-5.jpg)
}

.photo-gallery-6 {
    background-image: url(../../2019/pics/photo-impression-2019-6.jpg)
}

.photo-gallery-7 {
    background-image: url(../../2019/pics/photo-impression-2019-7.jpg)
}

.photo-gallery-8 {
    background-image: url(../../2019/pics/photo-impression-2019-8.jpg)
}
