/* ABB BABA CSS */

:root {
	--black: #000000;
	--grey: #f9f9fb;
	--red: #ff000f;
	--white: #ffffff;
}

@font-face{
    font-family: 'ABB Display';
    src: url('../_fonts/ABBvoiceDisplay_SBd.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face{
    font-family: 'ABB Voice';
    src: url('../_fonts/ABBvoice_Rg.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

.container, .container-lg, .container-md, .container-sm, .container-xl {
	transition: .3s;
}
.container, .container-lg, .container-md, .container-sm, .container-xl {
	max-width: 1320px;
}
body {
	font-family: 'ABB Voice',Helvetica,Arial,Lucida,sans-serif;
	font-size: 16px;
	line-height: 24px;
}
@media (max-width: 980px){
	body {
		font-size: 14px;
		line-height: 20px;
	}
}
@media (max-width: 580px){
	body {
		padding:14px !important;
	}
}
body.panel-open .step {
	filter: blur(3px);
}
.cover {
	display: none;
	height: 0;
	width: 0;
	background: rgba(255,255,255,.55);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
body.panel-open .cover {
	display: block;
	height: 100%;
	width: 100%;
}
	
.large { font-size: 24px; line-height: 35px; }
.small { font-size: 10px; line-height: 15px; }
.uppercase { text-transform: uppercase; }
@media (max-width: 980px){
	.large { 
		font-size: 20px;
		line-height: 28px;
	}
}

h1 {
	font-family: 'ABB Display',Consolas,Helvetica,Arial,Lucida,sans-serif;
	text-transform: uppercase;
	font-size: 36px;
	line-height: 1.1;
	margin-bottom: 20px;
}
@media (max-width: 980px){
	h1 { 
		font-size: 28px;
		line-height: 1.1;
	}
}

/* gradient overrides */
[data-gradient="full"] { 
	background: linear-gradient(337deg, #979BF4 0%, #FF000F 100%);
	background: linear-gradient(121deg, rgba(255,0,15,1) 41%, rgba(151,155,244,1) 98%); 
	color: var(--white);
}
[data-gradient="full"] a {
	color: var(--white);
}	
[data-gradient="bottom"] { 
	background: url(../_i/abb_gradient.png) bottom center no-repeat; 
	background-size: 100%;
	color: var(--black);
}
[data-gradient="bottom"] a {
	color: var(--red);
}

/* buttons */
.button { 
	border-radius: 100px; 
	border-width: 1px; 
	border-style: solid; 
	font-size: 24px; 
	transition: .3s; 
	display: inline-block; 
	white-space:nowrap; 
	padding: 10px 20px 6px; 
	margin-bottom: 10px;
	text-decoration: none; 
}
@media (max-width: 980px){
	.button { 
		font-size: 20px;
		padding: 10px 20px 6px;
	}
}
@media (max-width: 480px){
	.button { 
		font-size: 14px;
		padding: 6px 20px 2px;
	}
}
.button.white {
	color: var(--red);
	border-color: var(--red);
	background: var(--white);
}
.button.white:hover {
	color: var(--white);
	border-color: var(--red);
	background: var(--red);
}
.button.red {
	color: var(--white);
	border-color: var(--white);
	background: var(--red);
}
.button.red:hover {
	color: var(--red);
	border-color: var(--white);
	background: var(--white);
}
.button span {display: block; text-align: center; }

/* buttons.radio */
button.radio { border: none; all: unset; cursor: pointer; }
button.radio {}
button.radio span { display: block; position: relative; }
button.radio span.title { font-weight: 600; }
button.radio span.title:before {
	display: block;
	content: '';
	position: absolute;
	border: 2px solid var(--black);
	top: 4px;
	left: -1.5rem;
	background: var(--white);
	width: 16px;
	height: 16px;
	border-radius: 50%;
}
@media (max-width: 980px){
	button.radio span.title:before {
		top: 2px;
	}
}
button.radio span.title:after {
	opacity: 0;
	transition: .3s;
	display: block;
	content: '';
	position: absolute;
	top: 8px;
	left: calc(-1.5rem + 4px);
	background: var(--red);
	width: 8px;
	height: 8px;
	border-radius: 50%;  
}
@media (max-width: 980px){
	button.radio span.title:after {
		top: 6px;
	}
}
button.radio:hover span.title {
	color: var(--red);
}
button.radio:hover span.title:after,
button.radio.hovered span.title:after {
	opacity: 1; 
}

/* header */
.header-section {}
.header-section .abb-logo { 
	max-width: 100px;
}
.header-section dl{ margin: 0; }
.header-section dt { font-size: 10px; text-transform: uppercase; font-weight: normal; }
.header-section dd { float: left; padding: 0 12px 0 0; }
.header-section a { color: var(--black); text-decoration: none; transition: .3s; }
.header-section a:hover { color: var(--red); text-decoration: underline; }

/* footer */
.footer-section { font-size: 10px; line-height: 15px; }

/* content section */
.content-section { position: relative; overflow: hidden; padding: 20px 20px 10px; position: relative; }
@media (max-width: 580px){
	body.panel-open .content-section {
		padding-top: 60px; 
	}
}

/* steps wrapper */
.steps { 
	overflow: hidden;
	position: relative;
	padding: 90px; 
	border-radius: 16px; 
	background-color: var(--grey); 
	min-height: calc(100vh - 160px);
}
@media (max-width: 1000px){
	.steps { padding: 50px; }
}
@media (max-width: 600px){
	.steps { padding: 20px; }
}
@media (max-width: 1000px){
	.steps {}
}

/* step panels */
.step { opacity: 0; height: 0; overflow: hidden; transition: 1s; margin-left: 30px; width: 100%; }
.step.opacity1 { opacity: 1; height: auto; margin-left: 0; }
.icon { display: block;  margin: 0 0 10px 0; max-width: 100%; }
.hr { height: 2px; background-color: var(--black); margin: 0 0 12px; position: relative; }

/* panels */
.p-q1 { display: none; }
.close-panel {
	position:absolute;
	top: 14px;
	right: 18px;
	z-index: 11;
}
.panel {
	overflow: hidden;
	position: absolute;
	bottom: 10px;
	right: calc(-100% - 100px);
	z-index: 3;
	background-color: var(--grey);
	border-radius: 16px;
	-webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
	box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
	padding: 50px 80px;
	transition: .5s;
	max-width: 90%;
	height: calc(100% - 30px);
}
.panel.open {
	right: 8px;
}
@media (max-width: 1100px){
	.panel { padding: 30px; }
}
@media (max-width: 680px){
	.panel { padding: 30px; max-width: 94%; }
}

.panel-top {
	position:relative;
	margin-bottom:12px;
}
.panel-image {
	position:absolute;
	bottom: 0;
	right: -82px;
}
@media (max-width: 1100px) {
	.panel-image {
		right: -32px;
		max-width: 240px;
	}
}
@media (max-width: 780px) {
	.panel-image {
		max-width: 160px;
	}
}
@media (max-width: 580px) {
	.panel-image {
		display: none;
	}
}
	
	
	/* screen readers */
.sr-only {
  border: 0;
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

/* slideshow */

#slide-window{
	position:fixed;
	width:100%;
	height:100%;
	overflow:hidden;
	top:0px;
	left:0px;
	display: none;
	z-index: 10;
	background: var(--white)
}
body.slideshow { overflow: hidden; }
body.slideshow #slide-window { display: block; }

#slides {
	height:100%;  
	position:absolute;
	margin:0px;
	padding:0px;
	top: 38px;
	-webkit-transform: translate3d(0px,0px,0px);
	transform: translate3d(0px,0px,0px);
	transition: all 0.66s ease; -webkit-transition: all 0.66s ease; 
}

.slide {
	list-style:none;
	position: relative;
	float: left;
	margin: 0;
	padding: 0;
	width: 500px;
	height: 100%;
	background: #ccc;
	text-align: center;
	line-height: 300px; 
	background-repeat: no-repeat;
	background-position:50% 50%;
	background-color: var(--white);
	background-size: contain;
	-webkit-transform: translate3d(0px,0px,0px);
	visibility:hidden;
	-webkit-transform-style: preserve-3d;
 }

.alive { visibility:visible; }

.nav { 
	position:fixed; 
	z-index:9; 
	top:50%; 
	cursor:pointer; 
	color: var(--black); 
	opacity:0.7; 
	transition: all 0.3s ease; -webkit-transition: all 0.3s ease; 
}

.nav:hover { opacity:1.0; color: var(--red); }
#left { left:3%; }
#right { right:3%; }

#credit { 
	position:fixed; 
	top:10px; 
	left:0; 
	width: 100%;
	font-size: 16px !important;
}
#credit .copy {
	padding: 0 40px 0 20px;
	display: flex;
}
#credit b { 
	color: var(--red);
	white-space: nowrap;
	margin: 0 12px 0 0;
}
#credit .hr {
	margin: 6px 0;
}







