/* 
Theme Name:		 Hello Elementor Child
Theme URI:		 https://elementor.com/
Description:	 Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author:			 Elementor Team
Author URI:		 https://elementor.com/
Template:		 hello-elementor
Version:		 1.0.0
Text Domain:	 hello-elementor-child
*/


/*
    Add your custom styles here
*/

.white-header h1,
.white-header h2,
.white-header h3,
.white-header h4,
.white-header h5,
.white-header h6 {
    color: white!important;
}

/* Language overlays for About Profile Images */
.about-profile-photos {
    position: relative;
}

.about-profile-photos .widget-image-caption {
    position: absolute;
    bottom: 10px;
    left: 50%;
    width: auto;
    transform: translateX(-50%);
    background-color: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 5px 10px;
    border-radius: 5px;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.about-profile-photos:hover .widget-image-caption {
    opacity: 1;
}

body .post-content img,
body .post-content iframe {
    margin: 24px auto;
    border: 1px solid var(--e-global-color-1757e224);
    border-radius: 12px;
}

body .post-navigation .elementor-post-navigation {
    gap: 24px;
}

.blog-button {
    opacity: 0;
    transition: opacity 0.7s ease;
}

.blog-preview-container:hover .blog-button {
    opacity: 1!important;
}

/* Place description on top in image box widget */
.image-box-reverse-title .elementor-image-box-content {
    position: relative;
}

.image-box-reverse-title .elementor-image-box-description {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1;
    }

.image-box-reverse-title .elementor-image-box-title {
    position: relative;
    z-index: 2;
    padding-top: 32px;
}

/* Styling for Previous - Next links on pages */
.vasartes-prev-link
{
  text-align: left;
	padding: 24px;
}

.vasartes-next-link {
  text-align: right;
	padding: 24px;
}

.vasartes-label {
  font-size: 14px;
  font-weight: normal;
  color: #555;
  display: flex;
  align-items: center;
}


.vasartes-next-link .vasartes-label {
    justify-content: flex-end;
}

.vasartes-arrow {
  width: 14px;
  height: auto;
	margin-left: 4px;
	margin-right: 4px;

}

.vasartes-title a {
  font-size: 14px;
  text-decoration: none;
}

.vasartes-title a:hover {
  text-decoration: underline;
}

.rounded-before-after .before-after-image {
	border-radius: 12px;
}

@media (max-width: 767px) {
  .image-box-inline-mobile .elementor-image-box-wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
  }
    .image-box-inline-mobile .elementor-image-box-content {
        margin-left: 12px;
    }
}

/* Wrapper to control height */
.post-password-form {
  min-height: 60vh;
  display: flex;
  flex-direction: column;
  justify-content: center;  /* vertical center */
  align-items: center;      /* horizontal center */
  text-align: center;
  margin: 0 auto;
  padding: 20px;
}

/* Optional: constrain width of text + fields */
.post-password-form p {
  max-width: 400px;
  width: 100%;
}

/* Optional: make label/input/button look nicer */
.post-password-form label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-weight: 500;
  margin-bottom: 10px;
}

.post-password-form input[type="password"] {
  width: 100%;
  max-width: 260px;
  padding: 10px 12px;
  border-radius: 4px;
  border: 1px solid #ccc;
}

.post-password-form input[type="submit"] {
  margin-top: 10px;
  padding: 10px 24px;
  border-radius: 4px;
  border: none;
  background-color: #333;
  color: #fff;
  cursor: pointer;
}

.post-password-form input[type="submit"]:hover {
  background-color: #000;
}
/* Put password input and button on one line, bottom-aligned */
.post-password-form p:last-of-type {
  display: flex;
  align-items: flex-end;   /* bottom alignment */
  gap: 10px;
  justify-content: center;
}

/* Keep label + input together, also bottom-aligned */
.post-password-form p:last-of-type label {
  display: flex;
  align-items: flex-end;   /* bottom alignment inside label */
  gap: 8px;
  margin: 0;
}

/* Avoid full-width input so button fits next to it */
.post-password-form p:last-of-type input[type="password"] {
  max-width: 220px;
}

/* Button keeps its natural height */
.post-password-form p:last-of-type input[type="submit"] {
  width: auto;
}


/* Mobile menu styles for ShiftNav*/
#shiftnav-toggle-main {
    box-shadow: 0px 2px 25px 0px rgba(0, 0, 0, 0.1);
}
   a.shiftnav-logo {
		 top:12px;
   }
   div.shiftnav.shiftnav-skin-light ul.shiftnav-menu > li.menu-item > .shiftnav-target{
      padding: 8px 25px 5px;
   }
   ul.shiftnav-menu li.shiftnav-retract>.shiftnav-target{
      padding: 7px 25px;
   }
   .shiftnav.shiftnav-shiftnav-main ul.shiftnav-menu ul.sub-menu li.menu-item > .shiftnav-target{
      padding: 10px 10px 10px 20px;
   }

/* News section styling */

.blog-list-content {
border-radius: 0px!important;
}

.entry-content {
padding: 10px;
}

/* Cookie banner */
.cookie-notice-container {
	background-color: black;
}

.footer-text a {
	color: #ffffff!important;
	font-size: 14px!important;
}

.enlarge-image:after {
    content: "Click image to enlarge \1F50D";
    display: block;
    text-align: center;
    font-size: 12px;
    color: grey;
}

/* Buttons */
.elementor-button {
    border-radius: 10px!important;
    transition: all 0.5s ease 0s;
}
.elementor-button:hover {
border-radius: 50px!important;
transition: all 0.5s ease 0s;
}
.elementor-button-link:hover {
  box-shadow: 0 0 20px 0 #C8102E24;
}