/* ===== BASIS ===== */
* {
  box-sizing: border-box;
}

body {
  margin: 0;
  padding: 0;
  font-size: 90%;
  line-height: 1.2;
  background-image: url("../Images/achtergrondsite2.png");
  background-size: cover; /* vul volledig scherm */
  background-repeat: no-repeat;
  font-family: 'Bitter', cursive;
}

/* ===== CONTAINER ===== */
#container {
  min-height: 100%;
  height: auto !important;
}

/* ===== KOLOMMEN ===== */
[class*="col-"] {
  float: left;
  padding: 0;
  margin: 0;
}

.row::after {
  content: "";
  clear: both;
  display: block;
}

input:focus {
  outline: 0;
}

/* ===== HEADER ===== */
#header {
  background-color: #C9A44C;
  color: black;
  width: 100%;
  min-height: 3.5em;
}

#headertekstlinks {
  margin: 0.1em 0;
  text-align: center;
  font-family: 'Pacifico', cursive;
  font-size: 2.5em;
}

#headertekstlinks a,
#headertekstlinks a:visited {
  text-decoration: none;
  color: black;
}

#headertekstrechts {
  text-align: center;
  margin: 0.3em 0 0.1em;
  font-family: 'Lobster', cursive;
  font-size: 1.2em;
}

a.headerlink,
a.headerlink:visited {
  color: black;
  text-decoration: none;
}

a.headerlink:hover {
  color: #ff13a7;
}

/* ===== CONTENT ===== */
#content {
  background-color: white;
  min-height: calc(100vh - 18.4em);
  padding: 1.5em 2em;
  text-align: left;
  font-size: 0.9em;

  /* gridlayout zodat tekst en info-box naast elkaar staan */
  display: grid;
  grid-template-columns: 1fr 18rem;
  gap: 2rem;
}

/* Tekstkolom links */
.tekstlinks {
  margin: 0 !important;
  width: auto !important;
  text-align: left;
}

/* Rechter info-box ("Levertijd eigen stijl") */
.tekstrechts {
  background-color: #C9A44C;
  border: 4px solid #ff13a7;
  border-radius: 12px;
  padding: 1em;
  text-align: center;
  width: 18rem;
  color: black;
  font-weight: bold;
}

/* ===== FOOTER ===== */
#footer {
  background-color: #C9A44C;
  color: black;
  padding: 1em 2em;
}

.footerkopje {
  margin-top: 0.2em;
  margin-bottom: 0.4em;
  font-family: 'Pacifico', cursive;
  font-size: 1.6em;
  text-align: left;
}

.footerlink,
a.footerlink:visited {
  font-size: 1em;
  font-family: 'Bitter', cursive;
  font-weight: bold;
  color: black;
  text-decoration: none;
}

a.footerlink:hover {
  color: #ff13a7;
}

.lijn {
  color: black;
  background-color: black;
  border: 1px solid black;
  height: 0.2em;
}

.facebookurl,
a.facebookurl:hover,
a.facebookurl:visited {
  font-family: 'Pacifico', cursive;
  font-size: 1.4em;
  color: black;
  text-decoration: underline;
}

/* ===== TEKSTSTIJLEN ===== */
h1 {
  font-family: 'Pacifico', cursive;
  font-size: 2em;
}

h2 {
  font-family: 'Bitter', cursive;
  font-size: 1em;
}

h3 {
  margin-bottom: 0.2em;
}

/* ===== PRODUCTEN ===== */
[class*="prod-"] {
  display: inline-block;
  margin-bottom: 0.5em;
}

.afbeeldingcat {
  vertical-align: middle;
  display: inline-block;
  width: 13em;
  height: 13em;
}

.afbbreder,
.afbvierkant {
  width: 13em;
}

.afbhoger {
  max-height: 13em;
}

/* Voorraadkleuren */
.voorraad { color: green; font-size: 0.9em; }
.voorraadenkele { color: orange; font-size: 0.9em; }
.voorraadgeen { color: red; font-size: 0.9em; }

/* Prijzen */
.actieprijsproduct {
  font-size: 1em;
  font-family: 'Bitter';
}

.prijsproduct {
  font-size: 1em;
  font-weight: bold;
}

/* Product hover effect */
img.productafbeelding:hover {
  transform: scale(1.1);
}

/* ===== KNOPPEN ===== */
.winkelwagenbutton,
.bestellenbutton,
.inloggenbutton,
.registratiebutton,
.wijzigbutton,
.codeinwisselen,
.bevestigbtn {
  background-color: #C9A44C;
  border: none;
  color: black;
  cursor: pointer;
  font-family: 'Bitter', cursive;
  font-weight: bold;
  transition: background-color 0.3s;
}

.winkelwagenbutton:hover,
.bestellenbutton:hover,
.inloggenbutton:hover,
.registratiebutton:hover,
.wijzigbutton:hover,
.codeinwisselen:hover,
.bevestigbtn:hover {
  background-color: #ff13a7;
}

/* ===== LOGIN / REGISTRATIE ===== */
.inloggentitel,
.registrerentitel {
  background-color: #C9A44C;
  border-radius: 20px;
  font-size: 1.3em;
  height: 2.2em;
  line-height: 2.2em;
  color: black;
  font-weight: bold;
  margin: 0 auto 1em;
  text-align: center;
  width: 60%;
}

.registrerentitel {
  background-color: #ff13a7;
  width: 50%;
}

/* ===== DIVERSE ===== */
.orderoverzicht {
  width: 100%;
  text-align: center;
}

.borderoverzichtleft { border-left: 1px solid black; }
.borderoverzichtright { border-right: 1px solid black; }

.verzendenbetalen {
  text-align: left;
}

.totaalbedrag {
  margin-top: 2em;
  margin-left: 2em;
  height: 3em;
  line-height: 3em;
  text-align: center;
  width: 7em;
  background-color: #C9A44C;
  border-radius: 30px;
}

.totaalbedrag span {
  color: black;
  font-size: 18px;
  font-weight: bold;
}

.linkeigenstijl,
.linkeigenstijl:visited {
  color: #ff13a7;
}

.linkeigenstijl:hover {
  color: #C9A44C;
}

.eigenstijlbevestiging {
  font-size: 0.9em;
}

/* ===== LAYOUT FIXES ===== */
#content,
.wrapper,
.container,
.main,
.middle,
.page {
  max-width: none !important;
  width: auto !important;
  margin: 0 auto;
}

/* Op grotere schermen extra marge */
@media (min-width: 1400px) {
  #content {
    padding: 2em 4em;
    grid-template-columns: 1fr 20rem;
  }
}
