@media only screen and (max-width: 767px) {
h1 {
	font-size: 12vw;
}
h2{
  font-size: 8vw
}
h3 {
	font-size: 4vw;
}
h4 {
	font-size: 3vw;
}
h5 {
	font-size: 3.5vw;
}
.content p {
	font-size: 4.8vw;
}
.frame-layout-1 {
  padding-left: 5%;
  padding-right: 5%;
}
.frame-layout-2 {
  padding-left: 5%;
  padding-right: 5%;
}
.frame-layout-3 {
  padding-left: 10%;
  padding-right: 10%;
}
.frame-space-before-extra-small{
  padding-top: 3vw;
  margin-top: 0;
}
.frame-space-after-extra-small{
  padding-bottom: 3vw;
  margin-bottom:0;
}
.frame-space-before-small{
  padding-top: 6vw;
  margin-top: 0;
}
.frame-space-after-small{
  padding-bottom: 6vw;
  margin-bottom:0;
}
.frame-space-before-medium {
  padding-top: 12vw;
  margin-top: 0;
}
.frame-space-after-medium {
  padding-bottom: 12vw;
  margin-bottom:0;
}
.frame-space-before-large{
  padding-top: 24vw;
  margin-top: 0;
}
.frame-space-after-large{
  padding-bottom: 24vw;
  margin-bottom:0;
}
.frame-space-before-extra-large {
  padding-top: 32vw;
  margin-top: 0;
}
.frame-space-after-extra-large {
  padding-bottom: 32vw;
  margin-bottom:0;
}

.logo {
	top: calc(70px + 3vw);
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	z-index: 4;
}
.logo a {
	background-image: url('../elements/sw-logo.svg');
	display: block;
	width: auto;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: left center;
	width: 40vw;
	height: 15vw;
	z-index: 5;
}
.frame-teaserbg::before {
	width: 100%;
	height: 100vw;
} 
.frame-teaserbg h1 {
	font-size: 12vw;
	max-width: 100%;
}  
.frame-teaserbg h3 {
	/* font-size: 5vw; */
	padding-bottom: 6vw;
	padding-top: 6vw;
}
.teaser-firstcol .frame:nth-child(1) {
	font-size: 6vw;
	padding-bottom: 8vw;
}
.frame-teaserbg .teaser-firstcol H3 a  {
  color:#fff;
  background-image: url('../elements/long-arrow-right-white.svg');
  }
.frame-lightbg .row .ce-bodytext h2 {
	padding-top: 3vw;
}  
.frame-bigbtn .ce-headline-center {
	margin: 4vw 0;
}
.frame-bigbtn a {
	padding: 4vw 8vw;
}
.frame-capimg .image-caption div {
	font-size: 10vw;
}
.textroom > .frame p {
	font-size: 4vw;
}  
.textroom > .frame {
	padding-left: 5vw;
	padding-right: 5vw;
}  
.textroom > .frame:nth-child(2) {
	padding-top: 5vw;
	padding-bottom: 5vw;
}  
.textroom > .frame:nth-child(3) {
	border-top: 1px solid;
	padding-top: 5vw;
	padding-bottom: 5vw;
}  
.tns-controls button {
	width: 12vw;
	height: 12vw;
}  
.footer {
	font-size: 4.8vw;
	line-height: 1.5;
}
.footer h4 {
	line-height: 1.5;
} 
.footer > .frame-type-ce_columns3::before {
	width: 200px;
	height: 80px;
	margin-top: calc(-23vw - 40px);
	left: calc(50% - 100px);
} 
.footer .ce-col .ce-row {
	justify-content: center;
}  
.footer .ce-col .ce-row .image {
	margin-right: 5px;
	margin-left: 5px;
	margin-bottom: 5vw;
}
.footer .ce-bodytext {
	text-align: center;
	margin-bottom: 5vw;
}  
.footer .text-right {
	text-align: center !important;
}  
}
@media only screen and (min-width: 768px) {
.powermail_fieldset.powermail_fieldset_1 {
	width: 50%;
	padding-right: 20px;
	float: left;
}
.powermail_fieldset.powermail_fieldset_2 {
	width: 50%;
	padding-left: 20px;
}
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	margin-bottom: 0.5vw;
}
h1 {
	font-size: 5.6vw;
}
h2{
  font-size: 3.6vw;
}
h3 {
	font-size: 2vw;
}
h4 {
	font-size: 1.4vw;
}
h5 {
	font-size: 1.8vw;
}
.content p {
	font-size: 2.4vw;
}
.frame-layout-1 {
  padding-left: 10%;
  padding-right: 10%;
}
.frame-layout-2 {
  padding-left: 10%;
  padding-right: 10%;
}
.frame-layout-3 {
  padding-left: 15%;
  padding-right: 15%;
}
.frame-space-before-extra-small{
  padding-top: 1.5vw;
  margin-top: 0;
}
.frame-space-after-extra-small{
  padding-bottom: 1.5vw;
  margin-bottom:0;
}
.frame-space-before-small{
  padding-top: 3vw;
  margin-top: 0;
}
.frame-space-after-small{
  padding-bottom: 3vw;
  margin-bottom:0;
}
.frame-space-before-medium {
  padding-top: 6vw;
  margin-top: 0;
}
.frame-space-after-medium {
  padding-bottom: 6vw;
  margin-bottom:0;
}
.frame-space-before-large{
  padding-top: 12vw;
  margin-top: 0;
}
.frame-space-after-large{
  padding-bottom: 12vw;
  margin-bottom:0;
}
.frame-space-before-extra-large {
  padding-top: 18vw;
  margin-top: 0;
}
.frame-space-after-extra-large {
  padding-bottom: 18vw;
  margin-bottom:0;
}
.logo {
	top: 40px;
} 
.logo a {
	width: 25vw;
	height: 10vw;
}
.logomenu {
	margin-top: 40px;
}  
.logomenu a {
	width:25vw;
	height: 10vw;
}   
.textroom > .frame {
	padding-left: 10vw;
	padding-right: 10vw;
}   
.textroom > .frame p {
	font-size: 2.5vw;
}
.textroom > .frame:nth-child(1) {
	padding-top: 6vw;
}  
.textroom > .frame:nth-child(2) {
	padding-top: 5vw;
	padding-bottom: 5vw;
}
.textroom > .frame:nth-child(3) {
	padding-top: 2vw;
	padding-bottom: 2vw;
}
.tns-controls button {
	width: 6vw;
	height: 6vw;
}  
.frame-bigbtn .ce-headline-center {
	margin: 2vw 0;
}
.frame-bigbtn a {
	padding: 2vw 4vw;
}  
.footer {
	font-size: 2.2vw;
	line-height: 1.2;
}
.footer > .frame-type-ce_columns3::before {
	width: 280px;
	height: 100px;
	margin-top: calc(-12vw - 50px);
	left: calc(50% - 140px);
}
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	margin-bottom: 0.5vw;
}
h1 {
	font-size: 5vw;
}
h2{
  font-size: 3vw
}
h3 {
	font-size: 1.4vw;
}
h4 {
	font-size: 1vw;
}
h5 {
	font-size: 1.2vw;
}
.content p {
	font-size: 1.8vw;
}
.frame-layout-1 {
  padding-left: 5%;
  padding-right: 5%;
}
.frame-layout-2 {
  padding-left: 10%;
  padding-right: 10%;
}
.frame-layout-3 {
  padding-left: 15%;
  padding-right: 15%;
}
.logo a {
  width: 20vw;
	height: 8vw;
} 
.logomenu a {
	width: 20vw;
	height: 8vw;
}  
.textroom > .frame p {
	font-size: 1.6vw;
}
.footer {
	font-size: 1.6vw;
	line-height: 1.2;
}
}
@media only screen and (min-width: 2000px) {
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	margin-bottom: 0.5rem;
}
h1 {
	font-size: 4.5rem;
}
h2{
  font-size: 3rem;
}
h3 {
	font-size: 1.2rem;
}
h4 {
	font-size: 0.8rem;
}
h5 {
	font-size: 1.5rem;
}
.content p {
	font-size: 2rem;
}
.frame-space-before-extra-small{
  padding-top: 1rem;
  margin-top: 0;
}
.frame-space-after-extra-small{
  padding-bottom: 1rem;
  margin-bottom:0;
}
.frame-space-before-small{
  padding-top: 2rem;
  margin-top: 0;
}
.frame-space-after-small{
  padding-bottom: 2rem;
  margin-bottom:0;
}
.frame-space-before-medium {
  padding-top: 4rem;
  margin-top: 0;
}
.frame-space-after-medium {
  padding-bottom: 4rem;
  margin-bottom:0;
}
.frame-space-before-large{
  padding-top: 8rem;
  margin-top: 0;
}
.frame-space-after-large{
  padding-bottom: 8rem;
  margin-bottom:0;
}
.frame-space-before-extra-large {
  padding-top: 12rem;
  margin-top: 0;
}
.frame-space-after-extra-large {
  padding-bottom: 12rem;
  margin-bottom:0;
}  
.logo a {
	width: 300px;
	height: 112px;
}
.frame-bigbtn a {
	padding: 1rem 2rem;
}  
  .frame-bigbtn .ce-headline-center {
	margin: 1rem 0;
}
.frame-capimg .image-caption div {
	font-size: 6rem;
}  
.textroom > .frame p {
	margin-bottom: 0;
	font-size: 1.6rem;
	line-height: 1.2;
  } 
.tns-controls button {
	width: 4rem;
	height: 4rem;
}  
.footer {
	font-size: 1.5rem;
	line-height: 1.2;
}  
.footer > .frame-type-ce_columns3::before {
	margin-top: calc(-8rem - 50px);
	left: calc(50% - 140px);
}  
}