/** GENERAL STYLES */
 
/* include body, header tags, p, */
body {
	font-family: 'Droid Sans', sans-serif;
	font-size: 18px; 
	line-height: 16px; 
	margin: 0;
	padding: 0;
	letter-spacing: 0.03em;
    background-color: #fff;
}

p {
    line-height: 26px;
}

.primary-bg {
	background-color: #ad111f;
}

.secondary-bg {
    background-color: #eaeaea;
}

.full-width-container {
	width: 100%
}

.container {
	width: 1170px;
	margin: 0 auto;
}

ul {
	margin: 0;
	padding: 0;
}

ul li {
	list-style: none;
}

a {
	display: inline-block;
	text-decoration: none;
	color: #ad111f;
}

.offscreen{
	position: relative;
	left: -10000px;
	font-size: 0;
	display: none;
}

.gray{
	color: #454545;
}

.flex {
	display: flex
}

.f-col {
    display: flex;
    flex-direction: column;
}

.f-wrap {
	display: flex;
	flex-wrap: wrap;
}

.f-row {
	flex-direction: row; 
}

.f-one {
	flex: 1;
}

.bdr {
	border: 1px solid #000;
}

.bdr-t {
	border-top: 1px solid #000;
}

.bdr-r {
	border-right: 1px solid #000;
}

.bdr-b {
	border-bottom: 1px solid #000;
}

.bdr-l {
	border-left: 1px solid #000;
}

.bdr-dotted {
	border-style: dotted;
}

.bdr-dashed {
	border-style: dashed;
}

.allcaps {
	text-transform: uppercase;
}

.offscreen {
	position: relative;
	left: -10000;
	font-size: 0;
}

.margin-top-20 {
    margin-top: 20px !important;
}

.margin-top-30 {
    margin-top: 30px !important;
}

.margin-top-40 {
	margin-top: 40px !important;
}

.margin-top-70 {
    margin-top: 70px !important;
}

.fixed {
	position: fixed;
}

.bg-parallax {
	background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-attachment: fixed;
}

.btn {
	border-radius: 5px;
    height: 45px;
    font-weight: bold;
    cursor: pointer;
    outline: none;
    padding: 0 30px;
    letter-spacing: 5px;
    text-transform: uppercase;
	margin-right: 20px;
    margin-top: 25px;
}

.primary-btn {
    color: #fff;
    border: 1px solid #b11321;
    background-color: #b11321;
}

.secondary-btn {
    color: #fff;
    border: 1px solid #f72337;
    background-color: #560c0c;
    margin: 0;
}

.primary-btn:hover {
    background-color: transparent;
    transition: 1s; 
}

.secondary-btn:hover {
    background-color: #fd271c;
    transition: 1s;
}

.white {
	color: #fff;
}

.module-text {
	margin-top: 0px;
}

h1 {
    color: #ea1e32;
    font-size: 50px;
    border-bottom: 1px solid #000;
    width: 100%;
    text-align: center;
    line-height: 78px;
}

* {
    box-sizing: border-box;
}



/** Mobile Responsive Styles */
@media screen and (max-device-width: 1024px) and (orientation: landscape){/** TABLET LANDSCAPE */

	.container {
        width: 100%;
	    margin: 0 auto;
	    box-sizing: border-box;
	    padding: 0px 30px;
    }

    #hero {
	    height: 360px !important;
	    background-attachment: inherit !important;
	    background-position: center 0 !important;
	}

	.hero-details h2 {
	    font-size: 185% !important;
	}

    .speaker, .testimonial {
    	border: 1px solid #eaeaea;
	    box-shadow: 0px 0px 7px 4px #eaeaea;
	    border-radius: 5px;
	    margin-right: 20px !important;
	    margin-bottom: 20px !important;
    }

    .ticket { margin: 20px !important; }

}
@media screen and (max-device-width: 736px)	and (orientation: landscape){/** LARGE PHONE LANDSCAPE */
	
	.hero-details h2 { font-size: 125% !important; }
	.heading {
	    font-size: 80px !important;
	    line-height: 90px !important;
	}
	.hero-details { margin-top: 0px !important; }
	.about-logo, .about-desc { padding: 15px !important; }
	.counter-block {
	    height: auto !important;
	    padding: 20px !important;
	}
	.about-logo img { min-width: 130px !important; }
	.speaker, .testimonial { width: 40% !important; }
	.content-timeline h2 { line-height: 30px; }
	.content-timeline h2:after { right: 30px !important; }
	#location iframe { height: 300px !important; }
    #footer { flex-direction: column-reverse; }
}

@media screen and (max-device-width: 640px)	and (orientation: landscape){/** SMALL PHONE LANDSCAPE */

	.container {
        width: 100%;
	    margin: 0 auto;
	    box-sizing: border-box;
	    padding: 0px 30px;
    }

    .hero-details h2 { font-size: 100% !important; }
    .hero-details p {
	    font-size: 16px !important;
	}
	.heading {
	    font-size: 70px !important;
	    line-height: 80px !important;
	}
    
}


@media screen and (min-device-width: 320px) and (orientation: portrait){/** SMALL PHONE PORTRAIT */

	.container {
        width: 100%;
	    margin: 0 auto;
	    box-sizing: border-box;
	    padding: 0px 30px;
    }

    .hero-details {
	    margin-top: 0px !important;
	}

	.hero-details h2 {
	    font-size: 10px !important;
	}

	.heading {
	    font-size: 55px !important;
	    line-height: 55px !important;
        white-space: normal !important;
	}

	.heading span {
	    white-space: normal !important;
	}

	#hero {
	    height: 400px !important;
	    background-attachment: inherit !important;
	    background-position: center 0 !important;
	    background-size: cover !important;
	}

	#key-hglts div:first-child {
	    flex-direction: column;
	    align-items: center;
	    padding: 0 !important;
	    margin-bottom: 10px;
	}

	.hero-details p {
	    font-size: 15px !important;
	}

	.btn {
	    height: 40px !important;
	    padding: 0 10px !important;
	    letter-spacing: 1px !important;
	    margin-top: 10px !important;
	}

	#about {
	    padding: 30px 0px !important;
	}

    .about-logo img { min-width: 100px !important; max-width: 100px !important; }
	.about-logo, .about-desc { padding: 20px 0px 0px 0px !important; }
	.about-logo {
	    display: flex;
	    justify-content: center;
	    align-items: center;
	}
    .about-dtls { flex-direction: column; }
    .counter-block {
	    height: auto !important;
	    flex-direction: column;
        padding: 0px !important;
	}
	.counter-box { margin: 20px 0 !important; }
	.count { font-size: 55px !important; height: 70px !important; }
	#counter-msg {
	    font-size: 2em !important;
	    align-items: center;
	    height: 150px;
	}

    .speaker-right .module-text, .testimonial-right .module-text { column-count: 1; }

    #about h2 { line-height: 1.2em; }

	.speaker, .testimonial {
    	border: 1px solid #eaeaea;
	    box-shadow: 0px 0px 7px 4px #eaeaea;
	    border-radius: 5px;
	    width: 100% !important;
	    margin-right: 0px !important;
	    margin-bottom: 20px !important;
    }

    .speaker-left, .testimonial-left {
	    margin-right: 0 !important;
	}

	.speaker-right, .testimonial-right {
	    margin-top: 30px !important;
	}

	.speaker-right h3, .testimonial-right h3 {
	    line-height: 1.3em !important;
	}

	.speaker-right .module-text, .testimonial-right .module-text {
	    column-count: 1 !important;
	}

	.clear .btn {
	    margin-right: 30px !important;
	}

    .divider { display: none; }
    .content {
	    flex-direction: column;
	    align-items: center;
	    margin: 0px !important;
	}
	.content-image { margin-right: 0px !important; }
	.content-image img { left: 0px !important; }
	.content-timeline {
	    display: flex;
	    align-items: center;
	    flex-direction: column;
	}
	.content-timeline h2 {
	    margin-bottom: 0px;
	    line-height: 32px;
	}
	.content-timeline span {
	    line-height: 1.3em;
	}
	.honoree {
	    width: 100% !important;
	    margin: 0 0 20px 0 !important;
	}
	#sponsors { padding: 0px !important; }
	#registration .container {
	    padding-top: 0px !important;
	}
	#location iframe { height: 240px !important; }
	#footer { flex-direction: column-reverse; }
	#address { text-align: left !important; }
	
}

@media screen and (min-device-width: 414px) and (orientation: portrait){/** LARGE PHONE PORTRAIT */
	
	#location iframe { height: 300px !important; }
    
}

@media screen and (min-device-width: 600px) and (orientation: portrait){/** TABLET PORTRAIT */

	.counter-block {
	    height: auto !important;
	    flex-direction: row;
	}

	.hero-details h2 {
	    font-size: 27px !important;
	}

	.heading {
	    font-size: 70px !important;
	    line-height: 90px !important;
	}

	.hero-details p {
	    font-size: 20px !important;
	}
	
	.about-dtls { flex-direction: row; }

	.about-logo, .about-desc {
	    padding: 40px !important;
	}

	.about-logo {
    	display: block;
    }

    .counter-block {
	    height: 320px !important;
	    padding: 30px !important;
	}

	.speaker, .testimonial {
	    width: 35% !important;
	    margin-right: 40px !important;
	    margin-bottom: 40px !important;
	}

	.divider {
	    display: block;
	} 

	.content {
	    display: flex;
        margin: 70px 70px 70px 85px !important;
    	flex-direction: row;
	} 

	.content-image {
	    margin-right: 55px !important;
	}

	.content-image img {
	    left: -14px !important;
	}

	.content-timeline {
	    display: block;
	}

	#footer { flex-direction: row; }
	#address { text-align: right !important; }
}
