<!--

/* ### Superfast Styles ### */

/* ### General/Fonts ################################ */

* {
	padding: 0;
	margin: 0;
}

html {
	height: 100%;
}

body {
	font-family: 'Raleway', sans-serif;
	font-size: 62.5%;
	text-align: center;
	height: 100%;
}

h1 {
	font-size: 4.3em;
	font-weight: 700;
	color: #B61B90;
}

h2 {
	font-size: 4em;
	padding-top: 30px;
	padding-bottom: 15px;
}

.homeBanner h2 {
	padding-top: 0;
}

h3 {
}

h4 {
}

font, td, th {
}

b, strong {
	font-weight: 700 !important;
}

p {
	font-size: 2em;
	margin-bottom: 20px;
}

img {
	border: 0;
}

.clearfix::after { 
	content: " ";
	display: block; 
	height: 0; 
	clear: both;
}

.vAlignMiddle {
	vertical-align: middle !important;
}

.vAlignMiddle img {
	vertical-align: middle;
}

.alignCenter {
	text-align: center;
}













/* ### Lists ######################################## */

#topNav ul, .qanda ul, #footerNav ul, .copyList {
	list-style-type: none;
	font-size: 1em;
	padding: 0;
	margin: 0;
}

#topNav ul li {
	display: inline;
	padding: 0 0 0 20px;
}

#topNav ul li::before {
	content: "+";
	color: #be4e9c;
	font-size: 3.4em;
	font-weight: 700;
	position: relative;
	top: 5px;
	right: 3px;
}

.qanda ul {
	font-size: 2em;
	margin: 20px 0 20px 20px;
}

.qanda ul li::before {
	content: "+";
	color: #be4e9c;
	font-size: 1.5em;
	font-weight: 700;
	position: relative;
	top: 4px;
	right: 3px;
}

.copyList {
	font-size: 2em;
	margin: 20px 0 20px 20px;
}

ul.copyList li::before {
	content: "+";
	color: #be4e9c;
	font-size: 1.5em;
	font-weight: 700;
	position: relative;
	top: 4px;
	right: 3px;
}

#footerNav ul li {
	line-height: 3em;
}

#footerNav ul li::before {
	content: "+";
	color: #be4e9c;
	font-size: 3.4em;
	font-weight: 700;
	position: relative;
	top: 5px;
	right: 3px;
}












/* ### Main Layout ################################## */

#globalHeader {
	background-image: linear-gradient(#0F0C20, #490F55);
	padding: 30px;
	display: flex;
	align-items: center;
}

#logo {
}

#topNav {
	margin-left: auto;
}

#contentWrapper {
	clear: both;
	padding: 50px 30px 30px 30px;
	text-align: left;
}

.homeBanner {
	padding: 0 !important;
}

.heroCtaTheQueen {
	background-color: #000000;
	text-align: center;
	padding-bottom: 70px;
}

.heroCta {
	background-image: linear-gradient(#B61B90, #911777);
	text-align: center;
	padding-bottom: 70px;
}

.heroCtaTheQueen h1 {
	font-size: 9em; !important;
	font-weight: 700; !important;
	color: #ffffff; !important;
	padding: 50px 0 20px; !important;
}

.heroCta h1 {
	font-size: 9em; !important;
	font-weight: 700; !important;
	color: #ffffff; !important;
	padding: 50px 0 20px; !important;
}

.heroCtaTheQueen h2 {
	font-size: 3.75em !important;
	font-weight: 400 !important;
	color: #ffffff !important;
	padding-bottom: 30px !important;
	border-bottom: 5px solid #ffffff !important;
	display: inline-block !important;
}

.heroCta h2  {
	font-size: 3.75em !important;
	font-weight: 400 !important;
	color: #ffffff !important;
	padding-bottom: 30px !important;
	border-bottom: 5px solid #c91da1 !important;
	display: inline-block !important;
}

.h2Heavy {
	font-weight: 700 !important;
}

#serviceCheckerWrapper {
	margin-top: 35px;
	display: flex;
	align-items: top;
	justify-content: center;
}

#serviceCheckerWrapper h3 {
	color: #ffffff;
	font-weight: 700;
	font-size: 2.6em;
	margin: 20px 15px 0;
}

#serviceCheckerWrapper img {
	margin-top: 7px;
}

#serviceCheckerWrapper label {
	font-weight: 700;
	font-size: 2em;
	border: 3px solid;
	border-radius: 10px 10px 10px 10px;
	padding: 5px;
	margin-top: 3px;
	background-color: red;
	color: #ffffff !important;
	display: block;
	position: absolute;
}

#homeNote {
	padding: 50px 10% 0 10%;
	color: #ffffff;
	font-size: 1.1em;
}

#homeNote p {
	padding-bottom: 0;
	margin-bottom: 0;
}

.feature {
	display: flex;
	min-height: 500px;
	padding: 5%;
}

.feature1 {
	background: url(/broadband/exports/arrow_magenta.png) top center no-repeat, url(/broadband/exports/feature1_bgrd.jpg) center center no-repeat;
	background-size: auto, cover;
	justify-content: flex-start;
}

.feature2 {
	background: url(/broadband/exports/arrow_magenta.png) top center no-repeat, url(/broadband/exports/feature2_bgrd.jpg) center top no-repeat;
	background-size: auto, cover;
	justify-content: flex-end;
}

.feature3 {
	background: url(/broadband/exports/arrow_magenta.png) top center no-repeat, url(/broadband/exports/feature3_bgrd.jpg) center center no-repeat;
	background-size: auto, cover;
	justify-content: flex-start;
}

.featureContentWrapper {
	color: #ffffff;
	text-align: left;
	max-width: 33.3%;
}

.featureContentWrapper h2 {
	font-size: calc(1.2em + 2.5vw) !important;
	font-weight: 700 !important;
	background-color: rgba(182, 27, 144, 0.7) !important;
	border: 4px solid #ffffff !important;
	border-bottom: none !important;
	border-radius: 30px 30px 0 0 !important;
	border-radius: 0 0 0 30px;
	padding: 15px 15px 15px 25px !important;
	box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2) !important;
}

.feature2 .featureQuote {
	border-radius: 0 0 30px 0;
}

.featureQuote {
	background-color: rgba(44, 34, 114, 0.7);
	font-size: 1.2em;
	text-align: left;
	border: 4px solid #ffffff;
	border-top: none;
	border-radius: 0 0 0 30px;
	padding: 25px;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
}

.featureQuote p {
}

.featureQuoteAuthor {
	font-size: 1.3em;
	margin-top: 15px;
}

.featureCallout {
	background-image: linear-gradient(#B61B90, #911777);
	color: #ffffff;
	padding: 30px 30px 50px;
	text-align: center;
}

.featureCallout h2 {
	font-size: calc(3em + 2.8vw) !important;
	margin-bottom: 20px !important;
	padding-bottom: 0;
}

.featureCallout p {
	font-size: 2.5em;
}

/* The animation code */
@keyframes launch {
	from {opacity: 0;}
	to {opacity: 1;}
}

@keyframes shake {
	0% { transform: translate(1px, 1px) rotate(0deg); }
	10% { transform: translate(-1px, -2px) rotate(-1deg); }
	20% { transform: translate(-3px, 0px) rotate(1deg); }
	30% { transform: translate(3px, 2px) rotate(0deg); }
	40% { transform: translate(1px, -1px) rotate(1deg); }
	50% { transform: translate(-1px, 2px) rotate(-1deg); }
	60% { transform: translate(-3px, 1px) rotate(0deg); }
	70% { transform: translate(3px, 1px) rotate(-1deg); }
	80% { transform: translate(-1px, -1px) rotate(1deg); }
	90% { transform: translate(1px, 2px) rotate(0deg); }
	100% { transform: translate(1px, -2px) rotate(-1deg); }
}

/* The element to apply the animation to */
.rocket {
	animation-name: shake;
	animation-duration: 1s;
	animation-iteration-count: infinite;
}

#globalFooter {
	background-image: linear-gradient(#0F0C20, #490F55);
	display: flex;
	align-items: center;
}

#footerNav {
	text-align: left;
	padding: 30px;
}

#footerLogo {
	margin: 0 30px 0 auto;
}

#terms {
	background-color: #000000;
	clear: both;
	text-align: left;
	padding: 30px;
}

#terms p {
	font-size: 1.2em;
	font-weight: 700;
	color: #ffffff;
	margin-bottom: 0;
}

.blurb {
	background-color: #e4e6e6;
	border-radius: 10px 10px 10px 10px;
	border: 1px solid #cccccc;
	padding: 20px;
	margin: 30px 0 20px;
	font-size: 2.3em;
}

#packageBuildWrap {
	/* display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	align-content: stretch;
	justify-content: center; */
	margin-top: 40px;
	margin-bottom: 40px;
}

.checkoutJustify {
	justify-content: flex-start !important;
}

.alignSelfCenter {
	align-self: center !important;
}

#faqNav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	margin-bottom: 40px;
	margin-top: 40px;
}

#faqNav h2 {
	font-size: 2em !important;
}

.faqSection {
	border: 3px dashed #cccccc;
	border-radius: 10px 10px 10px 10px;	
	padding: 30px;
	margin-bottom: 40px;
}

.faqSection h2 {
	padding-top: 0;
}

.qanda {
	margin-bottom: 30px;
	padding-bottom: 5px;
	border-bottom: 1px solid #E7E9EF;
}

div.qanda:nth-last-child(2) {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 30px;
}

.qanda h3::before {
	content: "+";
	color: #be4e9c;
	font-size: 1.5em;
	font-weight: 700;
	position: relative;
	top: 5px;
	right: 3px;
}

.qanda h3 {
	font-size: 3em;
	font-weight: 700;
	color: #000000;
	margin-bottom: 10px;
}

.qanda h4 {
	font-size: 2em;
	font-weight: 700;
	color: #000000;
	margin-bottom: 10px;
}

.qanda p {
	font-size: 2em;
	margin-bottom: 20px;
}

iframe {
	width: 100%;
	border-radius: 10px;
	box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.2) !important;
}

#teamWrapper {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin-top: 50px;
}

.teamBuild {
	border-radius: 10px;
	width: 280px;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
	margin: 0 20px 20px 0;
	border-radius: 10px 10px 10px 10px;
}

.teamBuild h3 {
	font-size: 2.3em;
	padding: 10px 15px 0 15px;
}

.teamBuild h4 {
	font-size: 1.7em;
	padding: 0 15px 10px 15px;
}

.teamBio {
	padding: 10px 15px 10px 15px;
	margin-bottom: 0;
}














/* ### Tablets ####################################### */


















/* ### Mobile ####################################### */




















/* ### Tables ####################################### */

table {
	/* border-collapse: collapse; */
	border-spacing: 0;
}

th {
	text-align: left;
	vertical-align: top;
}

td {
	text-align: left;
	vertical-align: top;
}

table tr:first-child th:first-child {
	border-radius: 10px 10px 0 0;
}

table tr:last-child th:first-child {
	border-radius: 0 0 10px 10px;
}

.packageBuild {
	border-radius: 10px;
	margin-bottom: 20px;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
	margin: 0 20px 20px 0;
	width: 100%;
}

.packageBuild th, .packageBuild td {
	padding: 20px;
	font-size: 1.2em;
}

.cellProductImage {
	vertical-align: middle;
	text-align: center;
}

.productImage {
	vertical-align: middle;
}

.tabHeading {
	font-size: 1.5em !important;
	background-color: #b61b90;
	color: #ffffff;
}

.cellCta {
	background-color: #230d32;
	color: #ffffff;
}

.cellCta th, .cellCta td {
	text-align: center !important;
}

.cellCtaSpecial th {
	border: 5px solid #b61b90;
}

.checkout {
}

.checkout th, .checkout td {
	vertical-align: middle;
}

.cellOrder25 {
	width: 25%;
}














/* ### Forms ######################################## */

.packageBuild input, .packageBuild select {
	font: 1em/1.4em 'Raleway', sans-serif;
	font-weight: 300;
	padding: 10px;
}

input, select {
	font: 2em/1.4em 'Raleway', sans-serif;
	font-weight: 300;
	padding: 10px;
}

input[type=submit] {
	background-color: #b61b90;
	color: #ffffff;
	font-size: 3em;
	font-weight: 700;
	border: 3px solid #ffffff;
	border-radius: 10px 10px 10px 10px;
	cursor: pointer;
}

textarea {
	font: 1em/1.4em 'Raleway', sans-serif;
	font-weight: 300;
	width: 100%;
	min-height: 100px;
	border: 1px solid #cccccc;
	border-radius: 10px 10px 10px 10px;
	background: transparent;
	color: #000000;
	overflow: auto;
}

.serviceCheckField {
	border: 3px solid #ffffff;
	border-radius: 10px 10px 10px 10px;
	background: transparent;
	color: #ffffff;
	font-size: 3em;
}

#serviceCheckerWrapper ::placeholder {
	color: #ffffff;
}

.serviceCheckGo {
	background-color: #ffffff !important;
	color: #2E0E3C !important;
	margin-left: 10px;
}

.radio, .checkbox {
	background-color: transparent !important;
}

.checkbox, .radio {
	width: auto !important;
	margin: 0 5px 0 0;
}

.ctaSubmit {
	width: 100%;
	text-align: center;
}

.formButton {
	font-weight: 700;
	border: 0 !important;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
}

input[type=submit].formButton:hover {
	box-shadow: none;
	background-color: #911777;
}

input[type=submit]:disabled,
button:disabled {
	font-weight: 700;
	border: 0 !important;
	background-color: #cccccc !important;
	box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.2);
	cursor: not-allowed;
}

.buttonCheckout th {
	text-align: center;
}

.buttonCheckout input[type=submit] {
	font-weight: 700;
	font-size: 1.6em;
}

.checkout input[type=text] {
	border: 1px solid #cccccc;
	border-radius: 10px 10px 10px 10px;
	background: transparent;
	color: #000000;
}

.checkout select {
	border: 1px solid #cccccc;
	border-radius: 10px 10px 10px 10px;
	background: transparent;
	color: #000000;
}

/* ####### Custom checkbox ####### */

.container {
	display: block;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

/* Hide the browser's default checkbox */
.container input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

/* Create a custom checkbox */
.checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: #cccccc;
	border-radius: 10px 10px 10px 10px;
}

/* On mouse-over, add a grey background color */
.container:hover input ~ .checkmark {
	background-color: #B61B90;
}

/* When the checkbox is checked, add a blue background */
.container input:checked ~ .checkmark {
	background-color: #B61B90;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

/* Show the checkmark when checked */
.container input:checked ~ .checkmark:after {
	display: block;
}

/* Style the checkmark/indicator */
.container .checkmark:after {
	left: 9px;
	top: 5px;
	width: 5px;
	height: 10px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* ####### Custom radio button ####### */

/* Customize the label (the container) */

.customSelectWrap {
	display: flex;
	justify-content: center;
}

.justifyLeft {
	justify-content: left !important;
}

.containerRad {
	display: block;
	position: relative;
	padding-right: 40px;
	padding-top: 4px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

/* Hide the browser's default radio button */
.containerRad input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

/* Create a custom radio button */
.checkmarkRad {
	position: absolute;
	top: 0;
	right: 0;
	height: 25px;
	width: 25px;
	/* background-color: transparent; */
	background-image: linear-gradient(#440F50, #9615B6);
	border-radius: 50%;
	border: 3px solid #ffffff;
}

/* On mouse-over, add a grey background color */
.containerRad:hover input ~ .checkmarkRad {
	background-color: #911777;
}

/* When the radio button is checked, add a blue background */
.containerRad input:checked ~ .checkmarkRad {
	background-color: transparent;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmarkRad:after {
	content: "";
	position: absolute;
	display: none;
}

/* Show the indicator (dot/circle) when checked */
.containerRad input:checked ~ .checkmarkRad:after {
	display: block;
}

/* Style the indicator (dot/circle) */
.containerRad .checkmarkRad:after {
	top: 6px;
	left: 6px;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: white;
}

/* Andy messing */

label.error {

	color: red;
	padding-left: 10px;
}














/* ### Links ######################################## */


a:link {
	text-decoration: underline;
	color: #be4e9c;
}

a:visited {
	text-decoration: underline;
	color: #be4e9c;
}

a:hover {
	text-decoration: none;
	color: #be4e9c;
}

a:active, a:focus {
	outline: 0;
}

#topNav a:link {
	text-decoration: none;
	color: #ffffff;
	font-size: 2em;
	font-weight: 700;
}

#topNav a:visited {
	text-decoration: none;
	color: #ffffff;
	font-size: 2em;
	font-weight: 700;
}

#topNav a:hover {
	text-decoration: none;
	color: #be4e9c;
	font-size: 2em;
	font-weight: 700;
}

#topNav a:active, a:focus {
	outline: 0;
	font-weight: 700;
	font-size: 2em;
}

.featureQuote a:link {
	text-decoration: underline;
	color: #ffffff;
	font-weight: 700;
	font-size: 1.2em;
}

.featureQuote a:visited {
	text-decoration: underline;
	color: #ffffff;
	font-weight: 700;
	font-size: 1.2em;
}

.featureQuote a:hover {
	text-decoration: none;
	color: #ffffff;
	font-weight: 700;
	font-size: 1.2em;
}

.featureQuote a:active, .featureQuote a:focus {
	outline: 0;
	font-weight: 700;
	font-size: 1.2em;
}

.blurb a:active, .blurb a:focus {
	font-size: 1em;
	font-weight: 400;
}

.featureCallout a {
	color: #ffffff !important;
	font-weight: 700;
}

.featureCallout a:active, .featureCallout a:focus {
	font-size: 1em;
}

.packageBuild a:active, .packageBuild a:focus {
	font-size: 1em;
	font-weight: 400;
}
	
a:link.buttonQandA {
	background-color: #be4e9c;
	text-decoration: none;
	color: #ffffff;
	border-radius: 10px 10px 10px 10px;
	padding: 15px;
	font-size: 2em;
	font-weight: 400;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
	margin-bottom: 20px;
}

a:visited.buttonQandA {
	background-color: #be4e9c;
	text-decoration: none;
	color: #ffffff;
	border-radius: 10px 10px 10px 10px;
	padding: 15px;
	font-size: 2em;
	font-weight: 400;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
	margin-bottom: 20px;
}

a:hover.buttonQandA {
	background-color: #911777;
	text-decoration: none;
	color: #ffffff;
	border-radius: 10px 10px 10px 10px;
	padding: 15px;
	font-size: 2em;
	font-weight: 400;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
	margin-bottom: 20px;
}

a:active.buttonQandA, a:focus.buttonQandA {
	outline: 0;
	background-color: #911777;
	text-decoration: none;
	color: #ffffff;
	border-radius: 10px 10px 10px 10px;
	padding: 15px;
	font-size: 2em;
	font-weight: 400;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
	margin-bottom: 20px;
}

a:link.backToTop {
	background-color: #490F55;
	text-decoration: none;
	color: #ffffff;
	border-radius: 10px 10px 10px 10px;
	padding: 10px;
	font-size: 1.5em;
	font-weight: 400;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
	cursor: pointer;
}

a:visited.backToTop {
	background-color: #490F55;
	text-decoration: none;
	color: #ffffff;
	border-radius: 10px 10px 10px 10px;
	padding: 10px;
	font-size: 1.5em;
	font-weight: 400;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
	cursor: pointer;
}

a:hover.backToTop {
	background-color: #0F0C20;
	text-decoration: none;
	color: #ffffff;
	border-radius: 10px 10px 10px 10px;
	padding: 10px;
	font-size: 1.5em;
	font-weight: 400;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
	cursor: pointer;
}

a:active.backToTop, a:focus.backToTop {
	outline: 0;
	background-color: #0F0C20;
	text-decoration: none;
	color: #ffffff;
	border-radius: 10px 10px 10px 10px;
	padding: 10px;
	font-size: 1.5em;
	font-weight: 400;
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
	cursor: pointer;
}

a:active.tsandcsLink, a:focus.tsandcsLink {
	font-weight: 700;
}

#footerNav a:link {
	text-decoration: none;
	color: #ffffff;
	font-size: 2em;
	font-weight: 700;
}

#footerNav a:visited {
	text-decoration: none;
	color: #ffffff;
	font-size: 2em;
	font-weight: 700;
}

#footerNav a:hover {
	text-decoration: none;
	color: #be4e9c;
	font-size: 2em;
	font-weight: 700;
}

#footerNav a:active, a:focus {
	outline: 0;
	font-size: 2em;
	font-weight: 700;
}

#terms a:link, #terms a:visited, #terms a:hover, #terms a:active, #terms a:focus {
	color: #ffffff;
	font-size: 1em;
}

-->
