/* camine-varstnici.ro – kámin sablonok stílusa (zöld dizájnrendszer) */

/* ============ DIZÁJN-TOKENEK (globális) ============ */
:root{
  --ever:#1b5e43;          /* primary evergreen */
  --ever-dark:#123f2d;
  --ever-deep:#0d2c20;
  --ever-soft:#e8f0ea;     /* tint surface */
  --ever-soft-2:#f0f5f1;
  --sand:#f6f1e8;          /* warm page bg */
  --sand-2:#fbf8f1;        /* warm card */
  --paper:#ffffff;
  --ink:#22302b;           /* warm near-black */
  --ink-2:#5d6a62;         /* muted text */
  --ink-3:#8a948c;         /* faint */
  --line:#e6ddcf;          /* warm hairline */
  --line-2:#d9e4dc;        /* green hairline */
  --honey:#c8881f;         /* warm accent */
  --honey-soft:#f6ead0;
  --honey-ink:#8a5b10;
  --star:#d99b2b;
  --shadow:0 1px 2px rgba(34,48,43,.04), 0 8px 24px -12px rgba(34,48,43,.18);
  --shadow-sm:0 1px 2px rgba(34,48,43,.05), 0 4px 12px -8px rgba(34,48,43,.16);
  --r:14px; --r-sm:10px; --r-lg:22px;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --sans:'Mulish',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;

  /* visszafelé kompatibilis aliasok a régi szabályokhoz */
  --c-primary:var(--ever);
  --c-primary-dark:var(--ever-dark);
  --c-accent:var(--ever-soft);
  --c-border:var(--line);
  --c-muted:var(--ink-2);
  --radius:var(--r);
}

/* Sima görgetés a horgony-linkekhez (pl. keybar CTA → űrlap) */
html{ scroll-behavior:smooth; }

/* Meleg háttér CSAK a saját oldaltípusainkon (a főoldalt/Blocksyt nem érinti) */
body.single-camin,
body.post-type-archive-camin,
body.tax-judet{ background:var(--sand); }

/* A tartalmunk tipográfiája (a Blocksy header/footer érintetlen marad) */
.camine-single,
.camine-archive{
  font-family:var(--sans);
  color:var(--ink);
  font-size:17px;
  line-height:1.6;
  padding-block:2rem 4rem;
  -webkit-font-smoothing:antialiased;
}
.camine-single h1,.camine-single h2,.camine-single h3,
.camine-archive h1,.camine-archive h2,.camine-archive h3{
  font-family:var(--serif); font-weight:600; line-height:1.14;
  color:var(--ink); letter-spacing:-.01em;
}
.camine-single a,.camine-archive a{ color:var(--ever); }
.muted{ color:var(--ink-2); font-size:.92em; }

/* SVG ikoncsalád – nyugodt vonalas */
.camine-single svg,.camine-archive svg{ stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }

/* ============ GOMBOK ============ */
.camine-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.55em;
  font-family:var(--sans); font-weight:800; font-size:15px; line-height:1;
  border-radius:999px; padding:12px 22px; cursor:pointer;
  border:1.5px solid transparent; text-decoration:none;
  transition:transform .12s ease, background .15s ease;
}
.camine-btn:hover{ text-decoration:none; transform:translateY(-1px); }
.camine-btn svg{ flex:0 0 auto; }
.camine-btn-primary{ background:var(--ever); color:#fff!important; }
.camine-btn-primary:hover{ background:var(--ever-dark); color:#fff!important; }
.camine-btn-ghost{ background:transparent; color:var(--ever)!important; border-color:var(--line-2); }
.camine-btn-ghost:hover{ background:var(--ever-soft); }
.camine-btn-honey{ background:var(--honey); color:#3a2604!important; }
.camine-btn-honey:hover{ background:#b5780f; color:#fff!important; }
.camine-btn-block{ width:100%; }
.camine-btn-lg{ padding:15px 26px; font-size:16px; }

/* régi CTA gomb a meleg palettára hangolva */
.camine-cta{ display:inline-flex; align-items:center; justify-content:center; gap:.5em;
  background:var(--ever); color:#fff!important; padding:.7em 1.3em; border-radius:999px;
  font-weight:800; text-decoration:none; border:none; cursor:pointer; font-size:15px; }
.camine-cta:hover{ background:var(--ever-dark); }

/* ============ BADGE-EK / TAG-EK ============ */
.badge{ display:inline-flex; align-items:center; gap:.35em; padding:.32em .8em; border-radius:999px;
  background:#fff; border:1px solid var(--line); color:var(--ink-2);
  font-size:11.5px; font-weight:700; letter-spacing:.01em; }
.badge-green,.badge-verif{ background:var(--ever); color:#fff; border-color:var(--ever); }
.badge-prem{ background:#e8714e; color:#fff; border:0.5px solid #fff;
  box-shadow:0 2px 7px -1px rgba(184,70,35,.45); }
.badge-soft{ background:var(--ever-soft); color:var(--ever-dark); border-color:transparent; }
.badge-inchis{ background:#a23a2a; color:#fff; border:0; }
.badge-inchis svg{ color:#fff; }

/* ============ BREADCRUMB ============ */
.camine-breadcrumb{ font-size:14px; color:var(--ink-2); margin:0 0 1.2rem; }
.camine-breadcrumb a{ color:var(--ink-2); text-decoration:none; }
.camine-breadcrumb a:hover{ color:var(--ever); }

/* ============================================================ */
/* ===================== ADATLAP (single) ==================== */
/* ============================================================ */
.camine-head{ margin:0 0 1.6rem; }
.camine-badges{ display:flex; gap:.5rem; flex-wrap:wrap; margin:0 0 .9rem; }
.camine-head h1{ font-size:clamp(28px,3.6vw,42px); letter-spacing:-.02em; margin:0; }
.camine-loc{ display:flex; align-items:flex-start; gap:.5rem; color:var(--ink-2); font-size:16px;
  font-weight:600; margin:.85rem 0 0; }
.camine-loc svg{ color:var(--honey); flex:0 0 auto; margin-top:2px; }
.camine-rating{ display:flex; align-items:center; gap:.55rem; flex-wrap:wrap; margin-top:.75rem; font-size:15px; }
.camine-rating .stars{ letter-spacing:1px; font-size:16px; }
.camine-rating .stars-full{ color:#f5b400; }
.camine-rating .stars-empty{ color:#dcd6c8; }
.camine-rating strong{ font-weight:800; color:var(--ink); }
.camine-rating-count,.camine-rating-src{ color:var(--ink-2); font-weight:600; }
.camine-rating a{ font-weight:700; }

/* Zárt otthon – figyelmeztető sáv az adatlapon */
.camine-inchis-note{ display:flex; align-items:center; gap:.6rem; margin:0 0 1.4rem; padding:.85rem 1.1rem;
  background:#f7e7e2; border:1px solid #e6c3b8; border-radius:var(--r); color:#7c2e20; font-weight:600; font-size:15px; }
.camine-inchis-note svg{ color:#a23a2a; flex:0 0 auto; }
.camine-inchis-note strong{ font-weight:800; }

.camine-grid{ display:grid; grid-template-columns:1fr 360px; gap:2.2rem; align-items:start; margin-top:1.4rem; }

/* Fejléckép */
.camine-hero{ margin:0 0 1.4rem; position:relative; }
.camine-hero img{ width:100%; aspect-ratio:16/9; max-height:420px; object-fit:cover;
  border-radius:var(--r); display:block; }
.camine-hero figcaption{ position:absolute; bottom:.7rem; right:.7rem; background:rgba(13,44,32,.78);
  color:#fff; font-size:12px; font-weight:700; padding:.3em .7em; border-radius:8px; backdrop-filter:blur(3px); }

/* Keybar (gyors tények) */
.camine-quickfacts{ display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:1px;
  background:var(--line-2); border:1px solid var(--line-2); border-radius:var(--r);
  overflow:hidden; margin:0 0 1.6rem; }
.qf{ background:var(--ever-soft-2); padding:18px 22px; display:flex; flex-direction:column;
  justify-content:center; gap:.45rem; }
.qf-num{ font-family:var(--serif); font-weight:600; font-size:24px; color:var(--ever-dark); line-height:1.05; }
.qf-num-sm{ font-size:19px; }
.qf-lbl{ font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--ink-2); }
/* 3. cella: kérdés + gomb, ami az űrlapig görget */
.qf-cta{ gap:.7rem; }
.qf-cta-q{ font-size:14px; font-weight:600; color:var(--ink-2); line-height:1.3; }
.qf-cta .camine-btn{ align-self:flex-start; }

/* Tartalmi blokkok */
.camine-section{ padding:1.8rem 0; border-top:1px solid var(--line); }
.camine-section:first-child{ border-top:0; padding-top:0; }
.camine-section h2{ font-size:24px; font-weight:600; display:flex; align-items:center; gap:.65rem;
  margin:0 0 1rem; }
.camine-bi{ width:34px; height:34px; border-radius:9px; background:var(--ever-soft);
  display:grid; place-items:center; flex:0 0 auto; color:var(--ever); }
.camine-bi svg{ width:18px; height:18px; }
.camine-desc{ color:var(--ink); font-size:16.5px; line-height:1.75; }
.camine-desc p{ margin:0 0 1em; }
.camine-desc ul,.camine-desc ol{ margin:0 0 1em; padding-left:1.4em; }
.camine-desc li{ margin:.25em 0; }
.camine-desc a{ text-decoration:underline; }
.camine-desc strong,.camine-desc b{ font-weight:800; }
.camine-desc h3,.camine-desc h4{ font-family:var(--serif); font-weight:600; margin:1.2em 0 .5em; }
.camine-desc :first-child{ margin-top:0; }
.camine-desc :last-child{ margin-bottom:0; }

/* Feature-rács (pipás listák) */
.camine-feat-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:.55rem 1.6rem; }
.camine-feat{ display:flex; align-items:center; gap:.65rem; font-size:15.5px; color:var(--ink); padding:.2rem 0; }
.camine-feat svg{ flex:0 0 auto; color:var(--ever); }
.camine-feat.is-no{ color:var(--ink-3); }
.camine-feat.is-no svg{ color:#c4c4c4; }

/* Galéria – mozaik (1 nagy + 2×2 kis) + lightbox */
.camine-gallery-grid{ display:grid; grid-template-columns:2fr 1fr; gap:10px; height:380px;
  border-radius:var(--r); overflow:hidden; margin:0 0 1.6rem; }
.camine-gallery-grid.is-single{ grid-template-columns:1fr; }
.camine-gallery-grid .thumbs{ display:grid; grid-template-columns:1fr 1fr; grid-auto-rows:1fr; gap:10px; }
.camine-gallery-grid .g{ position:relative; display:block; overflow:hidden; background:var(--ever-soft); cursor:zoom-in; }
.camine-gallery-grid .g.is-extra{ display:none; }
.camine-gallery-grid .g img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .3s; }
.camine-gallery-grid .g:hover img{ transform:scale(1.04); }
.camine-gallery-grid .more-photos{ position:absolute; right:12px; bottom:12px; background:rgba(13,44,32,.78);
  color:#fff; font-size:12.5px; font-weight:800; padding:7px 12px; border-radius:999px;
  backdrop-filter:blur(3px); pointer-events:none; }

/* Lightbox */
.camine-lb{ position:fixed; inset:0; z-index:99999; background:rgba(13,44,32,.93);
  display:none; align-items:center; justify-content:center; padding:40px; }
.camine-lb.is-open{ display:flex; }
body.camine-lb-open{ overflow:hidden; }
.camine-lb-fig{ margin:0; display:flex; flex-direction:column; align-items:center; gap:.8rem; }
.camine-lb-fig img{ max-width:92vw; max-height:80vh; object-fit:contain; border-radius:10px;
  box-shadow:0 10px 50px rgba(0,0,0,.5); background:#0d2c20; }
.camine-lb-fig figcaption{ color:#dfe7e1; font-size:14px; font-weight:600; text-align:center; max-width:80vw; }
.camine-lb-close{ position:absolute; top:16px; right:22px; background:none; border:0; color:#fff;
  font-size:36px; line-height:1; cursor:pointer; padding:.1rem .5rem; }
.camine-lb-nav{ position:absolute; top:50%; transform:translateY(-50%); background:rgba(255,255,255,.12);
  border:0; color:#fff; width:54px; height:54px; border-radius:50%; font-size:30px; line-height:1;
  cursor:pointer; display:grid; place-items:center; transition:background .15s; }
.camine-lb-nav:hover{ background:rgba(255,255,255,.24); }
.camine-lb-prev{ left:18px; } .camine-lb-next{ right:18px; }
.camine-lb-count{ position:absolute; bottom:20px; left:50%; transform:translateX(-50%);
  color:#dfe7e1; font-size:13px; font-weight:700; letter-spacing:.04em; }
@media(max-width:620px){
  .camine-gallery-grid{ grid-template-columns:1fr; height:auto; }
  .camine-gallery-grid .main{ height:230px; }
  .camine-gallery-grid .thumbs{ grid-auto-rows:110px; }
  .camine-lb{ padding:14px; }
  .camine-lb-nav{ width:42px; height:42px; font-size:24px; }
  .camine-lb-close{ font-size:30px; }
}

/* ============ MÁSODLAGOS NYELV (limba secundară) ============ */
/* Apró lekerekített zászló-SVG (emoji helyett – Windowson is színes) */
.camine-flag{ display:inline-block; vertical-align:middle; border-radius:2px;
  box-shadow:0 0 0 .5px rgba(0,0,0,.14); flex:0 0 auto; }

/* (1) Áttetsző üveg-pill a fő kép bal felső sarkában */
.camine-lang-pill{ position:absolute; top:12px; left:12px; z-index:3; pointer-events:none;
  display:inline-flex; align-items:center; gap:.5rem; padding:.42em .85em;
  background:rgba(255,255,255,.78); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.6); border-radius:999px; box-shadow:var(--shadow-sm);
  font-size:13px; font-weight:800; color:var(--ink); letter-spacing:.01em; }

/* Másodlagos (magyar/német) saját név a H1 alatt – halk serif, mindkét szinten */
.camine-altname{ display:flex; flex-wrap:wrap; gap:.35rem 1.2rem; margin:.45rem 0 0;
  font-family:var(--serif); font-style:italic; font-weight:500;
  font-size:clamp(17px,2vw,21px); line-height:1.2; color:var(--ever-dark); }
.camine-altname span{ display:inline-flex; align-items:center; gap:.5rem; }

/* (2) Halk pill a fejléc-badge-sorhoz és a kontakt-kártyához */
.camine-lang-chip{ display:inline-flex; align-items:center; gap:.45em; padding:.32em .8em;
  border-radius:999px; background:var(--ever-soft); color:var(--ever-dark); border:1px solid transparent;
  font-size:11.5px; font-weight:700; letter-spacing:.01em; }
.camine-lang-chip b{ font-weight:800; letter-spacing:.03em; }
.camine-contact-langs{ margin-top:.9rem; padding-top:.9rem; border-top:1px solid var(--line); }

/* (3) „Despre cămin" – CSS-only nyelvi tabok (radio-alapú, JS nélkül) */
.camine-tabs input{ position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.camine-tabnav{ display:flex; gap:.3rem; flex-wrap:wrap; margin:0 0 1.1rem; border-bottom:1px solid var(--line); }
.camine-tabnav label{ display:inline-flex; align-items:center; gap:.45em; padding:.5em .95em; cursor:pointer;
  font-size:14px; font-weight:800; color:var(--ink-2); border-bottom:2px solid transparent; margin-bottom:-1px; }
.camine-tabnav label:hover{ color:var(--ever); }
.camine-tabpane{ display:none; }
#dt-ro:checked ~ .camine-tabnav label[for="dt-ro"],
#dt-hu:checked ~ .camine-tabnav label[for="dt-hu"],
#dt-de:checked ~ .camine-tabnav label[for="dt-de"]{ color:var(--ever-dark); border-bottom-color:var(--ever); }
#dt-ro:checked ~ .camine-tabpanes .camine-tabpane[data-tab="ro"],
#dt-hu:checked ~ .camine-tabpanes .camine-tabpane[data-tab="hu"],
#dt-de:checked ~ .camine-tabpanes .camine-tabpane[data-tab="de"]{ display:block; }

/* „date în curs de completare" jelzés */
.camine-note{ background:var(--honey-soft); border:1px solid #ecd9b0; border-radius:var(--r);
  padding:1.1rem 1.3rem; }
.camine-note p{ margin:0; color:var(--honey-ink); font-weight:600; }

/* Diszkrét claim-sor (Standard adatlap alja) – halk, ár nélkül; a tulajt szólítja, a családot nem zavarja */
.camine-claim-mini{ display:flex; align-items:center; justify-content:center; gap:.4rem 1rem; flex-wrap:wrap;
  margin-top:1.6rem; padding:.85rem 1.2rem; background:var(--sand-2); border:1px solid var(--line);
  border-radius:var(--r); font-size:14px; color:var(--ink-3); text-align:center; }
.camine-claim-mini a{ font-weight:800; color:var(--ever); display:inline-flex; align-items:center; gap:.3rem; white-space:nowrap; }

/* Kapcsolat-doboz adat nélkül (782/794 otthon) – nem zsákutca: Maps-kereséshez vezet,
   és kimondja, hogy nem mi vagyunk az otthon (különben minket hívnak). */
.camine-nocontact{ margin:0 0 .9rem; font-size:14.5px; color:var(--ink-2); line-height:1.5; }
.camine-nocontact-hint{ margin:.6rem 0 0; font-size:13px; line-height:1.5; }
.camine-disclaim{ display:flex; gap:.55rem; align-items:flex-start; margin:1rem 0 0; padding-top:.9rem;
  border-top:1px solid var(--line); font-size:12.5px; line-height:1.5; color:var(--ink-3); }
.camine-disclaim svg{ flex:0 0 auto; margin-top:1px; color:var(--ink-3); }
.camine-disclaim strong{ font-weight:800; color:var(--ink-2); }

/* Kiút a zárolt űrlap alól (Standard) */
.camine-form-ph-out{ margin:.9rem 0 0; font-size:14px; color:var(--ink-2); text-align:center; }
.camine-form-ph-out a{ font-weight:800; color:var(--ever); display:inline-flex; align-items:center; gap:.3rem; white-space:nowrap; }

/* Video de prezentare (YouTube) + zárolt placeholder */
.camine-video{ position:relative; aspect-ratio:16/9; border-radius:var(--r); overflow:hidden; background:var(--ever-soft); }
.camine-video iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.camine-video-ph{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1.1rem;
  background:linear-gradient(150deg,#e9efe9,#dde6de); }
.camine-video-play{ width:64px; height:64px; border-radius:50%; background:rgba(255,255,255,.9);
  display:grid; place-items:center; color:var(--ever); box-shadow:var(--shadow); }
.camine-video-ph .camine-form-ph-lock{ position:static; transform:none; }
/* Lite-YouTube facade (kattintásra tölt) – poszter + zöld brand play-gomb */
.camine-video-fac{ position:absolute; inset:0; width:100%; height:100%; padding:0; border:0;
  background:none; cursor:pointer; display:block; }
.camine-video-poster{ width:100%; height:100%; object-fit:cover; display:block; }
.camine-video-fac .camine-video-play{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:74px; height:74px; background:var(--ever); color:#fff; padding-left:4px; }
.camine-video-fac:hover .camine-video-play{ background:var(--ever-dark); transform:translate(-50%,-50%) scale(1.06); }

/* Lead-gen űrlap */
.camine-lead{ background:var(--ever-soft-2); border:1px solid var(--line); border-radius:var(--r); padding:1.5rem; }
.camine-lead h2{ margin-top:0; }

/* Inaktív űrlap-placeholder (Standard) – látszik, de zárolt (lakat-overlay) */
.camine-form-ph{ position:relative; pointer-events:none; user-select:none; }
.camine-form-ph-fields{ opacity:.45; }
.camine-form-ph-row{ display:grid; grid-template-columns:repeat(3,1fr); gap:.8rem; }
.camine-form-ph input,.camine-form-ph textarea{ width:100%; font:inherit; font-size:15px;
  padding:11px 13px; border:1.5px solid var(--line); border-radius:10px; background:#fff; color:var(--ink-3); }
.camine-form-ph textarea{ min-height:104px; margin-top:.8rem; resize:none; }
.camine-form-ph .camine-btn{ margin-top:.9rem; cursor:not-allowed; }
.camine-form-ph-lock{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  display:inline-flex; align-items:center; gap:.5rem; background:#fff; border:1px solid var(--line-2);
  box-shadow:var(--shadow); border-radius:999px; padding:.7em 1.2em; font-size:14px; font-weight:800;
  color:var(--ink); max-width:92%; }
.camine-form-ph-lock svg{ color:var(--honey-ink); flex:0 0 auto; }
@media(max-width:620px){ .camine-form-ph-row{ grid-template-columns:1fr; } }

/* ---- Sticky sidebar panelek ---- */
.camine-side{ position:sticky; top:1.5rem; display:flex; flex-direction:column; gap:1rem; }
.camine-box{ background:var(--paper); border:1px solid var(--line); border-radius:var(--r);
  padding:1.3rem 1.4rem; box-shadow:var(--shadow-sm); }
.camine-box h3{ margin:0 0 1rem; font-family:var(--sans); font-weight:800; font-size:12.5px;
  letter-spacing:.08em; text-transform:uppercase; color:var(--ink-2); }
.camine-box p{ margin:.4rem 0; }
.camine-tel-big{ font-family:var(--serif); font-weight:600; font-size:23px; color:var(--ever-dark); }
.camine-contact-line{ display:flex; align-items:center; gap:.6rem; font-size:14.5px; padding:.4rem 0; color:var(--ink); }
.camine-contact-line svg{ flex:0 0 auto; color:var(--ever); }
.camine-map{ width:100%; height:180px; border:0; border-radius:var(--r-sm); margin-bottom:.9rem; display:block; }
.camine-official p{ font-size:15px; margin:.5rem 0; }
.camine-official .badge,.camine-official strong{ font-weight:800; }
.camine-official .src{ font-size:12.5px; color:var(--ink-2); margin-top:1rem; padding-top:.9rem; border-top:1px solid var(--line); }

/* ---- Cămine asemănătoare (alsó modul) ---- */
.camine-similar{ margin-top:3rem; padding-top:2.4rem; border-top:1px solid var(--line); }
.camine-similar h2{ font-size:28px; margin:0 0 1.4rem; }

/* ============================================================ */
/* ===================== KATEGÓRIA / LISTA =================== */
/* ============================================================ */
.camine-archive-head{ margin:0 0 1.4rem; }
.camine-archive-head h1{ font-size:clamp(30px,4vw,44px); letter-spacing:-.02em; margin:0 0 .7rem; }
.camine-archive-intro{ color:var(--ink-2); font-size:17.5px; max-width:70ch; margin:0; }
.camine-archive-intro strong{ color:var(--ink); }

/* megye/település/megye-rács → pirula-navigáció */
.camine-termgrid{ margin:1.6rem 0; }
.camine-termgrid h2{ font-size:18px; margin:0 0 .8rem; }
.camine-termgrid ul{ list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:.55rem; }
.camine-termgrid a{ display:inline-flex; align-items:center; gap:.45rem; text-decoration:none;
  color:var(--ink); background:var(--paper); border:1px solid var(--line); border-radius:999px;
  padding:.5em .9em; font-size:14px; font-weight:700; transition:.14s; }
.camine-termgrid a:hover{ border-color:var(--ever); color:var(--ever); }
.camine-termgrid a span{ color:var(--ink-3); font-weight:800; font-size:12.5px; }

.camine-archive-grid{ display:grid; grid-template-columns:288px 1fr; gap:2rem; align-items:start; }

/* eredmény-sáv */
.camine-resultsbar{ display:flex; align-items:center; justify-content:space-between; gap:1rem;
  flex-wrap:wrap; margin:0 0 1.3rem; }
.camine-resultsbar .n{ font-weight:700; color:var(--ink-2); font-size:15px; }
.camine-resultsbar .n b{ color:var(--ink); font-weight:800; }

/* kártyák */
/* Adaptív rács: a sidebar melletti helyen 3 oszlop ~1290px-en, magától 2/1-re vált keskenyebben. */
.camine-cards{ display:grid; grid-template-columns:repeat(auto-fill,minmax(285px,1fr)); gap:1.3rem; }
/* A „hasonló otthonok" (sidebar nélkül, teljes szélesség) fixen 3 oszlop, hogy ne lógjon szét. */
.camine-similar .camine-cards{ grid-template-columns:repeat(3,1fr); }
.camine-card{ background:var(--paper); border:1px solid var(--line); border-radius:var(--r); overflow:hidden;
  display:flex; flex-direction:column; transition:.16s; }
.camine-card:hover{ box-shadow:var(--shadow); transform:translateY(-3px); border-color:var(--line-2); }
.camine-card-img{ display:block; position:relative; aspect-ratio:16/10; overflow:hidden; }
.camine-card-img img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .25s; }
.camine-card:hover .camine-card-img img{ transform:scale(1.04); }
.camine-card-badges{ position:absolute; top:.7rem; left:.7rem; display:flex; gap:.4rem; flex-wrap:wrap; }
.camine-illus{ position:absolute; bottom:.5rem; left:.5rem; background:rgba(13,44,32,.7); color:#fff;
  font-size:11px; font-style:italic; padding:.2em .6em; border-radius:6px; }
/* Nyelv-pill a kártya-kép jobb alsó sarkában (RO+HU / RO+DE) – üveg hatás */
.camine-card-lang{ position:absolute; right:.5rem; bottom:.5rem; display:inline-flex; align-items:center;
  letter-spacing:.02em; background:rgba(255,255,255,.82); -webkit-backdrop-filter:blur(5px); backdrop-filter:blur(5px);
  border:1px solid rgba(255,255,255,.6); box-shadow:0 3px 10px -5px rgba(0,0,0,.3);
  font-weight:800; font-size:11px; color:var(--ever-dark); padding:4px 9px; border-radius:999px; }
.camine-card-img.is-placeholder img{ filter:saturate(.9) brightness(.99); }
/* Zárt otthon – tompított kép a kártyán */
.camine-card.is-inchis .camine-card-img img{ filter:grayscale(.65) brightness(.97); }
.camine-card-body{ padding:1.1rem 1.25rem; display:flex; flex-direction:column; flex:1; }
.camine-card-title{ font-size:19px; line-height:1.2; margin:0 0 .35rem; }
.camine-card-title a{ text-decoration:none; color:var(--ink); }
.camine-card-title a:hover{ color:var(--ever); }
.camine-card-operator{ color:var(--ink-3); font-size:13.5px; font-weight:600; margin:0 0 .6rem; }
.camine-card-loc{ display:flex; align-items:center; gap:.4rem; color:var(--ink-2); font-size:14px; margin:0 0 .35rem; }
.camine-card-loc svg{ flex:0 0 auto; color:var(--ever); }
.camine-card-addr{ color:var(--ink-3); font-size:13.5px; line-height:1.35; margin:0 0 .75rem; }
.camine-card-meta{ list-style:none; padding:0; margin:0 0 .9rem; display:flex; flex-wrap:wrap; gap:.45rem; }
.camine-card-meta li{ background:var(--ever-soft); color:var(--ever-dark); font-size:12px; font-weight:700;
  padding:.3em .7em; border-radius:999px; }
.camine-card-tags{ display:flex; flex-wrap:wrap; gap:.4rem; margin:0 0 .9rem; }
.camine-card-tags .tag{ background:#fff; border:1px solid var(--line); color:var(--ink-2);
  font-size:12px; font-weight:700; padding:.3em .7em; border-radius:999px; }
.camine-card-foot{ margin-top:auto; display:flex; align-items:center; justify-content:space-between;
  border-top:1px solid var(--line); padding-top:.85rem; }
.camine-card-price{ font-weight:800; color:var(--ink); font-size:15px; }
.camine-card-link{ text-decoration:none; color:var(--ever); font-weight:800; font-size:14px; }

/* szűrő */
.camine-filter{ position:sticky; top:1.5rem; background:var(--paper); border:1px solid var(--line);
  border-radius:var(--r); padding:1.4rem; box-shadow:var(--shadow-sm); }
.camine-filter .ff-row{ display:flex; flex-direction:column; gap:.9rem; }
.camine-filter label{ display:block; font-size:13.5px; font-weight:700; color:var(--ink-2); margin-bottom:.5rem; }
.camine-filter select,.camine-filter input[type=number]{ width:100%; font:inherit; font-size:15px;
  padding:8px 13px; border:1.5px solid var(--line); border-radius:10px; background:var(--sand-2);
  color:var(--ink); margin-top:.3rem; }
.ff-group{ border:0; border-top:1px solid var(--line); padding:1.1rem 0 0; margin:1.1rem 0 0; }
.ff-group legend{ font-family:var(--sans); font-size:13px; font-weight:800; letter-spacing:.06em;
  text-transform:uppercase; color:var(--ink); padding:0; margin-bottom:.6rem; }
.chk{ display:flex; align-items:center; gap:.6rem; font-weight:600!important; font-size:15px;
  margin-bottom:.45rem!important; color:var(--ink); cursor:pointer; }
.chk input{ width:18px; height:18px; accent-color:var(--ever); }
.ff-actions{ display:flex; align-items:center; gap:1rem; margin-top:1.3rem; }
.ff-reset{ font-size:14px; color:var(--ink-3); font-weight:700; }
.ff-reset:hover{ color:var(--ever); }

/* Mobil: megye-rács és szűrő külön összecsukható (desktopon nincs) */
.camine-mtoggle{ display:none; }
@media (max-width:980px){
  .camine-mtoggle{ display:flex; align-items:center; gap:.55rem; width:100%;
    background:var(--paper); border:1px solid var(--line); border-radius:var(--r); padding:.85rem 1.1rem;
    font-family:var(--sans); font-weight:800; font-size:15px; color:var(--ink); cursor:pointer; margin-bottom:1rem; }
  .camine-mtoggle svg{ color:var(--ever); flex:0 0 auto; }
  .camine-mtoggle > svg:last-child{ margin-left:auto; transition:transform .2s; }
  .camine-mtoggle[aria-expanded="true"] > svg:last-child{ transform:rotate(180deg); }
  .camine-mcollapse{ display:none; }
  .camine-mcollapse.is-open{ display:block; }
  .camine-mcollapse.camine-termgrid.is-open{ margin-bottom:1.2rem; }
  .camine-mcollapse.camine-termgrid > h2{ display:none; }
}

/* lapozó */
.camine-pagination{ margin-top:2.2rem; display:flex; gap:.5rem; justify-content:center; flex-wrap:wrap; }
.camine-pagination .page-numbers{ min-width:42px; height:42px; display:grid; place-items:center;
  padding:0 .7em; border:1px solid var(--line); border-radius:10px; text-decoration:none;
  color:var(--ink); background:var(--paper); font-weight:800; }
.camine-pagination .page-numbers:hover{ border-color:var(--ever); }
.camine-pagination .current{ background:var(--ever); color:#fff; border-color:var(--ever); }
.camine-empty{ padding:2.5rem; text-align:center; color:var(--ink-2); border:1px dashed var(--line);
  border-radius:var(--r); background:var(--paper); }

/* ============ FAQ (accordion) ============ */
.camine-faq{ margin:3rem 0 1rem; }
.camine-faq h2{ font-size:28px; margin:0 0 1.2rem; }
.camine-faq details{ border:1px solid var(--line); border-radius:var(--r); margin-bottom:.7rem;
  overflow:hidden; background:var(--paper); }
.camine-faq summary{ cursor:pointer; padding:1rem 1.2rem; font-weight:800; color:var(--ink);
  list-style:none; display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.camine-faq summary::-webkit-details-marker{ display:none; }
.camine-faq summary::after{ content:"+"; font-size:1.4rem; color:var(--ink-3); line-height:1; }
.camine-faq details[open] summary::after{ content:"–"; }
.camine-faq details[open] summary{ border-bottom:1px solid var(--line); }
.camine-faq-a{ padding:1rem 1.2rem; color:var(--ink-2); font-size:15px; line-height:1.65; }

/* ============================================================ */
/* ============== LISTARE PREMIUM (claim oldal) ============== */
/* ============================================================ */
.camine-rev{ font-family:var(--sans); color:var(--ink); font-size:16px; line-height:1.6; }
.camine-rev h1,.camine-rev h2,.camine-rev h3,.camine-rev h4{ font-family:var(--serif); font-weight:600; margin:0; letter-spacing:-.01em; color:var(--ink); }

/* hero */
.rev-hero{ background:radial-gradient(120% 80% at 85% -20%,var(--ever-soft) 0,transparent 55%),linear-gradient(180deg,#fbf8f1,var(--sand)); }
.rev-hero-in{ padding:54px 24px 46px; display:grid; grid-template-columns:1.1fr .9fr; gap:46px; align-items:center; }
.rev-hero h1{ font-size:clamp(32px,4.4vw,48px); line-height:1.08; margin:14px 0 0; }
.rev-hero h1 em{ font-style:normal; color:var(--ever); }
.rev-lead{ font-size:18px; color:var(--ink-2); margin-top:18px; max-width:46ch; }
.rev-cta{ display:flex; gap:14px; margin-top:26px; flex-wrap:wrap; }
.rev-trust{ margin-top:18px; font-size:13.5px; color:var(--ink-3); }
.rev-bridge{ display:inline-flex; align-items:center; gap:8px; background:var(--ever-soft); color:var(--ever-dark);
  font-weight:700; font-size:13px; padding:7px 14px; border-radius:999px; }
.rev-bridge svg{ color:var(--ever); }

/* hero claim card */
.rev-claim{ background:var(--paper); border:1px solid var(--line); border-radius:18px; padding:8px; box-shadow:0 18px 44px -24px rgba(34,48,43,.3); }
.rev-claim-inner{ border:1px dashed #ecd9b0; border-radius:14px; padding:20px 22px; background:var(--honey-soft); }
.rev-k{ font-weight:800; font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--honey-ink); display:flex; align-items:center; gap:7px; }
.rev-claim h3{ font-size:22px; margin:10px 0 4px; }
.rev-loc{ font-size:14.5px; color:var(--ink-2); display:flex; align-items:center; gap:7px; }
.rev-loc svg{ color:var(--ever); flex:0 0 auto; }
.rev-tags{ display:flex; gap:8px; margin-top:14px; flex-wrap:wrap; }
.rev-tag{ font-weight:800; font-size:11px; padding:4px 10px; border-radius:999px; display:inline-flex; gap:5px; align-items:center; }
.rev-tag-soft{ background:var(--ever-soft); color:var(--ever-dark); }
.rev-tag-line{ background:#fff; border:1px solid var(--line); color:var(--ink-2); }
.rev-tag-ok{ background:#e3f0e8; color:#176b48; }
.rev-note{ font-size:12px; color:var(--ink-3); margin-top:14px; display:flex; gap:7px; align-items:flex-start; }
.rev-note svg{ flex:0 0 auto; margin-top:1px; }

/* sections */
.rev-sec{ padding:62px 0; }
.rev-alt{ background:var(--sand-2); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.rev-sechead{ max-width:62ch; margin:0 auto 36px; text-align:center; }
.rev-sec h2{ font-size:clamp(26px,3.2vw,36px); }
.rev-sechead p{ font-size:17.5px; color:var(--ink-2); margin-top:12px; }

/* steps */
.rev-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.rev-step{ background:var(--paper); border:1px solid var(--line); border-radius:14px; padding:26px 24px; }
.rev-step .n{ width:40px; height:40px; border-radius:50%; background:var(--ever-soft); color:var(--ever); display:grid; place-items:center; font-family:var(--serif); font-weight:600; margin-bottom:16px; }
.rev-step h3{ font-size:19px; margin-bottom:7px; }
.rev-step p{ font-size:15px; color:var(--ink-2); margin:0; }

/* benefits */
.rev-bens{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.rev-ben{ background:var(--paper); border:1px solid var(--line); border-radius:14px; padding:22px; }
.rev-ben .ic{ width:44px; height:44px; border-radius:11px; background:var(--ever-soft); color:var(--ever); display:grid; place-items:center; margin-bottom:14px; }
.rev-ben h3{ font-size:17.5px; margin-bottom:6px; }
.rev-ben p{ font-size:14.5px; color:var(--ink-2); margin:0; }

/* plans */
.rev-plans{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; align-items:start; }
.rev-plan{ background:var(--paper); border:1px solid var(--line); border-radius:18px; padding:26px 24px; display:flex; flex-direction:column; }
.rev-base{ background:var(--sand-2); }
.rev-feat{ border:2px solid var(--honey); box-shadow:0 18px 40px -24px rgba(200,136,31,.5); position:relative; }
.rev-plan .pop{ position:absolute; top:-13px; left:50%; transform:translateX(-50%); background:var(--honey); color:#fff; font-weight:800; font-size:12px; padding:5px 14px; border-radius:999px; }
.rev-plan .nm{ font-family:var(--serif); font-weight:600; font-size:21px; }
.rev-plan .pr{ margin:12px 0 4px; font-family:var(--serif); font-weight:600; font-size:34px; color:var(--ever-dark); }
.rev-plan .pr small{ font-family:var(--sans); font-size:14px; color:var(--ink-3); font-weight:600; }
.rev-plan .pr.free{ color:var(--ink); }
.rev-plan .desc{ font-size:13.5px; color:var(--ink-2); min-height:38px; }
.rev-plan ul{ list-style:none; padding:0; margin:14px 0 20px; }
.rev-plan li{ display:flex; gap:10px; align-items:flex-start; font-size:14.5px; padding:6px 0; color:var(--ink); }
.rev-plan li svg{ flex:0 0 auto; color:var(--ever); margin-top:2px; }
.rev-plan li.no{ color:var(--ink-3); }
.rev-plan li.no svg{ color:#c4c4c4; }
.rev-plan .camine-btn{ margin-top:auto; }
.rev-plan .already{ margin-top:auto; text-align:center; font-weight:800; font-size:13.5px; color:#176b48; background:#e3f0e8; border-radius:999px; padding:11px; }
.rev-vat{ text-align:center; font-size:13px; color:var(--ink-3); margin-top:18px; }

/* launch-ajánlat: áthúzott régi ár → első év, badge, reînnoire */
.rev-launch{ display:inline-flex; align-items:center; gap:6px; font-weight:800; font-size:11px; letter-spacing:.03em;
  background:var(--honey-soft); color:var(--honey-ink); border:1px solid #ecd9b0; padding:4px 10px; border-radius:999px; margin:10px 0 2px; }
.rev-plan .pr .old{ font-family:var(--sans); font-size:17px; font-weight:700; color:var(--ink-3); text-decoration:line-through; margin-right:8px; }
.rev-plan .pr .now{ color:var(--ever-dark); }
.rev-plan .renew{ font-size:12.5px; color:var(--ink-3); font-weight:600; margin:2px 0 0; }

/* ROI-panel */
.rev-roi{ background:linear-gradient(120deg,#0f3a2a,#0d2c20); color:#dfe7e1; border-radius:18px; padding:30px;
  display:grid; grid-template-columns:1.3fr 1fr; gap:28px; align-items:center; margin-top:34px; }
.rev-roi h3{ color:#fff; font-size:24px; line-height:1.2; margin-top:8px; }
.rev-roi p{ color:#bcd1c4; font-size:15px; margin:10px 0 0; }
.rev-calc{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); border-radius:14px; padding:20px 22px; }
.rev-calc .line{ display:flex; justify-content:space-between; align-items:baseline; padding:7px 0; font-size:14.5px; color:#cfe0d6; }
.rev-calc .line b{ color:#fff; font-family:var(--serif); font-weight:600; font-size:18px; }
.rev-calc .line.big{ border-top:1px solid rgba(255,255,255,.14); margin-top:6px; padding-top:13px; }
.rev-calc .line.big b{ color:var(--honey); font-size:22px; }
.rev-calc .tiny{ font-size:11.5px; color:#86a596; margin-top:10px; }
@media(max-width:880px){ .rev-roi{ grid-template-columns:1fr; } }

/* form */
.rev-formwrap{ max-width:760px; }
.rev-formcard{ background:var(--paper); border:1px solid var(--line); border-radius:18px; padding:30px; box-shadow:var(--shadow-sm); }
.rev-ctx{ display:flex; align-items:center; gap:12px; background:var(--ever-soft-2); border:1px solid var(--line-2); border-radius:12px; padding:12px 16px; margin-bottom:16px; font-size:14px; }
.rev-ctx svg{ color:var(--ever); flex:0 0 auto; }
.rev-ctx b{ color:var(--ever-dark); }
.rev-noacc{ display:flex; gap:10px; align-items:flex-start; background:#e3f0e8; border:1px solid #cfe6da; border-radius:12px; padding:13px 16px; margin-bottom:16px; font-size:13.5px; color:#1d5e44; }
.rev-noacc svg{ flex:0 0 auto; margin-top:1px; color:#1b6e4b; }
.rev-photos-note{ display:flex; gap:10px; align-items:flex-start; border:1px dashed var(--line); border-radius:10px; padding:13px 15px; margin-bottom:18px; font-size:13px; color:var(--ink-2); }
.rev-photos-note svg{ flex:0 0 auto; margin-top:1px; color:var(--honey-ink); }
.rev-row2{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.rev-field{ margin-bottom:14px; }
.rev-field label{ display:block; font-weight:700; font-size:13.5px; margin-bottom:7px; color:var(--ink); }
.rev-field .opt{ color:var(--ink-3); font-weight:600; font-size:12px; }
.rev-field input,.rev-field select,.rev-field textarea{ width:100%; font:inherit; font-size:15px; padding:12px 14px; border:1.5px solid var(--line); border-radius:10px; background:var(--sand-2); color:var(--ink); }
.rev-field textarea{ min-height:90px; resize:vertical; background:#fff; }
.rev-pachet select{ background:#fff; font-weight:700; }
.rev-consent{ display:flex; gap:10px; align-items:flex-start; font-size:13px; color:var(--ink-2); margin:6px 0 18px; }
.rev-consent input{ width:18px; height:18px; margin-top:2px; accent-color:var(--ever); flex:0 0 auto; }
.rev-form-ph{ opacity:.7; pointer-events:none; }
.rev-devnote{ font-size:12px; color:var(--ink-3); background:#fff; border:1px dashed var(--line); border-radius:10px; padding:11px 14px; margin-top:16px; }
.rev-devnote code{ font-family:ui-monospace,Menlo,monospace; font-size:11.5px; background:var(--ever-soft-2); border-radius:4px; padding:1px 5px; color:var(--ever-dark); }

/* faq */
.rev-faq{ max-width:760px; margin:0 auto; display:grid; gap:12px; }
.rev-qa{ background:var(--paper); border:1px solid var(--line); border-radius:12px; padding:18px 20px; }
.rev-qa h4{ font-family:var(--sans); font-weight:800; font-size:15.5px; margin-bottom:6px; }
.rev-qa p{ font-size:14.5px; color:var(--ink-2); margin:0; }

@media(max-width:880px){
  .rev-hero-in{ grid-template-columns:1fr; gap:32px; }
  .rev-steps,.rev-bens,.rev-plans{ grid-template-columns:1fr; }
}
@media(max-width:560px){ .rev-row2{ grid-template-columns:1fr; } }

/* ============================================================ */
/* ===================== KAPCSOLAT (page-contact) ============ */
/* ============================================================ */
.camine-page{ font-family:var(--sans); color:var(--ink); font-size:17px; line-height:1.6; padding-block:2.5rem 4rem; }
.camine-page h1,.camine-page h2,.camine-page h3{ font-family:var(--serif); font-weight:600; letter-spacing:-.01em; color:var(--ink); margin:0; }
.camine-page-head{ max-width:60ch; margin:0 0 2rem; }
.camine-page-head h1{ font-size:clamp(30px,4vw,44px); letter-spacing:-.02em; margin:0 0 .7rem; }
.camine-page-head p{ font-size:18px; color:var(--ink-2); margin:0; }

/* két közönség-kártya */
.ctc-aud{ display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:26px 0 8px; }
.ctc-c{ display:flex; gap:16px; align-items:flex-start; background:var(--paper); border:1px solid var(--line);
  border-radius:16px; padding:22px 24px; text-decoration:none; transition:.15s; }
.ctc-c:hover{ box-shadow:var(--shadow); transform:translateY(-2px); text-decoration:none; }
.ctc-c.is-home{ background:var(--honey-soft); border-color:#ecdcb8; }
.ctc-c .ic{ width:46px; height:46px; border-radius:12px; display:grid; place-items:center; flex:0 0 auto; background:var(--ever-soft); color:var(--ever); }
.ctc-c.is-home .ic{ background:#fff; color:var(--honey-ink); }
.ctc-c h3{ font-size:19px; margin-bottom:3px; }
.ctc-c p{ font-size:14.5px; color:var(--ink-2); margin:0 0 10px; }
.ctc-c .go{ font-weight:800; font-size:14px; color:var(--ever); display:inline-flex; align-items:center; gap:6px; }
.ctc-c.is-home .go{ color:var(--honey-ink); }

/* layout + űrlap */
.ctc-layout{ display:grid; grid-template-columns:1fr 360px; gap:32px; align-items:start; padding:30px 0 0; }
.ctc-formcard{ background:var(--paper); border:1px solid var(--line); border-radius:18px; padding:28px; }
.ctc-formcard h2{ font-size:23px; margin-bottom:4px; }
.ctc-lead{ font-size:15px; color:var(--ink-2); margin:0 0 20px; }
.ctc-row{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.ctc-field{ margin-bottom:14px; }
.ctc-field label{ display:block; font-weight:700; font-size:13.5px; margin-bottom:7px; color:var(--ink); }
.ctc-field input,.ctc-field select,.ctc-field textarea{ width:100%; font:inherit; font-size:15px; padding:12px 14px;
  border:1.5px solid var(--line); border-radius:10px; background:var(--sand-2); color:var(--ink); }
.ctc-field textarea{ min-height:130px; resize:vertical; background:#fff; }
.ctc-field .req{ color:var(--honey-ink); }
.ctc-consent{ display:flex; gap:10px; align-items:flex-start; font-size:13px; color:var(--ink-2); margin:6px 0 18px; cursor:pointer; }
.ctc-consent input{ width:18px; height:18px; margin-top:2px; accent-color:var(--ever); flex:0 0 auto; }
.ctc-hp{ position:absolute!important; left:-9999px!important; width:1px; height:1px; overflow:hidden; }
/* Fluent Forms a zöld témához igazítva (a kontakt-kártyán belül) */
.ctc-formcard .fluentform .ff-el-input--label label{ font-weight:700; font-size:13.5px; color:var(--ink); }
.ctc-formcard .fluentform input:not([type=checkbox]):not([type=radio]):not([type=submit]),
.ctc-formcard .fluentform textarea,
.ctc-formcard .fluentform select{ border:1.5px solid var(--line)!important; border-radius:10px!important;
  background:var(--sand-2)!important; color:var(--ink)!important; box-shadow:none!important; }
.ctc-formcard .fluentform textarea{ background:#fff!important; }
.ctc-formcard .fluentform .ff-btn-submit,.ctc-formcard .fluentform button[type=submit]{
  background:var(--ever)!important; border-color:var(--ever)!important; color:#fff!important;
  border-radius:999px!important; font-weight:800!important; padding:13px 26px!important; }
.ctc-formcard .fluentform .ff-btn-submit:hover{ background:var(--ever-dark)!important; }

/* sidebar */
.ctc-aside{ display:flex; flex-direction:column; gap:16px; position:sticky; top:1.5rem; }
.ctc-panel{ background:var(--paper); border:1px solid var(--line); border-radius:16px; padding:22px; box-shadow:var(--shadow-sm); }
.ctc-panel .pt{ font-weight:800; font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-2); margin-bottom:14px; }
.ctc-cline{ display:flex; align-items:flex-start; gap:12px; padding:9px 0; }
.ctc-cline .i{ width:38px; height:38px; border-radius:10px; background:var(--ever-soft); color:var(--ever); display:grid; place-items:center; flex:0 0 auto; }
.ctc-cline .t{ font-size:12px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--ink-3); }
.ctc-cline .v{ font-family:var(--serif); font-weight:600; font-size:19px; color:var(--ever-dark); line-height:1.2; }
.ctc-cline .v.sm{ font-family:var(--sans); font-size:15px; font-weight:700; color:var(--ink); }
.ctc-cline .v.sm a{ color:var(--ink); }
.ctc-panel .camine-btn{ margin-top:14px; }
.ctc-firma{ background:var(--ever-deep); color:#cfe0d6; border:0; }
.ctc-firma .pt{ color:#86b89b; }
.ctc-firma dl{ margin:0; display:grid; grid-template-columns:auto 1fr; gap:8px 14px; }
.ctc-firma dt{ color:#8aa99a; font-size:13px; font-weight:700; }
.ctc-firma dd{ margin:0; color:#fff; font-weight:700; font-size:14.5px; }
.ctc-firma .small{ font-size:12.5px; color:#86b89b; margin-top:14px; padding-top:14px; border-top:1px solid rgba(255,255,255,.12); line-height:1.5; }

/* Egyértelműsítő sávok a kapcsolat oldal tetején */
.ctc-warn,.ctc-ref{ display:flex; gap:14px; align-items:flex-start; margin:22px 0 0; padding:16px 18px;
  border-radius:14px; font-size:14.5px; line-height:1.55; }
.ctc-warn{ background:var(--honey-soft); border:1px solid #ecd9b0; color:var(--honey-ink); }
.ctc-ref{ background:var(--ever-soft); border:1px solid #cfe2d5; color:var(--ink-2); }
.ctc-warn .i,.ctc-ref .i{ flex:0 0 auto; margin-top:1px; }
.ctc-warn .i{ color:var(--honey-ink); }
.ctc-ref .i{ color:var(--ever); }
.ctc-warn strong,.ctc-ref strong{ font-weight:800; }
.ctc-warn a,.ctc-ref a{ display:inline-flex; align-items:center; gap:5px; font-weight:800; white-space:nowrap; margin-left:6px; }
.ctc-warn a{ color:var(--honey-ink); }
.ctc-ref a{ color:var(--ever); }
.ctc-ref[hidden]{ display:none; }

/* Panel-lábjegyzet + operátori panel (itt él a telefonszám) */
.ctc-note{ font-size:12.5px; line-height:1.5; color:var(--ink-3); margin:12px 0 0; padding-top:12px; border-top:1px solid var(--line); }
.ctc-oper{ background:var(--honey-soft); border-color:#ecdcb8; }
.ctc-oper .pt{ color:var(--honey-ink); }
.ctc-oper .ctc-cline .i{ background:#fff; color:var(--honey-ink); }
.ctc-oper .ctc-note{ border-top-color:#e3d0a8; color:var(--honey-ink); opacity:.85; }
.ctc-oper .camine-btn-ghost{ margin-top:8px; }

@media(max-width:880px){ .ctc-layout{ grid-template-columns:1fr; } .ctc-aud{ grid-template-columns:1fr; } .ctc-aside{ position:static; } }
@media(max-width:560px){ .ctc-row{ grid-template-columns:1fr; } }

/* ============================================================ */
/* ===================== FŐOLDAL (front-page) ================ */
/* ============================================================ */
.camine-home{ font-family:var(--sans); color:var(--ink); font-size:17px; line-height:1.6; -webkit-font-smoothing:antialiased; }
.camine-home h1,.camine-home h2,.camine-home h3{ font-family:var(--serif); font-weight:600; line-height:1.12; letter-spacing:-.01em; color:var(--ink); margin:0; }
.camine-home .ct-container{ position:relative; }
.chome-eyebrow{ font-weight:800; letter-spacing:.14em; text-transform:uppercase; font-size:12.5px; color:var(--ever); }
.chome-eyebrow-light{ color:#7fb295; }

/* HERO */
.chome-hero{ background:
  radial-gradient(120% 90% at 88% -10%, var(--ever-soft) 0%, transparent 55%),
  linear-gradient(180deg,#fbf8f1 0%, var(--sand) 100%); }
.chome-hero-in{ display:grid; grid-template-columns:1.08fr .92fr; gap:54px; align-items:center; padding:62px 0 64px; }
.chome-hero h1{ font-size:clamp(34px,5vw,56px); letter-spacing:-.025em; margin:14px 0 0; }
.chome-hero h1 em{ font-style:normal; color:var(--ever); position:relative; white-space:nowrap; }
.chome-hero h1 em::after{ content:""; position:absolute; left:0; right:0; bottom:.05em; height:.16em; background:var(--honey-soft); z-index:-1; border-radius:3px; }
.chome-lead{ font-size:19px; color:var(--ink-2); max-width:36ch; margin:18px 0 0; }
.chome-situ{ margin-top:26px; }
.chome-situ-label{ display:flex; align-items:center; gap:8px; font-weight:800; font-size:14px; color:var(--ink); margin-bottom:12px; }
.chome-situ-label svg{ color:var(--ever); flex:0 0 auto; }
.chome-chips{ display:flex; flex-wrap:wrap; gap:9px; }
.chome-chip{ display:inline-flex; align-items:center; gap:7px; background:var(--paper); border:1.5px solid var(--line);
  color:var(--ink); font-weight:700; font-size:14.5px; padding:10px 15px; border-radius:999px; text-decoration:none; transition:.14s; }
.chome-chip svg{ color:var(--ever); flex:0 0 auto; }
.chome-chip:hover{ border-color:var(--ever); background:var(--ever-soft); color:var(--ever-dark); text-decoration:none; transform:translateY(-1px); }
.chome-cta{ display:flex; gap:14px; margin-top:28px; flex-wrap:wrap; align-items:center; }
.chome-lead strong{ color:var(--ink); font-weight:800; }
.chome-hint{ font-size:13.5px; color:var(--ink-3); margin:14px 0 0; }
.chome-hint strong{ color:var(--ink-2); font-weight:800; }
.chome-hint-prov{ margin-top:10px; }
.chome-hint-prov a{ color:#a9760f; font-weight:800; text-decoration:underline; text-underline-offset:3px;
  text-decoration-thickness:1.5px; white-space:nowrap; }
.chome-hint-prov a svg{ color:#a9760f; vertical-align:-2px; }
.chome-hint-prov a:hover{ color:var(--honey-ink); }

/* HERO art */
.chome-hero-art{ position:relative; }
.chome-hero-art{ position:relative; max-width:480px; margin-left:auto; }
/* lágy színes alakzat a kép mögött – puhán gördülő/morfoló animáció */
.chome-hero-art::before{ content:""; position:absolute; z-index:0; inset:4% -8% -2% 3%;
  background:linear-gradient(150deg, var(--ever-soft) 0%, var(--honey-soft) 100%);
  border-radius:60% 40% 46% 54% / 56% 50% 50% 44%; transform:rotate(-4deg);
  animation:chome-blob-bg 14s ease-in-out infinite; }
/* organikus „blob"-maszk a fotón – maga is lágyan morfol (puhán gördül) */
.chome-scene-img{ position:relative; z-index:1; width:100%; aspect-ratio:4/4.5; object-fit:cover;
  border-radius:54% 46% 57% 43% / 48% 56% 44% 52%;
  box-shadow:0 24px 60px -28px rgba(13,44,32,.45); display:block;
  animation:chome-blob-img 14s ease-in-out infinite; }
@keyframes chome-blob-img{
  0%,100%{ border-radius:54% 46% 57% 43% / 48% 56% 44% 52%; }
  33%    { border-radius:42% 58% 46% 54% / 58% 42% 58% 42%; }
  66%    { border-radius:58% 42% 60% 40% / 44% 60% 40% 56%; }
}
@keyframes chome-blob-bg{
  0%,100%{ border-radius:60% 40% 46% 54% / 56% 50% 50% 44%; transform:rotate(-5deg) scale(1); }
  50%    { border-radius:42% 58% 60% 40% / 46% 58% 42% 54%; transform:rotate(5deg) scale(1.06); }
}
@media(prefers-reduced-motion:reduce){
  .chome-hero-art::before,.chome-scene-img{ animation:none; }
}
.chome-float{ position:absolute; background:var(--paper); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow);
  padding:13px 16px; display:flex; align-items:center; gap:12px; font-size:12px; }
.chome-float b{ display:block; font-size:14px; line-height:1.2; }
.chome-float small{ color:var(--ink-2); }
.chome-float-ic{ width:38px; height:38px; border-radius:10px; display:grid; place-items:center; flex:0 0 auto; }
.chome-float-ic-green{ background:var(--ever-soft); color:var(--ever); }
.chome-float-ic-honey{ background:var(--honey-soft); color:var(--honey); }
.chome-float-1{ top:-18px; left:-26px; }
.chome-float-2{ bottom:30px; right:-26px; }

/* TRUST */
.chome-trust{ background:var(--ever-deep); color:#cfe0d6; }
.chome-trust-in{ display:flex; flex-wrap:wrap; gap:14px 40px; padding:18px 0; align-items:center; justify-content:center; font-size:14.5px; font-weight:600; }
.chome-trust b{ color:#fff; font-weight:800; }
.chome-trust .dot{ width:5px; height:5px; border-radius:50%; background:var(--honey); display:inline-block; margin-right:10px; vertical-align:middle; }

/* SECTIONS */
.chome-sec{ padding:72px 0; }
.chome-alt{ background:var(--sand-2); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.chome-head{ max-width:62ch; margin-bottom:36px; }
.chome-head.center{ margin-left:auto; margin-right:auto; text-align:center; }
.chome-head h2{ font-size:clamp(28px,3.4vw,40px); letter-spacing:-.02em; margin-top:8px; }
.chome-head p{ font-size:18px; color:var(--ink-2); margin:12px 0 0; }
.chome-head-row{ display:flex; justify-content:space-between; align-items:flex-end; max-width:none; gap:16px; flex-wrap:wrap; }
.chome-more{ margin-top:20px; }

/* STEPS */
.chome-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.chome-step{ background:var(--paper); border:1px solid var(--line); border-radius:var(--r); padding:30px 26px; }
.chome-step .n{ font-family:var(--serif); font-weight:600; font-size:15px; color:var(--ever); background:var(--ever-soft);
  width:40px; height:40px; border-radius:50%; display:grid; place-items:center; margin-bottom:18px; }
.chome-step h3{ font-size:21px; margin-bottom:8px; }
.chome-step p{ color:var(--ink-2); font-size:15.5px; margin:0; }

/* COUNTIES */
.chome-counties{ display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.chome-county{ display:flex; align-items:center; justify-content:space-between; gap:.5rem; background:var(--paper); border:1px solid var(--line);
  border-radius:12px; padding:13px 16px; font-weight:700; color:var(--ink); text-decoration:none; transition:.14s; }
.chome-county:hover{ border-color:var(--ever); color:var(--ever-dark); text-decoration:none; box-shadow:var(--shadow-sm); transform:translateY(-1px); }
.chome-county .cnt{ font-weight:800; font-size:13px; color:var(--ink-3); background:var(--ever-soft-2); border-radius:8px; padding:3px 9px; min-width:34px; text-align:center; }
.chome-county:hover .cnt{ background:var(--ever-soft); color:var(--ever); }

/* CONDITION CARDS */
.chome-conds{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.chome-cond{ display:flex; gap:16px; align-items:flex-start; background:var(--paper); border:1px solid var(--line); border-radius:var(--r); padding:22px; text-decoration:none; transition:.14s; }
.chome-cond:hover{ border-color:var(--line-2); box-shadow:var(--shadow-sm); text-decoration:none; transform:translateY(-2px); }
.chome-cond .ic{ width:48px; height:48px; border-radius:12px; background:var(--ever-soft); color:var(--ever); display:grid; place-items:center; flex:0 0 auto; }
.chome-cond h3{ font-size:19px; color:var(--ink); margin-bottom:4px; }
.chome-cond p{ font-size:14px; color:var(--ink-2); margin:0; }

/* FEATURED */
.chome-feat-cards{ grid-template-columns:repeat(3,1fr); }

/* PROVIDER */
.chome-provider{ background:linear-gradient(180deg,#0f3526,#0d2c20); color:#e7efe9; padding:72px 0; }
.chome-provider-in{ display:grid; grid-template-columns:1.2fr .8fr; gap:40px; align-items:center; }
.chome-provider h2{ color:#fff; font-size:clamp(26px,3vw,36px); margin-top:8px; }
.chome-provider p{ color:#bcd1c4; font-size:17px; margin-top:12px; }
.chome-provider-pts{ display:flex; flex-wrap:wrap; gap:10px 22px; margin-top:18px; }
.chome-provider-pts span{ display:flex; align-items:center; gap:8px; font-weight:700; color:#dbe8e0; font-size:14.5px; }
.chome-provider-pts svg{ color:var(--honey); flex:0 0 auto; }
.chome-provider-panel{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); border-radius:var(--r-lg); padding:28px; }
.chome-provider-panel h3{ color:#fff; font-size:21px; margin-bottom:10px; }
.chome-price{ margin-bottom:18px; }
.chome-price strong{ font-family:var(--serif); font-size:30px; color:#fff; font-weight:600; }
.chome-price small{ display:block; font-size:13.5px; color:#aac2b3; margin-top:4px; }

/* ============ RESZPONZÍV ============ */
@media (max-width:980px){
  .chome-hero-in{ grid-template-columns:1fr; gap:36px; }
  .chome-hero-art{ order:-1; max-width:420px; }
  .chome-float-1{ left:0; } .chome-float-2{ right:0; }
  .chome-steps,.chome-conds,.chome-feat-cards{ grid-template-columns:1fr 1fr; }
  .chome-counties{ grid-template-columns:1fr 1fr; }
  .chome-provider-in{ grid-template-columns:1fr; }
  .camine-grid,.camine-archive-grid{ grid-template-columns:1fr; }
  .camine-side{ position:static; flex-direction:row; flex-wrap:wrap; }
  .camine-side .camine-box{ flex:1 1 240px; }
  .camine-filter{ position:static; }
}
@media (max-width:620px){
  .camine-single,.camine-archive{ font-size:16px; }
  .camine-cards,.camine-similar .camine-cards{ grid-template-columns:1fr; }
  .camine-feat-grid{ grid-template-columns:1fr; }
  .chome-steps,.chome-conds,.chome-counties,.chome-feat-cards{ grid-template-columns:1fr; }
  .chome-sec,.chome-provider{ padding:48px 0; }
  .chome-float{ display:none; }
}
@media (prefers-reduced-motion:reduce){
  .camine-single *,.camine-archive *{ animation:none!important; transition:none!important; }
}
