/* --- Top Promotional Bars --- */

.promo-banner {
  display: block;
  background-color: #5c3c4c; /* Dark maroon color from image */
  color: #fff;
  text-align: center;
  padding: 0.5rem 1rem;
  font-size: 0.9rem;
  text-decoration: none;
  transition: background-color 0.2s;
}

.promo-banner:hover {
  background-color: #4a303d; /* Slightly darker on hover */
}

.site-info-bar {
  background-color: #f5f3f0; /* Off-white color from image */
  color: var(--text);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap; /* Allows items to wrap on smaller screens */
  gap: 1.5rem;
  padding: 0.6rem 1rem;
  font-size: 0.85rem;
  border-bottom: 1px solid var(--line);
}

.info-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

/* Add dot separator between items */
.info-item:not(:first-child)::before {
  content: "•";
  color: var(--muted);
  margin-right: 1.5rem;
}

.info-item svg {
  flex-shrink: 0; /* Prevents icons from shrinking */
}

/* --- End of Top Promotional Bars --- */

:root{
  --bg:#f7f7f7;
  --card:#ffffff;
  --text:#1f1f1f;
  --muted:#6b7280;
  --brand:#111827;
  --accent:#111;         /* badge/knap */
  --accent-2:#0f172a;    /* mørk badge */
  --line:#e5e7eb;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.5;
}

/* Topbar */
.topbar{
  position:sticky; top:0;
  background:var(--card);
  border-bottom:1px solid var(--line);
  padding:0.75rem 1rem;
  display:flex; align-items:center; gap:1rem; justify-content:space-between;
  z-index:10;
}

.brand img {
  height: auto;   /* justér højden så den passer */
  width: 150px;
  display: block;
}

/* Burgermenu starterher */ 

.burger {
  display: none;
  background: none;
  border: none;
  cursor: pointer;
  width: 40px;
  height: 40px;
}
.burger .bar,
.burger .bar::before,
.burger .bar::after {
  display: block;
  width: 24px;
  height: 2px;
  background: black;
  margin: 6px auto;
  content: "";
  transition: 0.3s;
}

@media (max-width: 768px) {
  .burger { display: block; }

  /* Off-canvas panel */
  .nav{
    position: fixed;
    top: 0; right: 0;
    width: min(84vw, 340px);
    height: 100dvh;
    background: #fff;
    border-left: 1px solid var(--line);
    box-shadow: -6px 0 20px rgba(0,0,0,.15);
    transform: translateX(100%);
    transition: transform .28s ease;
    padding: 1rem 1rem 1.25rem;
    z-index: 50;
    display: block;       /* vigtigt: ikke display:none */
    overflow-y: auto;
  }
  .nav.open{ transform: translateX(0%); }

  /* Mobil-only sektioner */
  .nav-mobile-only{ display: block; }

  /* Panel-top */
  .nav-top{
    display:flex; align-items:center; justify-content:space-between;
    margin-bottom: .5rem;
  }
  .nav-close{
    background: none; border: 0; cursor: pointer;
    font-size: 1.6rem; line-height: 1; padding: .25rem .5rem;
  }

  /* Søg */
  .nav-search{ margin: .25rem 0 1rem; }
  .nav-search input{
    width:100%; padding:.65rem .8rem; border:1px solid var(--line);
    border-radius:10px; font-size:1rem;
  }

  /* Links vises vertikalt på mobil */
  .nav a{
    display:block; padding:.8rem 0; margin:0;
    color:var(--text); text-decoration:none;
    border-bottom:1px solid #f4f4f4;
  }
  .nav a:hover{ opacity:.8; }

  .nav-utility a{ color:var(--muted); border-bottom:none; padding:.6rem 0; }

  /* Skjul info-bar på meget små skærme (du har allerede en regel for 600px) */
}

/* Desktop bevarer dit gamle look */
@media (min-width: 769px){
  .nav-mobile-only{ display: none; }
}
/* Burgermenu slutter her */ 

.nav a{color:var(--muted); text-decoration:none; margin-left:1rem}
.nav a:hover{color:var(--text)}


.menu-icon {
  display: flex;
  align-items: center;
  gap: 1rem; /* Space between icons */
}

.menu-icon img {
  width: 40px;  /* Justér størrelsen efter behov */
  height: 40px; /* Justér størrelsen efter behov */
  cursor: pointer;
  display: block;
}

/* Layout */
.product{
  max-width:1100px; margin:1.5rem auto; padding:0 1rem;
  display:grid; grid-template-columns:1.1fr 1fr; gap:2rem;
}
.gallery{background:var(--card); border:1px solid var(--line); border-radius:12px; padding:1rem}
.gallery__main{
  width:100%; aspect-ratio: 4/5; object-fit:cover; border-radius:10px;
}
.thumbs{display:grid; grid-template-columns:repeat(4,1fr); gap:0.5rem; margin-top:0.75rem}
.thumb{border:1px solid var(--line); border-radius:8px; padding:0; background:#fff; cursor:pointer}
.thumb img{width:100%; height:100%; object-fit:cover; aspect-ratio:1/1; border-radius:8px}
.thumb.is-active{outline:2px solid #000}

.details{background:var(--card); border:1px solid var(--line); border-radius:12px; padding:1rem}
.badges{display:flex; gap:0.5rem; margin-bottom:0.5rem}
.badge{background:#ef4444; color:#fff; padding:0.25rem 0.5rem; border-radius:999px; font-size:0.8rem}
.badge--dark{background:var(--accent-2)}

.title{margin:.25rem 0 0; font-size:1.5rem}
.subtitle{margin:.1rem 0 1rem; color:var(--muted)}

.price{display:flex; align-items:center; gap:.5rem; margin:.25rem 0 1rem}
.price__now{font-size:1.4rem}
.price__before{color:var(--muted)}

.color {
  margin: 1rem 0;
}

.color-options {
  display: flex;
  gap: 1rem;
  margin-top: 0.5rem;
}

.color-option {
  display: flex;
  flex-direction: column;
  align-items: center;
  border: 2px solid transparent;
  border-radius: 8px;
  background: #fff;
  padding: 0.25rem;
  cursor: pointer;
  width: 120px; /* justér bredden hvis du vil */
}

.color-option img {
  width: 100%;
  height: auto;
  border-radius: 6px;
}

.color-option span {
  margin-top: 0.25rem;
  font-size: 0.9rem;
  color: #333;
}

.color-option.is-active {
  border-color: #000;
}


.delivery{display:flex; gap:.5rem; color:var(--muted)}

.sizes{margin:1rem 0}
.sizes__list{display:flex; gap:.5rem; flex-wrap:wrap; margin-top:.25rem}
.size{
  border:1px solid var(--line); background:#fff; border-radius:8px;
  padding:.5rem .75rem; cursor:pointer;
}
.size.is-active {
  border: 2px solid black;
  box-shadow: 0 0 5px rgba(0,0,0,0.3);
}

.cta{
  width:100%; padding:0.9rem; margin:.5rem 0 0;
  border:none; border-radius:10px; cursor:pointer;
  background:var(--accent); color:#fff; font-size:1rem;
}
.cta:hover{opacity:.9}

.feedback{min-height:1.25rem; color:green; margin:.4rem 0 0}

.smallprint{list-style:none; padding:0; margin:1rem 0 0; color:var(--muted); font-size:.9rem}
.smallprint li{margin:.25rem 0}

.site-footer{
  background:#f6f5f2;            /* lys tone som i eksemplet */
  border-top:1px solid var(--line);
  margin-top:2rem;
}

.footer-grid{
  max-width:1100px;
  margin:0 auto;
  padding:2rem 1rem 1.5rem;
  display:grid;
  grid-template-columns: 1.2fr 1fr 1fr 1fr; /* brand + 3 kolonner */
  gap:2rem 3rem;
  align-items: start;
}

.footer-brand .footer-logo{
  height:auto;
  width: 250px;;
  display:block;
  margin-bottom:1rem;
}

.footer-brand p{
  color:var(--text);
  opacity:.85;
  margin-top: -6px;
  max-width:42ch;
  line-height:1.6;
  align-self: start;
}

.payment-text{
  padding-left: 180px;
  margin:0 0 .75rem;
  font-size:1rem;
  color:var(--muted);
  letter-spacing:.2px;
  font-weight: 650;

}

.first-payment-icon {
  height: 55px;
  padding-left: 175px;

}

.payment-icon {
  height: 55px;
  padding-left: 10px;

}
.footer-col h4{
  margin:0 0 .75rem;
  font-size:1rem;
  color:var(--muted);
  letter-spacing:.2px;
}

.footer-col a{
  display:block;
  text-decoration:none;
  color:var(--text);
  padding:.35rem 0;
}
.footer-col a:hover{ opacity:.8; }

.footer-bottom{
  border-top:1px solid var(--line);
  padding:1rem;
  text-align:center;
  color:var(--muted);
  font-size:.9rem;
}

/* Responsiv */
@media (max-width: 900px){
  .footer-grid{
    grid-template-columns: 1fr 1fr;   /* 2 kolonner */
  }
  .footer-brand{ grid-column: 1 / -1; }
  .payment-text{
    padding-left: 13px;
    margin:0 0 .75rem;
    font-size:1rem;
    color:rgb(109, 109, 109);
    letter-spacing:.2px;
    font-weight: 650;
  
  }
  
  .first-payment-icon {
    height: 52px;
    padding-left: 15px;
  
  }
  
  .payment-icon {
    height: 52px;
    padding-left: 10px;
  
  } 
}
@media (max-width: 600px){
  
  .site-info-bar {
    display: none;
  }

  .footer-grid{
    grid-template-columns: 1fr;       /* 1 kolonne */
  }

 
.payment-text{
  padding-left: 13px;
  margin:0 0 .75rem;
  font-size:1rem;
  color:rgb(109, 109, 109);
  letter-spacing:.2px;
  font-weight: 650;

}

.first-payment-icon {
  height: 52px;
  padding-left: 15px;

}

.payment-icon {
  height: 52px;
  padding-left: 10px;

} 
}

@media (max-width:900px){
  .product{
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .gallery{ order: 1; }
  .details{ order: 2; margin-top: 5rem;}

  .gallery__main{ aspect-ratio: 4/5; width: 100%; object-fit: cover; }
  .thumbs{ grid-template-columns: repeat(4, 1fr);}
  .cta{ width: 100%; }
}

/* Sørg for at pilene kan ligge oven på billedet */
.gallery { position: relative; }

/* Pil-knapper – lys, rundet, let skygge */
.gallery__arrow{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;

  width: 44px;                 /* god touch-størrelse */
  height: 44px;
  border-radius: 12px;         /* runde hjørner som i eksemplet */
  border: 1px solid rgba(0,0,0,.08);
  background: #ffffff;         /* lys knap */
  color: #111;                 /* mørk pil */
  display: grid;
  place-items: center;
  cursor: pointer;
  font-size: 18px;             /* størrelse på »❮« / »❯« */
  line-height: 1;
  box-shadow: 0 1px 2px rgba(0,0,0,.06), 0 6px 20px rgba(0,0,0,.06);
  transition: background .2s ease, color .2s ease, box-shadow .2s ease, transform .05s ease;
}

.gallery__arrow--prev{ left: 10px; }
.gallery__arrow--next{ right: 10px; }

/* Hover/focus: mørk knap med lys pil */
.gallery__arrow:hover,
.gallery__arrow:focus-visible{
  background: #111;
  color: #fff;
  box-shadow: 0 2px 6px rgba(0,0,0,.12), 0 10px 24px rgba(0,0,0,.18);
  outline: none;
}

/* Klik-feedback (lille “tryk”-fornemmelse) */
.gallery__arrow:active{
  transform: translateY(-50%) scale(0.98);
}

/* (Valgfrit) gør tastaturfokus ekstra tydeligt på lys baggrund */
.gallery__arrow:focus-visible{
  outline: 2px solid #111;
  outline-offset: 2px;
}

/* Hovedbilledet fylder kolonnen pænt */
.gallery__main{
  width: 100%;
  display: block;
  border-radius: 12px; /* hvis du vil matche knappens blødhed */
}

/* --- kurv --- */
.cart-drawer{position:fixed; inset:0; display:none; z-index:9999;}
.cart-drawer.is-open{display:block;}
.cart-backdrop{position:absolute; inset:0; background:rgba(0,0,0,.45);}

.cart-panel{
  position:absolute; right:0; top:0; height:100%; width:min(420px, 92vw);
  background:var(--card); border-left:1px solid var(--line);
  box-shadow:-8px 0 24px rgba(0,0,0,.12);
  transform:translateX(100%); transition:transform .28s ease;
  display:flex; flex-direction:column;
}
.cart-drawer.is-open .cart-panel{transform:translateX(0);}

.cart-header{
  display:flex; align-items:center; justify-content:space-between;
  padding:1rem 1rem; border-bottom:1px solid var(--line);
}
.cart-header h3{margin:0; font-size:1.1rem;}
.cart-close{border:none; background:transparent; font-size:1.75rem; line-height:1; cursor:pointer;}

.cart-empty{padding:2rem 1rem; color:var(--muted);}
.cart-items{padding:.5rem 1rem; overflow:auto;}

.cart-item{
  display:grid; grid-template-columns: 1fr auto; gap:.75rem;
  align-items:center; padding:.9rem 0; border-bottom:1px solid var(--line);
}
.cart-item__title{font-weight:600; margin:0 0 .15rem;}
.cart-item__meta{color:var(--muted); font-size:.9rem; margin:0 0 .25rem;}
.cart-item__right{display:flex; flex-direction:column; align-items:flex-end; gap:.4rem; min-width:120px;}
.cart-item__line{font-weight:700;}

.cart-footer{margin-top:auto; border-top:1px solid var(--line); padding:1rem;}
.cart-total{display:flex; align-items:center; justify-content:space-between;}

#cart-icon { cursor: pointer; }


/* kurv tæller */
.cart-counter{
  display:none; /* shown by JS once > 0 */
  align-items:center; justify-content:center;
  min-width:20px; height:20px; padding:0 6px; border-radius:999px;
  background:#111; color:#fff; font-size:.75rem; font-weight:700;
}

/* Små skærme: kurv fylder det hele */
@media (max-width: 480px){
  .cart-panel{width:100%;}
}



