
:root {
    --black: #000000;
    --white: #ffffff;
}

.hamburger_logo .mobile_logo {
    max-width: 13rem;
    height: auto;
}







/* --- Contact form floating labels fix (CF7) --- */
.contact-form.style-2 .form-input {
  position: relative;
}

/* Make room for the label above */
.contact-form.style-2 .form-input input,
.contact-form.style-2 .form-input textarea,
.contact-form.style-2 .form-input .nice-select {
  padding-top: 22px; /* space for label */
}

/* Default label position */
.contact-form.style-2 .form-input > label {
  position: absolute;
  top: 10px;
  left: 0;
  margin: 0;
  pointer-events: none;
  transition: transform .15s ease, opacity .15s ease, top .15s ease;
}

/* When focusing -> hide/float label */
.contact-form.style-2 .form-input:focus-within > label {
  opacity: 0;
  transform: translateY(-6px);
}

/* When field has value -> hide/float label (we add .is-filled with JS) */
.contact-form.style-2 .form-input.is-filled > label {
  opacity: 0;
  transform: translateY(-6px);
}

/* CF7 validation tip shouldn't push layout weirdly */
.contact-form.style-2 .wpcf7-not-valid-tip {
  margin-top: 6px;
}

/* CF7 response text color (you asked white) */
.contact-form.style-2 .wpcf7-response-output {
  color: #fff !important;
}

/* Fix: nice-select list width (remove the 100% that squeezes it) */
.contact-form.style-2 .form-input .nice-select .list {
  width: auto !important;
  min-width: 100%;
}




/* Disable Swiper's height:100% for testimonial slides */
.tj-testimonial-section .testimonial-slider .swiper-slide{
  height: auto !important;
}



/* ===== Process cards: stable equal layout ===== */
.details-content-box{
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 30px;
}

.details-content-box > .service-details-item{
  flex: 0 0 calc(33.333% - 20px);
  width: 100%;
  max-width: none !important;   /* override theme max-width:275px */
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  min-height: 400px;
}

/* keep wrapper stable (safer than display: contents) */
.details-content-box .service-details-item .service-number{
  display: block;
  margin: 0;
  padding: 0;
}

/* uniform top rhythm */
.details-content-box .service-details-item .number{
  display: inline-flex;
  align-self: flex-start;
  margin: 0 0 24px 0;
}

.details-content-box .service-details-item .title{
  margin: 0 0 20px 0;
  min-height: 56px;
  line-height: 1.25;
  display: flex;
  align-items: flex-end;
}

.details-content-box .service-details-item .desc{
  flex: 1 1 auto;
  margin: 0;
}
.details-content-box .service-details-item .desc p{
  margin: 0;
}

/* remove editor noise */
.details-content-box > p:empty,
.details-content-box p:empty{
  display: none;
}
.details-content-box br{
  display: none;
}

/* tablet */
@media (max-width: 991px){
  .details-content-box > .service-details-item{
    flex: 0 0 calc(50% - 15px);
    min-height: 370px;
  }
  /* contact form response message color */

}

/* mobile */
@media (max-width: 575px){
  .details-content-box{
    gap: 18px;
  }
  .details-content-box > .service-details-item{
    flex: 0 0 100%;
    min-height: auto;
  }
  .details-content-box .service-details-item .title{
    min-height: auto;
  }
}





/* header new color change */

.header-black, .header-menu-white{
  background-color: var(--black) !important;
}
/* Default menu color in this header */
.header-menu-white .mainmenu ul > li > a{
  color: #fff !important;
}

/* Hover stays yellow */
.header-menu-white .mainmenu ul > li:hover > a{
  color: #f5b000 !important;
}

/* Active/current page stays yellow */
.header-menu-white .mainmenu ul > li.current-menu-item > a,
.header-menu-white .mainmenu ul > li.current_page_item > a,
.header-menu-white .mainmenu ul > li.current-menu-parent > a,
.header-menu-white .mainmenu ul > li.current-menu-ancestor > a{
  color: #f5b000 !important;
}




/* Gallery images: square crop */
.images-wrap .image-box{
  width: 100%;
  /* aspect-ratio: 1 / 1;       */
  overflow: hidden;
}

.images-wrap .image-box img{
  width: 100%;
  height: 100%;
  object-fit: cover;        /* vágás */
  display: block;
}


/* Top-level menu links stay white */
.header-menu-white .mainmenu > ul > li > a{
  color: #fff !important;
}

/* Dropdown (sub-menu) links become black */
.header-menu-white .mainmenu ul li ul li a{
  color: #000 !important;
}

/* Optional: dropdown hover (ha szeretnéd, hogy hoverre sárga legyen a lenyílóban is) */
.header-menu-white .mainmenu ul li ul li:hover > a{
  color: #f5b000 !important;
}

.banner-shape img{
  filter: brightness(0) saturate(100%);
}





/* Projects archive (/projects/) - project card image responsive on mobile */
@media (max-width: 767px) {
  body.post-type-archive-project .blog-images img,
  body.post-type-archive-project .tj-blog-item .blog-images img,
  body.post-type-archive-project img.attachment-k7-project-hero,
  body.post-type-archive-project img.size-k7-project-hero {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block;
  }
}


/* Marquee: keep text + icon on one line */
.tj-marquee-section .marquee-item{
  display: flex;
  align-items: center;
  gap: 28px;
}

.tj-marquee-section .marquee-item .marquee-text{
  margin: 0;
  line-height: 1;
}

.tj-marquee-section .marquee-item .marquee-icons{
  display: flex;
  align-items: center;
  margin: 0;
}

.tj-marquee-section .marquee-item .tji-marquee-icon{
  display: inline-block;
  line-height: 1;
}

/* IMPORTANT: the extra marquee-wrapper class is also on swiper-wrapper -> neutralize it */
.tj-marquee-section .swiper-wrapper.marquee-wrapper{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  border-bottom: 0 !important;
}




/* conctact form 7 floating label fix */

/* ===== CONSULT: keep original layout, only float button + captcha ===== */

.consult-area {
  height: 370px !important; /* adjust as needed */
}
/* Float turnstile next to the button (left of it) */
.tj-consult-section .consult-form .consult-turnstile{
  position: relative !important;
  right: 0 !important;    /* fine tune */
   /* fine tune */
  margin: 0 !important;
  z-index: 19 !important;
  width: 20px !important;  /* adjust as needed */
  transform: scale(0.60);
  transform-origin: top right;
}

/* Turnstile: scale down everywhere (Contact + Consult) */
.wpcf7 .cf-turnstile,
.wpcf7 .consult-turnstile {
  transform: scale(0.78);
  transform-origin: left top;
}

/* Prevent layout overflow caused by scaling */
.wpcf7 .cf-turnstile,
.wpcf7 .consult-turnstile {
  max-width: 100%;
}
/* Mobile: even smaller to avoid sticking out */
@media (max-width: 768px) {
  .wpcf7 .cf-turnstile,
  .wpcf7 .consult-turnstile {
    transform: scale(0.68);
    transform-origin: left top;
  }
}

@media (max-width: 1024px){
  .consult-area {
    height: auto !important; /* allow height to adjust on small screens */
  }
  .tj-consult-section .wpcf7-response-output{
  color: #fff !important;
}

}

/* extra small screens */
@media (max-width: 420px){
  .tj-consult-section .consult-form .consult-turnstile{
    transform: scale(0.55) !important;
    transform-origin: right center !important;
  }
}
.contact-form.style-2 .wpcf7-response-output {
  color: #000000 !important;
}


.widget-feature-item .feature-box .feature-content .title {
 font-size: 28px !important;
}


/* If the ring is created via pseudo elements */
.swiper-pagination-bullet::before,
.swiper-pagination-bullet::after,
.swiper-pagination-bullet-active::before,
.swiper-pagination-bullet-active::after {

  border: none !important;

}