#primary, #primary-alt, .site-content {
  background-color: #ffffff;
}

	.entry-thumbnail a {
  position: relative;
  display: block;
  overflow: hidden;
}

.entry-thumbnail a::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(120deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0.4) 50%, rgba(255,255,255,0.1) 100%);
  transform: skewX(-30deg);
  transition: left 0.4s ease;
  pointer-events: none;
}

.entry-thumbnail a:hover::before {
  left: 100%;
}
	
.entry-title a:hover {
  animation: sliceShake 0.3s ease-in-out;
  color: darkred;
}

@keyframes sliceShake {
  0% { transform: translateX(0); }
  25% { transform: translateX(-2px); }
  50% { transform: translateX(2px); }
  75% { transform: translateX(-1px); }
  100% { transform: translateX(0); }
}	
	
		#german-flag {
			position: relative;
		}

		.flag-overlay {
			position: absolute;
			top: 0;
			left: 0;
			display: none;
			background-image: url(images/germany-flag.png);
			width: 10px;
			height: 10px;
		}

		#german-flag:hover .flag-overlay {
			display: block;
			width: 46px;
			height: 66px;
			background-repeat: no-repeat;
		}

		#japan-flag {
			position: relative;
		}

		.flag-overlay1 {
			position: absolute;
			top: 0;
			left: 0;
			display: none;
			background-image: url(images/japan-flag.png);
			width: 10px;
			height: 10px;
		}

		#japan-flag:hover .flag-overlay1 {
			display: block;
			width: 46px;
			height: 66px;
			background-repeat: no-repeat;
		}

		#usa-flag {
			position: relative;
		}

		.flag-overlay2 {
			position: absolute;
			top: 0;
			left: 0;
			display: none;
			background-image: url(images/usa-flag.png);
			width: 10px;
			height: 10px;
		}

		#usa-flag:hover .flag-overlay2 {
			display: block;
			width: 46px;
			height: 66px;
			background-repeat: no-repeat;
		}

		/* CSS rules for medium screens */
		#masthead-small {
			display: none;
		}

		#masthead-big {
			display: block;
		}

		/* Styles specific to medium screens */
		@media only screen and (max-width: 992px) {

			/* CSS rules for medium screens */
			#masthead-small {
				display: block;
			}

			#masthead-big {
				display: none;
			}
		}

		/* Styles specific to small screens */
		@media only screen and (max-width: 768px) {

			/* CSS rules for small screens */
			#masthead-small {
				display: block;
			}

			#masthead-big {
				display: none;
			}
		}

.bullet-section {
  position: relative;
  padding-left: 2.2em;
  margin: 0 0 0.5em 0; /* no top margin */
  padding-top: 0;       /* optional if extra space persists */
}

.bullet-section::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.4em;
  width: 1em;
  height: 1em;
  background-color: #444;
  border-radius: 50%;
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
}

.image-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 1rem;
  margin: 2rem auto;
  max-width: 100%;
}

.image-row img {
  width: 48%;
  height: auto;
  border: 0;
  box-shadow: 0 0px 0px rgba(0, 0, 0, 0.2);
}

@media screen and (max-width: 768px) {
  .image-row img {
    width: 100%;
  }
}

.glow-pulse {
  color: #4b5563; /* Neutral cool gray - like steel */
  text-decoration: none;
  font-weight: bold;
  animation: pulse-glow 3.5s infinite;
  transition: color 0.3s ease-in-out;
}

@keyframes pulse-glow {
  0% {
    text-shadow: 0 0 5px #e5e7eb, 0 0 10px #9ca3af; /* subtle light-gray glow */
    color: #9ca3af; /* medium gray */
  }
  50% {
    text-shadow: 0 0 15px #fefefe, 0 0 25px #d1d5db; /* blade shine effect */
    color: #ffffff; /* flash of pure white */
  }
  100% {
    text-shadow: 0 0 5px #d1d5db, 0 0 10px #6b7280; /* dim steel shimmer */
    color: #9ca3af;
  }
}

  .hover-shudder:hover {
    animation: shudderDown 0.3s ease;
  }

  @keyframes shudderDown {
    0%   { transform: translateY(0); }
    30%  { transform: translateY(4px); }
    60%  { transform: translateY(-2px); }
    100% { transform: translateY(0); }
  }

.scroller {
 height: 50px;	
 overflow: hidden;
 position: relative;
}
.scroller h5 {
 position: absolute;
 width: 100%;
 height: 100%;
 margin: 0;
 line-height: 50px;
 animation: scroller 20s linear infinite;  /* Apply the animation */
}

/* Define the animation */
@keyframes scroller {
  from {
    margin-left: 100%;
	width: 300%;
  }
  to {
    margin-left: -100%;
	width: 100%;
  }
}

body {
  font-size: 15px !important;
  line-height: 1.8 !important;
}

* {
  hyphens: none;
  word-break: normal;
  overflow-wrap: normal;
}

  #site-navigation {
    font-family: 'Poppins', sans-serif;
    margin-top: 1rem;
  }

  #menu-menu-1 {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1.5rem;
    font-size: 1.6rem;
  }

  #menu-menu-1 li a {
    color: inherit;
    text-decoration: none;
    transition: color 0.3s;
  }

  #menu-menu-1 li a:hover {
    color: #db1a6b;
  }

.content-wrapper {
  max-width: 1024px; /* matches header’s inner container width */
  margin: 0 auto;
  padding: 0 1rem;
  display: flex;
  gap: 2rem;
  flex-wrap: wrap; /* add this to prevent overflow on narrow screens */
}

.site-main {
  flex: 1 1 66%; /* two-thirds width */
  padding-right: 1rem;
  min-width: 300px; /* optional, helps prevent too narrow main area */
}

.widget-area {
  flex: 1 1 32%; /* roughly one-third width */
  min-width: 250px; /* optional, prevents sidebar getting too narrow */
}

/* Responsive fallback */
@media (max-width: 768px) {
  .site-main,
  .widget-area {
    flex: 1 1 100%;
    padding: 0;
  }
}