/* ------ Variables ------ */

:root {
  --primary-font: "Inter";
  --heading-1: 38px;
  --heading-2: 28px;
  --heading-3: 20px;
  --body-L: 18px;
  --body-M: 16px;
  --body-S: 14px;
  --body-XS: 12px;
  --height-120: 1.2;
  --height-150: 1.5;
  --primary-orange: #f67316;
  --primary-green: #008000;
  --primary-grey: #3d4040;
  --secondary-grey: #9f9f9f;
  --primary-charcoal: #0b0501;
  --bg-color: #fafafa;
  --white: #ffffff;
  --black: #000000;
}

/* ------ Language Switcher ------ */

.wrapper {
  display: none;
  margin: 0 auto;
  font-family: var(--primary-font);
}

input#show-de,
input#show-en {
  display: none;
}

input#show-de:checked ~ #wrapper-de {
  display: block;
}

input#show-de:checked ~ #wrapper-en {
  display: none;
}

input#show-en:checked ~ #wrapper-en {
  display: block;
}

input#show-en:checked ~ #wrapper-de {
  display: none;
}

/* ------ Containers ------ */

.container-width {
  width: 100%;
  max-width: 1390px;
  margin: 0 auto;
  padding: 0 50px;
  box-sizing: border-box;
}

.full-width {
  margin: 0 calc(50% - 50vw);
}

/* ------ Background colours ------ */

.bg-primary {
  background-color: var(--primary-orange);
}

.bg-secondary {
  background-color: var(--bg-color);
}

.bg-tertiary {
  background-color: var(--primary-charcoal);
}

/* ------ Global button styles ------ */

/* [not active]
.button-center {
  display: flex;
  justify-content: center;
} */

.cart-button {
  display: flex;
  flex-direction: row;
  gap: 20px;
}

a.btn {
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 280px;
  padding: 18px;
  font-family: Inter;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  border-radius: 8px;
  text-decoration: none;
}

a.btn.btn-primary {
  background-color: var(--primary-orange);
  color: var(--white);
}

a.btn.btn-secondary {
  background-color: var(--white);
  color: var(--primary-orange);
  border: 1px solid var(--primary-orange);
}

.center {
  text-align: center;
}

/* ------ 1. Header ------ */

/* 1.1 Header Menu */

.navigationContainer {
  display: flex;
  height: 60px;
  margin-bottom: 2px;
  padding: 10px 0;
  box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.15);
}

.navigationContainer ul li img {
  width: 100%;
  max-width: 20px;
  height: 16px;
}

.navigationContainer ul li label {
  cursor: pointer;
}

.navigationContainer ul li img.language {
  margin-bottom: -2px;
  margin-right: 5px;
}

.navigationContainer img {
  width: 100%;
  max-width: 175px;
  object-fit: contain;
}

.navigationContainer ul {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 26px;
  width: 100%;
  margin-left: auto;
  padding: 0;
  list-style: none;
}

.navigationContainer ul li {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--primary-charcoal);
  font-family: Inter;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.navigationContainer a,
.navigationContainer a:visited {
  width: 100%;
  min-width: fit-content;
  color: var(--primary-charcoal);
  text-decoration: none;
}

.navigationContainer ul li:hover,
.navigationContainer ul li a:hover {
  cursor: pointer;
  text-decoration: underline;
}

.navigationContainer--flex-r,
.section--main--flex-r {
  display: flex;
}

/* 1.2 Header USPs */

.header-usp {
  font-family: var(--primary-font);
  color: var(--white);
  font-size: var(--body-S);
  line-height: 1.5;
  background-color: var(--primary-grey);
}

.header-usp .container-width {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding-top: 40px;
  padding-bottom: 40px;
  gap: 60px;
}

.header-usp .usp-container {
  flex-direction: column;
  flex: 1;
  width: calc(25% - 60px);
}

.header-usp .usp-container div {
  display: flex;
  flex-direction: row;
  gap: 12px;
  align-items: flex-start;
  padding-bottom: 16px;
}

.header-usp .usp-container div img {
  width: auto;
  height: auto;
  margin-top: 5px;
}

.header-usp .usp-container div h3 {
  word-break: break-word;
  color: var(--primary-orange);
  font-size: var(--body-L);
  margin: 0;
}

.header-usp .usp-container p {
  margin: 0;
  word-break: break-word;
  font-weight: 300;
}

/* ------ 2. Product Information ------ */

/* 2.1 Product Gallery (left) */

.gallery a.toggle {
  display: none;
}

.gallery {
  width: 43%;
  min-width: 43%;
  margin-right: 2%;
  position: relative;
  padding-top: 610px;
}

.gallery p {
  margin: 15px 0 0 0;
  color: #514f4d;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
}

.gallery span {
  display: none;
}

.bigPic {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 580px;
  text-align: center;
  opacity: 0;
  background-color: var(--white);
  transition: opacity 0.5s;
  margin: 0;
  z-index: -99;
}

.bigPic img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  max-width: 78%;
  max-height: 100%;
}

.gallery input[type="radio"] {
  visibility: hidden;
  margin: 0;
  padding: 0;
  height: 0;
  width: 0;
  position: absolute;
}

#big-pic-1:checked ~ .bigPic:nth-of-type(1),
#big-pic-2:checked ~ .bigPic:nth-of-type(2),
#big-pic-3:checked ~ .bigPic:nth-of-type(3),
#big-pic-4:checked ~ .bigPic:nth-of-type(4),
#big-pic-5:checked ~ .bigPic:nth-of-type(5),
#big-pic-6:checked ~ .bigPic:nth-of-type(6),
#big-pic-7:checked ~ .bigPic:nth-of-type(7),
#big-pic-8:checked ~ .bigPic:nth-of-type(8),
#big-pic-9:checked ~ .bigPic:nth-of-type(9),
#big-pic-10:checked ~ .bigPic:nth-of-type(10),
#big-pic-11:checked ~ .bigPic:nth-of-type(11),
#big-pic-12:checked ~ .bigPic:nth-of-type(12),
#big-pic-1-en:checked ~ .bigPic:nth-of-type(1),
#big-pic-2-en:checked ~ .bigPic:nth-of-type(2),
#big-pic-3-en:checked ~ .bigPic:nth-of-type(3),
#big-pic-4-en:checked ~ .bigPic:nth-of-type(4),
#big-pic-5-en:checked ~ .bigPic:nth-of-type(5),
#big-pic-6-en:checked ~ .bigPic:nth-of-type(6),
#big-pic-7-en:checked ~ .bigPic:nth-of-type(7),
#big-pic-8-en:checked ~ .bigPic:nth-of-type(8),
#big-pic-9-en:checked ~ .bigPic:nth-of-type(9),
#big-pic-10-en:checked ~ .bigPic:nth-of-type(10),
#big-pic-11-en:checked ~ .bigPic:nth-of-type(11),
#big-pic-12-en:checked ~ .bigPic:nth-of-type(12) {
  opacity: 1;
  display: block;
  z-index: 10;
}

.galleryThumb {
  position: relative;
  display: inline-block;
  margin-right: 1%;
  width: 31%;
  height: 150px;
  text-align: center;
  transition: all 0.2s;
  border: 1px solid transparent;
  background-color: var(--white);
  border-radius: 6px;
}

.galleryThumb:hover {
  border: 1px solid #ff8317;
  border-radius: 6px;
  transition: all 0.2s;
}

.galleryThumb img:hover {
  opacity: 0.7;
  cursor: pointer;
}

.galleryThumb:nth-of-type(4n + 1) {
  margin-left: 0;
}

.galleryThumb:nth-of-type(4n) {
  margin-right: 0;
}

.galleryThumb img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  max-width: 72%;
  max-height: 100%;
  transition: all 0.2s;
  border-radius: 6px;
}

.overlay {
  background: rgba(0, 0, 0, 0.6);
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  z-index: 1000;
  display: none;
}

.zoom-bigPic {
  width: 70%;
  height: auto;
  margin: 0 auto;
  background: #fff;
  text-align: center;
  padding: 2% 2% 2% 2%;
  margin-top: 20px;
}

.zoom-bigPic img {
  max-width: 100%;
  max-height: 600px;
}

.overlay a.close-text {
  margin-top: 20px;
  color: #555 !important;
  text-decoration: none;
  font-size: 15px;
  clear: both;
  display: block;
  font-weight: normal;
  text-decoration: underline;
}

.overlay a i {
  color: #555 !important;
  font-size: 40px;
  margin-bottom: 20px;
  z-index: 2000;
  float: right;
}

#zoompic-1-de:target,
#zoompic-2-de:target,
#zoompic-3-de:target,
#zoompic-4-de:target,
#zoompic-5-de:target,
#zoompic-6-de:target,
#zoompic-7-de:target,
#zoompic-8-de:target,
#zoompic-9-de:target,
#zoompic-10-de:target,
#zoompic-11-de:target,
#zoompic-12-de:target,
#zoompic-1-en:target,
#zoompic-2-en:target,
#zoompic-3-en:target,
#zoompic-4-en:target,
#zoompic-5-en:target,
#zoompic-6-en:target,
#zoompic-7-en:target,
#zoompic-8-en:target,
#zoompic-9-en:target,
#zoompic-10-en:target,
#zoompic-11-en:target,
#zoompic-12-en:target {
  display: block;
}

/* 2.2 Purchase Details (right) */

.midColumn {
  width: auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.midColumn h1 {
  margin: 0;
  color: var(--primary-charcoal);
  font-family: Inter;
  font-size: 28px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
  text-decoration: underline;
}

/* purchase details -> short description */

.short-description p {
  width: 100%;
  max-width: 380px;
  color: #514f4d;
  font-family: Inter;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 130%;
  margin-top: -8px;
  margin-bottom: 6px;
}

/* purchase details -> product condition */

.condition-container {
  display: flex;
  flex-direction: column;
}

.condition-container p {
  margin: 0 0 8px 0;
  color: #514f4d;
  font-size: 12px;
  font-style: italic;
  font-weight: 400;
  line-height: 150%;
}

.condition {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 24px;
  border-radius: 6px;
  border: 1px solid #9f9f9f;
  background-color: var(--white);
}

.condition p {
  margin: 0;
  color: #514f4d;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  text-transform: uppercase;
}

/* purchase details -> product description */

.product-description {
  font-family: var(--primary-font);
  color: var(--black);
  font-size: var(--body-S);
  font-weight: 300;
  background-color: var(--bg-color);
  gap: 8px;
  display: flex;
  flex-direction: column;
  padding-bottom: 16px;
}

.product-description details {
  order: 2;
  padding: 0px;
  border: none;
}

.product-description details summary {
  display: flex;
  gap: 10px;
  color: var(--primary-orange);
  font-size: var(--body-M);
}

.product-description details summary::marker {
  display: none;
}

.product-description details .toggle-text-de::before {
  content: "Mehr lesen";
}

.product-description details[open] .toggle-text-de::before {
  content: "Weniger lesen";
}

.product-description details .toggle-text-en::before {
  content: "Read more";
}

.product-description details[open] .toggle-text-en::before {
  content: "Read less";
}

.product-description details[open] summary .toggle-icon {
  transform: rotate(180deg);
}

.product-description details[open] ~ p {
  -webkit-line-clamp: 9999;
  overflow: visible;
}

.product-description > p {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 0;
}

/* Purchase Details -> trustS badge  */

.rating-container {
  display: flex;
  flex-direction: row;
  gap: 10px;
  object-fit: contain;
  align-items: center;
}

.rating-img {
  height: auto;
  object-fit: cover;
}

.rating-img--smaller {
  width: 140px;
  margin-bottom: 20px;
}

.rating-img--larger {
  width: 220px;
}

/* Purchase Details -> cart  */

.cart-button {
  display: flex;
}

/* ------ 3. Specs Tab ------ */

/* Tab bar */

.section--specs-tab {
  display: flex;
  flex-direction: column;
}

.tabbar-container {
  background-color: var(--primary-grey);
}

.tabbar-container .tabbar {
  display: flex;
  flex: row wrap;
  margin: 0 auto;
  overflow: hidden;
  align-items: center;
}

.section--specs-tab input[type="radio"] {
  display: none;
}

.tabbar-container .tab {
  display: block;
  color: white;
  font-weight: 400;
  font-family: var(--primary-font);
  padding: 16px 16px;
  margin: 16px 16px;
  text-align: center;
  cursor: pointer;
  border-radius: 6px;
  transition: background-color 0.3s;
}

.tabbar-container .tab:first-of-type {
  margin-left: 0;
}

.tabbar-container .tab:hover {
  display: block;
  background-color: #f67316;
  color: white;
  border-radius: 6px;
}

.tabbar-container ~ .tabcontent {
  display: none;
}

/* display de-content */
#tab1-de:checked ~ #tab1-de-content,
#tab2-de:checked ~ #tab2-de-content,
#tab3-de:checked ~ #tab3-de-content,
#tab4-de:checked ~ #tab4-de-content,
#tab5-de:checked ~ #tab5-de-content,
  /* display en-content */
#tab1-en:checked ~ #tab1-en-content,
#tab2-en:checked ~ #tab2-en-content,
#tab3-en:checked ~ #tab3-en-content,
#tab4-en:checked ~ #tab4-en-content,
#tab5-en:checked ~ #tab5-en-content {
  display: block;
  padding-bottom: 40px;
}

/* highlight de- tabs */
#tab1-de:checked ~ .tabbar-container .tab[for="tab1-de"],
#tab2-de:checked ~ .tabbar-container .tab[for="tab2-de"],
#tab3-de:checked ~ .tabbar-container .tab[for="tab3-de"],
#tab4-de:checked ~ .tabbar-container .tab[for="tab4-de"],
#tab5-de:checked ~ .tabbar-container .tab[for="tab5-de"],
  /* highlight en- tabs */
#tab1-en:checked ~ .tabbar-container .tab[for="tab1-en"],
#tab2-en:checked ~ .tabbar-container .tab[for="tab2-en"],
#tab3-en:checked ~ .tabbar-container .tab[for="tab3-en"],
#tab4-en:checked ~ .tabbar-container .tab[for="tab4-en"],
#tab5-en:checked ~ .tabbar-container .tab[for="tab5-en"] {
  background-color: #f67316;
}

/* Tab content global styles */

.tabbar__content {
  width: 100%;
}

.tabbar__content details {
  position: relative;
  border-top: 1px solid #ccd0d0;
  padding: 26px 0;
}

.tabbar__content details:last-of-type {
  border-bottom: 1px solid #ccd0d0;
}

.tabbar__content details:first-of-type {
  border-top: none;
}

.tabbar__content summary {
  padding-right: 20px;
  color: var(--primary-charcoal);
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
}

.tabbar__content details span {
  display: block;
  margin-top: 15px;
  color: #514f4d;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
}

.tabbar__content summary:after {
  content: url(https://cybertrading.de/d700/img/angle-tabbar.svg);
  color: #222;
  position: absolute;
  right: 0px;
  top: 34px;
  font-size: 24px;
  line-height: 24px;
  transition: transform 0.3s ease-out;
  transform-origin: center center;
}

.tabbar__content details[open] summary:after {
  content: url(https://cybertrading.de/d700/img/angle-tabbar.svg);
  transform: rotate(180deg);
}

.tabbar__content details > summary {
  cursor: pointer;
  list-style: none;
}

/* ------ 3. Tab Content ------ */

.section--main,
.section--details,
.section--invoicing,
.section--info-boxes,
.section--trust,
.section--about-us,
.section--video,
.section--list,
.section--QA,
.section--services,
.section--social-platforms {
  padding: 60px 0;
}

/* -- Tab 1 - Product Details / Produktdetails -- */

.section--details {
  flex-direction: column;
}

.section--details h2 {
  margin: 0 0 24px 0;
  color: #0b0501;
  font-size: 38px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
}

.section--details p {
  color: #514f4d;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
}

.table {
  font-family: var(--primary-font);
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid #ddd;
  border-radius: 6px;
  overflow: hidden;
}

.table tr td:last-child {
  border-left: 1px solid #ddd;
}

.table td {
  padding: 16px 24px;
  font-family: var(--primary-font);
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  text-align: left;
}

.table tr td:nth-child(2) {
  font-weight: 300;
}

.table tr:nth-child(even) {
  background-color: #f2f2f2;
}

/* -- Tab 2 - Payment & Shipping / Zahlung & Versand -- */

/* Tab 2.1 Invoice Service */

.section--invoicing .left {
  align-items: flex-start;
}

.section--invoicing .right {
  width: 100%;
  align-items: flex-start;
}

.section--invoicing .container-width {
  display: flex;
  align-items: baseline;
  gap: 75px;
  align-items: flex-start;
}

.section--invoicing h2 {
  margin: 0;
  color: var(--primary-charcoal);
  font-family: Inter;
  font-size: 38px;
  font-style: normal;
  font-weight: 500;
  /* line-height: 120%; */
  padding: 0;
}

/* Tab 2.2 Shipping Providers */

.shipping-container ul {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0;
  list-style: none;
  margin: 0;
}

.shipping-container ul li {
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
}

.shipping-container ul li.shipping {
  color: var(--primary-green);
}

.shipping-container ul li.shipping::before {
  content: "\2022";
  margin-right: 6px;
  color: var(--primary-green);
}

.shipping-container ul li.garantie::before {
  position: absolute;
  content: url("https://cybertrading.de/d700/img/Vector.svg");
  margin-left: -24px;
  color: var(--primary-orange);
}

.shipping-container ul li.garantie {
  color: var(--primary-orange);
  margin-left: 25px;
}

.shipping-images-container {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 15px 0px;
}

.shipping-images-container p {
  /* margin: 0 0 8px 0; */
  color: #514f4d;
  font-size: 12px;
  font-style: italic;
  font-weight: 400;
  line-height: 150%;
  /* padding-top: 60px; */
}

.shipping-images {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 24px;
  row-gap: 16px;
}

.shipping-images img {
  width: auto;
  max-height: 30px;
}

/* Tab 2.3 Service Information */

.section--info-boxes {
  background-color: var(--white);
  display: none;
}

.section--info-boxes .container-width {
  display: flex;
  gap: 30px;
}

.section--info-boxes .left,
.section--info-boxes .right {
  width: calc(50% - 15px);
  padding: 50px;
  border-radius: 6px;
}

.section--info-boxes .left h3,
.section--info-boxes .right h3 {
  margin: 0 0 24px 0;
  font-size: 28px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
}

.section--info-boxes .left h3 {
  color: #0b0501;
}

.section--info-boxes .left ul li + li,
.section--info-boxes .right ul li + li {
  margin-top: 16px;
}

.section--info-boxes .left ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.section--info-boxes .right ul {
  padding-left: 20px;
}

.section--info-boxes .left ul li {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #514f4d;
}

.section--info-boxes .left ul li img {
  width: 24px;
  height: 24px;
}

.section--info-boxes .left ul li,
.section--info-boxes .right ul li {
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
}

.section--info-boxes .right h3,
.section--info-boxes .right ul li {
  color: #fff;
}

/* -- Tab 3 - Services / Leistungen -- */

.section--services {
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: 30px;
  padding: 60px 50px;
}

.section--services .service-card {
  display: flex;
  flex-direction: column;
  border-radius: 6px;
  background: #f5f5f5;
  margin: 0px;
  gap: 24px;
  padding-bottom: 40px;
}

.section--services .service-card img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}

.section--services .service-card .text-box {
  display: flex;
  padding: 0px 24px;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  font-family: Inter;
}

.section--services .service-card .text-box p {
  margin: 0px;
  font-size: var(--body-S);
  font-weight: 300;
  line-height: 150%;
}

.section--services .service-card .text-box h3 {
  margin: 0px;
  font-size: var(--body-L);
  font-weight: 500;
}

.section--services .service-card .text-box .refurb__desktop {
  height: 93px;
  max-width: 487.5px;
  object-fit: contain;
}

.section--services .service-card .refurb__mobile {
  display: none;
}

/* -- Tab 4 - About Us / Über uns -- */

/* Tab 4.1 Benefits Video */

.section--video {
  padding-bottom: 100px;
}

.section--video video {
  width: 100%;
  max-height: 460px;
}

.benefit-container {
  display: flex;
  justify-content: center;
  padding: 40px 20px;
  background-color: #fff;
}

.benefit-container .benefit-inner-container {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  width: 100%;
  max-width: 740px;
}

.benefit-container .item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.section--video h2 {
  width: 100%;
  max-width: 720px;
  margin: 0 0 40px 0;
  font-size: 38px;
  font-weight: 500;
}

.section--video h2 span {
  color: #ff8317;
}

.benefit-container h3 {
  margin: 0 0 10px 0;
  font-size: 38px;
  font-weight: bold;
}

.benefit-container h4 {
  margin: 0;
  font-size: 18px;
  font-weight: 400;
}

.benefit-container span {
  margin: 0;
  font-size: 18px;
  font-weight: 200;
}

.section--video img {
  width: 100%;
  max-height: 460px;
}

/* Tab 4.2 Choose Us */

.section--list h2 {
  margin: 0 0 40px 0;
  font-size: 38px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
  color: #fff;
}

.section--list ul {
  display: flex;
  flex-wrap: wrap;
  column-gap: 70px;
  row-gap: 16px;
  padding: 0;
  list-style: none;
}

.section--list ul li:before {
  position: absolute;
  content: url("https://cybertrading.de/d700/img/Vector-r.svg");
  margin-left: -23px;
}

.section--list ul li {
  width: calc(42% - 8px);
  margin-left: 23px;
  font-size: 18px;
  color: #fff;
  font-weight: 400;
  line-height: 150%;
}

.section--bg img {
  width: 100%;
  height: 360px;
  object-fit: cover;
}

/* Tab 4.3 Trusted Shops */

.section--trust .container-width {
  display: flex;
  gap: 30px;
}

.section--trust .left {
  width: 100%;
  max-width: 680px;
  height: 520px;
}

.section--trust .right {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 400px;
}

.section--trust img {
  width: 100%;
  object-fit: cover;
}

.section--trust .left img {
  height: auto;
}

.section--trust .right img.second,
.section--trust .right img.third {
  width: 100%;
  max-width: fit-content;
  max-height: 170px;
  margin-bottom: 25px;
}

.section--trust img.fourth {
  height: auto;
}

.section--trust h2 {
  margin: 0 0 40px 0;
  font-size: 38px;
  font-weight: 500;
  line-height: 46px;
}

.section--trust .right p {
  margin: 40px 0 25px 0;
}

/* Tab 4.4 Follow Us  */

.section--social-platforms {
  display: flex;
  padding-top: 60px;
  padding-bottom: 60px;
}

.section--social-platforms .container-width {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.section--social-platforms h2 {
  margin: 0;
  font-size: 38px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
}

.section--social-platforms .platform-list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 10px;
}

.social-icons {
  width: auto;
  max-height: 50px;
}

/* -- Tab 5 - FAQ -- */

.section--QA h2 {
  margin: 0 0 16px 0;
  font-size: 38px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
}

.section--QA p {
  margin: 0 0 32px 0;
  font-size: 18px;
  font-weight: 300;
}

/* see further associated declarations under "tabbar__content" */

/* ------ 4. Footer ------ */

footer {
  font-family: var(--primary-font);
  color: var(--white);
  font-size: var(--body-S);
  line-height: 1.5;
  background-color: var(--primary-grey);
}

footer .container-width {
  display: flex;
  flex-direction: column;
  padding: 45px 50px;
  gap: 85px;
}

/* 4.1 Footer Contact */

footer .footer-contact {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  overflow: hidden;
}

footer .footer-contact .footer-contact__left-container {
  display: flex;
  gap: 30px;
}

footer .footer-contact .footer-contact__left-container img {
  width: 300px;
  object-fit: cover;
}

footer .footer-contact .footer-contact__left-container .title-btn {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
}

footer .footer-contact .footer-contact__left-container .title-btn h2 {
  font-size: var(--heading-1);
  font-weight: 400;
  line-height: 1.2;
  margin-top: 0;
}

footer .footer-contact .footer-contact__left-container .title-btn .contact-btn {
  background-color: var(--primary-orange);
  border: none;
  border-radius: 6px;
  color: var(--white);
  font-size: var(--heading-3);
  font-weight: 600;
  height: 56px;
  max-width: 278px;
  width: 100%;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

footer .footer-contact .logo__desktop {
  width: 197px;
}

/* 4.2 Footer USPs */

footer .footer-usp {
  display: flex;
  flex-direction: row;
  gap: 60px;
  justify-content: space-between;
  margin: 0;
}

footer .usp-container {
  flex-direction: column;
  flex: 1;
  width: calc(25% - 60px);
}

footer .usp-container div {
  display: flex;
  flex-direction: row;
  gap: 12px;
  align-items: flex-start;
  padding-bottom: 16px;
}

footer .usp-container div img {
  width: auto;
  height: auto;
  margin-top: 5px;
}

footer .usp-container div h3 {
  word-break: break-word;
  color: var(--primary-orange);
  font-size: var(--body-L);
  margin: 0;
}

footer .usp-container p {
  margin: 0;
  word-break: break-word;
  font-weight: 300;
}

/* 4.3 Footer Menu */

footer .footer-menu {
  display: flex;
  flex-direction: column;
  font-weight: 300;
}

footer .footer-menu nav {
  padding-bottom: 45px;
}

footer .footer-menu nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

footer .footer-menu nav ul li a {
  text-decoration: none;
  color: var(--white);
}

footer .footer-menu .copyright__desktop {
  font-size: var(--size-M);
  margin-left: auto;
}

footer .footer-menu .copyright__mobile {
  font-size: var(--size-M);
  display: none;
}

footer .logo__mobile {
  display: none;
  margin: 0;
}

/* ------ Desktop ------ */

@media (max-width: 1170px) {
  .bigPic {
    height: 360px;
  }

  .gallery {
    padding-top: 390px;
  }

  .galleryThumb {
    width: 31%;
    height: 125px;
  }
}

/* ------ Laptops ------ */

@media (max-width: 1024px) {
  .container-width {
    padding: 0 30px;
  }

  .header-background-image img {
    height: 300px;
  }

  .section--main,
  .section--details,
  .section--invoicing,
  .section--info-boxes,
  .section--trust,
  .section--about-us,
  .section--video,
  .section--list,
  .section--QA,
  .section--services,
  .section--social-platforms {
    padding: 60px 0;
  }

  .midColumn {
    width: 100%;
    margin-top: 30px;
  }

  .galleryThumb {
    width: 30.5%;
    height: 110px;
  }

  .bigPic img {
    max-height: 73%;
  }
}

/* ------ Tablets ------ */

@media (max-width: 850px) {
  summary {
    font-size: 16px;
  }

  /* ------ 1. Header ------ */

  header .header-usp .container-width {
    padding: 30px 35px;
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
  }
  .header-usp .usp-container {
    width: calc(50% - 10px);
    flex: initial;
  }

  /* ------ 2. Product Information ------ */

  .section--main--flex-r {
    flex-direction: column;
    align-items: center;
  }

  /* 2.1 Product gallery */
  .gallery {
    width: 100%;
    min-width: 100%;
    margin-right: 0;
  }
  .gallery a.toggle {
    margin-top: 3px;
    display: flex;
    color: #ff8317;
    font-size: 12px;
    cursor: pointer;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
  }
  input#show-text:checked ~ p,
  input#show-text-en:checked ~ p {
    display: block;
  }
  input#show-text:checked ~ label.show-text,
  input#show-text-en:checked ~ label.show-text {
    display: none;
  }
  input#hide-text:checked ~ p,
  input#hide-text-en:checked ~ p {
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  input#hide-text:checked ~ label.hide-text,
  input#hide-text-en:checked ~ label.hide-text {
    display: none;
  }
  .galleryThumb {
    width: 31%;
    height: 140px;
  }

  /* 2.2 Purchase information */
  .short-description {
    gap: 2px;
    font-size: var(--body-XS);
    margin-top: -8px;
  }
  .short-description details {
    font-size: var(--body-XS);
  }
  .short-description summary::before {
    transform: rotate(270deg);
  }
  .short-description > p {
    -webkit-line-clamp: 4;
  }

  /* ------ 3. Specs Tab + Content ------ */

  .tabbar-container {
    padding: 0;
  }
  .section--question h2,
  .section--details h2,
  .section--invoicing h2,
  .section--trust h2,
  .section--about-us h2,
  .section--video h2,
  .benefit-container h3,
  .section--list h2,
  .section--services h2,
  .section--social-platforms h2 {
    font-size: 28px;
  }

  .section--main,
  .section--details,
  .section--invoicing,
  .section--info-boxes,
  .section--trust,
  .section--about-us,
  .section--video,
  .section--list,
  .section--QA,
  .section--services,
  .section--social-platforms {
    padding: 40px 0;
  }

  /* Tab 2 - Payment & Shipping / Zahlung & Versand */
  .section--question p,
  .section--details p {
    font-size: 20px;
  }
  .section--details p {
    margin: 0 0 16px 0;
  }
  .section--invoicing .container-width {
    flex-direction: column;
    gap: 10px;
  }
  .section--info-boxes .left h3,
  .section--info-boxes .right h3 {
    font-size: 24px;
  }
  .section--info-boxes .left,
  .section--info-boxes .right {
    padding: 30px;
  }
  .section--info-boxes .container-width {
    gap: 24px;
  }
  .section--list ul {
    column-gap: 50px;
  }
  .section--services {
    padding: 40px 30px;
  }

  /* ------ 4. Footer ------ */

  footer {
    padding: 30px 35px;
    gap: 40px;
  }
  footer .container-width {
    padding: 0;
    gap: 60px;
  }
  footer .footer-contact {
    flex-direction: row;
  }
  footer .footer-contact .footer-contact__left-container {
    width: 100%;
  }
  footer .footer-contact .footer-contact__left-container img {
    width: 300px;
  }
  footer .footer-contact .footer-contact__left-container .title-btn h2 {
    font-size: var(--heading-2);
  }
  footer .footer-contact .footer-contact__left-container .title-btn button {
    font-size: var(--body-M);
    margin: 0px;
    height: 56px;
    max-width: 278px;
    width: 100%;
  }
  footer .footer-contact .logo__desktop {
    display: none;
  }
  footer .logo__mobile {
    display: flex;
    height: 60px;
    width: 98.3px;
  }
  footer .footer-usp {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  footer .footer-usp .usp-container {
    width: 100%;
    gap: 12px;
  }
}

/* ------ Mobile Large ------ */

@media (max-width: 660px) {
  .section--info-boxes .left h3,
  .section--info-boxes .right h3 {
    font-size: 20px;
  }

  .section--info-boxes .left ul li,
  .section--info-boxes .right ul li {
    font-size: 16px;
  }

  .section--info-boxes .left,
  .section--info-boxes .right {
    padding: 20px;
  }

  .section--trust .container-width {
    flex-direction: column;
    gap: 20px;
    display: none;
  }

  .section--trust .left {
    width: 100%;
    max-width: 100%;
    height: auto;
  }

  .section--trust .right {
    flex-wrap: wrap;
    flex-direction: row;
  }

  .section--trust .right img.second,
  .section--trust .right img.third {
    width: 48%;
    max-height: 100px;
  }

  .section--trust .right-img {
    display: flex;
    gap: 20px;
  }
  .section--trust .right p {
    margin: 20px 0 16px 0;
  }

  .section--about-us .top,
  .section--about-us .bottom {
    height: auto;
  }

  .section--bg img {
    height: 250px;
  }

  .section--process h2 {
    margin-bottom: 8px;
  }

  .section--process p {
    font-size: 16px;
  }

  .section--process img.refurb__desktop {
    display: none;
  }

  .section--process .on-mobile {
    display: flex;
    flex-direction: column;
  }

  .section--process .col:nth-child(1) {
    background-color: #ff8317;
  }

  .section--process .col:nth-child(2) {
    background-color: #ffa04d;
  }

  .section--process .col:nth-child(3) {
    background-color: #ffbb80;
  }

  .section--process .col:nth-child(3) span {
    color: #ff8317;
  }

  .section--process .col:nth-child(3) p {
    color: #514f4d;
  }

  .section--process .col:nth-child(4) {
    background-color: #ffd6b2;
  }

  .section--process .col:nth-child(4) span {
    color: #ff8317;
  }

  .section--process .col:nth-child(4) p {
    color: #514f4d;
  }

  .section--process .col:nth-child(5) {
    background-color: #fff1e5;
  }

  .section--process .col:nth-child(5) span {
    color: #ff8317;
  }

  .section--process .col:nth-child(5) p {
    color: #514f4d;
  }

  .section--process .col {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 calc(50% - 50vw);
    padding: 10px 35px;
    color: #fff;
    text-transform: uppercase;
  }

  .section--process .col span {
    font-size: 38px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
  }

  .section--process .col p {
    margin: 0;
    color: var(--white);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
  }
}

/* ------ Mobile Small ------ */

@media (max-width: 600px) {
  .container-width {
    padding: 0 10px;
  }
  a.btn.btn-secondary {
    max-width: 100%;
  }

  /* ------ 1. Header ------ */

  /* Header Menu */
  .navigationContainer img {
    max-width: 90px;
  }
  .navigationContainer ul li:first-of-type img {
    display: none;
  }
  .navigationContainer ul li:nth-child(2) a,
  .navigationContainer ul li:nth-child(3) a {
    display: none;
  }
  .navigationContainer ul {
    gap: 20px;
  }

  /* Header USPs */
  header .header-usp .container-width {
    padding: 24px 15px;
    display: block;
  }
  .header-usp .usp-container:not(:first-child) {
    display: none;
  }
  .header-usp .usp-container {
    width: 100%;
  }

  /* ------ 2. Product Information ------ */

  /* Purchase Details */
  .midColumn h1 {
    font-size: 20px;
  }
  .short-description {
    gap: 2px;
    font-size: var(--body-XS);
  }
  .short-description details {
    font-size: var(--body-XS);
  }
  .short-description summary::before {
    transform: rotate(270deg);
  }
  .short-description > p {
    -webkit-line-clamp: 4;
  }
  .short-description p {
    max-width: 100%;
    /* margin: 16px 0 24px 0; */
    font-size: 16px;
  }
  .condition {
    padding: 13px;
  }
  .condition-container p {
    font-size: 14px;
  }
  .shipping-container ul li.shipping,
  .shipping-container ul li.garantie {
    font-size: 14px;
  }
  .product-description {
    gap: 8px;
  }
  .product-description details {
    font-size: var(--body-XS);
  }
  .product-description > p {
    -webkit-line-clamp: 2;
  }

  /* ------ 3. Specs Tab + Content ------ */

  /* Tab bar navigation */
  .tabbar-container .tabbar {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0;
    overflow: hidden;
    padding: 16px 10px;
    justify-content: space-evenly;
    gap: 16px;
  }
  .tabbar-container .tabbar .container-width {
    padding: 0;
  }
  .tabbar-container .tabbar .tab {
    padding: 12px 8px;
    margin: 0;
  }

  /* Tab Content */
  .tabbar__content summary {
    font-size: var(--body-L);
  }

  /* Tab 1 - Product Details / Produktdetails */
  .table td,
  .table th {
    padding: 16px;
    font-size: 16px;
  }
  .table-container {
    width: 100%;
    overflow: auto;
  }
  .section--details .container-width {
    padding-right: 0;
  }
  /* Tab 2 - Payment & Shipping / Zahlung & Versand */
  .section--info-boxes .container-width {
    flex-direction: column;
    gap: 20px;
    padding: 0;
  }
  .section--info-boxes .left,
  .section--info-boxes .right {
    width: 100%;
    margin: 0 calc(50% - 50vw);
    border-radius: 6px;
    padding: 40px 10px;
  }

  /* Tab 3 - Services / Leistungen */
  .section--services {
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding: 40px 0;
  }
  .section--services .service-card:first-child {
    padding-bottom: 0;
  }
  .section--services .service-card .text-box h3 {
    font-size: var(--heading-2);
  }
  .section--services .service-card .text-box p {
    font-size: var(--body-M);
  }
  .section--services img.refurb__desktop {
    display: none;
  }
  .section--services .service-card .refurb__mobile {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    width: 100%;
  }
  .section--services .service-card .refurb-gradient {
    display: flex;
    flex-direction: row;
    gap: 8px;
    align-items: center;
    color: var(--primary-grey);
    padding: 10px;
    margin: 0;
  }
  .section--services .service-card .refurb-gradient h3 {
    font-size: 38px;
    font-weight: 500;
    color: var(--primary-orange);
    margin: 0;
  }
  .section--services .service-card .refurb-gradient:nth-child(1) h3,
  .section--services .service-card .refurb-gradient:nth-child(2) h3 {
    color: var(--white);
  }
  .section--services .service-card .refurb-gradient:nth-child(1) {
    background-color: #f67316;
    color: var(--white);
  }
  .section--services .service-card .refurb-gradient:nth-child(2) {
    background-color: #ffa04d;
    color: var(--white);
  }
  .section--services .service-card .refurb-gradient:nth-child(3) {
    background-color: #ffbb80;
  }
  .section--services .service-card .refurb-gradient:nth-child(4) {
    background-color: #ffd6b2;
  }
  .section--services .service-card .refurb-gradient:nth-child(5) {
    background-color: #fff1e5;
  }

  /* Tab 4 - About Us / Über uns */
  .benefit-container .benefit-inner-container {
    flex-direction: column;
    gap: 20px;
  }
  .benefit-container h3 {
    margin: 0 0 8px 0;
  }
  .section--video h2 {
    margin-bottom: 15px;
  }
  .section--list .container-width {
    padding: 0 15px;
  }
  .section--list h2 {
    margin-bottom: 30px;
  }
  .section--list ul {
    flex-direction: column;
    padding-right: 23px;
  }
  .section--list ul li {
    width: 100%;
  }

  /* ------ 4. Footer ------ */

  footer {
    padding: 40px 15px;
    gap: 40px;
  }
  footer .footer-contact .footer-contact__left-container {
    flex-direction: column;
    align-items: center;
    width: 100%;
    text-align: center;
  }
  footer .footer-contact .footer-contact__left-container img {
    width: 100%;
  }
  footer .footer-contact .footer-contact__left-container .title-btn {
    width: 100%;
    align-items: center;
  }
  footer .footer-contact .footer-contact__left-container .title-btn h2 {
    font-size: var(--heading-2);
    margin-top: auto;
    width: 100%;
  }
  footer .footer-contact .footer-contact__left-container .title-btn button {
    font-size: var(--body-M);
    margin: 0px;
    height: 52px;
  }
  footer .footer-contact .logo__desktop {
    display: none;
  }
  footer .logo__mobile {
    display: flex;
    height: 60px;
    width: 98.3px;
  }
  footer .footer-usp {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  footer .footer-usp .usp-container {
    width: 100%;
    gap: 12px;
  }
  footer .footer-menu nav ul {
    flex-direction: column;
  }
  footer .footer-menu .copyright__desktop {
    display: none;
  }
  footer .footer-menu .copyright__mobile {
    display: flex;
  }
}