/* ========== maintekst.css (unified @900px) ========== */
:root{
  --bp-desktop: 900px;
  --topbar-h-desktop: 70px;
  --topbar-h-mobile: 54px;
  --page-max: 1200px;
  :root{ --forside-gutter: 10px; }

}

/* Page & content */
.page{
  /* fallback – overstyres af top-footer medier */
  padding: 70px 0 50px;
  min-height:100vh; box-sizing:border-box;
  background:#3c934e url("/images/sky.png") no-repeat center top;
  background-attachment:fixed; background-size:auto 1200px;
  display:flex; flex-direction:column;

}
.content-wrapper{ flex:1; display:flex; justify-content:center;}
.content{
  display:flow-root;
  background:rgba(255,255,255,.8);
  max-width:var(--page-max); width:100%;
  padding:10px;
  box-sizing:border-box;
  box-shadow:0 2px 12px rgba(0,0,0,.08);
  /* ønsket bund‑luft inde i boksen */

  padding-bottom:10px;
  
}

/* Forside 2-kolonner: kant-til-kant + fast mellemrum */

.forside_two-columns{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: var(--forside-gutter);            /* 10px mellem kolonner */
  padding-inline: 0;                      /* går helt ud som øverste boks */
  box-sizing:border-box;
}
.forside_two-columns > .forside_column{
  margin:0; min-width:0; width:100%; box-sizing:border-box;
  background:#fff; border:1px solid #8AA; border-radius:12px;
  box-shadow:0 2px 8px rgba(0,0,0,.08);
  padding: 1.7rem;                        /* indvendig luft – påvirker ikke mellemrum */
}
@media (max-width: 899px){
  .forside_two-columns{
    grid-template-columns:1fr;
    gap: var(--forside-gutter);
    padding-inline: 0;
  }
}

/* Float/tekst blokke */
.maintext_container,
.maintext_container2,
.floattext_container{
  max-width:var(--page-max); margin:2rem auto; background:#fff; padding:2rem;
  border-radius:10px; box-shadow:0 2px 8px rgba(0,0,0,.09); border:1px solid #8AA;
}
.maintext_container{ display:flex; gap:2rem; align-items:flex-start; flex-wrap:wrap; }
.maintext_container2{ background-color:rgba(255,255,255,.3); padding:1rem; }

.maintext_text{ flex:1 1 60%; font-size:1.1rem; min-width:280px; }
.maintext_image{ flex:0 0 320px; max-width:320px; display:flex; align-items:flex-start; justify-content:flex-end; }
.maintext_image img{ max-width:100%; border-radius:12px; box-shadow:0 2px 8px rgba(0,0,0,.10); }

.floattext_text{ width:100%; box-sizing:border-box; position:relative; padding:1rem; }
.leftimg,.rightimg{
  width:320px; max-width:45vw; min-width:140px; border-radius:12px;
  box-shadow:0 2px 8px rgba(0,0,0,.12); display:block; border:1px solid #8AA;
}
.leftimg{ float:right; margin:0 0 15px 30px; }
.rightimg{ float:left;  margin:0 30px 15px 0; }
.floattext_text::after{ content:""; display:table; clear:both; }

/* Forside hjælpetekst */
.forside_event-date{ color:#117c54; font-weight:600; font-size:1.07em; margin-bottom:3px; }

/* Typografi */
h1{ font-size:1.7rem; font-weight:700; color:#215c9a; margin-bottom:.1em; }
h1 a {  text-decoration: none;}
h2,h3{
  color:#005f73; margin-top:0; margin-bottom:.6em; font-weight:600;
  border-bottom:1.5px solid #b5c7d6; padding-bottom:.2em;
}
h3{ font-size:1.25rem; }
hr{ margin:2.4em 0 2.1em; border:none; border-bottom:1px dashed #b5c7d6; }

/* Links/knapper */
.green-link-btn{
  display:inline-flex; align-items:center; background:#4a8a56; color:#fff; padding:6px 8px 6px 5px;
  font-size:1.08em; font-weight:600; border:none; border-radius:8px; text-decoration:none;
  transition:background .18s, box-shadow .18s, transform .13s; box-shadow:0 2px 8px rgba(0,0,0,.08);
  cursor:pointer; gap:12px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.green-link-btn .arrow{ font-size:1.2em; margin-left:5px; transition:transform .18s; }
.green-link-btn:hover,.green-link-btn:focus{ background:#289a5a; text-decoration:none; transform:translateY(-2px) scale(1.04); box-shadow:0 4px 16px rgba(53,167,102,.13); }

a.link-url{ color:#000; font-size:1.08em; font-weight:800; text-decoration:none; }
a.link-url:hover{ color:#5ABD5E; }
a.link-url:active{ color:#000; }
a.link-url:visited{ color:#000; }

/* Mobil stacking af maintext */
@media (max-width: 900px){
  .maintext_container,.floattext_container{
    flex-direction:column; padding:1rem .2rem; gap:.8rem; border-radius:8px;
  }
  .maintext_image,.leftimg,.rightimg{
    order:-1; width:100% !important; max-width:100% !important; margin:0 0 2rem 0; display:block; justify-content:center;
  }
  .maintext_text,.floattext_text{
    order:1; width:100%; max-width:100%; padding-left:1.5rem; padding-right:1.5rem;
  }
}

/* Fjern første-barn topmargin globalt */
.page > *:first-child,
.content-wrapper > *:first-child,
.content > *:first-child,
main > *:first-child,
section > *:first-child{ margin-top:0 !important; }
h1:first-child, h2:first-child, .hero:first-child{ margin-top:0 !important; }

/* ===== Mobil: få content helt ned til footer ===== */
@media (max-width: 899px){
  :root{ --topbar-h-mobile: 54px; }  /* brug din aktuelle mobilhøjde */

  /* Siden fylder hele viewport-højden under den fixed topbar */
  .page{
    min-height: calc(100dvh - var(--topbar-h-mobile)) !important;
    display: flex !important;
    flex-direction: column !important;
  }

  /* Wrapper og content skal udfylde resten */
  .content-wrapper{
    flex: 1 0 auto !important;
    display: flex !important;
  }
  .content{
    flex: 1 1 auto !important;
    min-height: 100% !important;
    /* hvis du vil have lidt luft inde i boksen */
    /* padding-bottom: 10px !important; */
  }

  /* Fjern “sidste-margin” der kan skabe optisk hul før footer */
  .page > *:last-child,
  .content-wrapper > *:last-child,
  .content > *:last-child{
    margin-bottom: 0 !important;
  }

  /* Footer er ikke fixed på mobil – ingen ekstra mellemrum */
  .footer-outer{
    position: static !important;
    margin-top: 0 !important;
  }
}
/* ===== Mobil: ingen hul i bunden ===== */
@media (max-width: 899px){
  /* Fjern arvet 50px bund‑padding fra .page/main */
  .page,
  main{
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    min-height: auto !important;
  }

  /* Wrapper skal ikke tilføje hul */
  .content-wrapper{
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    display: flex !important;
    flex: 1 0 auto !important;
  }

  /* Behold kun lidt INDVENDIG luft i den hvide boks */
  .content{
    flex: 1 1 auto !important;
    padding-bottom: 10px !important;  /* indvendig luft, ikke mellemrum til footer */
  }

  /* Nulstil “sidste‑margin” der kan lave optisk hul */
  .content > *:last-child,
  .content-wrapper > *:last-child,
  .page > *:last-child{
    margin-bottom: 0 !important;
  }

  /* Footeren er ikke fixed på mobil – skal ligge lige efter indholdet */
  .footer-outer{
    position: static !important;
    margin-top: 0 !important;
  }
}
/* ===== Desktop: stram afstand over fixed footer ===== */
:root{
  --footer-h-desktop: 64px;     /* din footerhøjde */
  --footer-gap-desktop: 8px;    /* ønsket ekstra luft over footeren */
}

@media (min-width: 900px){
  /* Fjern den gamle 50px bund-padding på selve siden (grøn lomme) */
  .page{ padding-bottom: 0 !important; }

  /* Reserver KUN footerhøjde + lille ekstra luft i indholdscontaineren */
  main, .content, .wrap, .page-content{
    padding-bottom: calc(var(--footer-h-desktop) + var(--footer-gap-desktop)) !important;
    display: flow-root;
  }

  /* Nederste blok må ikke have egen ydre margin der øger hullet */
  .content > *:last-child{ margin-bottom: 0 !important; }
  .content > .event_outer:last-child,
  .content > .maintext_container:last-child,
  .content > .floattext_container:last-child,
  .content > .forside_two-columns:last-child{
    margin-bottom: 0 !important;
  }
}


/* Kun pil på rigtige punkter */
ul.arrow-list > li.css-arrow {
  position: relative;
  padding-left: 1.6em;
  margin-bottom: 0.5em;
}
ul.arrow-list > li.css-arrow::before {
  content: "▸";
  position: absolute;
  left: 0;
  top: 0;
  transform: translateY(2px); /* finjustér 2–3px */
  color: #246fe5;
  font-size: 1.4em;          /* større pil */
  line-height: 1;
}

/* Divider: ingen pil, kun en linje mellem items */
ul.with-divider > li.divider,
ul.arrow-list > li.divider,
ul.arrow-list > li[role="separator"] {
  list-style: none;
  position: static;
  padding: 0;
  margin: 10px 0;
  height: 0;
  border: 0;
  border-bottom: 1px solid #e5e7eb;
}
ul.arrow-list > li.divider::before,
ul.arrow-list > li[role="separator"]::before { content: none !important; }

/* Sikkerhed: ingen pil på tomme li */
ul.arrow-list > li:empty::before { content: none; }

/* Knappen i bunden: brug særskilt pilklasse, så den ikke påvirkes af arrow-list */
.green-link-btn .btn-arrow {
  margin-left: 6px;
  font-size: 1.2em;
  vertical-align: middle;
  transition: transform .2s ease;
}
.green-link-btn:hover .btn-arrow { transform: translateX(3px); }
ul.arrow-list > li.css-arrow { position: relative; padding-left: 1.6em; margin-bottom: .5em; }
ul.arrow-list > li.css-arrow::before { content:"▸"; position:absolute; left:0; top:0; transform: translateY(2px); color:#246fe5; font-size:1.4em; line-height:1; }
ul.arrow-list > li.divider::before,
ul.arrow-list > li[role="separator"]::before { content:none !important; }
ul.with-divider > li.divider { list-style:none; position:static; padding:0; margin:10px 0; height:0; border:0; border-bottom:1px solid #e5e7eb; }
.green-link-btn .btn-arrow { margin-left:6px; font-size:1.2em; vertical-align:middle; transition:transform .2s ease; }
.green-link-btn:hover .btn-arrow { transform: translateX(3px); }

ul.arrow-list {
  list-style: none;   /* fjern standard prik */
  margin: 0;
  padding: 0;
}
.btn-center {
  text-align: center;
  margin-top: 1em; /* valgfrit luft over knappen */
}
