:root {
    --padding:calc(110px + 2%);
}
#main div.gallery {
    width:calc(100% + 4px);
    margin-left: -2px;
}
#main div.block h2 {
    color:#df342d;
    font-weight: 700;
    font-size: 24px;
    margin-bottom: 2%;
    text-transform: uppercase;
    cursor:default;
}
#main div.block h2.sub5 {
    margin-bottom: 0;
}
#main div.block h3 {
    font-weight: 600;
    font-size:20px;
    margin-bottom: 2%;
    color:#b1221b;
}
#main div.block h3::first-letter {
    text-transform: capitalize;
}
div.day + div.day {
    margin-top: 5%;
}
div.block div+h2 {
    margin-top: 3%;
}
#locmap {
    width:100%;
    overflow: hidden;
    border-radius:10px;
    padding-top:50%;
}
#locmap iframe {
    width:100% !important;
    height:100% !important;
    position: absolute;
    top:0px;
    left:0px;
}
div.reg {
    text-align: center;
}
div.conf-holder {
    display:flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
div.conf-holder > div {
    width:46%;
    margin:0 0 2% 0;
}
div.conf-holder > div.act {
    width:100%;
}
div.conf-holder > div.photos {
    width:100%;
    margin-bottom: 0;
    /*border-top: 1px dotted #ccc;*/
    padding-top: 3%;
    margin-top: 1%;
}

div.conf-holder a {
    background-color: #456fd7;
    color:#fff;
    border-radius:10px;
    padding:20px 40px;
    display: block;
    text-align: center;
}
div.conf-holder a:hover {
    background-color: #ff7d36;
}
div.conf-holder a span {
    text-transform: uppercase;
    font-weight: 800;
    font-size: 54px;
    line-height: normal;
    display: block;
    color:#fff;
}
div.conf-holder a span.small {
    text-transform: uppercase;
    font-weight: 600;
    font-size: 16px;
    line-height: normal;
}
/* SPONSORS */
div.conf-sponsors {
    display:flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
div.conf-sponsors > div {
    width:25%;
    padding:2%;
    text-align: center;
}
div.conf-sponsors > div img {
    opacity: .5;
    flex-shrink:1;
    filter: saturate(0);
    transition: opacity .3s, filter .3s;
    max-height:170px;
    max-width:100%;
    width:auto;
}
div.conf-sponsors > div a:hover img {
    opacity:1;
    filter:saturate(1);
}
/* SPEAKRS */
div.speakers > div {
    padding-left: 2.27%;
}
div.speakers > * + * {
    margin-top: 3%;
}
div.speakers > div > div {
    display: inline-block;
    vertical-align: top;
}
div.speakers div.img {
    width: 10%;
    overflow: hidden;
    transition: filter .3s;
    filter: saturate(0);
}
div.speakers > div:hover div.img {
    filter: saturate(1);
}
div.speakers div.img img {
    max-width: 300px;
    width: 100%;
    border-radius: 5px;
}
div.speakers div.info {
    width: 87%;
    margin-left: 3%;
    text-align: left !important;
}
div.speakers span.name {
    font-weight: 400;
    font-size: 22px;
    line-height: normal;
    display: block;
}
div.speakers span.company {
    display: block;
}
div.speakers span.post {
    font-style: italic;
    display: block;
}
/* PROGRAMS */
div.day > div + div {
    margin-top: 2%;
}
div.day span.title {
    font-weight: 700;
    font-size: 18px;
    display: block;
    margin-bottom: 2%;
    padding-left:var(--padding);
}
div.day span.title span.time {
    font-size: inherit;
    position: absolute;
    top:0px;
    left:0px;
}
div.day div.text {
    margin-bottom: 2%;
    padding-left:var(--padding);
}
div.day span.speakers {
    font-style: italic;
}
div.day div.speakers div.info {
    width:calc(97% - 48px);
}
div.day div.speakers > div {
    padding-left:var(--padding);
}
div.day div.speakers div.img {
    width:48px;
    filter:none;
}
div.day div.speakers div.info span.name {
    font-size:16px;
    line-height: normal;
}
div.day div.speakers div.info span.company, div.day div.speakers div.info span.post {
    display:inline;
    font-size:14px !important;
    line-height:normal !important;
}
div.day div.speakers div.info span.company:after {
    content:', ';
    position: relative;
}
/* DOCS */
div.conf-docs ul {
    list-style-type: none;
}
div.conf-docs li {
    display: flex;
    background: url(../images/doc.png) left center no-repeat;
    align-items: center;
    min-height: 22px;
    padding:1% 0 1% 26px;
}
div.conf-docs a {
    color:#4f4f4f !important;
    font-weight:400;
}
div.conf-docs a:hover {
    color:#df342d !important;
}

form div.text h5 {
    font-size:12px;
    font-weight: 400;
    line-height: normal;
}

/* RESPONSIVE */
@media screen and (max-width: 1000px), screen and (max-device-width: 1000px), screen and (max-width: 1000px) {
    div.conf-holder > div span.photos {
        font-size:36px;
    }
}
@media screen and (max-width: 700px), screen and (max-device-width: 700px), screen and (max-width: 700px) {
	div.conf-holder {
        display: block;
    }
    
    div.conf-holder > div {
        width:100%;
    }
	
}
@media screen and (max-width: 550px), screen and (max-device-width: 550px), screen and (max-width: 550px) {
	:root {
        --padding:calc(30px + 2%);
    }
    div.day span.title {
        padding-top:30px;
    }
    div.day span.speakers {
        padding:2% 0;
        display: block;
      }
}