* {
  padding: 0;
  margin: 0;
}

.navlist div {
  display: none;
}
@media screen and (min-width: 769px) {
  .navlist div {
    display: flex;
  }
}

@media screen and (min-width: 769px) {
  .material-symbols-outlined {
    display: none;
  }
  .sidediv {
    display: none;
  }

  .sidebar div {
    display: none;
  }
  .hamburger {
    display: none;
  }
}

header {
  height: 60px;
  width: 100%;
  position: fixed;
  z-index: 1000000;
  top: 0;
  background-color: whitesmoke;
}

.mainnav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0px 40px;
  background-color: whitesmoke;
}

.mainnav a img {
  width: 80px;
  padding: 5px 0px 0px 0px;
}
.navlist {
  width: 600px;
  display: flex;
  justify-content: space-between;
  list-style: none;
  letter-spacing: 2px;
  color: black;
  flex-basis: 60%;
}

.navmodhover {
  margin-top: 44px;
  position: absolute;
  background-color: aqua;
}

.navloc {
  margin: 0px 0px 10px 0px;
}
.navloc i {
  color: black;
}

.navloc i:hover {
  color: red;
}

.navmod:hover,
.navown:hover,
.navabt:hover,
.navtech:hover {
  color: red;
  cursor: pointer;
}
.navmodgrp:hover .navmodpopup {
  display: grid;
}
#menuclose {
  display: none;
}

.hamburger {
  display: flex;
  justify-content: space-around;
  width: 150px;
}
.hamburger a {
  color: black;
}
#menuopen:hover,
#menuclose:hover,
#searchopen:hover {
  color: red;
}

.sidediv {
  width: 100%;
  height: min-content;
}
.sidebar {
  position: relative;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  background-color: whitesmoke;
  list-style: none;
  flex-direction: column;
  gap: 0;
  display: none;
  max-height: calc(100vh - 9rem);
  overflow-y: auto;
}
.modsidelist,
.abtsidelist,
.techsidelist,
.ownsidelist,
.findastore {
  width: 100%;
  padding: 20px;
  text-align: center;
  letter-spacing: 5px;
  cursor: pointer;
}
.modsidelist:hover,
.abtsidelist:hover,
.techsidelist:hover,
.ownsidelist:hover,
.findastore:hover {
  background-color: black;
  color: white;
  font-weight: bold;
}

.hovermod {
  display: none;
  grid-template-columns: 50% 50%;
  grid-template-rows: auto auto;
  padding: 20px;
  text-align: center;
  row-gap: 50px;
  background-color: white;
}
/*Hover on modsidelist to reveal hovermod*/
.modgrp:hover .hovermod {
  display: grid;
}

.seal img,
.han img,
.dolphin img {
  width: 150px;
}
.seal a,
.dolphin a,
.han a {
  text-decoration: none;
  color: black;
}
.abtgrp {
  text-align: center;
}
.abtgrp a {
  display: none;
  padding: 10px 0px 10px 40px;
  text-align: center;
  color: black;
  text-decoration: none;
}
.abtgrp:hover .hoverabt {
  display: block;
}

.hoverabt:hover {
  text-decoration: underline;
}

.techgrp {
  text-align: center;
}
.techgrp a {
  padding: 10px 0px 10px 40px;
  text-align: center;
  color: black;
  text-decoration: none;
}
.hovertech {
  display: none;
}
.techgrp:hover .hovertech {
  display: flex;
  flex-direction: column;
}
.hovertech:hover {
  text-decoration: underline;
}

.owngrp {
  text-align: center;
}
.owngrp a {
  padding: 10px 0px 10px 40px;
  text-align: center;
  color: black;
  text-decoration: none;
}
.hoverown {
  display: none;
}
.owngrp:hover .hoverown {
  display: flex;
  flex-direction: column;
}
.hoverown:hover {
  text-decoration: underline;
}
.material-symbols-outlined {
  cursor: pointer;
  padding: 0px 0px 0px 15px;
}
/*MAIN CONTENT*/

main {
  box-sizing: border-box;
  width: 100%;
  margin-top: 60px;
}
.maindiv {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  width: 100%;
  color: white;
  gap: 32px;
}
.maindiv img {
  width: 100%;
}

.byd-dolphin {
  border: 0;
  margin: 0px;
  padding: 0;
  width: 100%;
  position: relative;
  text-align: center;
}

.top {
  position: absolute;
  left: 0;
  right: 0;
  top: 25vw;
  text-align: center;
}
h2 {
  font-size: 28px;
  line-height: 1.375;
  margin-bottom: 16px;
  font-weight: 700;
}
.top p {
  font-size: 16px;
  line-height: 24px;
  vertical-align: baseline;
  margin-block-start: 1em;
  margin-block-end: 1em;
}
.bottom {
  text-align: center;
  left: 0;
  right: 0;
  position: absolute;
  bottom: 40px;
}
ul {
  text-align: center;
  display: flex;
  padding: 0px 30px 0px 30px;
  justify-content: space-between;

  align-items: normal;
  list-style: none;
  list-style-image: none;
}
ul :first-child {
  padding: 0 2.0521vw;
  margin-bottom: 20px;
}
ul :last-child {
  padding: 0 2.0521vw;
  margin-bottom: 20px;
}

.bottom2 {
  padding: 0 2.0521vw;
  text-align: center;
}
.bottom2 ul {
  display: block;
}
.ocean {
  align-items: center;
  padding-top: 64px;
  flex-direction: column;
  justify-content: space-between;
}
.ocean-desc {
  align-items: center;
  color: black;
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding: 16px;
}
.ocean-ext {
  font-size: 16px;
  line-height: 24px;
  text-align: center;
  font-weight: 500;
  color: #7c7d7e;
}
.ocean-aes {
  font-size: 26px;
  line-height: 32px;
  text-align: center;
  font-style: normal;
  font-weight: 700;
}

.ocean-text {
  display: flex;
  padding: 16px;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 10px;
  align-self: stretch;
}
.div {
  margin: 0 auto;
  width: 24px;
  height: 2px;
  background: #d70c19;
}
.ocean-txt {
  text-align: center;
  color: #252728;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}
.ocean-img {
  padding: 0 10px;
}
.htlight {
  display: flex;
  flex-direction: column;
  padding: 64px 42px;
  gap: 16px;
}
.htlight-text {
  display: flex;
  flex-direction: column;
  opacity: 1;
  gap: 8px;
}
.htlight-head {
  color: #252728;
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
}
.div2 {
  width: 24px;
  height: 2px;
  background: #d70c19;
}
.htlight-desc {
  color: #252728;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
}
/*swiper 1*/

.swiper-pagination {
  position: absolute;
  bottom: 0px;
  background-color: white;
}
.swiper-wrapper {
  padding-bottom: 30px;
}
.center-console {
  padding: 0 10px;
}
.screen {
  display: flex;
  flex-direction: column;
  padding: 64px 42px;
  gap: 16px;
}
.screen-text {
  display: flex;
  flex-direction: column;
  opacity: 1;
  gap: 8px;
}
.screen-head {
  color: #252728;
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
}
.div2 {
  width: 24px;
  height: 2px;
  background: #d70c19;
}
.screen-desc {
  color: #252728;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
}

.control-text {
  display: flex;
  flex-direction: column;
  opacity: 1;
  gap: 8px;
}

.control-head {
  color: #252728;
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
}

.control-desc {
  color: #252728;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
}

.vegpancon {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
}

.vegan {
  display: flex;
  flex-direction: column;
  padding: 0 32px;
}
.vegan-img {
  align-self: stretch;
}

.vegan-desc {
  display: flex;
  padding: 32px 16px;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  flex: 1 0 0;
  align-self: stretch;
  background: #f7f7f7;
}
.vegan-head {
  color: #252728;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
}
.vegan-text {
  color: #515253;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}

.pano {
  display: flex;
  flex-direction: column;
  padding: 0 32px;
}
.pano-img {
  align-self: stretch;
}

.pano-desc {
  display: flex;
  padding: 32px 16px;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  flex: 1 0 0;
  align-self: stretch;
  background: #f7f7f7;
}
.pano-head {
  color: #252728;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
}
.pano-text {
  color: #515253;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}

.connect {
  display: flex;
  flex-direction: column;
  padding: 0 32px;
}
.connect-img {
  align-self: stretch;
}

.connect-desc {
  display: flex;
  padding: 32px 16px;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  flex: 1 0 0;
  align-self: stretch;
  background: #f7f7f7;
}
.connect-head {
  color: #252728;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
}
.connect-text {
  color: #515253;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}

.stocomboot {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
}
.storage {
  display: flex;
  flex-direction: column;
  padding: 0 32px;
}
.storage-img {
  align-self: stretch;
}

.storage-desc {
  display: flex;
  padding: 32px 16px;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  flex: 1 0 0;
  align-self: stretch;
  background: #f7f7f7;
}
.storage-head {
  color: #252728;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
}
.storage-text {
  color: #515253;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}

.comfort {
  display: flex;
  flex-direction: column;
  padding: 0 32px;
}
.comfort-img {
  align-self: stretch;
}

.comfort-desc {
  display: flex;
  padding: 32px 16px;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  flex: 1 0 0;
  align-self: stretch;
  background: #f7f7f7;
}
.comfort-head {
  color: #252728;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
}
.comfort-text {
  color: #515253;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}

.boot {
  display: flex;
  flex-direction: column;
  padding: 0 32px;
}
.boot-img {
  align-self: stretch;
}

.boot-desc {
  display: flex;
  padding: 32px 16px;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  flex: 1 0 0;
  align-self: stretch;
  background: #f7f7f7;
}
.boot-head {
  color: #252728;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
}
.boot-text {
  color: #515253;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}

.charging {
  align-items: center;
  padding-top: 64px;
  flex-direction: column;
  justify-content: space-between;
}
.charging-desc {
  align-items: center;
  color: black;
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding: 16px;
}
.charging-ext {
  font-size: 16px;
  line-height: 24px;
  text-align: center;
  font-weight: 500;
  color: #7c7d7e;
}
.charging-aes {
  font-size: 26px;
  line-height: 32px;
  text-align: center;
  font-style: normal;
  font-weight: 700;
}

.charging-text {
  display: flex;
  padding: 16px;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 10px;
  align-self: stretch;
}
.div {
  margin: 0 auto;
  width: 24px;
  height: 2px;
  background: #d70c19;
}
.charging-txt {
  text-align: center;
  color: #252728;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}
.charging-img {
  padding: 0 10px;
}

.rating {
  align-items: center;
  padding-top: 64px;
  flex-direction: column;
  justify-content: space-between;
}
.rating-desc {
  align-items: center;
  color: black;
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding: 16px;
}

.rating-aes {
  font-size: 26px;
  line-height: 32px;
  text-align: center;
  font-style: normal;
  font-weight: 700;
}

.rating-text {
  display: flex;
  padding: 16px;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 10px;
  align-self: stretch;
}
.div {
  margin: 0 auto;
  width: 24px;
  height: 2px;
  background: #d70c19;
}
.rating-txt {
  text-align: center;
  color: #252728;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}
.rating-img {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.rating-img div {
  width: 207px;
  height: 160.1px;
}

.tech {
  align-items: center;
  padding-top: 64px;
  flex-direction: column;
  justify-content: space-between;
}
.tech-desc {
  align-items: center;
  color: black;
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding: 16px;
}
.tech-ext {
  font-size: 16px;
  line-height: 24px;
  text-align: center;
  font-weight: 500;
  color: #7c7d7e;
}
.tech-aes {
  font-size: 26px;
  line-height: 32px;
  text-align: center;
  font-style: normal;
  font-weight: 700;
}

.tech-text {
  display: flex;
  padding: 16px;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 10px;
  align-self: stretch;
}
.div {
  margin: 0 auto;
  width: 24px;
  height: 2px;
  background: #d70c19;
}
.tech-txt {
  text-align: center;
  color: #252728;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}
.tech-img {
  padding: 0 10px;
}

.ic {
  display: flex;
  flex-direction: column;
  padding: 0px 32px;
  gap: 16px;
}
.ic-ext {
  font-size: 16px;
  line-height: 24px;
  text-align: center;
  font-weight: 500;
  color: #7c7d7e;
  padding: 32px;
}
.ic-text {
  display: flex;
  flex-direction: column;
  opacity: 1;
  gap: 8px;
}
.ic-head {
  color: #252728;
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
}
.div2 {
  width: 24px;
  height: 2px;
  background: #d70c19;
}
.ic-desc {
  color: #7c7d7e;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
}

.V2L {
  align-items: center;
  padding-top: 64px;
  flex-direction: column;
  justify-content: space-between;
}
.V2L-desc {
  align-items: center;
  color: black;
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding: 16px;
}
.V2L-ext {
  font-size: 16px;
  line-height: 24px;
  text-align: center;
  font-weight: 500;
  color: #7c7d7e;
}
.V2L-aes {
  font-size: 26px;
  line-height: 32px;
  text-align: center;
  font-style: normal;
  font-weight: 700;
}

.V2L-text {
  display: flex;
  padding: 16px;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 10px;
  align-self: stretch;
}
.div {
  margin: 0 auto;
  width: 24px;
  height: 2px;
  background: #d70c19;
}
.V2L-txt {
  text-align: center;
  color: #252728;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}
.V2L-img {
  padding: 0 10px;
}

.newsletter {
  color: black;
  display: flex;
  padding: 10px 30px 30px 30px;
}
.captiondiv {
  flex-basis: 40%;
  text-align: center;
}
.newsletter h3 {
  font-size: 24px;
  line-height: 1.375;
  font-weight: 600;
  text-align: center;
  padding: 40px;
}
@media screen and (max-width: 769px) {
  .newsletter {
    flex-direction: column;
    padding: 50px;
  }
}
.formdiv {
  flex-basis: 60%;
}
.form {
  padding: 30px 0px 40px 0px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.form input:not(#consent) {
  height: 40px;
  width: 70%;
  margin-bottom: 30px;
  padding: 0px 20px;
}

::placeholder {
  width: 100%;
  font-size: large;
}
input[type="text"] {
  font-size: 20px;
}
input[type="email"] {
  font-size: 20px;
}
.form label {
  width: 70%;
  text-align: center;
  margin-bottom: 30px;
}
.submit {
  text-align: center;
}
.submit button {
  position: relative;
  display: inline-block;
  text-align: center;
  padding: 10px 50px;
  border-radius: 0;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 600;
  white-space: nowrap;
  cursor: pointer;
  border-color: #010101;
  color: #fff;
  background-color: #010101;
}
/*footer*/
footer {
  background-color: rgb(245, 245, 245);
  padding: 30px;
}
.footermenu {
  display: flex;
  justify-content: space-between;
  padding: 40px;
}
@media screen and (max-width: 769px) {
  .footermenu {
    flex-direction: column;
    padding: 0px;
  }
}

#closetech,
#closemodels,
#closeabout,
#closeowner {
  display: none;
}

.ftrmodels,
.ftrabout,
.ftrown,
.ftrtech {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 769px) {
  .submodels,
  .subown,
  .subabout,
  .subtech {
    display: none;
    flex-direction: column;
  }
}
@media screen and (min-width: 769px) {
  .submodels,
  .subown,
  .subabout,
  .subtech {
    display: flex;
    flex-direction: column;
  }
}

@media screen and (min-width: 768px) {
  .abouticons,
  .modicons,
  .techicons,
  .ownicons {
    display: none;
  }
}
.moddiv,
.abtdiv,
.techdiv,
.owndiv {
  font-weight: bold;
}
.submodels a,
.subtech a,
.subabout a,
.subown a {
  text-decoration: none;
  color: black;
  padding: 0px 10px;
  font-weight: lighter;
}
.contact {
  font-weight: bold;

  text-align: center;
  letter-spacing: 1.5px;
  padding: 10px 0px;
}
.contactlogo {
  padding: 10px 0px 20px 0px;
}
.copyright {
  font-weight: bold;

  padding: 20px 0px;
  text-align: center;
  letter-spacing: 1.5px;
}
