html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*site style*/
:root {
  /* CSS HEX colored */

  --rich-black: #000814ff;
  --oxford-blue: #001d3dff;
  --yale-blue: #003566ff;
  --mikado-yellow: #ffc300ff;
  --gold: #ffd60aff;
  /* CSS HEX Gray-Scale */
  --seasalt: #f8f9faff;
  --antiflash-white: #e9ecefff;
  --platinum: #dee2e6ff;
  --french-gray: #ced4daff;
  --french-gray-2: #adb5bdff;
  --slate-gray: #6c757dff;
  --outer-space: #495057ff;
  --onyx: #343a40ff;
  --eerie-black: #212529ff;

  /* Responsive font sizing system */
  --font-size-xs: clamp(0.93rem, 1vw, 1rem);
  --font-size-sm: clamp(1rem, 2vw, 1.25rem);
  --font-size-md: clamp(1.25rem, 3vw, 1.5rem);
  --font-size-lg: clamp(1.7rem, 4vw, 2.25rem);
  --font-size-xl: clamp(2rem, 6vw, 3rem);
}
/*icons and ui elemenets*/
.material-symbols-outlined {
  font-variation-settings:
    'FILL'0,
    'wght'700,
    'GRAD'200,
    'opsz'32
}

.menu-icon {
  color: var(--gold);
  transform: scale(1.3);

}

.menu-icon:hover, .menu-icon span:hover {
  cursor: pointer;
}

html {
  font-size: 16px;
}

body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  flex: unset;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
  background-image: url(Media/images/islamic-art.jpg);
  font-size: var(--font-size-xs);
}

.logo-image {
  width: 80px;
  cursor: pointer;
}

.nav-logo {
  cursor:pointer;
  width: 0px;
  padding: 0 6em;
}

.nav-logo-visible {
  transition: width 200ms;
  visibility: visible;
  width: 100px;
}

.nav-logo-hidden {
  transition: width 200ms;
  width: 0;
}

.nav-title {
  font-size: 2.4em;
  padding: 1em;
}

.nav-title:hover {
  cursor: pointer;
}

header {
  padding: 0 0 0.5em 0;
  background-color: black;
  display: flex;
  justify-content: center;
}

nav {
  position: sticky;
  top: 0;
  background-color: rgb(19, 19, 19);
  z-index: 10;
  /* Added z-index to keep nav on top */
}

.nav-content-wrapper {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/*matratter-specific*/
.matratter-category-wrapper {
  padding: 10px;
  border-top: solid rgb(255, 217, 0) 1px;
  border-bottom: solid rgb(255, 217, 0) 2px;
  display: flex;
  justify-content: center;
}

.lunch-discount-wrapper{
  display: flex;
  flex-direction: column;
  align-items: center;
}
.lunch-time-period{
  padding: 1rem;
  background-color: var(--oxford-blue);
  border-radius: 15px;
  margin-top: 30px;
}
.lunch-rabatt {
  color: rgb(206, 0, 51);
}


nav ul {
  display: flex;
}

.vara-matratter-dropdown-li:hover .matratter-dropdown-menu {
  display: block;
}

.matratter-dropdown-menu li {
  border-bottom: solid var(--outer-space) 2px;
}

/* Parent list item with dropdown */
.vara-matratter-dropdown-li {
  position: relative;
}

/* Hide dropdown by default */
.matratter-dropdown-menu {
  display: none;
  position: absolute;
  text-align: center;
  border-radius: 8px;
  top: 100%;
  left: 0;
  background-color: rgb(19, 19, 19);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3);
  width: 100%;
  z-index: 999;
}

/* Dropdown links */
.matratter-dropdown-menu li a {
  color: gold;
  padding: 1em;
  text-decoration: none;
  display: block;
  white-space: nowrap;
}

.matratter-dropdown-menu li a:hover {
  background-color: #2c2c2c;
  color: white;
}

nav ul li a {
  transition: color 100ms;
  display: block;
  font-weight: 800;
  color: gold;
  padding: 1.5em;
  text-decoration: none;
}

nav ul li a:hover {
  transition: color 100ms;
  background-color: #2c2c2c;
  border-radius: 5px;
  color: white;
}

nav ul li .active {
  color: var(--french-gray);
}

main {
  flex: 1 0 auto;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
}

footer {
  flex-shrink: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  justify-self: flex-end;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  background-color: rgb(19, 19, 19);
  z-index: 1000;
}

footer p {
  padding: 1.5rem;
  font-weight: 500;
  color: white;
}
.social-media-wrapper{
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
/*index.html*/
.home-wrapper{
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  margin: 50px 100px;
  padding: 2rem 5rem;
  border-radius: 15px;
}
.greeting-wrapper{
  animation: transform-slide 0.5s forwards;
  opacity: 0;
  transform: translateY(-100%);
  background-color: var(--oxford-blue);
  border-radius: 15px;
  text-align: center;
  padding: 1rem 0;
  margin: 50px 0;
}
.home-videoclip{
  animation: transform-slide 0.5s forwards;
  opacity: 0;
  transform: translateY(100%);
  border-radius: 25px;
  width: clamp(200px,50vw,700px);
  align-self: center;
  border: solid ;
  box-shadow: 0px 0px 35px rgb(0, 0, 0);
}
.info-cards-wrapper{
  margin: 3rem 0;
  display: flex;
  flex-direction: column;
}
.info-cards-wrapper .info-wrapper{
  padding: 2rem;
  margin: 50px 0px;
}
.flex-end{
  align-self: flex-end;
}

/*product-cards*/
.product-card-wrapper {
  cursor: pointer;
  margin: 50px ;
  display: flex;
  justify-content:center;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 30px;
  max-width: 1480px;
}


.product-card {
  width: clamp(16rem,25vw,19rem);
  height: clamp(23rem,25vh,25rem);
  transition: all 100ms;
  transform: translateY(400px);
  animation-name: transform-slide;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0;
  border: solid transparent 5px;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1rem;
  border-radius: 15px;
  background-color: rgb(19, 19, 19);
}

.product-card-price {
  color: rgb(255, 255, 255);
  font-size: var(--font-size-md);
  font-weight: 700;
}
.product-card-Discount-price-wrapper{
  display: flex;
  align-items: center;
  gap: 10px;
}
.product-card .new-price{
  color: red;
}
.product-card .old-price{
  align-self: flex-end;
  text-decoration:line-through;
  font-size: var(--font-size-xs);
}

.see-more {
  padding: 1rem;
  transition: all 200ms;
  opacity: 0;
  font-size: var(--font-size-xs);
  font-weight: 600;

}

.product-card:hover .see-more {
  transition: all 200ms;
  opacity: 1;
  color: white;
  text-decoration: underline;
}

.product-card-link {
  text-decoration: none;
}

.product-card:hover {
  transition: all 100ms;
  border: solid var(--gold) 5px;
}

.product-card img {
  width: 200px;
  height: 200px;
  padding: 20px 0;
  border-radius: 50%;
}

.product-card h1 {
  padding: 10px 0;
}

.product-card p {
  color: var(--antiflash-white);
}

/*Product*/
.product .info-wrapper {
  text-align: center;
  flex-direction: row;
  width: 700px;
  justify-content: space-between;
  gap: 20px;
}

.product {
  margin: 3rem;
}

.product ul {
  list-style: disc;
  color: white;
}

.product .info-wrapper img {
  width: 400px;
  border-radius: 50%;
}

.product .info-wrapper .basic h1 {
  padding-bottom: 15px;
}

.product .info-wrapper .details {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  background-color: var(--yale-blue);
  border-radius: 7px;
  box-shadow: 5px 5px 5px 0px var(--rich-black);
  padding: 20px;
}

.product .info-wrapper .detail {
  padding: 10px 0;
}

.product .info-wrapper .detail .ingridients-list {
  display: flex;
  flex-direction: column;
  align-items: baseline;
}

.product .info-wrapper .detail .ingridients-list .ingridient {
  list-style-position: inside;
  padding: 15px 0;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
  font-weight: 700;
  font-size: var(--font-size-sm);
}

/*oppettider and adress*/
.oppettider-wrapper,
.adress-wrapper,
.info-wrapper {
  text-align: center;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0;
  z-index: 1;
  /* Ensure these are below the nav */
}

.oppettider-wrapper {
  animation-name: transform-slide;
  transform: translateX(-100%);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.oppettider-wrapper h1,
.adress-wrapper h1 {
  padding: 0.7em 0;
}

.oppettider-wrapper .time-table {
  margin-bottom: 100px;
  text-align: center;
  background-color: var(--oxford-blue);
  border-radius: 15px;
}

.oppettider-wrapper .time-table td,
th {
  padding: 20px 1em;
}

.oppettider-wrapper .time-table th {
  color: var(--gold);
  font-size: var(--font-size-sm);
}

.oppettider-wrapper,
.adress-wrapper {
  font-weight: 800;
  font-size: var(--font-size-md);
  color: var(--seasalt);
}

.adress-wrapper {
  animation-name: transform-slide;
  transform: translateX(+100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 3rem;
}

.adress-wrapper p {
  padding: 1rem;
  margin-bottom: 1em;
  font-size: var(--font-size-sm);
  font-weight: 500;
  border-radius: 20px;
  background-color: var(--eerie-black);
}

.adress-wrapper iframe {
  width: clamp(10rem, 60vw, 35rem);
  height: clamp(10rem, 60vw, 35rem);
  border-radius: 20px;
}

.info-title{
  background-color: var(--oxford-blue);
  border-radius: 15px;
  padding: 0.3rem 2rem;
  margin: 10px;
}

/*Kontakta oss*/
.info-wrapper {
  animation-name: transform-slide;
  transform: translateY(100%);
  opacity: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background-color: var(--oxford-blue);
  border-radius: 15px;
  padding: 2.5em 2em;
  width: 500px;
  font-size: var(--font-size-md);
  box-shadow: 0px 0px 10px white;

}

.kontakta-oss-wrapper {
  margin: 8rem;
}
.kontakta-oss-wrapper h1,
.kontakta-oss-wrapper h2 {
  padding: 10px;
}

.info-wrapper h1 {
  font-size: var(--font-size-lg);
}

.info-wrapper h2 {
  color: var(--mikado-yellow);
  font-size: var(--font-size-md);
  font-weight: 700;
}

.info-wrapper p {
  padding: 10px 0;
  font-size: var(--font-size-sm);
  color: var(--seasalt);
  font-weight: 700;
}

/*om oss*/
.om-oss-wrapper {
  margin: 3rem;
}

/*fonts and paragrafs*/
a {
  color:cyan;
}
h1 {
  font-weight: 700;
  font-size: var(--font-size-lg);
  background: -webkit-linear-gradient(90deg, var(--gold), var(--mikado-yellow));
  -webkit-background-clip: text;
  background-clip: text;
  /* Added standard property */
  -webkit-text-fill-color: transparent;
}

@media (max-width: 1243px) {

  .nav-content-wrapper,
  .nav-content-wrapper ul {
    flex-direction: column;
  }
}

@media (max-width: 927px) {
  header {
    display: none;
  }

  main {
    flex: 1 0 auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  .oppettider-wrapper,
  .adress-wrapper {
    width: 95vw;
    max-width: 500px;
    margin: 1em 0;
    font-size: var(--font-size-md);
    padding: 1em 0.5em;
  }

  .oppettider-wrapper .time-table {
    font-size: var(--font-size-md);
  }

  .adress-wrapper p {
    font-size: var(--font-size-sm);
  }

  .info-wrapper {
    width: 90%;
    padding: 1.5em 0.5em;
    font-size: var(--font-size-sm);
  }
  .product-card-wrapper{
    justify-content: center;
  }

  .product .info-wrapper {
    flex-direction: column;
    width: 95vw;
    align-items: center;
    justify-content: flex-start;
  }

  .product .info-wrapper img {
    width: 80vw;
    max-width: 300px;
    margin-bottom: 1em;
  }

  .product .info-wrapper .details {
    width: 80%;
    margin-top: 1em;
    align-items: center;
  }
  .nav-head-wrapper {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
  }

  nav ul {
    text-align: center;
  }
}

@media (max-width: 900px) {
  .home-wrapper {
    margin: 30px 10px;
    padding: 1rem 1rem;
    border-radius: 10px;
  }
  .greeting-wrapper {
    margin: 30px 0;
    padding: 0.7rem 0.2rem;
    font-size: var(--font-size-md);
  }
  .home-videoclip {
    max-width: 90vw;
    border-radius: 15px;
    box-shadow: 0px 0px 15px rgb(255, 0, 0);
  }
  .info-cards-wrapper {
    margin: 1.5rem 0;
    gap: 1rem;
  }
  .info-cards-wrapper .info-wrapper {
    margin: 20px 8px;
    padding: 1rem;
    font-size: var(--font-size-sm);
    border-radius: 10px;
  }
}

@media (max-width: 600px) {
  .home-wrapper {
    margin: 10px 0;
    padding: 0.5rem 0.2rem;
    border-radius: 5px;
  }
  .greeting-wrapper {
    margin: 15px 0;
    padding: 0.5rem 0.1rem;
    font-size: var(--font-size-sm);
  }
  .home-videoclip {
    max-width: 100vw;
    border-radius: 10px;
    box-shadow: 0px 0px 5px white;
  }
  .info-cards-wrapper {
    margin: 0.5rem 0;
    gap: 0.5rem;
  }
  .info-cards-wrapper .info-wrapper {
    margin: 10px 4px;
    padding: 0.5rem;
    font-size: var(--font-size-xs);
    border-radius: 7px;
  }
}

/*Animations*/
@keyframes transform-slide {
  100% {
    transform: none;
    opacity: 1;
  }
}