html {
  margin: 0;
  padding: 0;
  /* font-size: 62.5% results in 1rem = 10px, 1.2rem = 12px, 1.4rem = 14px ... */
  font-size: 62.5%;
}

  body {
    margin: 0;
    padding: 0;
    font-size: 1.5rem;
    font-family: 'sofiapro';
    font-weight: 400;
    font-style: normal;
    background-color: rgba(255, 255, 255, 1.0);
    color: rgba(118, 118, 118, 1.0);
  }

	body.category_index {
		background-color: rgba(0, 169, 224, 1.0);
    color: rgba(255, 255, 255, 1.0);
	}

    main {}

			/* Generic */
			main h1,
			main h2 {
				padding-bottom: 0px;
				border-bottom: 1px dashed rgba(0, 169, 224, 1.0);
				font-weight: 400;
				text-transform: uppercase;
				color: rgba(0, 169, 224, 1.0);
			}

			body.category_index main h1,
			body.category_index main h2 {
				border-bottom: 1px dashed rgba(255, 255, 255, 1.0);
        color: rgba(255, 255, 255, 1.0);
			}

			main h1 {
				margin-bottom: 6.1rem;
				font-size: 2.5rem;
				letter-spacing: 4.13px;
				/* line-height: 6.1rem; */
			}

			main h2 {
				margin-bottom: 3.2rem;
				font-size: 1.8rem;
				letter-spacing: 1.95px;
				/* line-height: 3.2rem; */
			}

			main p, ul {
				margin-bottom: 3.0rem;
				font-size: 1.5rem;
				letter-spacing: 0.14px;
				line-height: 3.0rem;
			}

			main ul {
				padding-left: 1.0em;
				list-style-position: outside;
			}

			main a {
				color: rgba(230, 25, 57, 1.0);
			}

			main .zs_btn {
				margin: 0;
				padding: 2px 11px;
				border: 1px solid rgba(255, 255, 255, 1.0);
				border-radius: 0;
				display: inline-block;
				-webkit-user-select: none;
				-moz-user-select: none;
				-ms-user-select: none;
				user-select: none;
				font-size: 1.5rem;
				letter-spacing: 0.23px;
				line-height: 2.9rem;
				text-transform: uppercase;
				text-align: center;
				vertical-align: middle;
				background-color: rgba(230, 25, 57, 1.0);
				color: rgba(255, 255, 255, 1.0);
				-webkit-box-shadow: 0px 7px 9px rgba(0, 0, 0, 0.18);
				-moz-box-shadow: 0px 7px 9px rgba(0, 0, 0, 0.18);
				box-shadow: 0px 7px 9px rgba(0, 0, 0, 0.18);
				-webkit-transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;
				transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;
				transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
				transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;
			}

			main .zs_btn:hover {
				-webkit-box-shadow: none;
				-moz-box-shadow: none;
				box-shadow: none;
				text-decoration: none;
			}

			/* End of Generic */

      main article {
        padding: 76px 15px 144px 15px;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-align: flex-start;
        align-items: flex-start;
        -ms-flex-pack: justify;
        justify-content: space-between;
      }

        main article section {
          /* flex-basis: 60%; */
        }

        main article aside {
          /* flex-basis: 40%; */
        }

        /* aside {
          padding: 52px 40px 35px 40px;
          border: 3px solid rgba(255, 255, 255, 1.0);
          background-color: rgba(0, 169, 224, 1.0);
          color: rgba(255, 255, 255, 1.0);
          -webkit-box-shadow: 0px 34px 56px rgba(0, 0, 0, 0.16);
          -moz-box-shadow: 0px 34px 56px rgba(0, 0, 0, 0.16);
          box-shadow: 0px 34px 56px rgba(0, 0, 0, 0.16);
        } */

					aside .border-box {
						padding: 52px 40px 35px 40px;
						border: 3px solid rgba(255, 255, 255, 1.0);
						background-color: rgba(0, 169, 224, 1.0);
						color: rgba(255, 255, 255, 1.0);
						-webkit-box-shadow: 0px 34px 56px rgba(0, 0, 0, 0.16);
						-moz-box-shadow: 0px 34px 56px rgba(0, 0, 0, 0.16);
						box-shadow: 0px 34px 56px rgba(0, 0, 0, 0.16);
					}

          main article aside h1,
          main article aside h2 {
            padding-bottom: 0px;
            border-bottom: 1px dashed rgba(255, 255, 255, 1.0);
            font-weight: 400;
            text-transform: uppercase;
            color: rgba(255, 255, 255, 1.0);
          }

/* Index page */

		article#index_header {
			flex-direction: column;
			align-items: center;
			background-image: url('/images/index_a-1930de68.svg');
			background-repeat: no-repeat;
			background-size: 600%;
			background-position: bottom 0 right -500px;
			color: rgba(255, 255, 255, 1.0);
		}

			article#index_header div.logo {
				margin: 0 auto 50px auto;
				width: 260px;
				height: 166px;
				background-image: url("/images/index_logo-d5f8eda6.svg");
				background-repeat: no-repeat;
			}

			article#index_header h1 {
				margin-bottom: 3.0rem;
				line-height: 3.0rem;
				text-align: center;
				display: inline-block;
				width: fit-content;
				border-color: rgba(255, 255, 255, 1.0);
				color: rgba(255, 255, 255, 1.0);
			}

		article#index_summary {
			padding-bottom: 122px;
			background-image: url('/images/home_bg-2b01187d.svg');
			background-position: bottom -10px left 0;
			background-repeat: no-repeat;
			background-size: 100%;
		}

			article#index_summary .border-box {
				margin: 0 15px 0 15px;
				padding: 0px 15px 58px 15px;
				text-align: left;
				background-color: rgba(255, 255, 255, 1.0);
				-webkit-box-shadow: 0px 60px 40px 0px rgba(0,0,0,0.06);
				-moz-box-shadow: 0px 60px 40px 0px rgba(0,0,0,0.06);
				box-shadow: 0px 60px 40px 0px rgba(0,0,0,0.06);
			}

				article#index_summary .border-box h1 {
					margin-bottom: 3.0rem;
					line-height: 3.0rem;
					text-align: center;
					color: rgba(230, 25, 57, 1.0);
				}

						article#index_summary .border-box section h2 {
							margin-top: 3.0rem;
							margin-bottom: 1.0rem;
							display: inline-block;
							font-size: 3.0rem;
						}
						
						article#index_summary .border-box section p {
							margin-bottom: 1.5rem;
							font-size: 1.2rem;
							letter-spacing: 0.12px;
							line-height: 1.5rem;
						}

		article#index_solutions {
			padding-bottom: 122px;
      /* display: flex;
      flex-direction: column;
      flex-wrap: wrap; */
      align-items: center;
      text-align: center;
      background-color: rgba(0, 169, 224, 1.0);
      color: rgba(255, 255, 255, 1.0);
		}

			article#index_solutions h1 {
				margin-bottom: 3.0rem;
				line-height: 3.0rem;
				border-color: rgba(255, 255, 255, 1.0);
				color: rgba(255, 255, 255, 1.0);
			}

			article#index_solutions p {}

			article#index_solutions .border-box {
				width: 100%;
				padding-top: 50px;
        display: flex;
        flex-wrap: wrap;
			}

				article#index_solutions .border-box a {
					margin-bottom: 16px;
					border: 2px solid rgba(255, 255, 255, 1.0);
					display: flex;
					justify-content: center;
					align-items: center;
					height: 124px;
					width: 100%;
					-webkit-transition: background-color 1s ease-in-out;
					transition: background-color 1s ease-in-out;
				}

				article#index_solutions .border-box a:hover {
					text-decoration: none;
          background-color: rgba(230, 25, 57, 1.0);
				}

				article#index_solutions .border-box a#dark_fiber {
					background-image: url("/images/dark_fiber-6304bee1.jpeg");
				}
				
				article#index_solutions .border-box a#building_intelligence {
					background-image: url("/images/building_intelligence-01-9eb3c12f.jpg");
					background-repeat: no-repeat;
					background-size: cover;
				}
				
				article#index_solutions .border-box a#internet {
					background-image: url("/images/tube-a571e528.jpg");
					background-repeat: no-repeat;
					background-size: cover;
				}

				article#index_solutions .border-box a#telematics {
					background-image: url("/images/telematica-2ebf4117.jpg");
					background-repeat: no-repeat;
					background-size: cover;
				}

				article#index_solutions .border-box a#voice {
					background-image: url("/images/voice-6fc6aca3.jpg");
					background-repeat: no-repeat;
					background-size: cover;
				}
		/*Justin edits*/
		article#outages .outage_notification {
			margin-bottom: 100px;
		}
			article#outages .outage_notification h2 {
				margin-bottom: 2.1rem;
				padding-bottom: 0;
				font-size: 1.9rem;
				letter-spacing: 4.11px;
				line-height: 2.0rem;
			}
			article#outages .outage_notification p {
				font-size: 1.2rem;
				line-height: 2.0rem;
			}
		article#outages .outage_date {
			position: absolute;
			margin-top: -25px;
		}
		article#outages .outage_update-messages {
			padding-left: 95px;
		}
		article#jobs .job_offer {
			margin-bottom: 100px;
		}
		article#jobs .job_date {
			position: absolute;
			margin-top: -25px;
		}

		article#outages .outage_notification.active h2 {
			color: #e61938;
		}

		/*Justin edits*/

		/* Call 2 Action */
		article#index_c2a {
			flex-direction: column;
			align-items: center;
      background-color: rgba(0, 169, 224, 1.0);
      color: rgba(255, 255, 255, 1.0);
		}

			article#index_c2a h1 {
				margin-bottom: 3.0rem;
				line-height: 3.0rem;
				border-color: rgba(255, 255, 255, 1.0);
				text-align: center;
				color: rgba(255, 255, 255, 1.0);
			}

			section {}

			aside {}

			/*

			article#outages section.notifications {
				margin-bottom: 50px;
				padding-left: 50px;
				padding-right: 50px;
			}

				article.notification {
					margin-bottom: 20px;
					padding-top: 0;
					padding-right: 0;
					padding-left: 0;
					padding-bottom: 0;
					display: flex;
				}

				section.date {
					padding-right: 20px;
					flex-basis: auto !important;
					flex-grow: 0 !important;
				}
				*/
						span.day {
							/*vertical-align: top;*/
							font-size: 2.5rem;
							
							color: rgba(0, 169, 224, 1.0);
						}

						span.seperator {
							/*vertical-align: top;*/
							font-size: 1.5rem;
							
						}

						span.month {
							/*vertical-align: bottom;*/
							font-size: 1.5rem;
							color: rgba(0, 169, 224, 0.8);
						}
						span.year {
							/*vertical-align: bottom;*/
							font-size: 1.5rem;
							color: rgba(0, 169, 224, 0.8);
						}
				
				.duration {
					padding-top: 10px;
					flex-basis: auto !important;
					flex-grow: 0 !important;
				}

					.duration p {
						margin: 0;
					}

						.duration p span {
							display: inline-block;
							width: 30px;
							color:rgba(0, 169, 224, 1.0)
						}

				
		
		article#team {}

			article#team .team_members {
				display: flex;
				flex-wrap: wrap;
				gap: 20px;
			}

				article#team .team_members div {
					border: 1px solid red;
					width: 300px;
				}


  @media (min-width: 580px) {
			/* Call 2 Action */
				article#index_c2a p {
					/* width: 550px; */
				}
	}

  @media (min-width: 667px) {
					main article {
						padding-right: 87px;
						padding-left: 87px;
					}
	}

  @media (min-width: 720px) {
    /* iPad Portrait */
					article#index_header {
						background-position: bottom 0 right -300px;
					}

					article#index_summary {
						background-position: bottom -200px left 0;
					}
  }

  @media (min-width: 992px) {}

  @media (min-width: 1024px) {
				main {}

				/* Generic */
					main h1,
					main h2 {
						padding-bottom: 0px;
						border-bottom: 1px dashed rgba(0, 169, 224, 1.0);
						font-weight: 400;
						text-transform: uppercase;
						color: rgba(0, 169, 224, 1.0);
					}

					main h1 {
						margin-bottom: 6.1rem;
						font-size: 2.5rem;
						letter-spacing: 4.13px;
						/* line-height: 6.1rem; */
					}
		
					main h2 {
						margin-bottom: 3.2rem;
						font-size: 1.8rem;
						letter-spacing: 1.95px;
						/* line-height: 3.2rem; */
					}
		
					main p, ul {
						margin-bottom: 3.0rem;
						font-size: 1.5rem;
						letter-spacing: 0.14px;
						line-height: 3.0rem;
					}
				/* End of Generic */

					main article {
						flex-direction: row;
						/* justify-content: space-between; */
						padding-top: 193px;
      			padding-bottom: 219px;
					}

						main article section {
							padding: 0 20px;
							flex-basis: 60%;
						}

						main article aside {
							flex-basis: 40%;
						}

						main article h1,
						main article h2 {
							padding-bottom: 20px;
						}

					article#index_header {
						padding-right: 327px;
    				align-items: flex-end;
    				background-size: 150%;
    				background-position: bottom 0 right 120px;
					}

						article#index_header div.logo {
							margin-right: 110px;
      				width: 480px;
      				height: 297px;
						}

						article#index_header h1 {
							margin-bottom: 6.1rem;
      				font-size: 3.7rem;
      				letter-spacing: 6.11px;
      				line-height: 6.1rem;
      				width: fit-content;
						}

						article#index_header p {
							font-size: 1.7rem;
      				letter-spacing: 0.15px;
      				line-height: 3.0rem;
      				width: 700px;
						}

					article#index_summary {
						padding-bottom: 121px;
    				background-image: url('/images/home_bg-2b01187d.svg');
    				background-position: bottom -300px left 0;
					}

						article#index_summary .border-box {
							margin-right: 0;
							margin-left: 0;
							padding-right: 40px;
							padding-left: 40px;
							text-align: center;
						}

							article#index_summary .border-box h1 {
								margin-bottom: 6.1rem;
								font-size: 3.7rem;
								letter-spacing: 6.11px;
								line-height: 6.1rem;
								display: inline-block;
							}

							article#index_summary .border-box section {
								padding-top: 20px;
								padding-bottom: 20px;
								border-bottom: 1px dashed rgba(0, 169, 224, 1.0);
								display: flex;
								align-items: center;
								justify-content: center;
								text-align: left;
							}

								article#index_summary .border-box section h2 {
									margin: 0;
          				padding: 0;
          				border: 0;
								}

								article#index_summary .border-box section p {
									margin: 0;
									padding-left: 30px;
									font-size: 1.5rem;
									letter-spacing: 0.17px;
									line-height: 1.7rem;
								}
						
					article#index_solutions {}

						article#index_solutions h1 {
							margin-bottom: 6.1rem;
							font-size: 3.7rem;
							letter-spacing: 6.11px;
							line-height: 6.1rem;
							width: fit-content;
							text-align: center;
						}

						article#index_solutions .border-box {
							justify-content: space-between;
							width: 100%;
						}

							article#index_solutions .border-box a {
								height: 231px;
        				width: 49%;
							}

					article#index_c2a {
						background-color: rgba(0, 169, 224, 1.0);
    				color: rgba(255, 255, 255, 1.0);
    				text-align: center;
					}

						article#index_c2a h1 {
							margin-bottom: 2.9rem;
							font-size: 3.7rem;
							letter-spacing: 6.11px;
							line-height: 2.9rem;
							width: fit-content;
						}

						article#index_c2a p {
							margin-right: auto;
							margin-left: auto;
							text-align: left;
							width: 815px;
						}
					
					article#apollo14 {}

						article#apollo14 aside {
							padding-top: 450px;
							background-image: url("/images/apollo14-8073f319.png");
        			background-repeat: no-repeat;
							background-size: 100%;
						}

					article#b_building_business {
						align-items: stretch;
					}

						article#b_building_business aside {
							padding-top: 450px;
							background-image: url("/images/b_building_business-72f04166.png");
        			background-repeat: no-repeat;
							background-size: 100%;
						}

					article#telematics {
						align-items: stretch;
					}

						article#telematics aside {		
							background-image: url("/images/telematica-29486ae2.png");
        			background-repeat: no-repeat;
							background-size: 100%;
						}

					/*Justin edits*/
					article#outages .notifications {
						padding: 0 0px 0 75px;
					}

					article#outages .outage_date {
						position: absolute;
						padding: 0;
						margin-left: -95px;
						margin-top: -5px;
					}
					article#jobs .job_offers {
						padding: 0 0px 0 75px;
					}

					article#jobs .job_date {
						position: absolute;
						padding: 0;
						margin-left: -95px;
						margin-top: -5px;
					}
					/*Justin edits*/
					
				

	}

	@media (min-width: 1150px) {
						article#apollo14 aside,
						article#b_building_business aside {
							padding-top: 500px;
						}
	}


  @media (min-width: 1200px) {
          main article {
						padding-left: 172px;
      			padding-right: 172px;
            /* flex-direction: row; */
          }

						article#apollo14 aside,
						article#b_building_business aside {
							padding-top: 450px;
						}
  }

	@media (min-width: 1330px) {
			article#apollo14 aside,
			article#b_building_business aside {
				padding-top: 500px;
			}
}

  @media (min-width: 1366px) {}

  @media (min-width: 1440px) {
					article#index_summary {
						padding-bottom: 121px;
						background-image: url('/images/home_bg-2b01187d.svg');
						background-position: bottom -500px left 0;
					}

						article#index_summary .border-box {
							margin-right: 0;
							margin-left: 0;
							padding-right: 121px;
							padding-left: 121px;
						}

							article#index_summary .border-box h1 {
								color: rgba(230, 25, 57, 1.0);
							}

							article#index_summary .border-box section {
								justify-content: flex-start;
							}

								article#index_summary .border-box section h2 {
									border: 0;
          				white-space: nowrap;
								}

								article#index_summary .border-box section p {
									margin-bottom: 0;
									padding-left: 30px;
									font-size: 1.7rem;
									letter-spacing: 0.17px;
									line-height: 2.0rem;
								}

								article#index_summary .border-box section:nth-child(2) p {
									max-width: 500px;
								}
								
								article#index_summary .border-box section:nth-child(3) p {
									max-width: 675px;
								}
								
								article#index_summary .border-box section:nth-child(3) p {
									max-width: 662px;
								}
								
								article#index_summary .border-box section:last-child p {
									max-width: 527px;
								}

					article#index_solutions {}

						article#index_solutions h1 {
							display: inline-block;
						}

						article#index_solutions .border-box {
							padding-top: 50px;
							display: flex;
							flex-wrap: wrap;
							justify-content: space-between;
						}

							article#index_solutions .border-box section {
								height: 231px;
								width: 49%;
							}

					article#apollo14 aside,
					article#b_building_business aside {
						padding-top: 600px;
					}

	}

	@media (min-width: 1660px) {
					article#apollo14 aside,
					article#b_building_business aside {
						padding-top: 650px;
					}
	}

	@media (min-width: 1760px) {
					article#apollo14 aside,
					article#b_building_business aside {
						padding-top: 700px;
					}
	}

	@media (min-width: 1860px) {
					article#apollo14 aside,
					article#b_building_business aside {
						padding-top: 750px;
					}
	}

  @media (min-width: 1920px) {
					article#index_summar {
						background-position: bottom -800px left 0;
					}
	}

	@media (min-width: 1960px) {
					article#apollo14 aside,
					article#b_building_business aside {
						padding-top: 800px;
					}
	}

	@media (min-width: 2060px) {
					article#apollo14 aside,
					article#b_building_business aside {
						padding-top: 850px;
					}
	}

