@media only screen and (max-width: 1420px) {
  body {
    border-bottom: 0;
    border: 0;
    font-size: 100.01%;
  }
}
@media only screen and (max-width: 1080px) {
  body {
    font-size: 100.01%;
  }
  #logo img {
    display: inline-block;
    width: auto;
    height: 80px;
  }
  #logotext {
    border: 0;
    font-size: 0.70em;
    font-weight: normal;
    text-transform: uppercase;
    color: var(--pm-gruen);
    margin-top: 10px;
    line-height: 150%;
    letter-spacing: 0px;
  }
}
@media only screen and (max-width: 960px) {
  body {
    font-size: 100.01%;
  }
  .responsive_off {
    display: none !important;
  }
  .responsive_on {
    display: block !important;
  }
  #claim {
    display: block;
    position: relative;
    right: inherit;
    bottom: inherit;
    z-index: 5000;
    color: #fff;
    font-size: 11px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
    width: 100%;
    padding-top: 10px;
    padding-bottom: 20px;
    line-height: 140%;
    text-align: center;
    background-color: var(--pm-gruen);
  }
  #claim p:last-child {
    margin-top: 10px;
    text-transform: none;
    padding-top: 10px;
    font-size: 12px;
    font-weight: 400;
    border-top: 1px solid #fff;
  }
  /* -- Kopfbereich -------------------------------------- */
  #logo {
    position: relative;
    display: block;
    left: inherit;
    top: inherit;
    width: 100%;
    background-color: var(--pm-grau);
    margin: 0 auto;
    padding: 10px;
    padding-top: 50px;
    padding-bottom: 20px;
    text-align: center;
    z-index: 5000;
    box-shadow: rgba(0, 0, 0, 0) 0px 6px 8px 0px;
  }
  #logo img {
    display: inline-block;
    width: auto;
    height: 90px;
  }
  #logotext {
    font-size: 0.70em;
    font-weight: normal;
    text-transform: uppercase;
    color: var(--pm-gruen);
    margin-top: 10px;
    line-height: 150%;
    letter-spacing: 1px;
  }
  #header_visual {
    border: 0;
    display: block;
    background-color: #fff;
    padding-top: 10px;
    padding-bottom: 60px;
    height: auto;
    z-index: 500;
  }
  #header_visual img {
    border: 0;
    display: block;
    position: relative;
    right: inherit;
    top: inherit;
    width: 100%;
    height: auto;
    z-index: 400;
    padding: 10px;
    transition: all 0.9s linear;
    overflow: hidden;
  }
  #header_visual img:hover {
    /* SCALE */
    transform: scale(1.05);
  }
  #header_visual #titel {
    border-bottom: 0;
    border-top: 0;
    display: block;
    position: absolute;
    background-color: var(--pm-gruen);
    bottom: 15px;
    left: 0;
    z-index: 450;
    padding: 10px;
  }
  /* -- Inhalte -------------------------------------- */
  #page {
    border-top: 0;
    position: relative;
    display: block;
    width: 92%;
    text-align: left;
    margin: 0 auto;
    padding-top: 20px;
    padding-left: 0;
    padding-right: 0;
    background-color: var(--pm-grau);
    z-index: 400;
  }
  .firstelement {
    display: block;
    position: relative;
    margin-bottom: 10px;
	  padding-bottom: 20px;
  }
  .wrapper {
    display: block;
    width: 100%;
    background-color: #fff;
    margin-bottom: 50px;
  }
  .contentbox {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
    box-shadow: rgba(0, 0, 0, 0.08) 0px 8px 12px 0px;
    border-bottom: 10px solid var(--pm-gruen);
  }
  .contentbox .box {
    width: 100%;
    min-height: auto;
  }
  .contentbox .box.text {
    padding: 5vw;
  }
  .bgimg {
    background: none !important;
    background-repeat: no-repeat;
    height: auto;
    min-height: auto;
  }
  .table_50 {
    display: table;
    width: 100%;
  }
  .contentleft, .contentright {
    border: 0;
    border-bottom: 0;
    display: table-cell;
    vertical-align: bottom;
    width: 50%;
  }
  .table_50 .contentleft {
    border: 0;
    width: 50%;
    vertical-align: top;
  }
  .table_50 .contentright {
    border: 0;
    width: 50%;
    vertical-align: top;
    text-align: right;
  }
  .table_50.footer {
    border: 0;
    margin: 0;
    margin-bottom: 10px;
  }
  .table {
    display: table;
  }
  .galerie {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .galerie .product {
    width: 48%;
    background-color: #fff;
    padding-top: 20px;
    padding-bottom: 20px;
    margin-bottom: 40px;
    box-shadow: rgba(0, 0, 0, 0.08) 0px 8px 12px 0px;
    border-bottom: 10px solid var(--pm-gruen);
    transition: all 0.9s linear;
    overflow: hidden;
  }
  .galerie .product:hover {
    box-shadow: 0 0px 12px 0px rgba(30, 159, 141, 0.3);
    transform: scale(1.05);
  }
  .galerie .product.empty {
    background: none;
    border: none;
    margin-bottom: 0;
    height: 2px !important;
    min-height: 2px;
    box-shadow: 0 0 0 0;
  }
  .galerie a {
    display: block;
    width: 100%;
    height: auto;
  }
  .galerie .pics {
    border: 0;
    padding: 0px;
  }
  .galerie .pics a {
    display: inline-block;
    width: 48%;
    height: auto;
    margin-top: 20px;
  }
  .galerie .pics a:nth-child(2n) {
    margin-right: 2%;
    padding-left: 20px;
  }
  .galerie .pics a:nth-child(3n) {
    margin-left: 2%;
    padding-right: 20px;
  }
  .galerie .pics a:first-child {
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
  }
  .galerie a img {
    display: block;
    width: 100%;
    height: auto;
  }
  .col1-2, .col2-2 {
    display: block;
    width: 100%;
    float: none;
  }
  .txtbox {
    display: block;
    background-color: var(--pm-gruen);
    padding: 5vw;
    column-count: 1;
    column-gap: 0;
  }
  .wrapper.txtpur {
    background-color: #fff;
    padding: 5vw;
  }
  .wrapper.txtpur .box {
    display: block;
    max-width: 100%;
  }
  .grau {
    background-color: var(--pm-grau);
  }
  .gruenhell {
    background-color: var(--pm-gruen-hell);
  }
  .gruen {
    background-color: var(--pm-gruen);
  }
  #page h1 {
    border: 0;
    font-size: 2.0em;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--pm-gruen);
    line-height: 140%;
  }
  #header_visual #titel h1, #header_visual #titel p {
    color: #fff;
    margin: 0;
  }
  #header_visual #titel h1 {
    font-size: 0.85em;
    font-weight: 300;
    line-height: 140%;
    margin-bottom: 0px;
    letter-spacing: 1px;
    text-transform: uppercase;
  }
  #page h2, #page .h2 {
    font-size: 1.0em;
    font-weight: 400;
    text-transform: uppercase;
    color: var(--pm-gruen);
    padding-top: 0em;
    padding-bottom: 0.2em;
    margin-bottom: 1.2em;
    line-height: 1.7em;
    border-bottom: 1px solid var(--pm-gruen-hell);
  }
  #page .firstelement h2 {
    font-size: 0.8em;
    letter-spacing: 1px;
    padding-bottom: 0.5em;
    margin-bottom: 0.75em;
  }
  #page .product .h2 {
    display: block;
    font-size: 0.85em;
    margin: 0;
    margin-top: 20px;
    border-bottom: 0;
    padding-left: 10px;
    letter-spacing: 0px;
    text-transform: inherit;
  }
  #page .product .h2 a {
    text-decoration: none;
  }
  #page .product .h2 a::before {
    content: "";
    display: inline-block;
    width: 0.875em;
    height: 1em;
    vertical-align: -0.125em;
    margin-right: 10px;
    background-color: var(--pm-gruen);
    -webkit-mask: url(../images/pfeil.svg) no-repeat center / contain;
    mask: url(../images/pfeil.svg) no-repeat center / contain;
  }
  #page h3 {
    font-size: 1.0em;
    font-weight: 500;
    color: var(--pm-text);
    margin-top: 2.0em;
    margin-bottom: 0.85em;
    line-height: 1.54em;
  }
  #page h3 strong {
    color: var(--pm-gruen);
    font-weight: 400;
    text-transform: uppercase;
  }
  #page h2 + h3, #page h3:first-child {
    margin-top: 0;
  }
  #page .tklein {
    font-size: 0.8em;
    line-height: 1.5em;
  }
  #page p, #page figcaption {
    font-size: 0.85em;
    color: var(--pm-text);
    line-height: 1.7em;
    margin: 0;
    margin-bottom: 0.85em;
  }
  #page .txtbox p {
    font-size: 1.0em;
    color: #fff;
  }
  #page .galerie p, #page .galerie figcaption {
    border-top: 0;
    padding-top: 0px;
    margin-top: 20px;
    padding-left: 20px;
    padding-right: 20px;
    font-size: 0.7em;
    line-height: 1.5em;
  }
  #page a {
    color: var(--pm-text);
    text-decoration: underline;
  }
  #page a:visited {
    color: #000;
    text-decoration: underline;
  }
  #page a:hover, #page a:active {
    color: var(--pm-gruen);
    text-decoration: underline;
  }
  #page a.telresponsive {
    text-decoration: none;
  }
  #page ul {
    list-style-type: none;
    margin: 0;
    margin-bottom: 0.8em;
    padding: 0;
  }
  #page ul.list {
    list-style-type: square;
    margin: 0;
    margin-bottom: 0.8em;
    padding: 0;
    padding-left: 16px;
  }
  #page li {
    padding: 0;
    font-size: 0.85em;
    color: #000;
    margin-bottom: 4px;
    line-height: 180%;
  }
  #page p.fsc {
    display: table-cell;
    vertical-align: bottom;
    margin: 0;
    padding-bottom: 10px;
    line-height: 150%;
    font-size: 12px;
  }
  #page p.fsc span {
    color: #000;
    font-size: 13px;
  }
  p.fsc:first-child {
    background-color: var(--pm-grau);
  }
  p.fsc:last-child {
    padding: 10px;
  }
  p.fsc img {
    display: inline-block;
    width: auto;
    height: 160px;
    text-align: left;
    vertical-align: bottom;
    border: 5px solid #fff !important;
  }
  .footer .contentleft, .footer .contentright {
    vertical-align: bottom;
  }
  #bottomline {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    border-bottom: 10px solid var(--pm-gruen);
    z-index: 9000;
  }
  #page p.button a {
    text-decoration: none;
    background-color: var(--pm-gruen);
    padding: 8px;
    padding-left: 12px;
    padding-right: 12px;
    color: #fff;
  }
  #page p.button a:hover {
    text-decoration: none;
    background-color: #fff;
    padding: 8px;
    padding-left: 12px;
    padding-right: 12px;
    color: var(--pm-gruen);
  }
  #page .txtbox p.button a, #page .gruen p.button a:hover {
    background-color: var(--pm-gruen);
    border: 1px solid #fff;
    color: #fff;
  }
  #page .txtbox p.button a:hover, #page .gruen p.button a:hover {
    background-color: #fff;
    border: 1px solid #fff;
    color: var(--pm-gruen);
  }
  #page ul#produkte a {
    color: #fff;
  }
  .responsive {
    display: block;
  }
  /*Formulargestaltung */
  label {
    display: block;
    float: none;
    text-align: left;
    width: 100%;
    height: 30px;
    padding-right: 5%;
  }
  .form {
    background: #f1f1f1;
    border: 0;
    border-bottom: 1px solid var(--pm-gruen);
    margin: 0px;
    width: 100%;
    text-align: left;
    display: block;
    color: #000;
    font-weight: normal;
    height: 30px;
  }
  .form2 {
    display: block;
    font-size: 1.1em;
    color: #fff;
    background-color: var(--pm-gruen);
    border: 1px solid var(--pm-gruen);
    padding: 10px;
    margin-top: 20px;
  }
  .form2:hover {
    cursor: pointer;
    color: var(--pm-gruen);
    background-color: #fff;
    border: 1px solid var(--pm-gruen);
  }
	/* Anfrageformulare ---- */
	#page.kartonanfrage {
	background-color: var(--pm-grau);
}
	img.stuelpdeckelbild, img.klappdeckelbild, img.klappdeckelbild2, img.schuberbild, img.buchdeckebild, img.kassettenbild {
		display: block;
	width: 90%;
	height: auto;
		padding: 2%;
}
	img.schuberbild {
		height: auto;
		width: 70%;
	}
	.anfrageform {
	margin-top: 10px;
		background-color: var(--pm-grau)
}
	.anfrageform h1 {
	margin-bottom: 40px;
}
	.anfrageform fieldset {
    border: 1px solid #ccc;
    margin-bottom: 2vw;
    background: #fff;
}
.anfrageform legend {
    font-size: 1.2rem;
    font-weight: 600;
	color: var(--pm-text);
    margin-bottom: 10px;
    background-color: var(--pm-grau);
    padding: 5px;
    padding-left: 10px;
    padding-right: 10px;
    border: 1px solid #ccc;
}
.anfrageform label {
    display: block;
	float: none;
    margin-bottom: 0.5rem;
    font-weight: normal;
	    font-size: 0.8em;
	height: auto;
	width: auto;
}
.anfrageform .checkbox-group, .anfrageform .radio-group {
    margin-bottom: 1rem;
}
.anfrageform .checkbox-group label, .anfrageform .radio-group label {
    font-weight: normal;
    display: block;
    margin-bottom: 0.3rem;
}
.anfrageform .form {
	background-color: var(--pm-grau);
}
  #spezialinfo /* Seo Texte */ {
    column-count: 1;
    column-gap: 0%;
  }
}
/* Abstand über dem Fußbereich (ersetzt den früheren Leerabsatz) */
@media only screen and (max-width: 960px) {
  #page .table_50.footer {
    margin-top: 2.1675em;
  }
}
@media only screen and (max-width: 420px) {
  .galerie .product {
    width: 100%;
  }
  #page .product .h2 {
    font-size: 1.0em;
    letter-spacing: 1px;
    text-transform: uppercase;
  }
  .table_50 {
    display: block;
    width: 100%;
  }
  .contentleft, .contentright {
    display: block;
    vertical-align: bottom;
    width: 100%;
  }
  .table_50 .contentleft {
    width: 100%;
    vertical-align: top;
  }
  .table_50 .contentright {
    width: 100%;
    vertical-align: top;
    text-align: center;
  }
  ul#metanavi {
    width: 100%;
    margin-top: 20px;
    margin-right: 0;
    text-align: center;
  }
  #spezialinfo /* Seo Texte */ {
    column-count: 1;
    column-gap: 0%;
  }
}