@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&display=swap');

* { margin: 0; padding: 0; box-sizing: border-box; }

body {
  font-family: 'Open Sans', Arial, sans-serif;
  background: #d8d8d8;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: clamp(8px, 3vw, 24px);
}

/* Eén doorlopend vel met één zwarte rand om beide pagina's heen.
   Alles hieronder is verhoudingsgewijs (%, em, clamp) zodat het vel
   meeschaalt van iPhone SE (320px) tot desktop, met 800px als maximum. */
.sheet {
  width: 100%;
  max-width: 50rem;          /* 800px */
  background: #fff;
  border: 4px solid #1f1f1f;
}

.flyer {
  width: 100%;
  flex: none;
  background: #fff;
  display: flex;
  flex-direction: column;
}

/* ---------- Header ---------- */
.header {
  padding: 2.25% 3.75% 1.75%;
}

.logo {
  width: 55%;                  /* 440/800 */
  max-width: 27.5rem;
  height: auto;
  display: block;
}

/* ---------- Hero ---------- */
.hero {
  position: relative;
  aspect-ratio: 800 / 368;
  background: #7ba05b;
}

.hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.portrait {
  position: absolute;
  top: -25%;                   /* -92/368 */
  right: 4.25%;                /* 34/800 */
  width: 28.5%;                /* 228/800 */
  aspect-ratio: 228 / 332;
  height: auto;
  object-fit: cover;
  border: 4px solid #fff;
  box-shadow: 0 0 0 1px rgba(0,0,0,.12);
}

/* ---------- Content ---------- */
.content {
  padding: 3.25% 4.25% 3.75%;
  color: #1a1a1a;
  font-size: clamp(15px, 4.2vw, 20px);
  line-height: 1.45;
}

.content p,
.content ul { max-width: 87.5%; }      /* 700/800 */

.content h2 {
  font-size: 1em;
  font-weight: 700;
  margin-bottom: 1px;
}

.content p + h2 { margin-top: 1.2em; }

.content p { margin-bottom: 1.1em; }

.content ul {
  list-style: none;
  margin-top: .7em;
}

.content li {
  position: relative;
  padding-left: 1.2em;
  margin-bottom: .4em;
}

.content li::before {
  content: "";
  position: absolute;
  left: .2em;
  top: .52em;
  width: .4em;
  height: .4em;
  border-radius: 50%;
  background: #e2762a;
}

/* ---------- Footer ---------- */
.footer {
  margin-top: auto;
  background: #0f6b4f;
  color: #fff;
  text-align: center;
  font-size: clamp(15px, 3.6vw, 21px);
  font-weight: 700;
  padding: .7em 0;
  letter-spacing: .3px;
}

/* =========================================================
   PAGINA 2  —  50rem (800px) breed
   ========================================================= */

.flyer-2 {
  width: 100%;
}

/* SKJ-keurmerk linksonder */
.skj {
  display: block;
  width: 19%;            /* 152/800 */
  min-width: 104px;
  max-width: 9.5rem;
  height: auto;
  margin-top: 1.1em;
}

.hero-2 {
  aspect-ratio: 800 / 208;
  height: auto;
}

.content-2 {
  padding: 3.25% 4.25% 3.75%;
  font-size: clamp(15px, 4.2vw, 20px);
  line-height: 1.45;
}

.content-2 p,
.content-2 ul { max-width: none; }

.content-2 h2 { margin-bottom: 3px; }

.content-2 p { margin-bottom: 1.1em; }

.content-2 p + h2 { margin-top: 0; }

.content-2 ul {
  margin: .4em 0 1.1em;
}

.content-2 li {
  margin-bottom: .35em;
  max-width: 100%;
}

/* lichte groene bullets voor de eerste lijst */
.list-green li::before { background: #7ab648; }

/* Contactblok */
.contact { margin-top: 24px; }

.contact-title {
  font-weight: 700;
  margin-bottom: 0 !important;
}

.contact p { margin-bottom: 0; }

.contact .label {
  color: #0f6b4f;
  font-weight: 700;
}

/* =========================================================
   Telefoons — iPhone SE (320px) t/m iPhone 17 Pro Max (440px)
   ========================================================= */
@media (max-width: 560px) {
  /* geen zwarte rand op telefoons — vel loopt van rand tot rand */
  .sheet {
    border: 0;
    max-width: none;
  }

  body { padding: 0; }

  .content p,
  .content ul { max-width: 100%; }

  /* portret zou op smalle schermen te ver in de header steken */
  .portrait {
    width: 30%;
    top: -18%;
    right: 4.5%;
    border-width: 3px;
  }

  /* tekst zo breed mogelijk: alleen een smalle marge */
  .content,
  .content-2 { padding: 5% 3.5% 6%; }

  .header { padding: 4% 3.5% 3%; }

  /* foto's op ware breedte-verhouding tonen i.p.v. bijsnijden */
  .hero { aspect-ratio: 877 / 547; }

  .hero-2 { aspect-ratio: 878 / 288; }

  /* logo smal genoeg houden zodat het portret het nooit overlapt */
  .logo { width: 56%; }

  /* langere tekst per regel op smalle schermen: iets ruimer regelvallen */
  .content li { margin-bottom: .5em; }
}
