:root {
  --dl-color-gray-500: #999999;
  --dl-color-gray-700: #D9D9D9;
  --dl-color-gray-900: #eaeaeaff;
  --dl-color-gray-black: #000000;
  --dl-color-gray-white: #FFFFFF;
  --dl-space-space-unit: 8px;
  --dl-color-primary-100: #a9d52fff;
  --engbakken-color: #a9d52f;
  --logo-color: #cad326ff;
  --logo-trans: #cad32677;
  --engbakken-trans: #a9d52f88;
  --engbakken-trans-dark: rgba(103, 130, 29, 0.475);
  --engbakken-trans-high: rgba(169, 213, 47, 0.4);
  --green-opaque: rgba(169, 213, 47, 0.137);
  --gray-opaque: #9999993d;
  --dl-color-primary-500: #8469deff;
  --dl-color-primary-700: #9a91e2ff;
  --dl-color-primary-1001: #2fd534ff;
  --dl-radius-radius-round: 50%;
  --dl-size-size-maxcontent: 1600px;
  --dl-space-space-halfunit: 4px;
  --dl-space-space-tenunits: 80px;
  --dl-radius-radius-radius2: 2px;
  --dl-radius-radius-radius4: 4px;
  --dl-radius-radius-radius8: 8px;
  --dl-space-space-fiveunits: 40px;
  --dl-space-space-fourunits: 32px;
  --dl-space-space-doubleunit: 16px;
  --dl-space-space-tripleunit: 24px;
  --dl-border-radius: 1.5rem;
  --header-height: 80px;
  --header-height-mobile: 60px;
}

.teleport-show {
  display: flex !important;
  transform: translateY(0%) !important;
}

.list-item {
  display: list-item;
}

.button {
  color: var(--dl-color-gray-black);
  cursor: pointer;
  display: inline-block;
  padding: 0.5rem 1rem;
  font-family: Open Sans;
  border-color: var(--dl-color-gray-black);
  border-width: 1px;
  border-radius: 4px;
  background-color: var(--dl-color-gray-white);
}

.list {
  width: 100%;
  margin: 1em 0;
  display: block;
  padding: 0 0 0 1.5rem;
  list-style-type: none;
  list-style-position: outside;
}

.textarea,
.input {
  color: var(--dl-color-gray-black);
  cursor: auto;
  padding: 0.5rem 1rem;
  font-family: Open Sans;
  border-color: var(--dl-color-gray-black);
  border-width: 1px;
  border-radius: 4px;
  background-color: var(--dl-color-gray-white);
}

.list-item-grey {
  color: var(--dl-color-gray-500);
  display: list-item;
}

.list-item-check {
  padding-left: 40px;
  background-size: contain;
  background-image: fe290a93-0fa9-453b-b10d-d420ccc4366d;
  background-repeat: no-repeat;
}

.heading_img {
  background-image: image("/playground_assets/grass_banner.webp");
}

.rounded_corners {
  border-radius: 50px 5px 5px 5px;
}

.reveal {
  opacity: 0;
  transform: translateX(150px);
  transition: 2s all ease;
}

.reveal\.active {
  opacity: 1;
  transform: translateX(0);
}

.show {
  opacity: 1;
}

.Input-properties {
  width: 98%;
  margin-top: 2%;
  margin-right: 2%;
}

.container-padding {
  padding: 48px;
}

.details-expand {
  top: 50%;
  left: 50%;
  content: "";
  opacity: 0;
  padding: 5% 8%;
  position: absolute;
  transform: translate(-50%, -50%) rotateY(0) scale(0.1);
  transition: all 0.4s ease-in;
  transform-origin: 50%;
}

.details-expand-hover {
  opacity: 1;
  transform: translate(-50%, -50%) rotate(0deg);
}

.Section-Text,
.ContentGray,
.Content {
  font-family: Open Sans;
  font-weight: 400;
  line-height: 1.55;
  text-transform: none;
  text-decoration: none;
}

.Section-Text,
.ContentGray {
  font-size: 18px;
}

.Content {
  font-size: 16px;
  font-family: Arial;
}

.Card-Text {
  font-size: 16px;
  font-family: Open Sans;
  font-weight: 400;
  line-height: 1.55;
}

.BigCard-Heading {
  font-size: 36px;
  font-family: Roboto;
  font-weight: 900;
  line-height: 1.55;
}

.Card-Heading {
  font-size: 20px;
  font-family: Roboto;
  font-weight: 700;
  line-height: 1.55;
}

.Anchor {
  font-size: 18px;
  font-family: Roboto;
  font-weight: 700;
  line-height: 1.55;
  text-transform: capitalize;
}

.Section-Heading {
  font-size: 48px;
  font-family: Roboto;
  font-weight: 700;
  line-height: 1.22;
}

.product-grid-button {
  width: 100%;
  display: inline-block;
  position: relative;
  bottom: 1rem;
  transition: all 0.5s;
}

.product-grid-button#right {
  left: 80%;
}

.prodcut-grid-button#left {
  margin-top: 10%;
  left: 80%;
}

.product-grid-button:hover {
  color: var(--engbakken-color);
}

.product-grid-button svg {
  display: inline-block;
  margin-bottom: -0.7rem;
  width: 40px;
  transition: all 0.5s ease-in-out;
}

.product-grid-button path {
  display: inline-block;
  fill: var(--engbakken-color);
}

.product-grid-button:hover svg {
  transform: translateX(70%);
}

.product-grid-button.rotate-down svg {
  transform: rotate(90deg);
  transform-origin: center;
}

.product-grid-button.rotate-down:hover svg {
  transform: rotate(90deg) translateX(70%);
}

.product-button {
  color: white;
  width: auto;
  max-height: 60px;
  transition: 0.3s;
  border-width: 0;
  padding-left: var(--dl-space-space-tripleunit);
  border-radius: 34px;
  padding-right: var(--dl-space-space-tripleunit);
  background-color: var(--engbakken-color);
}

.product-button:hover {
  background-color: var(--logo-color);
  transform: skew(-10deg) scale(1.1);
}

.logo-green {
  color: var(--engbakken-color) !important;
}

.logo-green2 {
  color: var(--logo-color) !important;
}



.unfat {
  font-weight: normal;
  font-size: 1.5rem;
  margin-top: -1rem;
  margin-bottom: 1rem;
}

.hide {
  display: none !important;
  opacity: 0 !important;
}

.line-separator {
  border: none;
  border-top: 0.3rem dashed var(--logo-color);
  margin: 1rem 0;
  width: 100%;
}

.close-button {
  display: block;
  color: red;
  opacity: 0.3;
  transition: transform 0.3s ease-in-out, color 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

.close-button:hover {
  opacity: 1;
  transform: scale(1.1);
}

.close-button path {
  stroke-width: 5;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
}

.sticky-button-text {
  display: inline-block;
  text-align: center;
  color: white;
  font-size: 1.5rem;
  line-height: 1.2;
  transition: 0.5s ease-in-out;
}

.sticky-booking-button {
  position: sticky;
  bottom: 0%;
  opacity: 0;
  visibility: hidden;
  left: 80%;
  display: inline-flex;        /* vigtig for dynamisk størrelse */
  align-items: center;
  justify-content: center;
  z-index: 100;
  height: auto;
  padding: 0.8rem 1.4rem;      /* knappen får luft i stedet for fast width */
  border-radius: 2rem;
  border: 3px solid var(--engbakken-color);
  background-color: var(--engbakken-color);
  visibility: hidden;
  transform: translateY(2rem);
  transition: 0.5s ease-in-out;
  white-space: normal;         /* tillader linjeskift */
  max-width: 100%;             /* undgår overflow */
}

.sticky-booking-button:hover {
  background-color: white;
  cursor: pointer;
}

.sticky-booking-button.visible{
  visibility: visible;
  opacity: 1;
  transform: translateY(-2rem);
}


.sticky-booking-button:hover .sticky-button-text {
  color: var(--logo-color);
  transform: skewX(-20deg);
}

.sticky-booking-button.left {
  left: 5%;        /* placerer knappen i venstre side */
  right: auto;     /* sikrer at højre side ikke blander sig */
}


.Green-list {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.Green-list li {
  position: relative;
  overflow: hidden;
  background-color: var(--engbakken-color);
  color: white;
  padding: 10px;
  border-radius: 10px;
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
  transition: background-color 0.3s;
}

.Green-list li a {
  display: block;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transform: translateY(-10px);
  transition: max-height 0.4s ease, opacity 0.3s ease, transform 0.3s ease;
  background-color: whitesmoke;
  color: black;
  border-radius: 10px;
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
  pointer-events: none;
}

.Green-list li:hover a {
  max-height: 3rem;
  height: 3rem;
  padding-top: 0.75rem;
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.Green-list li a:hover {
  background-color: var(--logo-color);
  transform: scale(1.02);
}


.Green-list .accordion {
    margin-bottom: 1rem;
    position: relative;
}

.Green-list .toggle {
    display: none;
}

.Green-list .summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    padding: 0.5rem;
    font-weight: bold;
    border-radius: 5px;
}

.Green-list .open-close-icon {
    align-self: right;
    width: 1.5rem;
    height: 1.5rem;
    fill: white;
    transition: transform 0.3s ease;
}

.Green-list .summary:hover {
    background-color: var(--logo-color);
    border-radius: 25px;
}

.Green-list .sub-box {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.5s ease, opacity 0.5s ease, padding 0.3s ease;
    padding: 0 1rem;
    background-color: white;
    color: black;
    border-radius: 10px;
    text-align: center;
}

.Green-list .accordion:hover .sub-box {
    max-height: 150px;
    opacity: 1;
    padding: 0.5rem 1rem;
    margin-top: 0.5rem;
}

/* Når checkbox er checked → vis indhold */
.Green-list .toggle:checked~.sub-box {
    max-height: 150px;
    opacity: 1;
    padding: 0.5rem 1rem;
    margin-top: 0.5rem;
    background-color: var(--dl-color-gray-700);
}

.Green-list .toggle:checked+.summary .open-close-icon {
    transform: rotate(45deg);
    /* plus bliver til et kryds */
    fill: black;
}

/* Roter ikon ved åben tilstand */
.Green-list .toggle:hover+.summary .open-close-icon {
    transform: rotate(45deg);
    /* plus bliver til et kryds */
}