body, html {
    margin: 0;
    padding: 0;
    height: 100%;
}

    /* Custom styles if needed */
    .custom-text {
      word-wrap: break-word;
      overflow-wrap: break-word;
      word-break: break-word;
    }

    /* Media query to adjust text behavior on smaller screens */
    @media (max-width: 768px) {
      .custom-text {
        word-wrap: break-word;
        overflow-wrap: break-word;
        word-break: break-word;
      }
    }

/* Default: Hide overlay */
.mobile-overlay {
    display: none; /* Hidden by default */
}

/* Default: Ensure buttons are visible on desktop */
.button-container,
#fullscreenButton {
    display: flex; /* Show buttons normally on desktop */
}

/* Apply changes only for mobile devices */
@media (max-width: 768px) {
    .mobile-overlay {
        display: flex;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.8); /* Semi-transparent black */
        color: white;
        font-size: 24px;
        font-family: Arial, sans-serif;
        align-items: center;
        justify-content: center;
        text-align: center;
        z-index: 10; /* Ensure it's above other elements */
        padding: 20px;
    }

    /* Force hide buttons on mobile */
    .button-container,
    #fullscreenButton {
        display: none !important;
        visibility: hidden;
        opacity: 0;
    }
}


/* Video container should be 1280x720 
.video-container {
    position: relative;
    width: 1280px;
    height: 720px;
    overflow: hidden;
    margin: 0 auto;
}*/

/* Video container should be responsive */
.video-container {
  position: relative;
  width: 80%; /* Adjust this percentage as needed */
  max-width: 1280px; /* Ensure it doesn't exceed 1280px */
  height: auto; /* Maintain aspect ratio */
  aspect-ratio: 16 / 9; /* Keep 16:9 aspect ratio */
  overflow: hidden;
  margin: 0 auto;
}

/* The video should fill the container while maintaining its aspect ratio */
.video-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Ensures the video covers the container */
}

/* Moon image styling */
.moon-image {
    position: absolute; /* Absolute positioning */
    top: 3%;  /* Set the top percentage or pixel distance */
    left: 21%; /* Align it to the right */
    width: 10%; /* Make the width 8% of the video container's width */
    height: auto; /* Maintain the aspect ratio of the moon image */
    z-index: 1; /* Ensure it stays on top of the video */
}


/* Button container at the bottom center */
.button-container {
    position: absolute;
    bottom: 20px; /* Space from the bottom of the container */
    left: 50%; /* Center horizontally */
    transform: translateX(-50%); /* Center properly */
    display: flex;
    justify-content: center;
    gap: 20px; /* Add space between buttons */
    z-index: 1; /* Make sure buttons are above the video */
}

/* General button styling */
/* General button styling */
button {
  background: rgba(0, 0, 0, 0.5); /* Dark semi-transparent background */
  border: 2px solid rgba(255, 255, 255, 0.8); /* Light border with transparency */
  color: white; /* Text color (white) */
  font-size: 16px; /* Font size */
  padding: 10px 20px; /* Padding around the text */
  border-radius: 30px; /* Rounded corners */
  transition: background 0.3s, transform 0.3s ease; /* Smooth transition for hover effect */
  z-index: 1;
  font-family: Arial, sans-serif; /* Ensure text appears clean */
}

/* Button hover effect */
button:hover {
  background: rgba(255, 255, 255, 0.3); /* Lighter background on hover */
  transform: scale(1.1); /* Slightly increase size on hover */
  cursor: pointer; /* Change cursor to pointer on hover */
}

/* Focus state for buttons */
button:focus {
  outline: none; /* Remove default focus outline */
  box-shadow: 0 0 8px rgba(255, 255, 255, 0.8); /* Add custom focus outline effect */
}

/* Specific button styling for candle button */
#candleButton {
  background: rgba(0, 0, 0, 0.7); /* Darker background for fullscreen button */
  border: 2px solid rgba(255, 255, 255, 0.9); /* Lighter border */
  z-index: 2; /* Make sure fullscreen button is above the other buttons */
}

#candleButton:hover {
  background: rgba(255, 255, 255, 0.3); /* Lighter background on hover */
}

/* Specific button styling for star button */
#starButton {
  background: rgba(0, 0, 0, 0.7); /* Darker background for fullscreen button */
  border: 2px solid rgba(255, 255, 255, 0.9); /* Lighter border */
  z-index: 2; /* Make sure fullscreen button is above the other buttons */
}

#starButton:hover {
  background: rgba(255, 255, 255, 0.3); /* Lighter background on hover */
}

/* Specific button styling for fullscreen button */
#fullscreenButton {
  background: rgba(0, 0, 0, 0.7); /* Darker background for fullscreen button */
  border: 2px solid rgba(255, 255, 255, 0.9); /* Lighter border */
  position: absolute;
  bottom: 20px;
  right: 20px;
  z-index: 2; /* Make sure fullscreen button is above the other buttons */
}

#fullscreenButton:hover {
  background: rgba(255, 255, 255, 0.3); /* Lighter background on hover */
}

/* Override button text color when btn-light is used */
button.btn.btn-light {
  color: white !important; /* Force the text color to be white */
}

/* Ensure the font color remains white even with the hover effect */
button.btn.btn-light:hover {
  color: white !important;
}

/* Add more styling if necessary for different button types */

/* Memorial header */


/* Billede design */

.memorial-section {
    /*width: 1280px;*/
    margin: 40px auto; /* centers it */
    background: url('assets/images/path_to_your_paper_texture.jpg') repeat;
    background-size: cover;
    background-color: #f5f1e1;
    padding: 40px;
    border: 1px solid #b5a78a;
    box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.2);
    color: #222;
    text-align: justify;
}


/* Scoped text */
.memorial-section .memorial-text {
  font-family: 'EB Garamond', serif;
  font-size: 1.1rem;
  line-height: 1.8;
  color: #2d2d2d;
  text-align: justify;
  text-shadow: 1px 1px 0px rgba(0,0,0,0.1);
}

.memorial-section .memorial-text strong {
  font-size: 1.3rem;
  font-weight: bold;
  color: #111;
  text-transform: uppercase;
}

/* Scoped image */
.memorial-section .old-newspaper-image {
  filter: grayscale(100%) contrast(120%) brightness(90%) sepia(30%);
  background: url('assets/images/newspaper-texture.jpg');
  background-size: cover;
  background-blend-mode: multiply;
  border: 2px solid #999;
  box-shadow: -3px 3px 5px rgba(0,0,0,0.2);
  width: 100%;
  height: auto;
}

/* Scoped columns */
.memorial-section .row {
  display: flex;
  justify-content: space-between;
  border-top: 2px solid #b5a78a;
  border-bottom: 2px solid #b5a78a;
  padding: 20px 0;
}

.memorial-section .col-md-4 {
  padding: 20px;
  border-right: 2px dashed #b5a78a;
}

.memorial-section .col-md-4:last-child {
  border-right: none;
}

/* Scoped caption */
.memorial-section .memorial-caption {
  text-align: center;
  font-style: italic;
  font-family: 'EB Garamond', serif;
  font-size: 1rem;
  color: #444;
  margin-top: 30px;
  text-shadow: 1px 1px 0px rgba(0,0,0,0.1);
}

/* Scoped responsive */
@media (max-width: 768px) {
  .memorial-section .row {
    flex-direction: column;
    border: none;
  }

  .memorial-section .col-md-4 {
    border: none;
    margin-bottom: 20px;
  }
}



/* Candle animation */

.center {
  width: 1170px;
  margin: 20px auto 0;
}

.holder {
  margin: 12rem auto 0;
  width: 150px;
  height: 400px;
  position: relative;
}

.holder *, .holder *:before, .holder *:after {
  position: absolute;
  content: "";
}

.candle {
  bottom: 0;
  width: 150px;
  height: 300px;
  border-radius: 150px / 40px;
  box-shadow: inset 20px -30px 50px 0 rgba(0, 0, 0, 0.4), inset -20px 0 50px 0 rgba(0, 0, 0, 0.4);
  background: #190f02;
  background: linear-gradient(#e48825, #e78e0e, #833c03, #4c1a03 50%, #1c0900);
}

.candle:before {
  content: ""; /* Necessary to create the pseudo-element */
  width: 100%;
  height: 40px;
  border-radius: 50%;
  border: 2px solid #d47401;
  background: #b86409;
  background: radial-gradient(#eaa121, #8e4901 45%, #b86409 80%);
  background: rgba(0, 0, 0, 0.5); /* Dark overlay with 50% opacity */
  border-radius: 150px / 40px; /* Match the border-radius of the candle */
  z-index: 1; /* Ensure the overlay is above the candle's background */
}

.candle:after {
  width: 34px;
  height: 10px;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 50%;
  top: 14px;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.5);
  background: radial-gradient(rgba(0, 0, 0, 0.6), transparent 45%);
}

.thread {  
  width: 6px;
  height: 36px;
  top: -17px;
  left: 50%;
  z-index: 1;
  border-radius: 40% 40% 0 0;
  transform: translateX(-50%);
  background: #121212;
  background: linear-gradient(#d6994a, #4b232c, #121212, black, #e8bb31 90%);
}

.flame {
  width: 24px;
  height: 120px;
  left: 50%;
  transform-origin: 50% 100%;
  transform: translateX(-50%);
  bottom: 100%;
  border-radius: 50% 50% 20% 20%;
  background: rgba(255, 255, 255, 1);
  background: linear-gradient(white 80%, transparent);
  animation: moveFlame 6s linear infinite, enlargeFlame 5s linear infinite;
}

.flame:before {
  width: 100%;
  height: 100%;
  border-radius: 50% 50% 20% 20%;
  box-shadow: 0 0 15px 0 rgba(247, 93, 0, .4), 0 -6px 4px 0 rgba(247, 128, 0, .7);
}

@keyframes moveFlame {
  0%, 100% {
    transform: translateX(-50%) rotate(-2deg);
  }
  50% {
    transform: translateX(-50%) rotate(2deg);
  }
}

@keyframes enlargeFlame {
  0%, 100% {
    height: 120px;
  }
  50% {
    height: 140px;
  }
}

.glow {
  width: 26px;
  height: 60px;
  border-radius: 50% 50% 35% 35%;
  left: 50%;
  top: -48px;
  transform: translateX(-50%);
  background: rgba(0, 133, 255, .7);
  box-shadow: 0 -40px 30px 0 #dc8a0c, 0 40px 50px 0 #dc8a0c, inset 3px 0 2px 0 rgba(0, 133, 255, .6), inset -3px 0 2px 0 rgba(0, 133, 255, .6);
}

.glow:before {
  width: 70%;
  height: 60%;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.35);
}

.blinking-glow {
  width: 100px;
  height: 180px;
  left: 50%;
  top: -55%;
  transform: translateX(-50%);
  border-radius: 50%;
  background: #ff6000;
  filter: blur(60px);
  animation: blinkIt .1s infinite;
}

@keyframes blinkIt {
  50% { opacity: .8;}
}








/* Modal Styling */

#cardModal .card {
  width: 100%;
  max-width: 500px;
  margin: auto;
  box-shadow: 0 8px 16px rgba(0,0,0,0.3);
}

.modal-content {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}


/* Note visning Start */

.container.bootstrap.snippets.bootdeys {
  /*width: 1280px;*/
  margin: 0 auto;
}

#guestbook-entries {
  /*width: 1280px;*/
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.card-image {
  display: block;
  max-width: 100%;
  height: auto;
  margin-bottom: 10px; /* Adjust the space as needed */
  border-radius: 4px; /* Optional: Makes edges softer */
}

.card-big-shadow {
  max-width: 320px;
  position: relative;
}

.coloured-cards .card {
  margin-top: 30px;
}

.card[data-radius="none"] {
  border-radius: 0px;
}
.card {
  border-radius: 8px;
  box-shadow: 0 2px 2px rgba(204, 197, 185, 0.5);
  background-color: #FFFFFF;
  color: #252422;
  margin-bottom: 20px;
  position: relative;
  z-index: 1;
  overflow: hidden; /* Ensure contents stay inside the card */
  aspect-ratio: 1; /* Maintain a 1:1 aspect ratio (width = height) */
}


.card[data-background="image"] .title, .card[data-background="image"] .stats, .card[data-background="image"] .category, .card[data-background="image"] .description, .card[data-background="image"] .content, .card[data-background="image"] .card-footer, .card[data-background="image"] small, .card[data-background="image"] .content a, .card[data-background="color"] .title, .card[data-background="color"] .stats, .card[data-background="color"] .category, .card[data-background="color"] .description, .card[data-background="color"] .content, .card[data-background="color"] .card-footer, .card[data-background="color"] small, .card[data-background="color"] .content a {
  color: #585551;
}
.card.card-just-text .content {
  padding: 15px 15px;
  text-align: center;
}
.card.card-image-text .content {
  padding: 15px 15px;
  text-align: center;
}
.card .content {
  padding: 15px 15px 10px 20px;
}
.card[data-color="blue"] .category {
  color: #7a9e9f;
}

.card .category, .card .label {
  font-size: 10px;
  margin-bottom: 0px;
  text-align: left; /* Aligns text to the left */
}

.card .content {
  text-align: left; /* Ensures that all content within the card is aligned left */
}
.card-big-shadow:before {
  background-image: url("http://static.tumblr.com/i21wc39/coTmrkw40/shadow.png");
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  bottom: -12%;
  content: "";
  display: block;
  left: -12%;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 0;
}
h4, .h4 {
  font-size: 1.3em;
  font-weight: 600;
  line-height: 1.2em;
}
h6, .h6 {
  font-size: 0.9em;
  font-weight: 600;
  text-transform: uppercase;
}
.card .description {
  font-size: 20px;
  color: #66615b;
}
.content-card{
  margin-top:30px;    
}
a:hover, a:focus {
  text-decoration: none;
}

/*======== COLORS ===========*/
.card[data-color="blue"] {
  background: #b8d8d8;
}
.card[data-color="blue"] .description {
  color: #506568;
}

.card[data-color="green"] {
  background: #d5e5a3;
}
.card[data-color="green"] .description {
  color: #60773d;
}
.card[data-color="green"] .category {
  color: #92ac56;
}

.card[data-color="yellow"] {
  background: #ffe28c;
}
.card[data-color="yellow"] .description {
  color: #b25825;
}
.card[data-color="yellow"] .category {
  color: #d88715;
}

.card[data-color="brown"] {
  background: #d6c1ab;
}
.card[data-color="brown"] .description {
  color: #75442e;
}
.card[data-color="brown"] .category {
  color: #a47e65;
}

.card[data-color="purple"] {
  background: #baa9ba;
}
.card[data-color="purple"] .description {
  color: #3a283d;
}
.card[data-color="purple"] .category {
  color: #5a283d;
}

.card[data-color="orange"] {
  background: #ff8f5e;
}
.card[data-color="orange"] .description {
  color: #772510;
}
.card[data-color="orange"] .category {
  color: #e95e37;
}