/*
Theme Name: Sydney Pro Child
Theme URI: https://athemes.com/theme/sydney
Description: Child theme for Sydney Pro
Author: Matthias
Template: sydney-pro-ii
Version: 1.0
Text Domain: sydney
*/

@import url('https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@400&display=swap');

.cmplz-cookiebanner {
    background-color: rgba(22, 35, 46, 0.75) !important;
}
.cmplz-btn {
    text-transform: none !important;
}
button.cmplz-manage-consent {
    right: auto !important;
    left: 20px !important;
    bottom: 0px !important;
}
button.cmplz-manage-consent {
    opacity: 0.3;
    transform: scale(0.9);
}
button.cmplz-manage-consent:hover {
    opacity: 1;
}
/* ========================================
   REJECT BUTTON
======================================== */
.cmplz-btn.cmplz-deny{
    background-color: transparent !important;
    border: 1px solid #E3C75F;
    color: #E3C75F;
}

/* ========================================
   CONFIGURE / PREFERENCES BUTTON
======================================== */
.cmplz-btn.cmplz-view-preferences,
.cmplz-btn.cmplz-save-preferences{
    background-color: transparent !important;
    border: 1px solid #E3C75F;
    color: #E3C75F;
}

/* disable autofill */
.nf-form-cont input,
.nf-form-cont textarea,
.nf-form-cont select {
    autocomplete: off !important;
}

/* remove "required fields" text  */
.nf-form-fields-required,
.ninja-forms-req-symbol {
  display: none !important;
}

/* Focus state field background (when clicked) */
.nf-form-cont input:focus,
.nf-form-cont textarea:focus,
.nf-form-cont select:focus {
    background-color: rgba(227, 199, 95, 0.5) !important; 
    outline: none !important;
    box-shadow: none !important;                       /* removes white frame */
}


/*  change GDPR text label  */
.nf-field:has(#nf-field-14),
.nf-field:has(#nf-label-field-14),
div[data-field-id="14"] {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  padding: 8px 0 !important;
}

.nf-field:has(#nf-field-14) #nf-label-field-14,
.nf-field:has(#nf-field-14) .nf-field-label {
  display: none !important;
}

.nf-field:has(#nf-field-14) input[type="checkbox"] {
  order: -1 !important;
  margin: 4px 8px 0 0 !important;
  flex-shrink: 0 !important;
  width: 18px !important;
  height: 18px !important;
}

.nf-field:has(#nf-field-14) .nf-help,
.nf-field:has(#nf-field-14) .nf-field-description,
.nf-field:has(#nf-field-14) .field-description {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 14px !important;
  color: #E3C75F99 !important;
  line-height: 1.4 !important;
  flex: 1 !important;
}


/* required field error message in form  */
.nf-error-msg {
  white-space: nowrap !important;
  color: #fff9eb!important;
}


/* Cloudflare Turnstile Field 13 - Transparency & Centering */
#nf-field-13-wrap {
  background: transparent !important;
}

#nf-field-13-wrap .nf-cf-turnstile,
#nf-field-13-wrap .cf-turnstile iframe,
#nf-field-13-wrap .nf-cf-turnstile #content {
  opacity: 0.6 !important;
}

#nf-field-13-wrap .nf-cf-turnstile {
  background: transparent !important;
  margin: 0 auto !important;
  display: block !important;
  text-align: center !important;
}


/* Hide error messages by default */
.nf-error-wrap .nf-error-msg {
  display: none !important;
}

/* Show when Ninja Forms adds nf-fail OR nf-error to the field wrap */
.nf-fail .nf-error-wrap .nf-error-msg,
.nf-error .nf-error-wrap .nf-error-msg,
.nf-fail .nf-error-msg,
.nf-error .nf-error-msg {
  display: block !important;
  white-space: nowrap !important;
  color: #ffffff !important;
}


/*  change checkbox appearance   */

#nf-field-14 {
  position: absolute !important;
  opacity: 0 !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  cursor: pointer !important;
  z-index: 1 !important;
}

#nf-field-14-wrap {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
}

#nf-field-14-wrap .nf-field-label {
  display: none !important;
}

#nf-field-14-wrap .nf-field-element {
  position: relative !important;
  width: 22px !important;
  height: 22px !important;
  flex-shrink: 0 !important;
}

#nf-field-14-wrap .nf-field-element::before {
  content: "☐" !important;
  font-size: 22px !important;
  line-height: 1 !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  color: inherit !important;
  pointer-events: none !important;
}

#nf-field-14-wrap.is-checked .nf-field-element::before {
  content: "☑" !important;
}

#nf-field-14-wrap .nf-field-description {
  margin: 0 !important;
  font-size: 14px !important;
}


/* submit button */
.nf-form-cont .submit-wrap input[type="submit"],
.nf-form-cont .submit-wrap button[type="submit"] {
  -webkit-appearance: none;
  appearance: none;
  border: none;
  cursor: pointer;

  display: inline-block;
  font-family: "Roboto Mono", sans-serif;
  font-size: 15px;
  font-weight: 400;
  font-style: normal;
  line-height: 15px;
  letter-spacing: normal;
  text-transform: none;
  text-align: center;
  text-decoration: none;

  color: rgb(255, 255, 255);
  background-color: rgb(189, 165, 35);
  padding: 12px 24px;
  border-radius: 20px;
  /*  box-shadow: rgba(0, 0, 0, 0.5) 2px 2px 5px 0px;  */
  transition: all 0.3s ease;
}

.nf-form-cont .submit-wrap input[type="submit"]:hover,
.nf-form-cont .submit-wrap button[type="submit"]:hover {
  background-color: rgb(189, 165, 35);
  color: rgb(255, 255, 255);
 /*   box-shadow: rgba(0, 0, 0, 0.7) 2px 2px 8px 0px;  */
  transition: all 0.3s ease-in-out;
}


/* MAIN MENU Make header transparent and positioned over the hero */
/* ── HEADER: always fixed ── */
.shfb.shfb-header.shfb-desktop {
  position: fixed !important;
  top: 50px;
  left: 0;
  width: 100%;
  z-index: 999;
}

/* ── HERO: no gap ── */
.sydney-hero-area,
.elementor-element-67564a7 {
  margin-top: 0 !important;
  padding-top: 0 !important;
}



/* mobile view: turnstile full width */
@media (max-width: 767px) {

 #nf-field-13-container {
  max-width: 100% !important;
}

/* Key fix: scale the actual widget, not just containers */
.nf-cf-turnstile {
  transform: scale(0.9);
  transform-origin: left top;
}

/* Ensure the container still reserves proper height */
.turnstile-wrap {
  height: auto !important;
  max-width: 100% !important;
}

/* Prevent layout shift / weird wrapping */
.nf-field-element {
  max-width: 100% !important;
}
}

/* =========================================
   Partner/logo carousel
   ========================================= */

.elementor-element-b053bd2 .swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
}

.elementor-element-b053bd2 .slide-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 220px;
    padding: 25px;
    box-sizing: border-box;
}

.elementor-element-b053bd2 .slide-image img {
    display: block;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 160px !important;
    object-fit: contain;
}


/* Mobile */
@media (max-width: 767px) {

    .elementor-element-b053bd2 .slide-image {
        height: 210px;
        padding: 25px 30px;
    }

    .elementor-element-b053bd2 .slide-image img {
        max-width: 90% !important;
        max-height: 145px !important;
    }

    /* Particularly wide PowerVet logo */
    .elementor-element-b053bd2 img[src*="logo_pv_neu2"] {
        max-width: 78% !important;
        max-height: 125px !important;
    }

    /* Viva */
    .elementor-element-b053bd2 img[src*="Viva-Logo_dark_transparent"] {
        max-width: 82% !important;
        max-height: 135px !important;
    }
}
