:root{
  /* Paletta */
  --ink:#0c1c22;            /* sötétkék-zöld (hero, szövegek) */
  --ink-soft:#27434c;
  --cream:#f5efe8;          /* krémes háttér */
  --panel:#fbf8f4;          /* világos kártyákhoz */
  --gold:#d4a373;           /* arany kontúr/kiemelés */
  --line:#e7dccf;           /* finom határvonal */
  --muted:#6f7b82;
  --white:#fff;
}

/* Reset/Alap */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font:16px/1.7 Inter,system-ui,Segoe UI,Roboto,sans-serif;
  color:var(--ink);
  background:var(--cream);
}

/* Segéd tipográfia */
.display{
  font-family:"Playfair Display", serif;
  font-weight:600;
  font-size:clamp(32px,6vw,64px);
  letter-spacing:.5px;
  margin:0 0 8px;
}
.subtitle{
  font-size:clamp(16px,2.3vw,22px);
  opacity:.9;
  margin:0 0 18px;
}
h1,h2,h3,.logo-text{
  font-family:"Playfair Display", serif;
  letter-spacing:.3px;
}
h2{font-weight:600;margin:0 0 14px;font-size:clamp(24px,3.6vw,34px)}
h3{font-weight:600;margin:0 0 10px}

/* Layout */
.container{max-width:1120px;margin:0 auto;padding:0 20px}
.section{padding:72px 0}
.bg-water{background:var(--panel)}

/* Header/Nav */
.site-header{
  position:sticky;top:0;z-index:50;
  backdrop-filter:blur(10px);
  background:#f5efe8bf;
  border-bottom:1px solid var(--line);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.logo{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}

.logo-text{font-weight:600;font-size:18px}
.site-nav{display:flex;gap:20px}
.site-nav a{color:var(--ink);text-decoration:none;font-weight:600;opacity:.9}
.site-nav a:hover{opacity:1}
.nav-toggle{display:none;font-size:20px;background:transparent;border:0}

@media (max-width: 860px){
  .nav-toggle{display:block}
  .site-nav{
    position:absolute;top:58px;right:20px;
    flex-direction:column;background:var(--panel);
    border:1px solid var(--line);border-radius:14px;
    box-shadow:0 18px 38px rgba(12,28,34,.12);
    padding:10px;display:none
  }
  .site-nav.open{display:flex}
}

/* Hero / Slider – sötét, prémium */
.hero{position:relative;min-height:70vh;display:grid;align-items:stretch}
.hero-inner{position:relative;z-index:2;display:grid;align-items:end;height:100%}
.slider{position:relative;overflow:hidden;border-radius:24px;box-shadow:0 22px 50px rgba(12,28,34,.25);margin:24px 0}
.slide{
  position:relative;min-height:62vh;display:none;
  background:var(--ink) center/cover no-repeat;
}
.slide.active{display:block}
.slide{background-image:var(--img)}
.slide::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(12,28,34,.55), rgba(12,28,34,.75));
}
.slide-content{
  position:relative;z-index:2;color:var(--cream);
  padding:48px 42px;
  text-shadow:0 2px 10px rgba(0,0,0,.35);
}

/* Bubbles finoman elrejtve (ha használod) */
.bubbles{position:absolute;inset:0;pointer-events:none}
.bubbles::before{content:"";position:absolute;inset:-20%;
  background:
    radial-gradient(circle at 20% 80%, rgba(212,163,115,.12) 0 55%, transparent 56%),
    radial-gradient(circle at 70% 30%, rgba(212,163,115,.08) 0 45%, transparent 46%);
  filter:blur(8px)
}

/* Kártyák, üveg-hatás */
.card{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:18px;padding:22px;
  box-shadow:0 14px 28px rgba(12,28,34,.08);
}
.glass{background:rgba(255,255,255,.72);backdrop-filter:blur(8px)}

/* Rácsok */
.grid-2{display:grid;grid-template-columns:1.15fr .85fr;gap:28px}
@media (max-width: 900px){.grid-2{grid-template-columns:1fr}}

/* Ajánlatkártyák */
.card.offer{background:#fff}
.card.offer h3{margin-bottom:6px}


/* Accordion (Masszázsok) */
.accordion{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fff}
.accordion summary{cursor:pointer;font-weight:700}
.accordion-body{margin-top:12px}
.price-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px dashed var(--line)}
.price-row:last-child{border-bottom:0}

/* Ár dobozok (ha külön szeretnéd) */
.prices{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-top:16px}
.price{
  background:#fff;border:2px solid rgba(212,163,115,.45);
  border-radius:14px;padding:16px;text-align:center;
  box-shadow:0 8px 18px rgba(12,28,34,.06);
}
.price .time{font-family:"Playfair Display",serif;font-size:18px;letter-spacing:1px}
.price .value{color:var(--gold);font-weight:800;font-size:20px;margin-top:6px}

/* Formák */
.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
label{display:grid;gap:6px;font-weight:600}
input,select,textarea{
  border:1px solid var(--line);
  border-radius:12px;padding:12px;
  background:#fff;color:var(--ink);
}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(212,163,115,.35);border-color:rgba(212,163,115,.55)}
textarea{resize:vertical}
.form-actions{display:flex;align-items:center;gap:14px;margin-top:12px}
.muted{color:var(--muted);font-size:14px}
.hidden{display:none}

/* Gombok */
.btn{
  display:inline-block;cursor:pointer;text-decoration:none;
  padding:12px 20px;border-radius:14px;font-weight:700;
  background:var(--ink);color:var(--cream);border:0;
}
.btn:hover{filter:brightness(1.02)}
.btn-ghost{background:rgba(255,255,255,.75);color:var(--ink);border:1px solid rgba(255,255,255,.6)}
.btn-outline-gold{
  background:transparent;color:var(--cream);
  border:2px solid var(--gold);
  box-shadow:0 6px 16px rgba(212,163,115,.25);
}
.btn-outline-gold:hover{background:rgba(212,163,115,.15)}

/* Galéria */
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}

.g-item{
  position: relative;
  aspect-ratio: 4 / 3;
  border-radius: 14px;
  overflow: hidden;                 /* lekerekítés az img-re is hat */
  background: center / cover no-repeat #eef4f9; /* kitöltés, vágás */
}
@media (max-width: 800px){.gallery{grid-template-columns:repeat(2,1fr)}}

/* Testimonials */
.testimonials{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}

/* Lábléc */
.site-footer{background:#0b1519;color:#e6eef1;padding:48px 0;margin-top:48px;border-top:1px solid #102027}
.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.footer-grid a{color:#e6eef1}
@media (max-width: 800px){.footer-grid{grid-template-columns:1fr}}

/* Tipó a nagy címhez a hero-ban (opcionális, maradhat a mostani is) */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&display=swap');
.display{font-family:"Playfair Display",serif;font-weight:700;font-size:clamp(32px,6vw,64px);margin:0 0 8px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.35)}
.subtitle{color:#f5efe8;opacity:.95;margin:0 0 18px}

/* Hero CTA gombok */
.hero-content{position:relative;z-index:2}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.btn{
  display:inline-block;padding:12px 20px;border-radius:14px;
  background:#0a2b4f;color:#fff;text-decoration:none;font-weight:700;
  transition:filter .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
}
.btn:hover{filter:brightness(1.03)}
.btn-outline-gold{
  background:transparent;color:#fff;border:2px solid #d4a373;
  box-shadow:0 6px 14px rgba(212,163,115,.25);
}
.btn-outline-gold:hover{background:rgba(212,163,115,.18)}

/* Hero alapok (ha még nem lenne) */
.hero{position:relative;min-height:70vh;display:grid;align-items:end;overflow:hidden;border-radius:0}
.hero-content{position:relative;z-index:2;padding:48px 0;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.35)}


/* Teljes szélességű, reszponzív hero, középre igazított felirat/gombok */
.hero{
position:relative;
display:grid; /* középre helyezéshez */
place-items:center; /* H + V középre */
min-height:70vh; /* fallback */
overflow:hidden;
}
@supports (min-height: 70svh){
.hero{ min-height: clamp(420px, 70svh, 820px); }
}


/* Háttérkép réteg – mindig kitölti a hero-t */
.hero-bg{position:absolute;inset:0;z-index:0;display:block}
.hero-bg img{
width:100%; height:100%; display:block;
object-fit:cover; /* szélességhez igazodik, magasságot kitölti */
object-position:center; /* fókusz középen */
}
/* Mobilon picit feljebb toljuk a fókuszt, hogy arc/test jobban látszódjon */
@media (max-width: 700px){
.hero-bg img{ object-position:center 30%; }
}


/* Sötét overlay a kép fölé, de a tartalom alá */
.hero::after{
content:"";position:absolute;inset:0;z-index:1;
background:linear-gradient(180deg, rgba(12,28,34,.55), rgba(12,28,34,.75));
}


/* Tartalom – H/V középen, középre zárt szöveg */
.hero-content{
position:relative; z-index:2; /* overlay fölött */
text-align:center;
padding: clamp(24px, 6vw, 64px);
color:#fff;
text-shadow:0 2px 12px rgba(0,0,0,.35);
}


/* CTA gombok */
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.btn{display:inline-block;padding:12px 20px;border-radius:14px;background:#0a2b4f;color:#fff;text-decoration:none;font-weight:700}
.btn-outline-gold{background:transparent;color:#fff;border:2px solid #d4a373;box-shadow:0 6px 14px rgba(212,163,115,.25)}
.btn-outline-gold:hover{background:rgba(212,163,115,.18)}

.voucher-type {
  margin: 16px 0;
  border: 1px solid #dbe9ff;
  border-radius: 12px;
  padding: 12px 16px;
}
.voucher-type legend {
  font-weight: 600;
  margin-bottom: 8px;
}
.voucher-type label {
  display: block;
  margin: 4px 0;
}

.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media (max-width: 800px){.gallery{grid-template-columns:repeat(2,1fr)}}
.g-item{position:relative;aspect-ratio:4/3;border-radius:14px;overflow:hidden;border:1px solid #e6efff;background:#f7fbff;display:block}
.g-item img{width:100%;height:100%;object-fit:cover;display:block}
.g-item:hover{outline:2px solid rgba(212,163,115,.35)}

.lightbox{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.85);display:none;align-items:center;justify-content:center;padding:20px}
.lightbox.open{display:flex}
.lb-img{max-width:92vw;max-height:90vh;box-shadow:0 20px 60px rgba(0,0,0,.5);border-radius:10px}
.lb-btn{position:absolute;top:16px;background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(4px);border-radius:10px;padding:8px 12px;cursor:pointer}
.lb-close{right:16px;font-size:22px;line-height:1}
.lb-prev{left:12px;top:50%;transform:translateY(-50%);font-size:28px}
.lb-next{right:12px;top:50%;transform:translateY(-50%);font-size:28px}

.text-center {
  text-align: center;
}

/* Kártya alap */
.card.offer{
  display:flex;
  flex-direction:column;
  background:#fff;
  padding-bottom:20px;
}

/* Fejléc + ár badge */
.offer-head {
  display: block;
  margin-bottom: 4px;
}
.offer-head h3 {
  margin-bottom: 6px;
}
.price-badge {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 8px;   /* 🟡 most a cím alá kerül */
  padding: 6px 10px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: linear-gradient(#fff,#f9f6f2);
}
.price-badge .old{
  font-weight:600; font-size:13px; color:var(--muted);
  text-decoration:line-through;
}
.price-badge .new{
  font-weight:800; font-size:15px; color:var(--ink);
  background:linear-gradient(90deg, rgba(212,163,115,.15), rgba(212,163,115,.0));
  padding:2px 6px; border-radius:8px;
}



/* Rövid leírás tipó + listák térköze */
.offer-desc{ margin:8px 0 8px; }
.card.offer .ticks{ margin-top:8px; margin-bottom:0; }


/* Szekció szintű gombok (nem kártyánként) */
.section-actions{
  margin-top:22px;
  display:flex; gap:12px; justify-content:center; flex-wrap:wrap;
}
.section-actions .btn{ min-width:190px; text-align:center; }

/* Kiemelt kártya */
.offer--featured{
  border:2px solid rgba(212,163,115,.5);
  box-shadow:0 18px 36px rgba(12,28,34,.08);
  position:relative;
}
.offer--featured::before{
  content:"Legnépszerűbb";
  position:absolute; top:-10px; left:16px;
  background:var(--gold); color:#fff; font-weight:700; font-size:12px;
  padding:4px 8px; border-radius:6px;
}

.cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 22px;
  align-items: stretch; /* 🟢 minden kártya azonos magasság */
}

.card.offer {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;

}

/* ==== FORM LABEL FIX MOBILON ==== */
label {
  display: grid;
  gap: 6px;
  font-weight: 600;
  word-break: break-word;          /* hosszú szavak törése */
  overflow-wrap: anywhere;         /* böngésző kompatibilitás */
}

/* A select ne lógjon ki a kártyából mobilon */
select,
input,
textarea {
  max-width: 100%;
}

/* Külön igazítás a "Mit szeretne vásárolni?" sorra */
label[for="product_type"],
label:has(select#product_type) {
  white-space: normal;             /* engedjük törni a sort */
  line-height: 1.4;
}

/* Kis kijelzőn kisebb betű és több tér */
@media (max-width: 600px) {
  label {
    font-size: 15px;
  }
  select,
  input,
  textarea {
    font-size: 15px;
    padding: 10px;
  }
}

/* ==== FORM FIELD RESPONSIVE FIX (mobil & tablet) ==== */
.form-grid label {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  font-weight: 600;
  line-height: 1.4;
  word-break: break-word;
  overflow-wrap: break-word;
  width: 100%;
  max-width: 100%;
}

/* Minden input, select, textarea a labelen belül 100% szélességű legyen */
.form-grid input,
.form-grid select,
.form-grid textarea {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

/* Konkrétan a "Mit szeretne vásárolni?" sornál is érvényesüljön */
.form-grid select#product_type {
  display: block;
  width: 100%;
  max-width: 100%;
  white-space: normal;
}

/* Kis kijelzőn kicsit lazább elrendezés és kisebb betű */
@media (max-width: 768px) {
  .form-grid {
    grid-template-columns: 1fr; /* egy oszlopos elrendezés */
    gap: 12px;
  }
  .form-grid label {
    font-size: 15px;
  }
}

.same-address {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  font-weight: 500;
}
.same-address input[type="checkbox"] {
  transform: scale(1.1);
}

#ship_addr {
  margin-top: 20px;
  margin-bottom: 20px;
}

/* ---- Adatkezelés / jogi oldalak (legal) ---- */
.subheader{
  background: var(--panel);
  border-bottom: 1px solid var(--line);
}
.subheader .container{
  padding: 10px 20px;
}
.backlink{
  display:inline-block;
  text-decoration:none;
  font-weight:700;
  color:var(--ink);
  opacity:.9;
}
.backlink:hover{ opacity:1; }

.legal{
  max-width: 900px;          /* közép-oszlop */
  margin: 0 auto;
}
.legal h1{
  font-family:"Playfair Display",serif;
  font-weight:700;
  font-size: clamp(28px, 4.2vw, 40px);
  margin: 6px 0 16px;
}
.legal h2{
  font-family:"Playfair Display",serif;
  font-weight:600;
  font-size: clamp(20px, 2.8vw, 26px);
  margin: 28px 0 10px;
}
.legal h3{
  font-weight:700;
  font-size: clamp(16px, 2.3vw, 18px);
  margin: 18px 0 8px;
}
.legal p, .legal li{
  color: var(--ink);
}
.legal p{
  margin: 10px 0;
}
.legal ul{
  padding-left: 20px;
  margin: 8px 0 14px;
}
.legal .highlight{
  font-weight:700;
  color: var(--ink-soft);
}
.legal a{
  color: var(--ink);
  text-decoration: underline;
  text-decoration-color: rgba(212,163,115,.55); /* arany árnyalat */
  text-underline-offset: 3px;
}
.legal a:hover{
  color: var(--ink-soft);
  text-decoration-color: var(--gold);
}

/* blokkos szakaszritmus */
.legal-section{
  padding: 8px 0 16px;
  border-bottom: 1px solid var(--line);
}
.legal-section:last-child{
  border-bottom: 0;
}

/* tördelés finomítás mobilon */
@media (max-width: 720px){
  .legal{ padding: 14px; }
  .legal h1{ font-size: 26px; }
}

/* ===========================
   Finom interakciós mikroeffektek
   (drop-in – semmit nem tör meg)
   =========================== */

/* 0) Mozgás preferencia: csak akkor animálunk, ha oké a usernek */
@media (prefers-reduced-motion: no-preference) {
  /* Általános átmenetek */
  .card,
  .card.offer,
  .price-badge,
  .g-item img,
  .site-nav a,
  .btn,
  .accordion,
  .price-row,
  input, select, textarea {
    transition: 
      transform .25s ease,
      box-shadow .25s ease,
      background-color .25s ease,
      border-color .2s ease,
      filter .25s ease,
      opacity .25s ease;
  }
}

/* 1) Főmenü link – finom arany aláhúzás animáció */
.site-nav a {
  position: relative;
  text-decoration: none;
}
.site-nav a::after {
  content: "";
  position: absolute;
  left: 0; bottom: -6px;
  width: 100%; height: 2px;
  background: linear-gradient(90deg, rgba(212,163,115,.0), rgba(212,163,115,.8), rgba(212,163,115,.0));
  transform: scaleX(0);
  transform-origin: 10% 50%;
  transition: transform .25s ease;
  border-radius: 2px;
}
.site-nav a:hover::after,
.site-nav a:focus-visible::after { transform: scaleX(1); }
.site-nav a:focus-visible {
  outline: 2px solid rgba(212,163,115,.45);
  outline-offset: 2px;
  border-radius: 6px;
}

/* 2) Ajánlatkártyák – nagyon enyhe lebegés + shadow boost */
.cards .card.offer:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 42px rgba(12,28,34,.12);
}
.offer--featured:hover {
  box-shadow: 0 22px 52px rgba(12,28,34,.14);
}

/* 3) Ár badge – minimális “shimmer” mozgás hoverre */
.price-badge {
  background: linear-gradient(90deg, #fff, #f9f6f2 40%, #fff);
  background-size: 200% 100%;
}
.price-badge:hover {
  filter: brightness(1.02);
  background-position: 100% 0;
}

/* 4) Accordion sorok – sor kiemelés */
.accordion summary:hover { 
  color: var(--ink-soft);
}
.price-row:hover {
  background: linear-gradient(90deg, rgba(212,163,115,.07), rgba(212,163,115,0));
  border-bottom-color: rgba(212,163,115,.35);
}

/* 5) Galéria – kép finom zoom + enyhe fény */
.g-item { overflow: hidden; }
.g-item img { will-change: transform, filter; }
.g-item:hover img {
  transform: scale(1.03);
  filter: brightness(1.03) contrast(1.02);
}

/* 6) Gombok – kis emelés, arany kontúr hangsúly */
.btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(12,28,34,.18);
}
.btn:focus-visible {
  outline: 2px solid rgba(212,163,115,.6);
  outline-offset: 2px;
}

/* 7) Űrlap – hover/focus finom arany jelzés */
input:hover, select:hover, textarea:hover {
  border-color: rgba(212,163,115,.55);
}
input:focus, select:focus, textarea:focus {
  outline: 2px solid rgba(212,163,115,.35);
  border-color: rgba(212,163,115,.65);
  box-shadow: 0 6px 18px rgba(12,28,34,.06);
}

/* 8) Visszalink a jogi oldalakon – arany árnyalat csúszás */
.backlink {
  position: relative;
  padding-left: 2px;
}
.backlink::before {
  content: "←";
  position: absolute;
  left: -18px; top: 50%;
  transform: translateY(-50%);
  opacity: .0;
  transition: transform .2s ease, opacity .2s ease;
}
.backlink:hover::before { 
  transform: translate(-2px, -50%); 
  opacity: .9;
}

/* 9) Testimonial kártyák – picike hover */
.testimonials .card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 34px rgba(12,28,34,.10);
}

/* 10) Footer linkek – halvány arany underline animáció */
.site-footer a {
  text-decoration: none;
  position: relative;
}
.site-footer a::after {
  content:"";
  position:absolute; left:0; bottom:-3px;
  width:100%; height:1px;
  background: rgba(212,163,115,.7);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .25s ease;
}
.site-footer a:hover::after { transform: scaleX(1); }

/* === FOOTER háromoszlopos elrendezés === */
.site-footer {
  background: #0b1519;
  color: #e6eef1;
  padding: 60px 0;
  border-top: 1px solid #102027;
}

.footer-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  align-items: start;
}

.footer-col h3 {
  font-family: "Playfair Display", serif;
  font-weight: 600;
  margin-bottom: 12px;
  color: #fff;
}

.footer-col p,
.footer-col a {
  color: #e6eef1;
  font-size: 15px;
  line-height: 1.6;
  text-decoration: none;
}

.footer-col a:hover {
  color: var(--gold);
  transition: color 0.2s ease;
}

.footer-links {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-links li {
  margin-bottom: 6px;
}

/* Mobilbarát törés */
@media (max-width: 900px) {
  .footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }
}
@media (max-width: 600px) {
  .footer-grid {
    grid-template-columns: 1fr;
  }
}

html, body { height: 100%; }

body {
  display: flex;
  min-height: 100svh;   /* mobil safe viewport */
  flex-direction: column;
}

main {
  flex: 1 0 auto;       /* a fő tartalom kitolja a footert az aljára */
}

.site-footer {
  margin-top: auto;     /* biztos ami biztos */
}

/* --- Honeypot: láthatatlan minden eszközön, iOS-en is --- */
.hp-field {
  /* teljes vizuális rejtés + eltolás + klippelés + pointer off */
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;    /* legacy */
  clip-path: inset(50%) !important;   /* modern */
  white-space: nowrap !important;
  left: -9999px !important;
  top: auto !important;
  opacity: 0 !important;
  pointer-events: none !important;
  visibility: hidden !important;
}


.hp-field input { pointer-events:none; }

ul.ticks {
  list-style: none;
  padding: 0;
}

ul.ticks li {
  display: flex;
  align-items: flex-start;
  gap: 0.6em;
  margin-bottom: 0.5em;
}

ul.ticks svg {
  flex-shrink: 0;
  width: 1.2em;
  height: 1.2em;
}




/* Ajánlatok slider */
.offers-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.offers-slider {
  display: flex;
  overflow-x: auto;
  scroll-behavior: smooth;
  gap: 1.25rem;
  padding: 0.5rem 0 1rem;
  scrollbar-width: none; /* Firefox */
}
.offers-slider::-webkit-scrollbar { display: none; } /* Chrome/Safari */

/* Kártyák szélessége: mobilon 85%, desktopon fixebb */
.offers-slider .offer {
  flex: 0 0 85%;
  max-width: 360px;
}
@media (min-width: 700px) {
  .offers-slider .offer { flex: 0 0 300px; }
}
@media (min-width: 1024px) {
  .offers-slider .offer { flex: 0 0 300px; } /* 3 kártya fér el kényelmesen */
}

/* Nyilak */
.scroll-btn {
  background: #fff;
  border: none;
  font-size: 2rem;
  color: #c7a96b;
  cursor: pointer;
  padding: 0.15em 0.45em;
  border-radius: 999px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.18);
  z-index: 2;
  transition: background .25s, color .25s, transform .15s;
}
.scroll-btn:hover { background: #c7a96b; color: #fff; }
.scroll-btn:active { transform: scale(0.96); }

.scroll-btn.left  { position: absolute; left: -8px; }
.scroll-btn.right { position: absolute; right: -8px; }

/* Ha szeretnéd, halványítsuk a "nem aktív" nyilat */
.scroll-btn[disabled] {
  opacity: 0.45;
  cursor: default;
  pointer-events: none;
}

/* (Opcionális) Kiemelt kártya apró vizuális extra */
.offer.offer--featured {
  outline: 2px solid #c7a96b20;
  box-shadow: 0 10px 28px rgba(0,0,0,0.12);
}

/* Lebegő hívás gomb (Floating Action Button) */
.fab {
  position: fixed;
  bottom: 18px;
  right: 18px;
  background: #c7a96b; /* arany tónus */
  color: #fff;
  border-radius: 50px;
  padding: 0.65em 1.1em;
  font-weight: 600;
  font-family: "Inter", sans-serif;
  font-size: 0.95rem;
  box-shadow: 0 6px 18px rgba(0,0,0,0.25);
  display: flex;
  align-items: center;
  gap: 0.4em;
  text-decoration: none;
  z-index: 1000;
  transition: background 0.3s, transform 0.2s;
}

.fab:hover {
  background: #b69257;
  transform: translateY(-2px);
}

@keyframes fab-pop {
  from { opacity: 0; transform: scale(0.6); }
  to { opacity: 1; transform: scale(1); }
}
.fab { animation: fab-pop 0.4s ease-out both; }

@media (min-width: 768px) {
  .fab { display: none; }
}

@media (max-width: 400px) {
  .fab-text { display: none; } /* csak az ikon marad */
}

.btn[disabled] { opacity: .55; cursor: not-allowed; }

.terms-label{
  display:flex;
  align-items:flex-start;
  gap:8px;
  text-align:left;
}

.terms-label input{ margin-top:3px; flex:0 0 auto; }

.terms-text{
  flex:1 1 auto;
  min-width:0;                 /* fontos flex esetén */
  white-space: normal;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

.terms-text a{
  display:inline;
  white-space: nowrap;         /* az “ÁSZF” egyben marad */
}

/* =========================
   FAQ (GYIK) – Floating.hu
   ========================= */

.faq-lead{
  margin: 0 0 18px;
  max-width: 900px;
  color: var(--ink);
}

.faq-source{
  color: var(--muted);
  font-size: 14px;
}

.faq-list{
  display: grid;
  gap: 12px;
}

/* Reuse .accordion alap, de FAQ-ra picit elegánsabb */
.faq-item{
  border-radius: 16px;
  padding: 14px 14px;
  background: #fff;
}

.faq-item summary{
  list-style: none;          /* Safari/Chrome default marker off */
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 2px 2px;
}

.faq-item summary::-webkit-details-marker{ display:none; }

.faq-q{
  font-weight: 800;
  color: var(--ink);
}

/* Nyíl ikon (CSS rajzolt chevron) */
.faq-icon{
  width: 34px;
  height: 34px;
  border-radius: 12px;
  border: 1px solid var(--line);
  background: linear-gradient(#fff,#f9f6f2);
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  position: relative;
}

.faq-icon::before{
  content: "";
  width: 10px;
  height: 10px;
  border-right: 2px solid rgba(212,163,115,.95);
  border-bottom: 2px solid rgba(212,163,115,.95);
  transform: rotate(45deg); /* lefelé mutat */
  transition: transform .25s ease;
}

.faq-item[open] .faq-icon::before{
  transform: rotate(-135deg); /* felfelé mutat */
}

/* Nyitáskor finom kiemelés */
.faq-item[open]{
  border-color: rgba(212,163,115,.55);
  box-shadow: 0 14px 28px rgba(12,28,34,.08);
}

/* Listák a válaszokban */
.faq-bullets{
  padding-left: 20px;
  margin: 10px 0 0;
}

.faq-color-block p{
  margin: 10px 0;
}

/* Mobilon kényelmesebb “tap target” */
@media (max-width: 700px){
  .faq-item summary{
    padding: 6px 2px;
  }
}

.voucher-title {
  line-height: 1.35;
  margin-bottom: 10px;
}

.voucher-highlight {
  display: inline;
  color: var(--ink-soft);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: rgba(212,163,115,.65);
  text-decoration-thickness: 3px;
  text-underline-offset: 5px;
}

.voucher-highlight::after {
  content: "";
  position: absolute;
  left: -0.08em;
  right: -0.08em;
  bottom: 0.08em;
  height: 0.38em;
  background: rgba(212,163,115,.28);
  border-radius: 999px;
  z-index: -1;
}

@media (max-width: 520px) {
  .voucher-title {
    font-size: 20px;
  }

  .voucher-highlight {
    white-space: normal;
  }
}

.voucher-note {
  margin: 18px 0 24px;
  padding: 14px 16px;
  border-left: 3px solid rgba(212,163,115,.45);
  background: rgba(255,255,255,.45);
  border-radius: 0 14px 14px 0;
}

.voucher-note p {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.65;
}

.voucher-note-lead {
  color: var(--ink-soft);
  font-weight: 600;
}