/* =========================================================
   mai-napi-taplalek
   ========================================================= */
#about {
    position: relative;
    background:
        linear-gradient(
            rgba(255, 255, 255, 0.82),
            rgba(255, 255, 255, 0.82)
        ),
        url("../img/bibliaolvaso.jpg") center center / cover no-repeat;
    background-attachment: fixed;
	}
  
    #mai-napi-taplalek {
      padding: 58px 0;
      background: #f8f8f8;
    }

    #mai-napi-taplalek .mai-napi-kartya {
      max-width: 920px;
      margin: 0 auto;
      padding: 38px 34px;
      background: #ffffff;
      border-radius: 18px;
      box-shadow: 0 12px 36px rgba(0, 0, 0, 0.10);
      text-align: center;
      border-top: 5px solid #C7B13E;
    }

    #mai-napi-taplalek .mai-napi-ikon {
      display: inline-flex;
      width: 58px;
      height: 58px;
      margin-bottom: 16px;
      align-items: center;
      justify-content: center;
      border-radius: 50%;
      background: rgba(199, 177, 62, 0.14);
      color: #9c8721;
      font-size: 28px;
    }

    #mai-napi-taplalek h2 {
      margin: 0 0 10px;
      color: #333333;
      font-size: 32px;
      font-weight: 700;
    }

    #mai-napi-taplalek .mai-napi-datum {
      margin-bottom: 12px;
      color: #9c8721;
      font-weight: 700;
      letter-spacing: 0.3px;
    }

    #mai-napi-taplalek .mai-napi-szoveg {
      max-width: 680px;
      margin: 0 auto 24px;
      color: #555555;
      font-size: 17px;
      line-height: 1.7;
    }

    #mai-napi-taplalek .mai-napi-gomb {
      display: inline-block;
      padding: 13px 30px;
      border: 2px solid #C7B13E;
      border-radius: 30px;
      background: #C7B13E;
      color: #ffffff;
      font-weight: 700;
      text-decoration: none;
      transition: all 0.25s ease;
    }

    #mai-napi-taplalek .mai-napi-gomb:hover,
    #mai-napi-taplalek .mai-napi-gomb:focus {
      background: transparent;
      color: #8d7a1f;
      text-decoration: none;
      transform: translateY(-2px);
    }

    @media (max-width: 767px) {
      #mai-napi-taplalek {
        padding: 38px 15px;
      }

      #mai-napi-taplalek .mai-napi-kartya {
        padding: 30px 20px;
      }

      #mai-napi-taplalek h2 {
        font-size: 26px;
      }

      #mai-napi-taplalek .mai-napi-szoveg {
        font-size: 16px;
      }
    }


/* =========================================================
   bibliai-temak-hatter
   ========================================================= */
#bibliai-temak {
    position: relative;
    background:
      linear-gradient(rgba(248, 248, 248, 0.78), rgba(248, 248, 248, 0.78)),
      url("../img/light_on_bible.jpg") center center / cover no-repeat;
    background-attachment: fixed;
  }

  #bibliai-temak .tema-kartya {
    background: rgba(255, 255, 255, 0.84);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
  }

  @media (max-width: 767px) {
    #bibliai-temak {
      background-attachment: scroll;
    }
  }


/* =========================================================
   nt-paypal-donate-style
   ========================================================= */
.nt-paypal-donate-btn {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  min-height: 42px !important;
  padding: 10px 24px !important;
  margin: 0 !important;
  border: 1px solid #e6a500 !important;
  border-radius: 24px !important;
  background: linear-gradient(180deg, #ffe27a 0%, #ffc439 52%, #f0ad16 100%) !important;
  color: #111111 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  box-shadow:
    0 3px 8px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.65) !important;
  transition:
    transform .2s ease,
    box-shadow .2s ease,
    filter .2s ease !important;
}
.nt-paypal-donate-btn::before {
  content: "❤";
  display: inline-block;
  color: #003087;
  font-size: 16px;
  line-height: 1;
}
.nt-paypal-donate-btn:hover,
.nt-paypal-donate-btn:focus {
  transform: translateY(-2px) scale(1.04) !important;
  filter: brightness(1.03) !important;
  box-shadow:
    0 6px 14px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.72) !important;
  outline: none !important;
}
.nt-paypal-donate-btn:active {
  transform: translateY(0) scale(.98) !important;
}


/* =========================================================
   team-white-text-fix
   ========================================================= */
/* Névmutató: sötétített kártyaháttér és fehér szöveg */
#team .card {
  background: rgba(20, 20, 24, 0.58) !important;
  color: #fff !important;
}
#team .card-body,
#team .card-body h1,
#team .card-body h2,
#team .card-body h3,
#team .card-body h4,
#team .card-body h5,
#team .card-body h6,
#team .card-body p,
#team .card-body span,
#team .card-body li {
  color: #fff !important;
}
#team .card-body .osszes-tema-gomb {
  background: #fff !important;
  color: #8d7a1f !important;
}
#team .card-body .osszes-tema-gomb:hover {
  background: #C7B13E !important;
  color: #fff !important;
}

/* =========================================================
   team-white-text-fix
   ========================================================= */
/* Névmutató: sötétített kártyaháttér és fehér szöveg */
#megvallasok .card {
  background: rgba(20, 20, 24, 0.58) !important;
  color: #fff !important;
}
#megvallasok .card-body,
#megvallasok .card-body h1,
#megvallasok .card-body h2,
#megvallasok .card-body h3,
#megvallasok .card-body h4,
#megvallasok .card-body h5,
#megvallasok .card-body h6,
#megvallasok .card-body p,
#megvallasok .card-body span,
#megvallasok .card-body li {
  color: #fff !important;
}
#megvallasok .card-body .osszes-tema-gomb {
  background: #fff !important;
  color: #8d7a1f !important;
}
#megvallasok .card-body .osszes-tema-gomb:hover {
  background: #C7B13E !important;
  color: #fff !important;
}

/* =========================================================
   nt-header-hero-fix
   ========================================================= */
/* =========================================================
   FEJLÉC – NORMÁL MENÜ / 130%-NÁL HAMBURGER
   Saját hamburger, független a Mobirise mobilmenüjétől.
   ========================================================= */

#header > .container {
    position: relative !important;
    width: 100% !important;
    max-width: 1700px !important;
    min-height: 90px !important;
    margin: 0 auto !important;
    padding: 0 28px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
}

#header .menu-logo {
    flex: 0 0 auto !important;
    margin: 0 !important;
    z-index: 1002 !important;
}

#header #navbar {
    flex: 1 1 auto !important;
    margin: 0 !important;
    display: flex !important;
    justify-content: center !important;
    z-index: 1001 !important;
}

/* Normál menü */
#header #navbar > ul {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    gap: clamp(8px, 1.5vw, 28px) !important;
    margin: 0 !important;
    padding: 0 !important;
}

#header #navbar > ul > li {
    flex: 0 0 auto !important;
}

/* Mobirise saját hamburgerét teljesen kikapcsoljuk */
#header #navbar .mobile-nav-toggle {
    display: none !important;
}

/* Saját hamburger */
.nt-menu-toggle {
    display: none !important;
    position: relative !important;
    width: 44px !important;
    height: 44px !important;
    margin: 0 0 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #fff !important;
    cursor: pointer !important;
    z-index: 2000 !important;
    font-size: 0 !important;
}

.nt-menu-toggle::before,
.nt-menu-toggle::after,
.nt-menu-toggle span {
    content: "" !important;
    position: absolute !important;
    left: 10px !important;
    width: 24px !important;
    height: 2px !important;
    border-radius: 2px !important;
    background: #fff !important;
    transition: transform .18s ease, opacity .18s ease !important;
}

.nt-menu-toggle::before { top: 14px !important; }
.nt-menu-toggle span { top: 21px !important; }
.nt-menu-toggle::after { top: 28px !important; }

/* Nyitott állapot: 3 vonal -> X */
.nt-menu-toggle.is-open::before {
    top: 21px !important;
    transform: rotate(45deg) !important;
}

.nt-menu-toggle.is-open span {
    opacity: 0 !important;
}

.nt-menu-toggle.is-open::after {
    top: 21px !important;
    transform: rotate(-45deg) !important;
}

/* =========================================================
   130%-OS NÉZET / SZŰK HELY
   ========================================================= */

#header.nt-compact-menu #navbar {
    flex: 0 0 auto !important;
    margin-left: auto !important;
    position: relative !important;
}

#header.nt-compact-menu #navbar > ul {
    display: none !important;
}

#header.nt-compact-menu .nt-menu-toggle {
    display: block !important;
}

/* Saját, kompakt lenyíló menü */
#header.nt-compact-menu #navbar.nt-menu-open > ul {
    display: block !important;
    position: absolute !important;
    top: calc(100% + 10px) !important;
    right: 0 !important;
    left: auto !important;

    width: max-content !important;
    min-width: 210px !important;
    max-width: calc(100vw - 30px) !important;

    height: auto !important;
    max-height: calc(100vh - 120px) !important;
    overflow-y: auto !important;

    margin: 0 !important;
    padding: 6px 0 !important;

    background: rgba(10, 36, 59, .97) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 9px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.30) !important;

    z-index: 1999 !important;
}

#header.nt-compact-menu #navbar.nt-menu-open > ul > li {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

#header.nt-compact-menu #navbar.nt-menu-open > ul > li > a {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 9px 17px !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
    color: rgba(255,255,255,.88) !important;
    background: transparent !important;
}

#header.nt-compact-menu #navbar.nt-menu-open > ul > li > a:hover,
#header.nt-compact-menu #navbar.nt-menu-open > ul > li > a.active {
    color: #fff !important;
    background: rgba(255,255,255,.08) !important;
}

/* Hero kártya előtt ne legyen üres bekezdésből származó tér */
#hero > p,
#hero > .container > p,
#hero > .row > p {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

#hero .hero-napi-kartya {
    margin-top: 0 !important;
}


/* =========================================================
   nt-modern-contact
   ========================================================= */
/* =========================================================
   NAPI TÁPLÁLÉK – KAPCSOLAT
   A jóváhagyott látványtervhez igazított elrendezés
   ========================================================= */

#form1-4.nt-modern-contact {
    background-image:
        linear-gradient(rgba(38,24,14,.08), rgba(38,24,14,.08)),
        url("../img/kapcsolat-hatter.jpg") !important;

    background-position: center center !important;
    background-size: 1920px 768px !important;
    background-repeat: no-repeat !important;
    background-attachment: fixed !important;
}

#form1-4.nt-modern-contact .mbr-overlay {
    display: none !important;
}

#form1-4.nt-modern-contact::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(
        90deg,
        rgba(24,14,8,.08),
        transparent 45%,
        rgba(24,14,8,.08)
    ) !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

#form1-4.nt-modern-contact .nt-contact-shell {
    position: relative !important;
    z-index: 2 !important;
    width: 1040px !important;
    max-width: calc(100vw - 40px) !important;
    height: 665px !important;
    margin: 0 auto !important;
}

#form1-4.nt-modern-contact .nt-contact-card {
    width: 100% !important;
    height: 100% !important;
    box-sizing: border-box !important;
    padding: 39px 62px 45px !important;

    border: 1px solid rgba(255,255,255,.46) !important;
    border-radius: 28px !important;

    background: rgba(67,43,28,.34) !important;

    box-shadow:
        0 20px 55px rgba(0,0,0,.22),
        inset 0 1px 0 rgba(255,255,255,.22) !important;

    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
}

#form1-4.nt-modern-contact .nt-contact-heading {
    margin: 0 auto 38px !important;
    text-align: center !important;
}

#form1-4.nt-modern-contact .nt-contact-ornament {
    height: 20px !important;
    margin: 0 auto 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 14px !important;
    color: #e3ad55 !important;
}

#form1-4.nt-modern-contact .nt-contact-ornament span {
    display: block !important;
    width: 92px !important;
    height: 1px !important;
    background: rgba(225,174,88,.82) !important;
}

#form1-4.nt-modern-contact .nt-contact-ornament i {
    display: block !important;
    margin: 0 !important;
    color: #e3ad55 !important;
    font-size: 17px !important;
    font-style: normal !important;
}

#form1-4.nt-modern-contact .nt-contact-heading h2 {
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 49px !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
    text-shadow: 0 2px 12px rgba(0,0,0,.20) !important;
}

#form1-4.nt-modern-contact .nt-contact-heading p {
    margin: 14px auto 0 !important;
    padding: 0 !important;
    color: rgba(255,255,255,.92) !important;
    font-size: 17px !important;
    line-height: 1.45 !important;
}

#form1-4.nt-modern-contact form {
    margin: 0 !important;
    padding: 0 !important;
}

#form1-4.nt-modern-contact .nt-contact-alerts {
    margin-bottom: 16px !important;
}

#form1-4.nt-modern-contact .nt-contact-alerts .alert {
    margin-bottom: 8px !important;
    border-radius: 10px !important;
}

#form1-4.nt-modern-contact .nt-contact-fields {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 26px !important;
}

#form1-4.nt-modern-contact label {
    display: block !important;
    margin: 0 0 8px 1px !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
}

#form1-4.nt-modern-contact input,
#form1-4.nt-modern-contact textarea {
    width: 100% !important;
    box-sizing: border-box !important;
    border: 0 !important;
    outline: none !important;
    background: rgba(255,255,255,.96) !important;
    color: #5d554f !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
    box-shadow: none !important;
}

#form1-4.nt-modern-contact input {
    height: 56px !important;
    padding: 0 16px !important;
    border-radius: 12px !important;
}

#form1-4.nt-modern-contact textarea {
    height: 140px !important;
    min-height: 140px !important;
    padding: 15px 16px !important;
    border-radius: 12px !important;
    resize: none !important;
}

#form1-4.nt-modern-contact input::placeholder,
#form1-4.nt-modern-contact textarea::placeholder {
    color: #817b76 !important;
    opacity: 1 !important;
}

#form1-4.nt-modern-contact input:focus,
#form1-4.nt-modern-contact textarea:focus {
    box-shadow: 0 0 0 3px rgba(222,171,84,.24) !important;
}

#form1-4.nt-modern-contact .nt-contact-message {
    margin-top: 24px !important;
}

#form1-4.nt-modern-contact .nt-contact-submit {
    display: flex !important;
    justify-content: center !important;
    margin-top: 32px !important;
}

#form1-4.nt-modern-contact .btn-form {
    min-width: 320px !important;
    height: 68px !important;
    padding: 0 40px !important;

    border: 1px solid rgba(255,214,132,.75) !important;
    border-radius: 35px !important;

    background: linear-gradient(
        180deg,
        #e9b65d 0%,
        #d09132 100%
    ) !important;

    color: #fff !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    letter-spacing: .7px !important;

    box-shadow:
        0 8px 20px rgba(0,0,0,.22),
        inset 0 1px 0 rgba(255,255,255,.35) !important;

    transition: transform .2s ease, filter .2s ease !important;
}

#form1-4.nt-modern-contact .btn-form::before {
    content: "➤" !important;
    margin-right: 13px !important;
    font-size: 18px !important;
}

#form1-4.nt-modern-contact .btn-form:hover {
    transform: translateY(-2px) !important;
    filter: brightness(1.06) !important;
}

@media (max-width: 1100px) {
    #form1-4.nt-modern-contact .nt-contact-shell {
        width: calc(100vw - 40px) !important;
    }

    #form1-4.nt-modern-contact .nt-contact-card {
        padding-left: 45px !important;
        padding-right: 45px !important;
    }
}

@media (max-width: 767px) {
    #form1-4.nt-modern-contact {
        height: auto !important;
        min-height: 0 !important;
        padding: 28px 14px 55px !important;
    }

    #form1-4.nt-modern-contact .nt-contact-shell {
        width: 100% !important;
        max-width: none !important;
        height: auto !important;
    }

    #form1-4.nt-modern-contact .nt-contact-card {
        height: auto !important;
        padding: 30px 20px 34px !important;
        border-radius: 22px !important;
    }

    #form1-4.nt-modern-contact .nt-contact-heading h2 {
        font-size: 34px !important;
    }

    #form1-4.nt-modern-contact .nt-contact-heading p {
        font-size: 15px !important;
    }

    #form1-4.nt-modern-contact .nt-contact-fields {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    #form1-4.nt-modern-contact textarea {
        height: 165px !important;
        min-height: 165px !important;
    }

    #form1-4.nt-modern-contact .btn-form {
        width: 100% !important;
        min-width: 0 !important;
    }
}
