/* BOX MODEL, WRAPPER, CLEARFIX, RESET
====================================================================== */

#tn_app-wrapper,
#tn_app-wrapper *,
#tn_app-wrapper *:before,
#tn_app-wrapper *:after {
	box-sizing: border-box;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: auto;
}

#tn_app-wrapper {
	position: relative;
	overflow: hidden;
}

#tn_app-wrapper,
#tn_app-wrapper p,
#tn_app-wrapper div,
#tn_app-wrapper h1,
#tn_app-wrapper h2,
#tn_app-wrapper h3,
#tn_app-wrapper h4,
#tn_app-wrapper li {
	font-family: 'CiscoSans', Helvetica, Arial, sans-serif;
	font-weight: 300;
	color: #1b1c1d;
}

#tn_app-wrapper b,
#tn_app-wrapper strong {
	font-weight: 500;
}

#tn_app-wrapper a {
	font-weight: 500;
}

#tn_app-wrapper a {
	color: #0070d2;
}

#tn_app-wrapper a:visited {
	color: #0070d2;
}

#tn_app-wrapper a:hover,
#tn_app-wrapper a:active {
	color: #0060ad;
	text-decoration: none;
}

#tn_app-wrapper p {
	margin: 0 0 1.0em 0;
}

#tn_app-wrapper p:last-child {
	margin-bottom: 0;
}

#tn_app-wrapper div,
#tn_app-wrapper p,
#tn_app-wrapper li {
	font-size: 16px;
	line-height: 24px;
}

#tn_app-wrapper h1,
#tn_app-wrapper h2,
#tn_app-wrapper h3,
#tn_app-wrapper h4 {
	margin: 0 0 0.5em 0;
}

#tn_app-wrapper h1 {
	font-size: 64px;
	line-height: 77px;
}

#tn_app-wrapper h2 {
	font-size: 52px;
	line-height: 62px;
}

#tn_app-wrapper h3 {
	font-size: 32px;
	line-height: 40px;
}

#tn_app-wrapper h4 {
	font-size: 32px;
	line-height: 40px;
}

#tn_app-wrapper ul.tn_content-bullet-list,
#tn_app-wrapper ol.tn_content-bullet-list {
	margin: 0 0 1.0em 1.8em;
}

#tn_app-wrapper .tn_content-bullet-list li + ul,
#tn_app-wrapper .tn_content-bullet-list li + ol {
	margin: 0 0 0 2.2rem;
}

#tn_app-wrapper .tn_content-bullet-list li {
	margin: 0.9rem 0 0 0;
}

#tn_app-wrapper ul.tn_content-bullet-list li {
	list-style-type: disc;
}

#tn_app-wrapper ul.tn_content-bullet-list li + ul li {
	list-style-type: circle;
}

#tn_app-wrapper ol.tn_content-bullet-list li {
	list-style-type: decimal;
}

#tn_app-wrapper ol.tn_content-bullet-list li + ol li {
	list-style-type: lower-alpha;
}

#tn_app-wrapper img {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: bottom;
}

#tn_app-wrapper table {
	border-collapse: collapse;
}

.tn_clearfix:after {
	content: "";
	display: table;
	clear: both;
}

.tn_container {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 40px;
}

@media (max-width: 1023px) {

	#tn_app-wrapper h1 {
		font-size: 40px;
		line-height: 48px;
	}
	
	#tn_app-wrapper h2 {
		font-size: 32px;
		line-height: 40px;
	}
	
	#tn_app-wrapper h3 {
		font-size: 20px;
		line-height: 28px;
	}
	
	#tn_app-wrapper h4 {
		font-size: 20px;
		line-height: 28px;
	}

	.tn_container {
		padding: 0 24px;
	}

}

@media (max-width: 767px) {
	
	.tn_container {
		padding: 0 20px;
	}

}


/* COMMON ITEMS
====================================================================== */

#tn_app-wrapper img.tn_item-leader-icon {
	position: relative;
	width: 80px;
	height: 80px;
	left: -8px;
	margin-bottom: 12px;
}

.tn_center {
	text-align: center;
}

a.tn_cta-link {
	font-size: 2.2rem;
	line-height: 2.6rem;
}

a.tn_cta-link:hover,
a.tn_cta-link:active {
	text-decoration: none;
	border-bottom: 1px solid;
}

a.tn_cta-link:after {
    border-right: solid 2px;
    border-top: solid 2px;
    content: '';
    width: 10px;
    height: 10px;
    transform: rotate(45deg);
    display: inline-block;
    position: relative;
    right: -6px;
    margin-right: -8px;
    top: -2px;
}

.tn_mobile-invisible {
	display: block;
}

@media (max-width: 1023px) {

	#tn_app-wrapper img.tn_item-leader-icon {
		width: 64px;
		height: 64px;
		left: -6px;
		margin-bottom: 6px;
	}

	a.tn_cta-link {
		font-size: 2.0rem;
		line-height: 2.4rem;
	}

	a.tn_cta-link:after {
		width: 8px;
		height: 8px;
	}

}

@media (max-width: 767px) {

	a.tn_cta-link {
		font-size: 1.8rem;
		line-height: 2.4rem;
	}
	
	.tn_mobile-invisible {
		display: none;
	}

}


/* HEADER
====================================================================== */

.tn_header-main {
	height: 680px;
	background-image: url('/c/dam/m/en_us/solutions/industrial-networking/future-proof/images/banner-header-desktop.jpg');
	background-size: 1600px 680px;
	background-position: top center;
	background-repeat: no-repeat;
}

.tn_header-title-container {
	display: block;
}

.tn_header-title {
	display: flex;
	flex-direction: row;
	align-items: center;
	max-width: 720px;
	height: 680px;
}

#tn_app-wrapper .tn_header-main h1 {
	margin-bottom: 20px;
	color: #fff;
}

#tn_app-wrapper .tn_header-main h2 {
	max-width: 540px;
	margin-bottom: 30px;
	font-size: 24px;
	line-height: 32px;
	color: #fff;
}

@media (max-width: 1279px) {
	
	.tn_header-main {
		height: 600px;
	}
	
	.tn_header-title {
		height: 600px;
	}

}

@media (max-width: 1023px) {

	.tn_header-main {
		height: 480px;
		background-image: url('/c/dam/m/en_us/solutions/industrial-networking/future-proof/images/banner-header-tablet.jpg');
		background-size: 1040px 480px;
	}
	
	.tn_header-title {
		max-width: 420px;
		height: 480px;
	}
	
	#tn_app-wrapper .tn_header-main h2 {
		font-size: 20px;
		line-height: 28px;
		max-width: 360px;
	}

}

@media (max-width: 767px) {

	.tn_header-main {
		height: 360px;
/*		background-image: url('/c/dam/m/en_us/solutions/industrial-networking/future-proof/images/banner-header-mobile.jpg');*/
		background-size: 848px 360px;
		background-color: #ccc;
	}

	.tn_header-title {
		max-width: 360px;
		height: auto;
		padding-top: 16px;
	}
	
	#tn_app-wrapper .tn_header-main h1 {
		margin-bottom: 16px;
		font-size: 32px;
		line-height: 40px;
	}
	
	#tn_app-wrapper .tn_header-main h2 {
		max-width: 320px;
		margin-bottom: 20px;
		font-size: 16px;
		line-height: 24px;
	}

}


/* HIGHLIGHTS TITLE
====================================================================== */

.tn_highlights-title-array {
	display: flex;
	flex-direction: row;
	align-items: center;
	height: 120px;
	margin: 40px -20px;
}

.tn_highlights-title-array > div {
	margin: 0 20px;
}

.tn_highlights-title-ornament-left {
	flex-basis: 33%;
	height: 120px;
	background-image: url('/c/dam/m/en_us/solutions/industrial-networking/future-proof/images/highlight-ornament-left.svg');
	background-size: 720px 120px;
	background-position: center right;
	background-repeat: no-repeat;
}

.tn_highlights-title-ornament-right {
	flex-basis: 33%;
	height: 120px;
	background-image: url('/c/dam/m/en_us/solutions/industrial-networking/future-proof/images/highlight-ornament-right.svg');
	background-size: 720px 120px;
	background-position: center left;
	background-repeat: no-repeat;
}

.tn_highlights-title {
	flex-basis: 34%;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	height: 120px;
	text-align: center;
}

#tn_app-wrapper .tn_highlights-title h2 {
	margin-bottom: 0;
}

@media (max-width: 1279px) {

	.tn_highlights-title-array {
		margin: 30px -20px;
	}
	
	#tn_app-wrapper .tn_highlights-title h2 {
		font-size: 40px;
		line-height: 48px;
	}

}

@media (max-width: 1023px) {

	.tn_highlights-title-array {
		margin: 10px -16px;
	}
	
	.tn_highlights-title-array > div {
		margin: 0 16px;
	}
	
	.tn_highlights-title-ornament-left {
		flex-basis: 32%;
		height: 90px;
		background-size: 540px 90px;
	}
	
	.tn_highlights-title-ornament-right {
		flex-basis: 32%;
		height: 90px;
		background-size: 540px 90px;
	}
	
	.tn_highlights-title {
		flex-basis: 36%;
	}
	
	#tn_app-wrapper .tn_highlights-title h2 {
		font-size: 32px;
		line-height: 40px;
	}

}

@media (max-width: 767px) {

	.tn_highlights-title-array {
		height: auto;
		margin: 20px -16px;
	}
	
	.tn_highlights-title {
		flex-basis: 100%;
		height: auto;
	}

	.tn_highlights-title-ornament-left,
	.tn_highlights-title-ornament-right {
		display: none;
	}

}


/* HIGHLIGHTS
====================================================================== */

.tn_highlights {
	padding: 0 0 60px 0;
}

.tn_highlights-array {
	display: flex;
	flex-direction: row;
	align-items: start;
	margin: 0 -30px 40px -30px;
}

.tn_highlights-item {
	position: relative;
	flex-basis: 33.333%;
	margin: 0 30px;
}

#tn_app-wrapper .tn_highlights h3 {
	font-size: 30px;
	line-height: 38px;
}

#tn_app-wrapper .tn_highlights p {
	font-size: 20px;
	line-height: 28px;
}

#tn_app-wrapper .tn_highlight-graphic {
	display: block;
	width: 100%;
	margin-bottom: 20px;
}

@media (max-width: 1279px) {

	.tn_highlights {
		padding: 0 0 40px 0;
	}
	
	.tn_highlights-array {
		margin: 0 -20px 40px -20px;
	}
	
	.tn_highlights-item {
		margin: 0 20px;
	}

	#tn_app-wrapper .tn_highlights h3 {
		font-size: 28px;
		line-height: 36px;
	}

	#tn_app-wrapper .tn_highlights p {
		font-size: 16px;
		line-height: 24px;
	}

}

@media (max-width: 1159px) {

	#tn_app-wrapper .tn_highlights h3 {
		font-size: 24px;
		line-height: 32px;
	}

}

@media (max-width: 1023px) {

	.tn_highlights {
		padding: 0 0 30px 0;
	}
	
	.tn_highlights-array {
		margin: 0 -16px 30px -16px;
	}
	
	.tn_highlights-item {
		margin: 0 16px;
	}
	
	#tn_app-wrapper .tn_highlights h3 {
		font-size: 19px;
		line-height: 28px;
	}
	
	#tn_app-wrapper .tn_highlights p {
		font-size: 14px;
		line-height: 20px;
	}

}

@media (max-width: 767px) {

	.tn_highlights-array {
		flex-direction: column;
		margin: -16px 0 12px 0;
	}
	
	.tn_highlights-item {
		flex-basis: auto;
		margin: 16px 0;
	}
	
	#tn_app-wrapper .tn_highlight-graphic {
		margin-bottom: 10px;
	}
	
	#tn_app-wrapper .tn_highlights h3 {
		margin-bottom: 6px;
	}

}


/* CARDS
====================================================================== */

.tn_cards-2up {
	background-color: #f4f5f6;
	border-top: 1px solid #e2e2e2;
}

.tn_card-array-2up {
	display: flex;
	flex-direction: row;
	justify-content: start;
	align-items: stretch;
	margin: 0 -20px;
}

.tn_card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	margin: 0 20px;
	padding: 80px 0;
}

.tn_card-spacer {
	flex-basis: 120px;
	flex-shrink: 0;
	margin: 0 20px;
	background-image: url('/c/dam/m/en_us/solutions/industrial-networking/future-proof/images/card-spacer-ornament.svg');
	background-size: 80px 1140px;
	background-position: center center;
	background-repeat: no-repeat;
}

.tn_card-array-2up .tn_card {
	flex-basis: 50%;
}

.tn_card-contents {
}

#tn_app-wrapper .tn_card-contents h3 {
	font-size: 40px;
	line-height: 48px;
}

#tn_app-wrapper img.tn_quotemark-open {
	display: block;
	width: 102px;
	height: 92px;
	margin-bottom: 20px;
}

#tn_app-wrapper p.tn_quote {
	font-size: 20px;
	line-height: 28px;
	margin-bottom: 1.2em;
}

#tn_app-wrapper p.tn_quote-speaker {
	font-weight: 500;
	margin-bottom: 0.4em;
}

#tn_app-wrapper p.tn_quote-title {
}

#tn_app-wrapper img.tn_card-image {
	width: 100%;
	margin-bottom: 30px;
}

#tn_app-wrapper p.tn_card-copy-main {
	font-size: 20px;
	line-height: 28px;
	margin-bottom: 1.2em;
}

@media (max-width: 1279px) {

	.tn_card {
		padding: 40px 0;
	}
	
	.tn_card-spacer {
		flex-basis: 80px;
	}

	#tn_app-wrapper .tn_card-contents h3 {
		font-size: 32px;
		line-height: 40px;
	}

}

@media (max-width: 1023px) {

	.tn_card-array-2up {
		margin: 0 -16px;
	}

	.tn_card {
		margin: 0 16px;
		padding: 30px 0;
	}
	
	.tn_card-spacer {
		flex-basis: 50px;
		margin: 0 16px;
		background-size: 60px 855px;
	}
	
	#tn_app-wrapper img.tn_card-image {
		margin-bottom: 20px;
	}
	
	#tn_app-wrapper p.tn_card-copy-main {
		font-size: 16px;
		line-height: 24px;
	}

}

@media (max-width: 767px) {

	.tn_cards-2up {
		padding: 20px 0;
	}
	
	.tn_cards-2up .tn_container {
		padding: 0;
	}

	.tn_card-array-2up {
		flex-direction: column;
		margin: -10px 0;
	}
	
	.tn_card {
		margin: 0;
		padding: 16px 20px;
	}
	
	.tn_card-spacer {
		flex-basis: 60px;
		margin: 10px 0;
		background-image: url('/c/dam/m/en_us/solutions/industrial-networking/future-proof/images/card-spacer-ornament-horiz.svg');
		background-size: 855px 60px;
	}
	
	.tn_card-array-2up .tn_card {
		flex-basis: auto;
	}
	
	#tn_app-wrapper img.tn_quotemark-open {
		width: 76.5px;
		height: 69px;
		margin-bottom: 20px;
	}

}


/* FOOTER
====================================================================== */

.tn_footer {
	display: flex;
	flex-direction: row;
	align-items: center;
	height: 420px;
	background-color: #0d274d;
	background-image: url('/c/dam/m/en_us/solutions/industrial-networking/future-proof/images/banner-footer-desktop.jpg');
	background-size: 1600px 420px;
	background-position: center center;
	background-repeat: no-repeat;
}

.tn_footer-copy {
	position: relative;
	flex-basis: 50%;
	flex-shrink: 0;
	max-width: 540px;
	margin-left: 50%;
}

#tn_app-wrapper .tn_footer-copy h3 {
	font-size: 32px;
	line-height: 40px;
	margin-bottom: 1.0em;
}

#tn_app-wrapper .tn_footer div,
#tn_app-wrapper .tn_footer p,
#tn_app-wrapper .tn_footer h1,
#tn_app-wrapper .tn_footer h2,
#tn_app-wrapper .tn_footer h3,
#tn_app-wrapper .tn_footer h4 {
	color: #fff;
}

@media (max-width: 1279px) {

	#tn_app-wrapper .tn_footer-copy h3 {
		font-size: 24px;
		line-height: 32px;
	}

}

@media (max-width: 1023px) {

	.tn_footer {
		height: 360px;
		background-image: url('/c/dam/m/en_us/solutions/industrial-networking/future-proof/images/banner-footer-tablet.jpg');
		background-size: 1040px 360px;
	}

	#tn_app-wrapper .tn_footer-copy h3 {
		font-size: 20px;
		line-height: 28px;
	}

}

@media (max-width: 767px) {

	.tn_footer {
		height: 300px;
		background-image: url('/c/dam/m/en_us/solutions/industrial-networking/future-proof/images/banner-footer-mobile.jpg');
		background-size: 800px 300px;
	}

	.tn_footer-array {
		flex-direction: column-reverse;
		align-items: start;
	}
	
	.tn_footer-image {
		flex-basis: auto;
	}
	
	.tn_footer-copy {
		max-width: 75%;
		flex-basis: auto;
		margin-left: 0;
		padding: 20px;
	}

}


/* CAPSULE BUTTONS
====================================================================== */

#tn_app-wrapper a.tn_button-capsule,
#tn_app-wrapper a.tn_button-capsule:visited,
#tn_app-wrapper a.tn_button-capsule:hover,
#tn_app-wrapper a.tn_button-capsule:active {
	display: inline-block;
	min-width: 120px;
	padding: 19px 32px;
	text-align: center;
	text-decoration: none;
	line-height: 1.0em;
	vertical-align: top;
	border-radius: 999px;
	transition: background 0.1s ease-in-out, color 0.1s ease-in-out;
}

#tn_app-wrapper a.tn_button-capsule.tn_capsule-primary,
#tn_app-wrapper a.tn_button-capsule.tn_capsule-primary:visited {
	background-color: #0070d2;
	color: #fff;
	border: 1px solid #0070d2;
}

#tn_app-wrapper a.tn_button-capsule.tn_capsule-primary:hover,
#tn_app-wrapper a.tn_button-capsule.tn_capsule-primary:active {
	background-color: #0060ad;
	border-color: #0060ad;
}

#tn_app-wrapper a.tn_button-capsule.tn_capsule-secondary,
#tn_app-wrapper a.tn_button-capsule.tn_capsule-secondary:visited {
	background-color: #fff;
	color: #0070d2;
	border: 1px solid #0070d2;
}

#tn_app-wrapper a.tn_button-capsule.tn_capsule-secondary:hover,
#tn_app-wrapper a.tn_button-capsule.tn_capsule-secondary:active {
	color: #0060ad;
	border-color: #0060ad;
}

#tn_app-wrapper a.tn_button-capsule.tn_capsule-contrast,
#tn_app-wrapper a.tn_button-capsule.tn_capsule-contrast:visited {
	background-color: #0d274d;
	color: #fff;
	border: 1px solid #0d274d;
}

#tn_app-wrapper a.tn_button-capsule.tn_capsule-contrast:hover,
#tn_app-wrapper a.tn_button-capsule.tn_capsule-contrast:active {
	background-color: #07162C;
	border-color: #07162C;
}


/* ANIMATION
====================================================================== */

.tn_reveal {
	opacity: 0;
	transition: all 1000ms 100ms;
}

.tn_reveal.tn_active {
	opacity: 1;
	transform: translate(0,0);
}

.tn_fade-bottom {
	transform: translateY(80px);
}

.tn_fade-left {
	transform: translateX(-120px);
}

.tn_fade-right {
	transform: translateX(120px);
}

.tn_animation-delay-100 {
	transition: all 1000ms 100ms;
}

.tn_animation-delay-200 {
	transition: all 1000ms 200ms;
}

.tn_animation-delay-300 {
	transition: all 1000ms 300ms;
}

.tn_animation-delay-400 {
	transition: all 1000ms 400ms;
}

.tn_animation-delay-500 {
	transition: all 1000ms 500ms;
}

.tn_animation-delay-600 {
	transition: all 1000ms 600ms;
}

.tn_animation-delay-700 {
	transition: all 1000ms 700ms;
}

.tn_animation-delay-1100 {
	transition: all 1000ms 1100ms;
}

@media (max-width: 767px) {
	.tn_animation-delay-100,
	.tn_animation-delay-200,
	.tn_animation-delay-300,
	.tn_animation-delay-400,
	.tn_animation-delay-500,
	.tn_animation-delay-600,
	.tn_animation-delay-700,
	.tn_animation-delay-1100 {
		transition: all 1000ms 100ms;
	}
}