/* Helyben tarolt betutipusok (SIL Open Font License) – a Google Fonts latin es latin-ext reszhalmaza */
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300 600;font-display:swap;src:url(fonts/cormorant-garamond-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300 600;font-display:swap;src:url(fonts/cormorant-garamond-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:300 600;font-display:swap;src:url(fonts/inter-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:300 600;font-display:swap;src:url(fonts/inter-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* ============================================================
   DESIGN TOKENS
   ============================================================ */
:root{
  --cream:      #F7F2EA;
  --cream-alt:  #F1E9DC;
  --surface:    #FFFFFF;
  --surface-2:  #FBF8F3;

  --ink:        #2B2420;
  --ink-2:      #3E352E;
  --body:       #554B43;
  --muted:      #857A70;

  --gold:       #A9834A;
  --gold-2:     #C9A961;
  --gold-soft:  #E6D8BE;
  --gold-wash:  #EFE4CF;

  --line:       #E4DACA;
  --line-soft:  #EFE7DA;
  --line-dark:  rgba(255,255,255,.14);

  --r-xs: 5px;
  --r-sm: 12px;
  --r-md: 18px;
  --r-lg: 26px;
  --r-pill: 999px;

  /* Lagy, meleg feluletek */
  --grad-card: linear-gradient(158deg,#FFFFFF 0%,#FEFBF6 55%,#FAF4EA 100%);
  --grad-warm: linear-gradient(158deg,#FCF8F1 0%,#F3E9DA 100%);
  --grad-gold: linear-gradient(152deg,#F5ECDD 0%,#EADCBE 100%);
  --grad-ink:  linear-gradient(152deg,#3A312B 0%,#2B2420 58%,#211B18 100%);
  /* a ket sotet doboznak melyebb, meleg fenyu felulet */
  --grad-ink-rich:
    radial-gradient(118% 92% at 100% 0%, rgba(214,182,113,.22) 0%, rgba(214,182,113,0) 56%),
    radial-gradient(96% 86% at 0% 100%, rgba(169,131,74,.18) 0%, rgba(169,131,74,0) 62%),
    linear-gradient(152deg,#3E342C 0%,#2C2521 56%,#1F1A17 100%);
  --shadow-soft: 0 1px 2px rgba(122,92,48,.04), 0 10px 30px -12px rgba(122,92,48,.16);
  --shadow-lift: 0 2px 5px rgba(122,92,48,.05), 0 20px 46px -18px rgba(122,92,48,.26);

  --s-1:.25rem;  --s-2:.5rem;   --s-3:.75rem;  --s-4:1rem;
  --s-5:1.25rem; --s-6:1.5rem;  --s-8:2rem;    --s-10:2.5rem;
  --s-12:3rem;   --s-16:4rem;   --s-20:5rem;   --s-24:6rem;

  --serif:  "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --sans:   "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;

  --shadow-sm: 0 1px 2px rgba(43,36,32,.05);
  --shadow-md: 0 8px 28px -14px rgba(43,36,32,.22);

  --container: 1348px;
  --header-h: 76px;
  --header-bg: #312E29;
}

/* ============================================================
   RESET / BASE
   ============================================================ */
*,*::before,*::after{ box-sizing:border-box; }
html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--header-h) + 16px);
}
body{
  margin:0;
  background:var(--cream);
  color:var(--body);
  font-family:var(--sans);
  font-size:1rem;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img,svg{ max-width:100%; display:block; }
h1,h2,h3,h4{ font-family:var(--serif); color:var(--ink); font-weight:400; margin:0; }
h1{ font-size:clamp(2.35rem,6vw,3.9rem); line-height:1.07; }
h2{ font-size:clamp(1.85rem,4.2vw,2.85rem); line-height:1.13; }
h3{ font-size:1.0625rem; line-height:1.35; font-family:var(--sans); font-weight:600; }
p{ margin:0; }
a{ color:inherit; }
ul,ol{ margin:0; padding:0; list-style:none; }
button{ font:inherit; }

:focus-visible{ outline:2px solid var(--gold); outline-offset:3px; border-radius:var(--r-xs); }
::selection{ background:var(--gold-soft); color:var(--ink); }

.container{ width:100%; max-width:var(--container); margin-inline:auto; padding-inline:var(--s-6); }
.section{ padding-block:clamp(3.25rem,7vw,5.5rem); }
.section--alt{ background:linear-gradient(180deg,#F4EDE3 0%,#EDE3D2 100%); }
/* Tömörített szekciók: -20% magasság */
#eredmenyek,#bea{ padding-block:clamp(2.6rem,5.6vw,4.4rem); }
/* Tomoritett blokkok: kb. -22% magassag */
#megoldasok,#folyamat,#utana,#kerdesek{ padding-block:clamp(2.05rem,4.3vw,3.05rem); }
#folyamat .section-head,#utana .section-head{ margin-bottom:var(--s-6); }
#megoldasok .acc > summary,#utana .acc > summary,#kerdesek .acc > summary{ padding:var(--s-4) var(--s-5); }
#kerdesek .acc{ margin-top:var(--s-2); }
#kerdesek .acc:first-of-type{ margin-top:var(--s-4); }
#kerdesek .testimonials{ margin-top:var(--s-4); }
#kerdesek .testimonial{ padding:var(--s-5); gap:var(--s-3); min-height:0; }
#folyamat .steps__node{ margin-bottom:var(--s-4); }
#utana .timeline li{ padding-top:var(--s-6); }
#utana .timeline li::after{ height:calc(var(--s-6) - var(--dot)); }
.section--paper{ background:linear-gradient(180deg,#FDFBF7 0%,#F8F1E6 100%); }

.skip-link{
  position:absolute; left:var(--s-4); top:-5rem; z-index:200;
  background:var(--ink); color:#fff; padding:.7rem 1.1rem;
  border-radius:var(--r-sm); font-size:.875rem; text-decoration:none;
  transition:top .18s ease;
}
.skip-link:focus-visible{ top:var(--s-4); }
.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

/* ============================================================
   SHARED PIECES
   ============================================================ */
.eyebrow{
  font-size:.6875rem; letter-spacing:.2em; text-transform:uppercase;
  color:var(--gold); font-weight:500;
}
.lede{ font-size:1.0625rem; max-width:46ch; }
.fineprint{ font-size:.8125rem; color:var(--muted); line-height:1.55; }

.section-head{
  display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between;
  gap:var(--s-4) var(--s-8); margin-bottom:var(--s-10);
}
.section-head__note{ font-size:.875rem; color:var(--muted); max-width:40ch; margin-left:auto; text-align:right; }
.section-head__sub{ font-size:.9375rem; color:var(--muted); }

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.55rem;
  font-family:var(--sans); font-size:.875rem; font-weight:500; letter-spacing:.015em;
  padding:.95rem 1.75rem; border-radius:var(--r-pill); border:1px solid transparent;
  text-decoration:none; cursor:pointer; white-space:nowrap;
  transition:background-color .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}
.btn:hover{ transform:translateY(-1px); }
.btn:active{ transform:translateY(0); }
.btn svg{ width:14px; height:14px; flex:none; transition:transform .18s ease; }
.btn:hover svg{ transform:translateX(3px); }
.btn--dark{ background:var(--ink); color:#fff; }
.btn--dark:hover{ background:#191310; }
.btn--gold{ background:var(--gold-2); color:var(--ink); }
.btn--gold:hover{ background:#D8BA79; }
.btn--ghost{ background:transparent; color:var(--ink); border-color:var(--line); }
.btn--ghost:hover{ border-color:var(--gold); background:rgba(169,131,74,.07); }
.btn--block{ width:100%; }

.card{
  background:var(--grad-card); border:1px solid var(--line-soft);
  border-radius:var(--r-md); padding:var(--s-6);
  box-shadow:var(--shadow-soft);
  transition:box-shadow .25s ease, transform .25s ease;
}
.card:hover{ box-shadow:var(--shadow-lift); transform:translateY(-2px); }

/* Placeholder frames — the studio's own photos drop in here */
.ph{
  position:relative; display:flex; flex-direction:column; align-items:center;
  justify-content:center; gap:var(--s-2); text-align:center;
  background:linear-gradient(135deg,#F3E9DC 0%,#E9DCC9 48%,#EFE2D2 100%);
  border:1px solid var(--line-soft); border-radius:var(--r-md);
  color:var(--muted); overflow:hidden;
}
.ph::after{
  content:""; position:absolute; inset:10px;
  border:1px dashed rgba(169,131,74,.32); border-radius:10px; pointer-events:none;
}
.ph svg{ width:24px; height:24px; color:var(--gold); opacity:.6; position:relative; z-index:1; }
.ph__label{
  position:relative; z-index:1; background:rgba(255,255,255,.72);
  padding:.35rem .75rem; border-radius:var(--r-pill);
  font-size:.6875rem; letter-spacing:.04em; color:#6B6058;
}
/* Ha bekerul a valodi foto, kitolti a keretet es eltunik a szaggatott vonal */
.ph img{ width:100%; height:100%; object-fit:cover; position:relative; z-index:1; }
.ph:has(img)::after{ display:none; }

/* ============================================================
   HEADER
   ============================================================ */
.header{
  position:sticky; top:0; z-index:100;
  background:linear-gradient(180deg,#3A352E 0%,#312E29 58%,#2B2824 100%);
  border-bottom:1px solid transparent;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.header.is-stuck{ border-bottom-color:rgba(255,255,255,.1); box-shadow:0 1px 18px rgba(0,0,0,.18); }
.header__inner{ display:flex; align-items:center; gap:var(--s-4); min-height:var(--header-h); }

.brand{ display:flex; align-items:center; gap:.7rem; text-decoration:none; flex:none; }
/* A logo a konteneren belul kezdodik, egy vonalban a hero szovegevel */
.header .brand__mark{
  position:relative; flex:none;
  width:calc(var(--header-h) * .78 * 1.074); height:calc(var(--header-h) * .78);
  display:block; border-radius:0; overflow:hidden;
  background:transparent; font-size:0;
}
.brand__mark img{ width:100%; height:100%; object-fit:contain; display:block; }
.header .brand{ padding-left:0; }
.brand__name{ font-family:var(--serif); font-size:1rem; color:var(--ink); line-height:1.1; }
.header .brand__name{ display:none; }
.header .brand__sub{ color:var(--gold-2); }
.header .nav a{ color:#DDD2C6; }
.header .nav a:hover,.header .nav a:focus-visible{ color:#fff; }
.header .burger{ border-color:rgba(255,255,255,.22); color:#F3EBE0; }
.header .burger:hover{ border-color:var(--gold-2); }
.brand__name b{ font-weight:600; }
.brand__sub{
  display:block; font-family:var(--sans); font-size:.5625rem; letter-spacing:.24em;
  color:var(--muted); text-transform:uppercase; margin-top:2px;
}

.nav{ display:flex; align-items:center; gap:var(--s-8); margin-left:var(--s-10); }
.nav a{ font-size:.875rem; color:var(--ink-2); text-decoration:none; position:relative; padding-block:.35rem; }
.nav a::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:1px;
  background:var(--gold); transform:scaleX(0); transform-origin:left;
  transition:transform .2s ease;
}
.nav a:hover::after,.nav a:focus-visible::after{ transform:scaleX(1); }

.header__actions{ display:flex; align-items:center; gap:var(--s-5); margin-left:auto; }
.header__tag{
  font-size:.6875rem; line-height:1.55; color:var(--muted); letter-spacing:.03em;
  padding-left:var(--s-5); border-left:1px solid var(--line); white-space:nowrap;
}
.header__tag span{ display:block; }
.header__tag span:first-child{ color:var(--gold); }
.header .btn{ padding:.75rem 1.25rem; }

.burger{
  display:none; width:42px; height:42px; margin-left:auto;
  border:1px solid var(--line); background:transparent; border-radius:50%;
  cursor:pointer; align-items:center; justify-content:center; color:var(--ink);
}
.burger svg{ width:20px; height:20px; }
.burger .icon-close{ display:none; }
.burger[aria-expanded="true"] .icon-open{ display:none; }
.burger[aria-expanded="true"] .icon-close{ display:block; }

.mobile-nav{ display:none; border-top:1px solid rgba(255,255,255,.1); background:var(--header-bg); }
.mobile-nav[data-open="true"]{ display:block; }
.mobile-nav ul{ padding:var(--s-4) 0 var(--s-6); }
.mobile-nav a{
  display:block; padding:.85rem var(--s-6); font-size:.9375rem;
  color:#DDD2C6; text-decoration:none; border-bottom:1px solid rgba(255,255,255,.08);
}
.mobile-nav .btn{ margin:var(--s-4) var(--s-6) 0; width:calc(100% - var(--s-6) * 2); }

/* ============================================================
   HERO
   ============================================================ */
.hero{
  position:relative; overflow:hidden;
  background:
    radial-gradient(115% 95% at 6% 18%,#FEFCF8 0%,rgba(254,252,248,0) 62%),
    linear-gradient(180deg,#FBF7F0 0%,var(--cream) 100%);
}
.hero__grid{
  padding-block:clamp(1.3rem,3vw,1.95rem) clamp(1.5rem,3.3vw,2.25rem);
}
/* A szoveg a bal felben marad, a foto a jobb felet teljesen kitolti */
.hero__content{ max-width:calc(50% - 2rem); }
.hero .lede{ line-height:1.42; }
.hero .trust{ padding-top:0; gap:var(--s-4) var(--s-8); }
.hero__content > * + *{ margin-top:.85rem; }
.hero h1{ margin-top:var(--s-3); line-height:1.0; }
.hero__price{
  display:inline-block; font-size:.9375rem; color:var(--ink);
  padding-top:var(--s-3); border-top:1px solid var(--line);
}
.hero__price b{ font-weight:600; }
.hero__price em{ font-style:normal; color:var(--muted); }
.hero__cta{ display:flex; flex-wrap:wrap; gap:var(--s-3); }

.trust{ display:flex; flex-wrap:wrap; gap:var(--s-5) var(--s-8); padding-top:var(--s-3); }
.trust li{ display:flex; align-items:center; gap:.55rem; font-size:.8125rem; }
.trust svg{ width:17px; height:17px; color:var(--gold); flex:none; }

.hero__media{ position:absolute; top:0; right:0; bottom:0; width:50%; }
.hero__photo{
  position:absolute; inset:0; overflow:hidden;
  border:0; border-radius:0;
  -webkit-mask-image:linear-gradient(to right, transparent 0, #000 13%);
          mask-image:linear-gradient(to right, transparent 0, #000 13%);
  background:
    radial-gradient(120% 90% at 72% 10%, #FCF5EC 0%, rgba(252,245,236,0) 58%),
    radial-gradient(95% 80% at 20% 80%, #E6CDB8 0%, rgba(230,205,184,0) 62%),
    linear-gradient(158deg,#F0DACA 0%,#E3C6B0 38%,#D9B9A4 66%,#EBDED1 100%);
}
.hero__photo::after{
  content:""; position:absolute; inset:0; z-index:2;
  background:linear-gradient(195deg, rgba(43,36,32,0) 58%, rgba(43,36,32,.26) 100%);
  pointer-events:none;
}
.hero__photo img{ width:100%; height:100%; object-fit:cover; position:relative; z-index:1; }
.hero__phlabel{
  position:absolute; inset:0; z-index:3; display:grid; place-content:center;
  justify-items:center; gap:var(--s-2); text-align:center;
}
.hero__phlabel svg{ width:26px; height:26px; color:var(--gold); opacity:.65; }
.hero__phlabel span{
  background:rgba(255,255,255,.72); padding:.35rem .8rem;
  border-radius:var(--r-pill); font-size:.6875rem; letter-spacing:.05em; color:#6B6058;
}
.hero__disclaimer{
  position:absolute; right:.9rem; bottom:.6rem; z-index:3; margin:0;
  text-align:right; font-size:.6875rem; color:#6E635A;
  text-shadow:0 1px 8px rgba(255,255,255,.75);
}

/* ============================================================
   PILLARS
   ============================================================ */
.pillars{
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
  position:relative; border-radius:var(--r-lg);
  background:linear-gradient(180deg,rgba(252,248,241,0) 0%,rgba(239,228,207,.42) 100%);
}
/* a szelek fele elhalvanyodo keretvonalak - lagyabb, mint a teljes szelessegu vonal */
.pillars::before,.pillars::after{
  content:""; position:absolute; left:5%; right:5%; height:1px;
  background:linear-gradient(90deg,transparent,var(--line) 16%,var(--line) 84%,transparent);
}
.pillars::before{ top:0; }
.pillars::after{ bottom:0; }
.pillars li{
  display:flex; flex-direction:column; align-items:center; gap:.3rem;
  padding:.9rem var(--s-4); text-align:center;
  position:relative;
}
.pillars li + li::before{
  content:""; position:absolute; left:0; top:22%; bottom:22%; width:1px;
  background:linear-gradient(180deg,transparent,var(--line-soft) 25%,var(--line-soft) 75%,transparent);
}
.pillars__icon{
  width:30px; height:30px; border-radius:50%; background:var(--grad-gold);
  display:grid; place-items:center; color:var(--gold);
}
.pillars__icon svg{ width:14px; height:14px; }
.pillars h3{ font-size:.9375rem; }
.pillars p{ font-size:.78rem; line-height:1.4; color:var(--muted); max-width:28ch; }

/* ============================================================
   SPLIT LAYOUT (results / Bea / solutions)
   ============================================================ */
.split{
  display:grid; grid-template-columns:minmax(0,.68fr) minmax(0,1.32fr);
  gap:clamp(1.75rem,3vw,2.8rem); align-items:center;
}
.split__text > * + *{ margin-top:var(--s-5); }

.compare{ display:grid; grid-template-columns:1fr 1fr; gap:var(--s-4); }
.compare figure{ margin:0; border-radius:var(--r-md); overflow:hidden; border:1px solid var(--line-soft); box-shadow:var(--shadow-soft); }
.compare .ph{ aspect-ratio:95/44; border:0; border-radius:0; }
.compare figcaption{
  background:#4A403A; color:#F2EAE0; text-align:center;
  font-size:.6875rem; letter-spacing:.2em; text-transform:uppercase; padding:.7rem;
}

/* Bea */
.bea{
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.63fr) minmax(0,.89fr);
  gap:clamp(1.5rem,3.5vw,2.75rem); align-items:stretch;
}
.bea__text{ align-self:center; }
.bea__text > * + *{ margin-top:var(--s-5); }
/* A portré pontosan a mellette lévő oszlop magasságát veszi fel */
.bea__portrait{ aspect-ratio:auto; height:100%; min-height:0; }
/* a kép abszolút, hogy a saját aránya NE húzza meg a sor magasságát */
.bea__portrait img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 22%; }
.bea__side{ display:flex; flex-direction:column; gap:var(--s-4); }
/* Hangulatvideó (YouTube, némítva, ismétlődve) a portré helyén: a kép addig látszik, amíg a videó el nem indul */
.bea__video{ container-type:size; overflow:hidden; }
.bea__video iframe{
  position:absolute; left:50%; top:50%; z-index:2; border:0; pointer-events:none;
  width:max(100cqw, 177.78cqh); height:max(100cqh, 56.25cqw); transform:translate(-50%,-50%);
  opacity:0; transition:opacity 1s ease;
}
.bea__video.is-live iframe{ opacity:1; }
.quote-card{
  margin:0; /* a blockquote alapértelmezett 40px margója miatt volt keskenyebb a videónál */
  background:var(--grad-gold); border-radius:var(--r-lg); padding:var(--s-6) var(--s-6) var(--s-6) var(--s-8);
  position:relative; border:1px solid var(--gold-soft);
}
.quote-card p{
  font-family:var(--serif); font-size:1.1875rem; line-height:1.45;
  color:var(--ink); font-style:italic;
}
.video-card{
  position:relative; aspect-ratio:1/1; border-radius:var(--r-md); overflow:hidden;
  background:#4A3E36; box-shadow:var(--shadow-soft);
}
.video-card video{ display:block; width:100%; height:100%; object-fit:cover; object-position:50% 23.2%; }
.video-card__play{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  width:58px; height:58px; border-radius:50%; background:rgba(255,255,255,.92);
  display:grid; place-items:center; color:var(--ink); border:0; padding:0; cursor:pointer;
  transition:transform .25s ease;
}
.video-card__play svg{ width:18px; height:18px; margin-left:3px; color:var(--ink); }
.video-card__label{
  position:absolute; left:50%; bottom:var(--s-4); transform:translateX(-50%); pointer-events:none;
  white-space:nowrap; background:rgba(0,0,0,.45); color:#F2EAE0;
  padding:.35rem .75rem; border-radius:var(--r-pill); font-size:.6875rem; letter-spacing:.04em;
}
/* JS nélkül a böngésző saját vezérlői működnek; az egyedi gomb csak a szkripttel együtt jelenik meg */
.video-card__play,.video-card__label{ display:none; }
.video-card.is-ready{ cursor:pointer; }
.video-card.is-ready .video-card__play{ display:grid; }
.video-card.is-ready .video-card__label{ display:block; }
.video-card.is-playing{ cursor:default; }
.video-card.is-playing .video-card__play,.video-card.is-playing .video-card__label{ display:none; }
.video-card.is-ready:not(.is-playing):hover .video-card__play{ transform:translate(-50%,-50%) scale(1.08); }

/* Solutions */
.solutions{
  display:grid; grid-template-columns:minmax(0,1.14fr) minmax(0,1.5fr);
  gap:clamp(2rem,4.5vw,3.5rem); align-items:center;
}
.solutions__cards{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--s-4); }
.solutions__cards .card{ text-align:center; display:flex; flex-direction:column; align-items:center; gap:var(--s-3); }
.solutions__cards .card svg{ width:26px; height:26px; color:var(--gold); }
.solutions__cards p{ font-size:.8125rem; color:var(--muted); }

/* ============================================================
   ACCORDION
   ============================================================ */
.acc{
  background:var(--grad-card); border:1px solid var(--line-soft);
  border-radius:var(--r-md); margin-top:var(--s-3);
  box-shadow:var(--shadow-soft);
}
.acc > summary{
  display:flex; align-items:center; gap:var(--s-3);
  padding:var(--s-5) var(--s-6); cursor:pointer; list-style:none;
  font-size:.9375rem; font-weight:500; color:var(--ink);
}
.acc > summary::-webkit-details-marker{ display:none; }
.acc > summary:hover{ color:var(--gold); }
.acc__icon{ width:18px; height:18px; color:var(--gold); flex:none; }
.acc__chev{ width:16px; height:16px; margin-left:auto; color:var(--muted); transition:transform .22s ease; flex:none; }
.acc[open] .acc__chev{ transform:rotate(180deg); }
.acc__body{
  padding:0 var(--s-6) var(--s-6);
  font-size:.9375rem; color:var(--body); max-width:78ch;
}
.acc__body > * + *{ margin-top:var(--s-3); }
.acc__body li{ position:relative; padding-left:1.15rem; }
.acc__body li + li{ margin-top:.4rem; }
.acc__body li::before{
  content:""; position:absolute; left:0; top:.65em;
  width:5px; height:5px; border-radius:50%; background:var(--gold-2);
}
/* Szoveg + illusztracio ket hasabban */
.acc__body--split{
  display:grid; grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);
  gap:clamp(1.25rem,2.4vw,2rem); align-items:stretch; max-width:none;
}
.acc__body--split > * + *{ margin-top:0; }
.acc__text > * + *{ margin-top:var(--s-3); }
.acc__fig{
  margin:0; background:var(--grad-gold); border:1px solid var(--gold-soft);
  border-radius:var(--r-lg); padding:var(--s-4) var(--s-5);
  /* pontosan a melletti szovegoszlop magassaga */
  display:flex; flex-direction:column; min-height:0;
}
/* flex-basis:auto -> egy oszlopos (mobil) elrendezesben is van sajat magassaga */
.acc__fig svg{ flex:1 1 auto; min-height:0; width:100%; max-width:280px; height:auto; display:block; margin-inline:auto; color:var(--gold); }
.acc__fig .lip-up{ fill:rgba(201,169,97,.16); }
.acc__fig .lip-low{ fill:rgba(201,169,97,.26); }
.acc__fig .axis{ fill:none; stroke:var(--gold); stroke-width:1; stroke-dasharray:3 4; opacity:.32; }
.acc__fig .philtrum{ fill:none; stroke:currentColor; stroke-width:1.4; stroke-linecap:round; opacity:.3; }
.acc__fig .lips{ stroke:currentColor; stroke-width:2; stroke-linejoin:round; }
.acc__fig .lip-line{ fill:none; stroke-width:1.4; opacity:.7; }
.acc__fig .dot{ fill:var(--gold-2); }
.acc__fig .ring{ fill:none; stroke:var(--gold-2); stroke-width:1; opacity:.5; }
.acc__fig figcaption{
  margin-top:var(--s-3); padding-top:var(--s-2);
  border-top:1px solid var(--gold-soft);
  font-size:.6875rem; line-height:1.45; color:var(--gold); text-align:center;
}

/* ============================================================
   STEPS (process)
   ============================================================ */
.steps{
  --step-gap:clamp(1.25rem,2.6vw,2rem); --node:52px;
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--step-gap); position:relative;
}
/* szaggatott arany vezetovonal az elso es az utolso jeloles kozepe kozott */
.steps::before{
  content:""; position:absolute; z-index:0;
  top:calc(var(--node) / 2); height:1px;
  left:calc(var(--node) / 2);
  right:calc((100% - 3 * var(--step-gap)) / 4 - var(--node) / 2);
  background:repeating-linear-gradient(90deg,var(--gold-soft) 0 5px,transparent 5px 11px);
}
.steps li{ position:relative; z-index:1; }
.steps__node{
  position:relative; width:var(--node); height:var(--node); border-radius:50%;
  border:1px solid var(--gold-soft); background:var(--cream);
  display:grid; place-items:center; color:var(--gold);
  box-shadow:0 0 0 7px var(--cream);
  margin-bottom:var(--s-5);
}
.steps__node::after{
  content:""; position:absolute; inset:4px; border-radius:50%; background:var(--grad-gold);
}
.steps__node svg{ width:22px; height:22px; position:relative; z-index:1; }
.steps__i{
  display:block; font-family:var(--serif); font-size:1.0625rem; font-weight:500;
  color:var(--gold); letter-spacing:.06em; line-height:1; margin-bottom:var(--s-2);
  font-variant-numeric:lining-nums; font-feature-settings:"lnum" 1;
}
.steps h3{ font-size:1rem; margin-bottom:var(--s-2); }
.steps p{ font-size:.8125rem; color:var(--muted); max-width:26ch; }

/* Timeline (aftercare) */
.timeline{
  --tl-gap:clamp(1rem,2.2vw,1.5rem); --dot:14px;
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--tl-gap); position:relative;
}
/* arany sin az elso es az utolso pont kozepe kozott */
.timeline::before{
  content:""; position:absolute; z-index:0; border-radius:2px;
  top:calc(var(--dot) / 2 - 1px); height:2px;
  left:calc(var(--dot) / 2);
  right:calc((100% - 3 * var(--tl-gap)) / 4 - var(--dot) / 2);
  background:linear-gradient(90deg,var(--gold-2),var(--gold-soft));
}
.timeline li{ position:relative; z-index:1; display:flex; padding-top:var(--s-8); }
.timeline li::before{
  content:""; position:absolute; top:0; left:0;
  width:var(--dot); height:var(--dot); border-radius:50%; background:var(--gold-2);
  box-shadow:0 0 0 4px var(--surface-2),0 0 0 5px var(--gold-soft);
}
/* a pontot es a kartyat osszekoto rovid szar */
.timeline li::after{
  content:""; position:absolute; left:calc(var(--dot) / 2); top:var(--dot);
  width:1px; height:calc(var(--s-8) - var(--dot)); background:var(--gold-soft);
}
.timeline__card{
  flex:1; background:var(--grad-card); border:1px solid var(--line-soft);
  border-radius:var(--r-md); padding:var(--s-5) var(--s-5) var(--s-6);
  box-shadow:var(--shadow-soft);
}
.timeline h3{
  font-family:var(--sans); font-size:.6875rem; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase; color:var(--gold);
  margin-bottom:var(--s-3);
}
.timeline p{ font-size:.875rem; color:var(--body); line-height:1.55; max-width:none; }

/* ============================================================
   PRICING
   ============================================================ */
.pricing{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:var(--s-6); align-items:stretch; }
.price-card{
  background:var(--grad-card); border:1px solid var(--line-soft);
  border-radius:var(--r-lg); overflow:hidden; box-shadow:var(--shadow-soft);
}
.price-card__head{
  display:flex; align-items:baseline; justify-content:space-between; gap:var(--s-4);
  padding:var(--s-6) var(--s-8);
  background:linear-gradient(120deg,#F8F1E4 0%,#F1E7D4 100%);
  border-bottom:1px solid var(--line-soft);
}
.price-card__head h3{ font-family:var(--serif); font-size:1.5rem; font-weight:400; }
.price-card__head span{ font-size:.75rem; color:var(--gold); letter-spacing:.08em; text-transform:uppercase; }
.price-card__rows{ padding:var(--s-2) var(--s-6) var(--s-6); }
.price-card__rows li{
  display:flex; align-items:baseline; justify-content:space-between; gap:var(--s-4);
  padding-block:var(--s-4); border-bottom:1px solid var(--line-soft); font-size:.9375rem;
}
.price-card__rows li:last-child{ border-bottom:0; }
.price-card__rows span{ color:var(--muted); font-size:.875rem; text-align:right; }
.price-card__note{ padding:0 var(--s-6) var(--s-6); font-size:.75rem; line-height:1.5; color:var(--muted); }

.includes{
  background:var(--grad-ink-rich); color:#EDE4D8; border-radius:var(--r-lg);
  padding:clamp(1.75rem,3.2vw,2.25rem);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 26px 62px -34px rgba(43,36,32,.6);
  display:grid; grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr);
  gap:clamp(1.25rem,2.4vw,1.75rem); align-items:center;
}
.includes h3{ color:#fff; margin-bottom:var(--s-5); }
.includes li{ display:flex; align-items:flex-start; gap:.65rem; font-size:.875rem; line-height:1.5; }
.includes li + li{ margin-top:var(--s-3); }
.includes li svg{ width:15px; height:15px; color:var(--gold-2); flex:none; margin-top:.3rem; }
.includes__aside{
  position:relative; padding-left:clamp(1.25rem,2.2vw,1.75rem);
  display:flex; flex-direction:column; align-items:center; text-align:center; gap:var(--s-4);
  min-width:0;
}
.includes__aside::before{
  content:""; position:absolute; left:0; top:6%; bottom:6%; width:1px;
  background:linear-gradient(180deg,transparent,var(--line-dark) 20%,var(--line-dark) 80%,transparent);
}
/* a gomb a szuk hasabban sem loghat ki */
.includes__aside .btn{
  width:100%; max-width:100%; padding-inline:var(--s-4);
  white-space:normal; text-align:center; line-height:1.3;
}
.includes__portrait{ width:104px; height:104px; border-radius:50%; object-fit:cover; border:2px solid var(--gold-2); box-shadow:0 8px 22px -10px rgba(0,0,0,.6); }
.includes__words{ font-family:var(--serif); font-size:1.1875rem; line-height:1.45; color:#F3EBDF; text-align:center; }

/* ============================================================
   TESTIMONIALS + FAQ
   ============================================================ */
.social{ display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); gap:clamp(2rem,4.5vw,3.5rem); align-items:start; }
.testimonials{ display:grid; grid-template-columns:1fr 1fr; gap:var(--s-4); margin-top:var(--s-6); }
.testimonial{
  background:var(--grad-card); box-shadow:var(--shadow-soft);
  border:1px solid var(--line-soft); border-radius:var(--r-md);
  padding:var(--s-6); display:flex; flex-direction:column; gap:var(--s-4); min-height:160px;
}
.testimonial__quote{ font-family:var(--serif); font-size:2rem; line-height:1; color:var(--gold-soft); }
.testimonial__body{ font-family:var(--serif); font-style:italic; font-size:1.0625rem; color:var(--muted); flex:1; }
.testimonial__meta{ font-size:.625rem; letter-spacing:.18em; text-transform:uppercase; color:var(--muted); }

/* ============================================================
   CONTACT
   ============================================================ */
.contact{ display:grid; grid-template-columns:minmax(0,1.85fr) minmax(0,1fr); gap:clamp(2rem,4.5vw,3.5rem); align-items:start; }
.contact__left{ display:grid; grid-template-columns:minmax(0,1fr); gap:var(--s-4); margin-top:var(--s-4); }
.contact__photo{ aspect-ratio:16/7; }
.contact__info{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s-4) var(--s-5); padding-top:0; }
.contact__info-block{ display:flex; gap:var(--s-3); }
.contact__info-block svg{ width:18px; height:18px; color:var(--gold); flex:none; margin-top:.2rem; }
.contact__info-block p{ font-size:.875rem; color:var(--muted); }
.contact__info-block a{ text-decoration:none; transition:color .18s ease; }
.contact__info-block a:hover{ color:var(--gold); }
.contact__info-block strong{ display:block; color:var(--ink); font-weight:500; font-size:.9375rem; margin-bottom:.2rem; }

.form-card{
  background:var(--grad-ink-rich); color:#EDE4D8; border-radius:var(--r-lg);
  padding:clamp(1.1rem,2vw,1.5rem);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 26px 62px -34px rgba(43,36,32,.6);
}
.form-card h2{ color:#fff; font-size:clamp(1.25rem,2vw,1.5rem); }
.form-card > p{ font-size:.75rem; color:#B7ABA0; margin-top:.25rem; }
.form{ margin-top:var(--s-3); display:flex; flex-direction:column; gap:.5rem; }
.field input,.field select{
  width:100%; padding:.5rem var(--s-4); font:inherit; font-size:.8125rem;
  background:rgba(255,255,255,.06); border:1px solid var(--line-dark);
  border-radius:var(--r-pill); color:#fff;
  transition:border-color .18s ease, background-color .18s ease;
}
.field input::placeholder{ color:#9C9086; }
.field select{ color:#EDE4D8; appearance:none; cursor:pointer;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239C9086' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 18px center; background-size:14px;
  padding-right:2.5rem;
}
.field select option{ background:#2B2420; color:#EDE4D8; }
.field input:focus,.field select:focus{ border-color:var(--gold-2); background:rgba(255,255,255,.09); outline:none; }
.field input:focus-visible,.field select:focus-visible{ outline:2px solid var(--gold-2); outline-offset:1px; }
.field[data-invalid="true"] input,.field[data-invalid="true"] select{ border-color:#E08B7A; }
.field__error{
  display:none; align-items:center; gap:.4rem;
  font-size:.75rem; color:#F0A898; margin-top:.4rem;
}
.field[data-invalid="true"] .field__error{ display:flex; }
.field__error svg{ width:13px; height:13px; flex:none; }

.consent{ display:flex; gap:.65rem; align-items:flex-start; margin-top:0; }
.consent input{ width:15px; height:15px; margin-top:.28rem; accent-color:var(--gold-2); flex:none; cursor:pointer; }
.consent label{ font-size:.7rem; color:#B7ABA0; line-height:1.4; cursor:pointer; }
.consent a{ color:var(--gold-2); }
.consent[data-invalid="true"] label{ color:#F0A898; }

.form__note{ font-size:.7rem; color:#9C9086; text-align:center; margin-top:0; }
.form__status{
  display:none; gap:.6rem; align-items:flex-start; margin-top:var(--s-4);
  padding:var(--s-4) var(--s-5); border-radius:var(--r-md); font-size:.8125rem; line-height:1.55;
  background:rgba(201,169,97,.14); border:1px solid rgba(201,169,97,.4); color:#F0E6D4;
}
.form__status[data-visible="true"]{ display:flex; }
.form__status svg{ width:16px; height:16px; color:var(--gold-2); flex:none; margin-top:.15rem; }

/* ============================================================
   FOOTER
   ============================================================ */
.footer{
  background:linear-gradient(180deg,#312A25 0%,#241E1A 60%,#1E1917 100%);
  color:#B7ABA0; padding-block:var(--s-5) var(--s-3);
}
.footer__top{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between;
  gap:var(--s-3) var(--s-6); padding-bottom:var(--s-4); border-bottom:1px solid var(--line-dark);
}
.footer .brand__name{ color:#fff; }
.footer .brand__mark{ width:44px; height:41px; padding:0; background:transparent; border-radius:var(--r-xs); overflow:hidden; }
.footer__links{ display:flex; flex-wrap:wrap; gap:var(--s-2) var(--s-5); align-items:center; }
.footer__links a{ font-size:.8125rem; text-decoration:none; color:#B7ABA0; transition:color .18s ease; }
.footer__links a:hover{ color:var(--gold-2); }
.footer__links span{ color:rgba(255,255,255,.18); font-size:.75rem; }
.footer__words{ font-size:.8125rem; line-height:1.6; text-align:right; color:var(--gold-2); }
.footer__bottom{ padding-top:var(--s-3); text-align:center; font-size:.75rem; color:#8A7E74; }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1080px){
  .nav,.header__tag{ display:none; }
  .burger{ display:flex; }
  .header__actions{ display:none; }
  .bea{ grid-template-columns:1fr 1fr; }
  .bea__text{ grid-column:1 / -1; }
}
@media (max-width:900px){
  :root{ --header-h:64px; }
  /* Mobilon visszaall a normal folyas: eloszor a szoveg, utana a foto */
  .hero{ overflow:visible; display:flex; flex-direction:column; }
  .hero > .container{ order:1; }
  .hero__content{ max-width:none; }
  .hero__grid{ padding-block:clamp(2rem,6vw,3rem) 0; }
  .hero__media{
    order:2; position:relative; inset:auto; align-self:flex-start;
    width:calc(100% - var(--s-6) * 2); max-width:460px;
    margin:var(--s-10) var(--s-6) clamp(3rem,7vw,4rem);
  }
  .hero__photo{ position:relative; inset:auto; aspect-ratio:4/5; border:1px solid var(--line); border-radius:var(--r-sm);
    -webkit-mask-image:none; mask-image:none; }
  .hero__disclaimer{ position:static; margin-top:var(--s-2); text-align:left; text-shadow:none; }
  .brand{ margin-left:0; }
  .brand__mark{ position:static; width:42px; height:42px; font-size:1.05rem; border-radius:var(--r-xs); }
  .pillars{ grid-template-columns:1fr 1fr; }
  .pillars li:nth-child(odd)::before{ display:none; }
  .pillars li:nth-child(n+3){ border-top:1px solid var(--line-soft); }
  .split,.solutions,.pricing,.social,.contact{ grid-template-columns:1fr; }
  .acc__body--split{ grid-template-columns:1fr; }
  .section-head__note{ text-align:left; margin-left:0; }
  .steps{ grid-template-columns:1fr 1fr; row-gap:var(--s-8); }
  .steps::before{ display:none; }
  .timeline{ grid-template-columns:1fr 1fr; row-gap:var(--s-8); }
  .timeline::before{ display:none; }
  .timeline li{ padding-top:var(--s-8); }
  .includes{ grid-template-columns:1fr; }
  .includes__aside{
    border-top:1px solid var(--line-dark);
    padding-left:0; padding-top:var(--s-6);
  }
  .includes__aside::before{ display:none; }
  .footer__words{ text-align:left; }
}
@media (max-width:640px){
  .container{ padding-inline:var(--s-5); }
  /* a datum-cimke ne toresen ketfele a cim mellett */
  .price-card__head{ flex-direction:column; align-items:flex-start; gap:var(--s-2); }
  .price-card__head span{ white-space:nowrap; }
  .brand__sub{ display:none; }
  .bea{ grid-template-columns:1fr; }
  .bea__portrait{ max-width:280px; aspect-ratio:3/4; height:auto; }
  .solutions__cards{ grid-template-columns:1fr; }
  .solutions__cards .card{ flex-direction:row; text-align:left; align-items:flex-start; gap:var(--s-4); }
  .solutions__cards .card svg{ margin-top:.2rem; }
  .solutions__cards p{ max-width:none; }
  .steps,.timeline,.testimonials,.contact__left{ grid-template-columns:1fr; }
  .compare{ gap:var(--s-3); }
  /* keskeny kijelzon ne legyen tul lapos a ket fotó */
  .compare .ph{ aspect-ratio:3/2; }
  .hero__cta .btn{ flex:1 1 100%; }
}

@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{
    animation-duration:.01ms !important; animation-iteration-count:1 !important;
    transition-duration:.01ms !important; scroll-behavior:auto !important;
  }
}

/* Reveal on scroll */
.reveal{ opacity:0; transform:translateY(14px); transition:opacity .6s ease, transform .6s ease; }
.reveal.is-in{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){ .reveal{ opacity:1; transform:none; } }

@media print{
  .header,.mobile-nav{ display:none; }
  body{ background:#fff; }
}

/* ============================================================
   TÖBBOLDALAS KIEGÉSZÍTÉSEK — ugyanazokból a tokenekből
   ============================================================ */

/* ---------- Fő navigáció + Kezelések menü ---------- */
.header__inner{ position:relative; }
.nav{ gap:var(--s-6); margin-left:var(--s-8); align-self:stretch; }
.nav__item{ display:flex; align-items:center; align-self:stretch; }
.nav a[aria-current="page"]{ color:#fff; }
.nav a[aria-current="page"]::after{ transform:scaleX(1); }
.nav__toggle{
  display:flex; align-items:center; gap:.35rem; padding:.35rem 0;
  background:none; border:0; cursor:pointer;
  font-size:.875rem; color:#DDD2C6;
}
.nav__toggle:hover,.nav__toggle:focus-visible,.nav__item[data-open="true"] .nav__toggle{ color:#fff; }
.nav__toggle.is-current{ color:#fff; }
.nav__toggle svg{ width:12px; height:12px; transition:transform .2s ease; }
.nav__item[data-open="true"] .nav__toggle svg{ transform:rotate(180deg); }

.mega{
  position:absolute; left:var(--s-6); right:var(--s-6); top:100%;
  display:none; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--s-6) var(--s-8);
  padding:var(--s-8);
  background:linear-gradient(180deg,#312E29 0%,#2B2824 100%);
  border:1px solid rgba(255,255,255,.1); border-top:0;
  border-radius:0 0 var(--r-md) var(--r-md);
  box-shadow:0 26px 50px -24px rgba(0,0,0,.55);
}
.nav__item[data-open="true"] .mega{ display:grid; }
@media (hover:hover) and (min-width:1081px){
  .nav__item:hover .mega{ display:grid; }
  .nav__item:hover .nav__toggle svg{ transform:rotate(180deg); }
}
.mega__col h2{
  font-family:var(--sans); font-size:.6875rem; font-weight:500; letter-spacing:.2em;
  text-transform:uppercase; color:var(--gold-2);
  padding-bottom:var(--s-3); margin-bottom:var(--s-2); border-bottom:1px solid rgba(255,255,255,.1);
}
.mega__col a{
  display:block; padding:.42rem 0; font-size:.875rem; line-height:1.35;
  color:#DDD2C6; text-decoration:none;
}
.mega__col a::after{ display:none; }
.mega__col a:hover,.mega__col a:focus-visible,.mega__col a[aria-current="page"]{ color:#fff; }
.mega__col a[aria-current="page"]{ box-shadow:inset 2px 0 0 var(--gold-2); padding-left:var(--s-3); }
.mega__col a.mega__all{ color:var(--gold-2); font-size:.8125rem; }

@media (max-width:1280px){
  .nav{ gap:var(--s-5); margin-left:var(--s-6); }
  .nav a,.nav__toggle{ font-size:.8125rem; }
}

/* Mobil menü: Kezelések csoport */
.mobile-nav{ max-height:calc(100vh - var(--header-h)); overflow-y:auto; }
.mnav-group > summary{
  display:flex; align-items:center; justify-content:space-between;
  padding:.85rem var(--s-6); font-size:.9375rem; color:#DDD2C6; cursor:pointer;
  list-style:none; border-bottom:1px solid rgba(255,255,255,.08);
}
.mnav-group > summary::-webkit-details-marker{ display:none; }
.mnav-group > summary svg{ width:14px; height:14px; transition:transform .2s ease; }
.mnav-group[open] > summary svg{ transform:rotate(180deg); }
.mnav-group__label{
  display:block; padding:var(--s-4) var(--s-6) var(--s-1);
  font-size:.625rem; letter-spacing:.2em; text-transform:uppercase; color:var(--gold-2);
}
.mobile-nav .mnav-group a{ padding:.6rem var(--s-6) .6rem var(--s-8); font-size:.875rem; border-bottom:0; }
.mobile-nav a[aria-current="page"]{ color:#fff; }

/* ---------- Aloldal hero ---------- */
.page-hero{
  background:
    radial-gradient(115% 95% at 6% 18%,#FEFCF8 0%,rgba(254,252,248,0) 62%),
    linear-gradient(180deg,#FBF7F0 0%,var(--cream) 100%);
  border-bottom:1px solid var(--line-soft);
}
.page-hero__grid{
  display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);
  gap:clamp(1.75rem,4vw,3.5rem); align-items:center;
  padding-block:clamp(1.9rem,4.2vw,3.1rem);
}
.page-hero__grid--solo{ grid-template-columns:minmax(0,1fr); }
.page-hero__content > * + *{ margin-top:.85rem; }
.page-hero h1{ margin-top:var(--s-3); font-size:clamp(2.2rem,5vw,3.4rem); line-height:1.05; text-wrap:balance; }
.page-hero .lede{ max-width:60ch; line-height:1.5; }
.page-hero .hero__price{ margin-top:var(--s-4); }

.crumbs{ display:flex; flex-wrap:wrap; gap:.35rem .55rem; font-size:.75rem; color:var(--muted); }
.crumbs a{ text-decoration:none; transition:color .18s ease; }
.crumbs a:hover{ color:var(--gold); }
.crumbs span[aria-hidden]{ color:var(--gold-soft); }

.facts{
  background:var(--grad-gold); border:1px solid var(--gold-soft);
  border-radius:var(--r-lg); padding:var(--s-6) var(--s-8);
}
.facts__title{
  display:flex; align-items:center; gap:.55rem;
  font-size:.6875rem; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); font-weight:500;
}
.facts__title svg{ width:16px; height:16px; }
.facts dl{ margin:var(--s-3) 0 0; }
.facts dl > div{ padding-block:var(--s-3); border-top:1px solid rgba(169,131,74,.22); }
.facts dl > div:first-child{ border-top:0; }
.facts dt{ font-size:.75rem; color:var(--muted); }
.facts dd{ margin:.1rem 0 0; font-family:var(--serif); font-size:1.25rem; line-height:1.3; color:var(--ink); }

/* ---------- Szöveges tartalom sorokban ---------- */
.prose-rows{ border-top:1px solid var(--line); }
.prose-row{
  display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);
  gap:var(--s-4) clamp(1.5rem,4vw,3.5rem);
  padding-block:clamp(1.5rem,3vw,2.25rem); border-bottom:1px solid var(--line);
}
.prose-row h2{ font-size:clamp(1.5rem,2.6vw,1.95rem); line-height:1.18; text-wrap:balance; }
.prose{ max-width:70ch; }
.prose > * + *{ margin-top:var(--s-4); }
.prose strong{ color:var(--ink); font-weight:600; }
.prose a{ color:var(--gold); }
.prose h3{ margin-top:var(--s-6); }

.checks li{ position:relative; padding-left:1.6rem; }
.checks li + li{ margin-top:.55rem; }
.checks li::before{
  content:""; position:absolute; left:0; top:.32em; width:15px; height:15px;
  background:no-repeat center/15px url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A9834A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5L20 7'/%3E%3C/svg%3E");
}

/* ---------- Mire kínál megoldást + tudnivalók ---------- */
.solve{
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);
  gap:clamp(1.75rem,4vw,3.25rem); align-items:start;
}
.solve--solo{ grid-template-columns:minmax(0,1fr); }
.solve__head > * + *{ margin-top:var(--s-4); }
.chips{ display:flex; flex-wrap:wrap; gap:var(--s-2); margin-top:var(--s-6); }
.chips li{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.5rem .95rem; border-radius:var(--r-pill);
  background:var(--surface); border:1px solid var(--line-soft);
  font-size:.875rem; color:var(--ink-2); line-height:1.35; box-shadow:var(--shadow-sm);
}
.chips svg{ width:14px; height:14px; color:var(--gold); flex:none; }
.solve .acc:first-child{ margin-top:0; }

/* ---------- Előtte / utána párok ---------- */
.gpairs{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s-6); }
.gpair{
  margin:0; background:var(--grad-card); border:1px solid var(--line-soft);
  border-radius:var(--r-md); overflow:hidden; box-shadow:var(--shadow-soft);
}
.gpair__imgs{ display:grid; grid-template-columns:1fr 1fr; gap:2px; background:#4A403A; }
.gpair__imgs div{ position:relative; }
.gpair__imgs img{ width:100%; aspect-ratio:747/464; object-fit:cover; display:block; }
.gpair__imgs span{
  position:absolute; left:0; right:0; bottom:0;
  background:rgba(74,64,58,.88); color:#F2EAE0; text-align:center;
  font-size:.625rem; letter-spacing:.2em; text-transform:uppercase; padding:.45rem;
}
.gpair figcaption{ padding:var(--s-4) var(--s-5) var(--s-5); font-size:.8125rem; line-height:1.55; color:var(--body); }
.gpair figcaption b{ display:block; color:var(--ink); font-weight:600; margin-bottom:.2rem; }
.gpair__tags{ display:flex; flex-wrap:wrap; gap:.35rem; margin-top:var(--s-3); }
.gpair__tags li{
  font-size:.625rem; letter-spacing:.14em; text-transform:uppercase; color:var(--gold);
  border:1px solid var(--gold-soft); border-radius:var(--r-pill); padding:.2rem .6rem;
}
.gpairs__more{ display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:var(--s-4); margin-top:var(--s-6); }

.filters{ display:flex; flex-wrap:wrap; gap:var(--s-2); margin-bottom:var(--s-8); }
.filter{
  padding:.55rem 1.1rem; border-radius:var(--r-pill); cursor:pointer;
  background:transparent; border:1px solid var(--line); color:var(--ink-2); font-size:.8125rem;
  transition:background-color .18s ease, border-color .18s ease;
}
.filter:hover{ border-color:var(--gold); }
.filter[aria-pressed="true"]{ background:var(--gold-2); border-color:var(--gold-2); color:var(--ink); }
.gpair[hidden]{ display:none; }

/* Az ajakfeltöltés oldalon a valódi páros */
.compare--real .ph{ aspect-ratio:747/464; }
.compare--real .ph img{ object-position:center 30%; }
.compare__cap{ grid-column:1 / -1; font-size:.8125rem; color:var(--muted); line-height:1.55; }

/* ---------- Kezelés-kártyák ---------- */
.tgroups{ display:grid; gap:clamp(2rem,4vw,2.75rem); }
.tgroup__head{
  display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between;
  gap:var(--s-2) var(--s-6); margin-bottom:var(--s-4);
}
.tgroup__head h3{ font-family:var(--serif); font-size:1.5rem; font-weight:400; }
.tgroup__head a{ font-size:.8125rem; color:var(--gold); text-decoration:none; }
.tgroup__head a:hover{ text-decoration:underline; }
/* Kártyák: egyforma szélesség, a sorok (az utolsó, nem teli sor is) középre rendezve */
.tcards{ --cols:2; --gap:var(--s-3); display:flex; flex-wrap:wrap; justify-content:center; gap:var(--gap); }
.tcards > .tcard{ flex:0 0 calc((100% - (var(--cols) - 1) * var(--gap)) / var(--cols)); max-width:calc((100% - (var(--cols) - 1) * var(--gap)) / var(--cols)); }
@media (min-width:560px){ .tcards{ --cols:3; } }
@media (min-width:800px){ .tcards{ --cols:4; } }
@media (min-width:1000px){ .tcards{ --cols:5; } }
@media (min-width:1200px){ .tcards{ --cols:6; } }
/* Minden kártya egyforma méretű: ugyanaz a képarány, a cím és a leírás helye rögzített */
.tcard{
  display:flex; flex-direction:column; gap:var(--s-1); text-decoration:none;
  padding:var(--s-4); overflow:hidden;
}
.tcard__media{
  display:block; margin:calc(var(--s-4) * -1) calc(var(--s-4) * -1) var(--s-2);
  aspect-ratio:16/11; overflow:hidden; background:var(--gold-soft);
}
.tcard__media img{ display:block; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.tcard:hover .tcard__media img{ transform:scale(1.04); }
.tcard h4{ font-family:var(--serif); font-size:1.0625rem; line-height:1.2; min-height:2.4em; }
.tcard p{
  font-size:.75rem; color:var(--muted); line-height:1.45; flex:none; height:2.9em;
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; line-clamp:2; overflow:hidden;
}
.tcard__foot{
  display:flex; align-items:center; justify-content:space-between; gap:var(--s-2);
  padding-top:var(--s-2); margin-top:auto; border-top:1px solid var(--line-soft);
  font-size:.75rem; line-height:1.3; color:var(--ink);
}
.tcard__foot svg{ flex:none; width:12px; height:12px; color:var(--gold); transition:transform .18s ease; }
.tcard:hover .tcard__foot svg{ transform:translateX(3px); }
.tcard--feature{ background:var(--grad-gold); border-color:var(--gold-soft); }

/* Csempés kategória-szűrő (a szkript építi; JS nélkül minden csoport egymás alatt látszik) */
.tgroup[hidden]{ display:none; }
.tfilter{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--s-3); margin-bottom:var(--s-6); }
.tfilter__tile{
  display:flex; align-items:center; gap:var(--s-3); padding:var(--s-3); text-align:left; cursor:pointer;
  font:inherit; color:var(--ink); border:1px solid var(--line-soft); border-radius:var(--r-md);
  background:linear-gradient(180deg,#FFFFFF 0%,#FBF6EE 100%); box-shadow:var(--shadow-soft);
  transition:border-color .2s ease, background .2s ease, transform .2s ease;
}
.tfilter__tile img{ flex:none; width:56px; height:56px; border-radius:var(--r-sm); object-fit:cover; }
.tfilter__txt{ display:flex; flex-direction:column; gap:.15rem; min-width:0; }
.tfilter__txt b{ font-family:var(--serif); font-size:1.0625rem; font-weight:400; line-height:1.2; }
.tfilter__txt small{ font-size:.75rem; color:var(--muted); }
.tfilter__tile:hover{ border-color:var(--gold-soft); transform:translateY(-1px); }
.tfilter__tile.is-active{ background:var(--grad-gold); border-color:var(--gold); }
.tgroups.is-filtered .tgroup__head{
  position:absolute; width:1px; height:1px; margin:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap;
}
@media (max-width:900px){ .tfilter{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:480px){ .tfilter{ grid-template-columns:minmax(0,1fr); } }

/* ---------- Árak ---------- */
.price-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s-6); align-items:start; }
.price-card__rows li.is-sub{
  display:block; padding-block:var(--s-4) var(--s-1); border-bottom:0;
  font-size:.6875rem; letter-spacing:.16em; text-transform:uppercase; color:var(--gold); font-weight:500;
}
.price-card__rows b{ color:var(--ink); font-weight:600; }
.price-card__rows s{ color:var(--muted); margin-right:.35rem; }

.price-card__rows li > span{ white-space:nowrap; }
.price-card__rows a{ color:inherit; text-decoration:none; border-bottom:1px solid var(--gold-soft); }
.price-card__rows a:hover{ color:var(--gold); }
.price-card__note b{ color:var(--ink); font-weight:600; }
.includes--rules ul{ columns:1; }
.includes--rules strong{ color:#fff; font-weight:500; }
.includes__lead{ font-family:var(--serif); font-size:1.5rem; color:#fff; margin-bottom:var(--s-4); }
.includes__lead span{ color:var(--gold-2); }

/* ---------- Bemutatkozás ---------- */
.about{
  display:grid; grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr);
  gap:clamp(1.75rem,4vw,3.5rem); align-items:start;
}
.about__photo{ aspect-ratio:663/1030; max-height:720px; }
.about__photo img{ object-position:center 18%; }
.about__text > * + *{ margin-top:var(--s-4); }
.about__text .quote-card{ margin-top:var(--s-6); }
.about__text .quote-card cite{ display:block; margin-top:var(--s-2); font-style:normal; font-size:.75rem; letter-spacing:.14em; text-transform:uppercase; color:var(--gold); }
.cv{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s-2) var(--s-8); }
.cv li{
  display:grid; grid-template-columns:3.4rem minmax(0,1fr); gap:var(--s-3);
  padding-block:var(--s-3); border-bottom:1px solid var(--line-soft); font-size:.875rem;
}
.cv b{
  font-family:var(--serif); font-size:1.0625rem; font-weight:500; color:var(--gold);
  font-variant-numeric:lining-nums; font-feature-settings:"lnum" 1; line-height:1.3;
}

/* ---------- Blog ---------- */
.posts{ display:grid; gap:var(--s-6); max-width:900px; }
.post{ padding:clamp(1.5rem,3vw,2.25rem); }
.post:hover{ transform:none; box-shadow:var(--shadow-soft); }
.post h2{ font-size:clamp(1.6rem,3vw,2.1rem); margin-top:var(--s-2); }
.post .prose{ margin-top:var(--s-5); }
.post h3{ font-size:1rem; margin-top:var(--s-5); }
.post h3 + ul{ margin-top:var(--s-2); }

/* ---------- Jogi szövegek ---------- */
.legal{ max-width:80ch; }
.legal h2{ font-size:clamp(1.45rem,2.6vw,1.85rem); margin-top:var(--s-10); }
.legal h3{ margin-top:var(--s-6); }
.legal > * + *{ margin-top:var(--s-4); }
.legal ol,.legal ul{ padding-left:1.25rem; }
.legal ol{ list-style:decimal; }
.legal ul{ list-style:disc; }
.legal li + li{ margin-top:.4rem; }
.legal li::marker{ color:var(--gold); }
.legal a{ color:var(--gold); word-break:break-word; }
.legal strong{ color:var(--ink); font-weight:600; }
.table-wrap{ overflow-x:auto; border:1px solid var(--line-soft); border-radius:var(--r-sm); background:var(--surface); }
.table-wrap table{ border-collapse:collapse; width:100%; min-width:560px; font-size:.8125rem; }
.table-wrap td,.table-wrap th{ padding:var(--s-3) var(--s-4); border-bottom:1px solid var(--line-soft); vertical-align:top; text-align:left; }
.table-wrap tr:first-child td{ background:var(--surface-2); color:var(--ink); font-weight:600; }
.legal-company{ margin-top:var(--s-10); }

/* ---------- Kapcsolat + bővített űrlap ---------- */
.contact{ grid-template-columns:minmax(0,1fr) minmax(0,1.35fr); }
.contact__info-block a{ overflow-wrap:anywhere; }
.contact__social{ display:flex; flex-wrap:wrap; gap:var(--s-2) var(--s-5); margin-top:var(--s-2); }
.form__grid{ display:grid; grid-template-columns:1fr 1fr; gap:var(--s-3); }



.field textarea{
  width:100%; height:3.6rem; min-height:0; resize:vertical; padding:.5rem var(--s-4);
  font:inherit; font-size:.875rem; color:#fff;
  background:rgba(255,255,255,.06); border:1px solid var(--line-dark); border-radius:var(--r-md);
  transition:border-color .18s ease, background-color .18s ease;
}
.field textarea::placeholder{ color:#9C9086; }
.field textarea:focus{ border-color:var(--gold-2); background:rgba(255,255,255,.09); outline:none; }
.field textarea:focus-visible{ outline:2px solid var(--gold-2); outline-offset:1px; }
.opts{ border:0; margin:.1rem 0 0; padding:0; min-width:0; }
.opts legend{ padding:0; margin-bottom:.3rem; font-size:.75rem; color:#EDE4D8; }
.opts legend small{ color:#9C9086; font-size:.75rem; }
.opts__list{ display:flex; flex-wrap:wrap; gap:.3rem; }
.opt{ position:relative; }
.opt input{ position:absolute; opacity:0; width:1px; height:1px; }
.opt label{
  display:inline-flex; align-items:center; gap:.4rem; cursor:pointer;
  padding:.22rem .65rem; border-radius:var(--r-pill); font-size:.75rem; line-height:1.3;
  color:#DDD2C6; border:1px solid var(--line-dark); background:rgba(255,255,255,.04);
  transition:background-color .18s ease, border-color .18s ease, color .18s ease;
}
.opt label::before{
  content:""; width:11px; height:11px; border-radius:3px; flex:none;
  border:1px solid rgba(255,255,255,.35);
}
.opt input:checked + label{ background:rgba(201,169,97,.2); border-color:var(--gold-2); color:#fff; }
.opt input:checked + label::before{
  border-color:var(--gold-2);
  background:var(--gold-2) no-repeat center/10px url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232B2420' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5L20 7'/%3E%3C/svg%3E");
}
.opt input:focus-visible + label{ outline:2px solid var(--gold-2); outline-offset:2px; }
.opt label:hover{ border-color:rgba(201,169,97,.6); }
.opts[data-invalid="true"] legend{ color:#F0A898; }
.opts[data-invalid="true"] .field__error{ display:flex; }

/* Űrlap: a beágyazott margók felülírása, nagyobb kijelzőn a két legkisebb csoport egymás mellett */
.form #f-message{ margin-top:0 !important; }
.form button[type="submit"]{ margin-top:.2rem !important; padding-block:.65rem; }
@media (min-width:901px){
  .form{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:.5rem .9rem; align-items:start; }
  .form > *{ grid-column:1 / -1; }
  .form > #f-contact{ grid-column:1; }
  .form > #f-callback{ grid-column:2; }
}

/* ---------- Reszponzív ---------- */
@media (max-width:1080px){
  .mega{ display:none !important; }
}
@media (max-width:900px){
  .page-hero__grid,.prose-row,.solve,.about,.price-grid{ grid-template-columns:1fr; }
  .gpairs{ grid-template-columns:1fr; }
  .about__photo{ max-width:340px; max-height:none; }
  .cv{ grid-template-columns:1fr; }
  .contact{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  .form__grid{ grid-template-columns:1fr; }
  .contact__left{ grid-template-columns:1fr; }
  .facts{ padding:var(--s-5) var(--s-6); }
  .price-card__rows li{ flex-wrap:wrap; }
  .price-card__rows li > span{ white-space:normal; }
}

/* Születési idő: címke a mezőn belül, hogy a rács egyenletes maradjon */
.datebox{
  display:flex; align-items:center; gap:var(--s-3); padding-inline:var(--s-4);
  background:rgba(255,255,255,.06); border:1px solid var(--line-dark); border-radius:var(--r-pill);
  transition:border-color .18s ease, background-color .18s ease;
}
.datebox label{ font-size:.8125rem; color:#9C9086; white-space:nowrap; }
.field .datebox input{
  flex:1; min-width:0; padding:.5rem 0; border:0; background:transparent; border-radius:0;
  color:#fff; color-scheme:dark; text-align:right;
}
.field .datebox input:focus{ background:transparent; outline:none; }
.datebox:focus-within{ border-color:var(--gold-2); background:rgba(255,255,255,.09); }
.field[data-invalid="true"] .datebox{ border-color:#E08B7A; }

/* ---------- Képek: mindig a teljes kép látszódjon ---------- */
/* a width/height attribútum ne írja felül a képarányt */
.gpair__imgs img{ height:auto; cursor:zoom-in; }
.compare--real img{ cursor:zoom-in; }
@media (max-width:900px){
  /* mobilon a portré a saját arányában, vágás nélkül */
  .hero__photo{ aspect-ratio:auto; }
  .hero__photo img{ height:auto; display:block; }
}
@media (max-width:560px){
  /* előtte / utána egymás alatt, teljes szélességben */
  .gpair__imgs,.compare{ grid-template-columns:1fr; }
  .gpair figcaption{ padding:var(--s-4); }
}

/* Nagyító: előtte–utána pár teljes képernyőn */
.zoom{
  width:100%; max-width:none; height:100%; max-height:none; margin:0; padding:0; border:0;
  background:rgba(24,20,18,.96); color:#fff;
}
.zoom::backdrop{ background:rgba(24,20,18,.9); }
.zoom[open]{ display:flex; flex-direction:column; }
.zoom__bar{
  display:flex; justify-content:flex-end; flex:none;
  padding:calc(env(safe-area-inset-top, 0px) + var(--s-3)) var(--s-4) var(--s-3);
}
.zoom__close{
  display:grid; place-items:center; width:44px; height:44px; border-radius:50%;
  border:1px solid rgba(255,255,255,.25); background:transparent; color:#fff; cursor:pointer;
}
.zoom__close svg{ width:20px; height:20px; }
.zoom__close:focus-visible{ outline:2px solid var(--gold-2); outline-offset:2px; }
.zoom__body{
  flex:1; overflow-y:auto; display:flex; flex-direction:column; gap:var(--s-4);
  padding:0 var(--s-4) calc(env(safe-area-inset-bottom, 0px) + var(--s-6));
}
.zoom__imgs{ display:grid; grid-template-columns:1fr; gap:var(--s-3); width:100%; max-width:1400px; margin-inline:auto; }
.zoom__imgs figure{ margin:0; position:relative; }
.zoom__imgs img{ display:block; width:100%; height:auto; border-radius:var(--r-xs); }
.zoom__imgs span{
  position:absolute; left:var(--s-3); top:var(--s-3); padding:.3rem .7rem; border-radius:var(--r-pill);
  background:rgba(24,20,18,.72); font-size:.75rem; letter-spacing:.08em; text-transform:uppercase;
}
.zoom__cap{ max-width:1400px; width:100%; margin-inline:auto; font-size:.875rem; line-height:1.6; color:rgba(255,255,255,.78); }
@media (min-width:900px) and (min-aspect-ratio:4/3){
  .zoom__imgs{ grid-template-columns:1fr 1fr; }
}

/* a galériafotók aránya képenként kicsit eltér: vágás helyett teljes kép, sötét kitöltéssel */
.gpair__imgs div{ background:#1E1A18; }
.gpair__imgs img,.compare--real .ph img{ object-fit:contain; object-position:center; }
.compare--real .ph{ background:#1E1A18; }
@media (max-width:1080px){
  /* tableten a portré a saját 3:4 arányában */
  .bea__portrait{ aspect-ratio:734/979; height:auto; }
}
@media (max-width:900px){
  /* az egyoszlopos rács se nőhessen a képernyőnél szélesebbre */
  .split,.solutions,.pricing,.social,.contact,.page-hero__grid,.prose-row,.solve,.about,.price-grid,.gpairs{ grid-template-columns:minmax(0,1fr); }
}
@media (max-width:360px){
  .container{ padding-inline:var(--s-4); }
  .datebox{ flex-wrap:wrap; row-gap:0; padding-block:.35rem; }
  .field .datebox input{ text-align:left; }
}

/* hosszú webcímek, e-mail-címek törése a jogi szövegekben */
.legal,.prose{ overflow-wrap:anywhere; }

/* ============================================================
   KEZELÉSI OLDALAK — az ajakoldal elemeinek változatai
   ============================================================ */
.solutions__cards--list{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s-3); }
.solutions__cards--list .card{ flex-direction:row; text-align:left; align-items:flex-start; gap:var(--s-3); padding:var(--s-4) var(--s-5); }
.solutions__cards--list .card svg{ width:16px; height:16px; margin-top:.2rem; flex:none; }
.solutions__cards--list p{ font-size:.875rem; color:var(--body); max-width:none; }
.solutions__lead{ max-width:68ch; }
.acc__body--prose h3{
  font-family:var(--sans); font-size:.6875rem; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase; color:var(--gold);
  padding-top:var(--s-4);
}
.acc__body--prose h3:first-child{ padding-top:0; }
/* idővonal 1–3 elemmel: a sín az első és az utolsó pont között */
.timeline--n3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.timeline--n3::before{ right:calc((100% - 2 * var(--tl-gap)) / 3 - var(--dot) / 2); }
.timeline--n2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.timeline--n2::before{ right:calc((100% - var(--tl-gap)) / 2 - var(--dot) / 2); }
.timeline--n1{ grid-template-columns:minmax(0,1fr); max-width:32rem; }
.timeline--n1::before{ display:none; }
@media (max-width:900px){
  .timeline--n3{ grid-template-columns:1fr 1fr; }
  .hero__photo--empty{ aspect-ratio:4/3; }
}
@media (max-width:640px){
  .timeline--n2,.timeline--n3{ grid-template-columns:1fr; }
  .solutions__cards--list{ grid-template-columns:1fr; gap:var(--s-2); }
  .solutions__cards--list .card{ padding:var(--s-3) var(--s-4); }
}


/* ============================================================
   Finomítások (2026-10-08): gombok, képzések, média, árlista
   ============================================================ */
/* gombok a folyó szövegben: a .prose a szabály ne írja felül a színüket */
.prose a.btn{ text-decoration:none; }
.prose a.btn--gold,.prose a.btn--ghost{ color:var(--ink); }

/* Képzések: tömör, 3 oszlopos lista */
#kepzesek{ padding-block:clamp(1.75rem,3.5vw,2.75rem); }
#kepzesek .section-head{ margin-bottom:var(--s-4); }
.cv{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 var(--s-6); }
.cv li{ grid-template-columns:2.4rem minmax(0,1fr); gap:var(--s-2); padding-block:.4rem; font-size:.8125rem; line-height:1.4; }
.cv b{ font-size:.9375rem; }
@media (max-width:1000px){ .cv{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px){ .cv{ grid-template-columns:1fr; } }

/* Média (Instagram + videó) a Bemutatkozás oldalon */
.media{ display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr); gap:var(--s-5); align-items:stretch; }
.media__ig{
  display:flex; align-items:center; gap:var(--s-5); padding:var(--s-6); border-radius:var(--r-lg);
  background:var(--grad-ink-rich); color:#EDE4D8;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 26px 62px -34px rgba(43,36,32,.6);
}
.media__avatar{ width:96px; height:96px; border-radius:50%; object-fit:cover; border:2px solid var(--gold-2); flex:none; }
.media__ig h3{ color:#fff; font-size:1.375rem; }
.media__ig p{ font-size:.875rem; color:#B7ABA0; margin:.25rem 0 var(--s-4); max-width:42ch; }
@media (max-width:760px){ .media{ grid-template-columns:1fr; } .media__ig{ flex-direction:column; text-align:center; } }

/* Szűrő: csak szöveges csempék (árlista) */
.tfilter--text{ grid-template-columns:repeat(auto-fit,minmax(136px,1fr)); }
.tfilter--text .tfilter__tile{ padding:.65rem var(--s-4); }
.tfilter--text .tfilter__txt b{ font-size:1rem; }

/* Árlista: tömör, szűrhető panelek */
.page-hero--compact .page-hero__grid{ padding-block:var(--s-5) var(--s-4); }
.page-hero--compact h1{ font-size:clamp(1.8rem,3.4vw,2.4rem); margin-top:var(--s-2); }
.page-hero--compact .eyebrow{ margin-top:var(--s-3) !important; }
.page-hero--compact .lede{ font-size:.9375rem; }
section:has(.price-grid[data-tabs]){ padding-block:var(--s-6) var(--s-8); }
.price-grid[data-tabs]{ display:block; }
.price-grid[data-tabs] > [hidden]{ display:none; }
.price-grid[data-tabs] .price-card__head{ padding:var(--s-3) var(--s-6); }
.price-grid[data-tabs] .price-card__head h3{ font-size:1.25rem; }
.price-grid[data-tabs] .price-card__head span{ display:none; }
.price-grid[data-tabs] .price-card__rows{ padding:var(--s-1) var(--s-6) var(--s-4); }
.price-grid[data-tabs] .price-card__rows li{ padding-block:.5rem; font-size:.875rem; break-inside:avoid; }
.price-grid[data-tabs] .price-card__note{ padding:0 var(--s-6) var(--s-4); }
@media (min-width:900px){
  .price-grid[data-tabs] .price-card__rows:has(> li:nth-child(9)){ columns:2; column-gap:var(--s-8); }
  .price-grid[data-tabs] .price-card__rows li.is-sub{ break-after:avoid; }
}

/* Kérdezz-felelek: tömör, összecsukható kérdések */
section:has(.faqs){ padding-block:var(--s-6) var(--s-8); }
.faqs{ display:grid; gap:var(--s-3); }
.faq{ background:var(--grad-card); border:1px solid var(--line-soft); border-radius:var(--r-md); overflow:hidden; }
.faq[open]{ border-color:var(--gold-soft); box-shadow:var(--shadow-soft); }
.faq summary{
  display:flex; align-items:baseline; gap:var(--s-4); padding:.85rem var(--s-5); cursor:pointer; list-style:none;
}
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{
  content:""; flex:none; align-self:center; width:.55rem; height:.55rem; margin-left:auto;
  border-right:1.5px solid var(--gold); border-bottom:1.5px solid var(--gold); transform:rotate(45deg); transition:transform .2s ease;
}
.faq[open] summary::after{ transform:rotate(-135deg); }
.faq__q{ font-family:var(--serif); font-size:1.25rem; line-height:1.25; color:var(--ink); }
.faq__date{ font-size:.75rem; color:var(--muted); letter-spacing:.04em; white-space:nowrap; }
.faq summary:hover .faq__q{ color:var(--gold); }
.faq .prose{ padding:0 var(--s-5) var(--s-5); font-size:.9375rem; }
.faq .prose > p{ margin-top:var(--s-2); }
.faq .prose h3{ font-size:.9375rem; margin-top:var(--s-4); break-after:avoid; }
.faq .prose ul{ break-inside:avoid; }
@media (min-width:760px){ .faq .prose{ columns:2; column-gap:var(--s-8); } .faq .prose > p:first-child{ margin-top:0; } }
@media (min-width:1100px){ .faq .prose{ columns:3; } }

/* Google-vélemények (assets/velemenyek.js tölti fel) */
.stars{
  --r:5; display:inline-block; font-size:1.0625rem; letter-spacing:.12em; line-height:1; white-space:nowrap;
  background:linear-gradient(90deg,#C9A24C calc(var(--r) / 5 * 100%),#E1D6C2 0);
  -webkit-background-clip:text; background-clip:text; color:transparent; -webkit-text-fill-color:transparent;
}
.gbadge{
  display:inline-grid; grid-template-columns:auto auto; grid-template-rows:auto auto; column-gap:var(--s-3); row-gap:.2rem; align-items:center;
  padding:.7rem var(--s-5); border-radius:var(--r-md); border:1px solid var(--line-soft); background:var(--grad-card);
  box-shadow:var(--shadow-soft); color:var(--ink); text-decoration:none; transition:border-color .2s ease, transform .2s ease;
}
.gbadge:hover{ border-color:var(--gold-soft); transform:translateY(-1px); }
.gbadge__score{ grid-row:1 / span 2; font-family:var(--serif); font-size:2.5rem; font-weight:400; line-height:1; }
.gbadge .stars{ align-self:end; }
.gbadge small{ align-self:start; font-size:.6875rem; line-height:1.35; color:var(--muted); letter-spacing:.02em; }
.greviews__head{ display:flex; align-items:flex-end; justify-content:space-between; gap:var(--s-5); flex-wrap:wrap; }
.greviews__list{ margin-top:var(--s-6); display:flex; gap:var(--s-4); overflow-x:auto; scroll-snap-type:x mandatory; padding:.25rem .25rem var(--s-4); scrollbar-width:thin; }
.greviews__list[hidden]{ display:none; }
.greviews__more{ margin-top:var(--s-5); display:flex; justify-content:center; }
.review{
  flex:0 0 min(21rem,84%); scroll-snap-align:start; display:flex; flex-direction:column; gap:var(--s-3);
  padding:var(--s-5); border-radius:var(--r-md); border:1px solid var(--line-soft); background:var(--grad-card); box-shadow:var(--shadow-soft);
}
.review__top{ display:flex; align-items:center; gap:var(--s-3); }
.review__av{
  flex:none; width:2.5rem; height:2.5rem; border-radius:50%; display:grid; place-items:center;
  background:var(--grad-gold); border:1px solid var(--gold-soft); font-family:var(--serif); font-size:1.125rem; color:var(--ink);
}
.review__name{ display:block; font-size:.9375rem; line-height:1.25; }
.review__when{ font-size:.75rem; color:var(--muted); }
.review__text{ font-size:.9375rem; line-height:1.6; color:var(--body); display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:7; overflow:hidden; }
.review.is-open .review__text{ -webkit-line-clamp:unset; display:block; }
.review__toggle{ align-self:flex-start; background:none; border:0; padding:0; font:inherit; font-size:.8125rem; color:var(--gold); cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
/* sűrített változat (kezelésoldalak, bal oszlop) */
.greviews--compact .greviews__head{ display:block; }
.greviews--compact .gbadge{ margin-top:var(--s-4); }
.greviews--compact .greviews__list{ flex-direction:column; overflow:visible; padding:0; margin-top:var(--s-4); }
.greviews--compact .review{ flex:none; padding:var(--s-4); }
.greviews--compact .greviews__more{ justify-content:flex-start; }
/* főoldal: egyetlen Instagram-sáv, később a videók rácsa */
.media--solo{ grid-template-columns:minmax(0,1fr); }
.media--solo .media__ig{ justify-content:center; padding:var(--s-5) var(--s-6); }
.reels{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--s-4); margin-top:var(--s-5); }
@media (max-width:900px){ .reels{ grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* "A kezelésről": ugyanaz a kétoszlopos elrendezés, mint az ajakfeltöltésnél (illusztráció a kártyák helyett) */
@media (min-width:901px){ .solutions--fig{ grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); } }
.solutions__fig{ margin:0; border-radius:var(--r-md); overflow:hidden; border:1px solid var(--line-soft); box-shadow:var(--shadow-soft); }
.solutions__fig img{ display:block; width:100%; height:auto; aspect-ratio:16/11; object-fit:cover; }

/* ============================================================
   Finomítások 2 (2026-10-08, este): űrlap legördülőkkel, árlista-képek, tömörebb dobozok
   ============================================================ */
/* Űrlap: a három választó legördülő menü (a jelölőnégyzetek megmaradnak, csak a panelben vannak) */
.opts--dd{ position:relative; margin:0; }
.dd{ position:relative; }
.dd > summary{
  list-style:none; display:flex; align-items:center; justify-content:space-between; gap:.5rem; cursor:pointer;
  padding:.5rem var(--s-4); border-radius:var(--r-pill); font-size:.8125rem; line-height:1.4; color:#9C9086;
  background:rgba(255,255,255,.06); border:1px solid var(--line-dark); transition:border-color .18s ease, background-color .18s ease;
}
.dd > summary::-webkit-details-marker{ display:none; }
.dd > summary:hover,.dd[open] > summary{ border-color:var(--gold-2); background:rgba(255,255,255,.09); }
.dd > summary:focus-visible{ outline:2px solid var(--gold-2); outline-offset:2px; }
.dd.has-value > summary{ color:#fff; }
.dd__label{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dd__chev{ flex:none; width:15px; height:15px; color:var(--gold-2); transition:transform .2s ease; }
.dd[open] .dd__chev{ transform:rotate(180deg); }
.dd .opts__list{
  position:absolute; z-index:30; left:0; right:0; top:calc(100% + .3rem); min-width:14rem;
  display:flex; flex-direction:column; flex-wrap:nowrap; gap:.15rem; padding:.45rem;
  background:#2B2420; border:1px solid rgba(201,169,97,.45); border-radius:var(--r-md);
  box-shadow:0 18px 40px -16px rgba(0,0,0,.65); max-height:15rem; overflow-y:auto;
}
.dd .opt label{ display:flex; width:100%; border:0; background:transparent; border-radius:var(--r-sm); padding:.38rem .55rem; font-size:.8125rem; }
.dd .opt label:hover{ background:rgba(255,255,255,.07); }
.dd .opt input:checked + label{ background:rgba(201,169,97,.18); }
.opts--dd[data-invalid="true"] .dd > summary{ border-color:#E08B7A; }
@media (min-width:901px){
  .form{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .form > #f-treatment{ grid-column:1; }
  .form > #f-contact{ grid-column:2; }
  .form > #f-callback{ grid-column:3; }
}

/* Beágyazott Instagram-profil */
.igsplit{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,34rem); gap:clamp(2rem,5vw,4rem); align-items:center; }
.igembed{ container-type:inline-size; width:100%; border-radius:var(--r-md); overflow:hidden; background:#fff; border:1px solid var(--line-soft); box-shadow:var(--shadow-soft); }
.igembed iframe{ display:block; width:100%; border:0; height:520px; height:calc(164px + 66.8cqw); }
.media .igembed{ align-self:start; }
@media (max-width:900px){ .igsplit{ grid-template-columns:minmax(0,1fr); } }

/* ---------- Átlátható árak: feleakkora magasság (főoldal és kezelésoldalak) ---------- */
#arak .price-card__head{ padding:.65rem var(--s-6); }
#arak .price-card__head h3{ font-size:1.25rem; }
#arak .price-card__rows{ padding:.1rem var(--s-6) .3rem; }
#arak .price-card__rows li{ padding-block:.3rem; font-size:.875rem; }
#arak .price-card__note{ padding:.2rem var(--s-6) .8rem; font-size:.6875rem; line-height:1.4; }
#arak .includes{ padding:var(--s-5) var(--s-6); gap:var(--s-5); }
#arak .includes h3{ font-size:1.0625rem; margin-bottom:var(--s-3); }
#arak .includes li{ font-size:.8125rem; line-height:1.4; }
#arak .includes li + li{ margin-top:.45rem; }
#arak .includes__portrait{ width:64px; height:64px; }
#arak .includes__words{ font-size:1rem; line-height:1.3; }
#arak .includes__aside{ gap:var(--s-2); }
#arak .includes__aside .btn{ padding-block:.55rem; font-size:.8125rem; }

/* ---------- Árlista: kategória-csempék képpel, tömör konzultációs panel, 3 hasábos hosszú lista ---------- */
.tfilter:not(.tfilter--text){ margin-bottom:var(--s-5); }
.tfilter:not(.tfilter--text) .tfilter__tile{ padding:.55rem var(--s-3); }
.tfilter:not(.tfilter--text) .tfilter__tile img{ width:48px; height:48px; }
.tfilter__txt b{ overflow-wrap:anywhere; }
.includes--rules{ grid-template-columns:minmax(0,1fr) 14rem; padding:var(--s-5) var(--s-6); gap:var(--s-5); }
.includes--rules .rules{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--s-5); align-items:start; }
.includes--rules h3{ font-size:.875rem; margin:0 0 var(--s-2); }
.includes--rules li{ font-size:.75rem; line-height:1.4; }
.includes--rules li + li{ margin-top:.4rem; }
.includes--rules .includes__lead{ font-size:1.125rem; margin-bottom:var(--s-2); }
.includes--rules .includes__aside{ gap:var(--s-2); }
.includes--rules .includes__words{ font-size:.9375rem; line-height:1.3; }
.includes--rules .includes__aside .btn{ padding-block:.55rem; font-size:.8125rem; }
@media (max-width:900px){
  .includes--rules{ grid-template-columns:minmax(0,1fr); }
  .includes--rules .rules{ grid-template-columns:minmax(0,1fr); gap:var(--s-4); }
}
@media (min-width:1100px){
  .price-grid[data-tabs] .price-card__rows:has(> li:nth-child(20)){ columns:3; column-gap:var(--s-6); }
  .price-grid[data-tabs] .price-card__rows:has(> li:nth-child(20)) li{ padding-block:.32rem; font-size:.8125rem; }
}

/* ---------- Kérdezz-felelek: címke | tartalom táblázatos elrendezés, egy hasáb ---------- */
.faqs{ max-width:980px; }
.faq .prose{ columns:auto !important; display:grid; grid-template-columns:minmax(9rem,13rem) minmax(0,1fr); column-gap:var(--s-6); row-gap:.1rem; align-items:start; }
.faq .prose > p{ grid-column:1 / -1; margin-top:.4rem; }
.faq .prose > h3{ grid-column:1; margin:0; padding-top:.5rem; border-top:1px solid var(--line-soft); font-size:.875rem; color:var(--ink); }
.faq .prose > ul{ grid-column:2; margin:0; padding:.35rem 0 .45rem; border-top:1px solid var(--line-soft); }
.faq .prose > ul li{ padding-block:.1rem; }
@media (max-width:700px){
  .faq .prose{ display:block; }
  .faq .prose > h3{ border-top:0; padding-top:0; margin-top:var(--s-3); }
  .faq .prose > ul{ border-top:0; padding-top:.2rem; }
}

/* ---------- Bemutatkozás: Instagram-beágyazás + videó ---------- */
.media{ grid-template-columns:minmax(0,34rem) minmax(0,19rem); justify-content:center; gap:var(--s-6); }
.media .video-card{ align-self:start; }
@media (min-width:761px){ .media .video-card{ aspect-ratio:9/16; } .media .video-card video{ object-position:50% 30%; } }
@media (max-width:760px){ .media{ grid-template-columns:minmax(0,1fr); } .media .video-card{ max-width:20rem; margin-inline:auto; } }

/* ============================================================
   Mobil finomítások (2026-10-08, este)
   ============================================================ */
@media (max-width:900px){
  /* Hero: cím, fekvő kép, alcím, majd a többi; a "Dr. Beauty • Dr. Hegedűs Beáta" felirat mobilon elmarad */
  .hero > .container,.hero__grid,.hero__content{ display:contents; }
  .hero .eyebrow{ display:none; }
  .hero__content > *{ margin-inline:var(--s-6); }
  .hero h1{ order:1; margin-top:clamp(1.5rem,5vw,2.25rem); }
  .hero__media{ order:2; width:auto; max-width:none; align-self:stretch; margin:var(--s-4) var(--s-6) 0; }
  .hero__photo{ aspect-ratio:16/10; overflow:hidden; }
  .hero__photo img{ width:100%; height:100%; object-fit:cover; display:block; }
  .hero .lede{ order:3; margin-top:var(--s-4); }
  .hero__price{ order:4; }
  .hero__cta{ order:5; }
  .hero .trust{ order:6; }
  .hero{ padding-bottom:clamp(1.5rem,5vw,2.25rem); }

  /* Pillér-sáv: a négy elem egy sorban, csak ikon és cím */
  .pillars{ grid-template-columns:repeat(4,minmax(0,1fr)); }
  .pillars li{ padding:.55rem .2rem; gap:.2rem; }
  .pillars li:nth-child(3)::before{ display:block; }
  .pillars li:nth-child(n+3){ border-top:0; }
  .pillars p{ display:none; }
  .pillars h3{ font-size:.6875rem; line-height:1.2; }
  .pillars__icon{ width:24px; height:24px; }
  .pillars__icon svg{ width:12px; height:12px; }

  /* Kategória-csempék: 2 × 2, kis kép, hogy a kártyák is látszódjanak */
  .tfilter{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; margin-bottom:var(--s-4); }
  .tfilter__tile,.tfilter:not(.tfilter--text) .tfilter__tile{ padding:.4rem .5rem; gap:.5rem; }
  .tfilter__tile img,.tfilter:not(.tfilter--text) .tfilter__tile img{ width:36px; height:36px; }
  .tfilter__txt{ gap:.05rem; }
  .tfilter__txt b{ font-size:.875rem; line-height:1.15; }
  .tfilter__txt small{ font-size:.6875rem; }
}
@media (max-width:640px){
  .hero__content > *,.hero__media{ margin-inline:var(--s-5); }
  .hero__media{ margin-bottom:0; }

  /* Ismerd meg Beát: cím, kép, szöveg, gomb, idézet, videó; a kép, az idézet és a videó egyforma széles */
  .bea{ display:flex; flex-direction:column; gap:var(--s-4); }
  .bea__text{ display:contents; }
  .bea__text > *{ margin-top:0 !important; }
  .bea__text > h2{ order:1; }
  .bea__portrait{ order:2; width:100%; max-width:none; height:auto; aspect-ratio:4/3; }
  .bea__text > p{ order:3; }
  .bea__text > .btn{ order:4; align-self:flex-start; }
  .bea__side{ order:5; }

  /* Átlátható árak: feleakkora árlista, egy képernyőre férő konzultációs doboz */
  #arak .price-card__head{ flex-direction:row; align-items:baseline; padding:.5rem var(--s-4); }
  #arak .price-card__head h3{ font-size:1.0625rem; }
  #arak .price-card__head span{ font-size:.625rem; }
  #arak .price-card__rows{ padding:0 var(--s-4) .2rem; }
  #arak .price-card__rows li{ padding-block:.25rem; font-size:.8125rem; flex-wrap:nowrap; }
  #arak .price-card__rows li > span{ white-space:nowrap; font-size:.8125rem; }
  #arak .price-card__note{ padding:.2rem var(--s-4) .6rem; font-size:.625rem; }
  #arak .includes{ padding:var(--s-4); gap:var(--s-3); }
  #arak .includes h3{ font-size:1rem; margin-bottom:var(--s-2); }
  #arak .includes li{ font-size:.75rem; line-height:1.35; gap:.5rem; }
  #arak .includes li + li{ margin-top:.3rem; }
  #arak .includes__aside{
    display:grid; grid-template-columns:44px minmax(0,1fr); gap:.4rem .75rem; align-items:center; text-align:left;
    padding-top:var(--s-3);
  }
  #arak .includes__portrait{ width:44px; height:44px; }
  #arak .includes__words{ font-size:.9375rem; text-align:left; }
  #arak .includes__aside .btn{ grid-column:1 / -1; }

  /* Időpontkérés: kis mobilon is egy képernyőn */
  .form-card{ padding:var(--s-4); }
  .form-card h2{ font-size:1.125rem; }
  .form-card > p{ font-size:.6875rem; line-height:1.35; margin-top:.15rem; }
  .form{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.4rem .5rem; align-items:start; }
  .form > *{ grid-column:1 / -1; }
  .form > #f-contact{ grid-column:1; }
  .form > #f-callback{ grid-column:2; }
  .form__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:.4rem .5rem; }
  .form__grid > #f-name,.form__grid > #f-birth{ grid-column:1 / -1; }
  .field input,.field textarea{ font-size:1rem; padding:.36rem .8rem; }
  .field .datebox input{ padding:.36rem 0; }
  .datebox{ padding-inline:.8rem; }
  .field textarea{ height:2.6rem; min-height:0; resize:none; }
  .dd > summary{ padding:.4rem .8rem; font-size:.875rem; }
  .dd .opts__list{ min-width:12rem; }
  .form > #f-callback .opts__list{ left:auto; right:0; }
  .consent label,.form .consent{ font-size:.6875rem; line-height:1.3; }
  .form button[type="submit"]{ padding-block:.5rem; }
  .form__note{ font-size:.625rem; margin-top:0; }
}

/* ---------- Mobil, 2. kör: fejléc-gomb, oldalfejléc, Bemutatkozás-fotó, árlista-csempék ---------- */
@media (max-width:1080px){
  /* az "Időpontot kérek" gomb mobilon is mindig látszik a fejlécben */
  .header__actions{ display:flex; margin-left:auto; gap:0; }
  .header__actions .btn{ padding:.45rem .95rem; font-size:.8125rem; }
  .header__actions .btn svg{ width:14px; height:14px; }
}
@media (max-width:420px){
  .header__inner{ gap:var(--s-3); }
  .header__actions .btn{ padding:.42rem .8rem; }
  .header__actions .btn svg{ display:none; }
}
@media (max-width:640px){
  /* morzsamenü + alcím + főcím + bevezető: kb. feleannyi hely, mint eddig */
  .page-hero__grid{ padding-block:.7rem .75rem; }
  .page-hero .crumbs{ font-size:.6875rem; gap:.2rem .4rem; line-height:1.2; }
  .page-hero .eyebrow{ font-size:.5625rem; letter-spacing:.14em; margin-top:.35rem !important; }
  .page-hero h1{ font-size:1.5rem; line-height:1.1; margin-top:.15rem; }
  .page-hero__content > * + *{ margin-top:.25rem; }
  .page-hero .lede{ font-size:.8125rem; line-height:1.4; margin-top:.3rem; }
  .page-hero .hero__price{ margin-top:.5rem; }

  /* Bemutatkozás: kisebb, fekvő fotó */
  .about__photo{ max-width:none; aspect-ratio:16/10; }
  .about__photo img{ object-position:center 16%; }

  /* Árlista: 8 csempe két sorban, kis kép + név, tételszám nélkül */
  .tfilter--tabs{ grid-template-columns:repeat(4,minmax(0,1fr)); gap:.3rem; margin-bottom:var(--s-3); }
  .tfilter--tabs .tfilter__tile{ flex-direction:column; align-items:center; text-align:center; padding:.35rem .15rem; gap:.2rem; }
  .tfilter--tabs .tfilter__tile img{ width:34px !important; height:34px !important; }
  .tfilter--tabs .tfilter__txt small{ display:none; }
  .tfilter--tabs .tfilter__txt b{ font-size:.625rem; line-height:1.15; overflow-wrap:anywhere; }
}
@media (max-width:640px){
  .page-hero .hero__price{ font-size:.8125rem; line-height:1.35; padding-top:.35rem; margin-top:.4rem; }
}

/* Hero-bevezető: asztali nézetben a teljes szövegoszlopot használja, a főoldalon 2 sorba fér */
@media (min-width:901px){
  .hero .lede{ max-width:none; font-size:clamp(.9375rem,1.35vw,1.0625rem); }
}

/* Kérdezz-felelek: a listák kitöltik a dobozt, hosszú listák két hasábban */
.faq .prose > ul{ max-width:none; }
.faq .prose > ul li{ break-inside:avoid; }
@media (min-width:700px){
  .faq .prose > ul:has(> li:nth-child(5)){ columns:2; column-gap:var(--s-6); }
}
.faq .prose{ max-width:none; }

/* Instagram-beágyazás tartalék: link-kártya, ha a keretet blokkolja a környezet */
.igembed.is-fallback{ background:var(--grad-ink-rich); border-color:transparent; }
.igfallback{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:var(--s-3); min-height:16rem; padding:var(--s-6); text-align:center; color:#EDE4D8; }
.igfallback b{ font-size:1.25rem; font-weight:500; color:#fff; }
.igfallback p{ font-size:.875rem; color:#B7ABA0; max-width:28ch; }

/* Árlista, konzultációs panel: a gomb szövege egy sorban */
.includes--rules .includes__aside .btn{ white-space:nowrap; padding-inline:var(--s-5); }

/* ============================================================
   Mobil, 3. kör + menü (2026-10-08, éjjel)
   ============================================================ */
/* a kezelés-kártyák balra rendezve (nem középre) */
.tcards{ justify-content:flex-start; }
/* az "Időpontot kérek" ugrás a formra, a fejléc alá */
.form-card{ scroll-margin-top:calc(var(--header-h) + .75rem); }
.nav__toggle{ text-decoration:none; }
.mobile-nav .mnav-group > a.mnav-all{ color:var(--gold-2); }

@media (max-width:900px){
  .hero .trust{ display:none; }
}
@media (max-width:640px){
  /* Hero: a cím 2 sorba fér, a konzultáció-sor 1 sor, a gombok egymás mellett */
  .hero h1{ font-size:clamp(1.5rem,7.1vw,2rem); }
  .hero__price{ font-size:.8125rem; white-space:nowrap; }
  .hero__price em{ display:none; }
  .hero__cta{ flex-wrap:wrap; gap:.5rem; }
  .hero__cta .btn{ flex:1 1 auto; padding-inline:var(--s-4); }

  /* Pillérek: a négy cím egyforma magas (két soros keret), középre igazítva */
  .pillars h3{ min-height:2.4em; display:flex; align-items:center; justify-content:center; }

  /* Kezelés-csempék: csak a név */
  .tfilter__txt small{ display:none; }

  /* "A konzultációtól a kontrollig": a négy lépés egymás mellett, kicsiben */
  #folyamat .steps{ grid-template-columns:repeat(4,minmax(0,1fr)); gap:.4rem; row-gap:0; }
  #folyamat .steps::before{ display:none; }
  #folyamat .steps li{ display:flex; flex-direction:column; align-items:center; text-align:center; }
  #folyamat .steps__node{ --node:34px; width:34px; height:34px; box-shadow:none; margin-bottom:.35rem; }
  #folyamat .steps__node svg{ width:16px; height:16px; }
  #folyamat .steps__node::after{ inset:3px; }
  #folyamat .steps__i{ font-size:.75rem; margin-bottom:.15rem; }
  #folyamat .steps h3{ font-size:.6875rem; line-height:1.2; margin-bottom:0; overflow-wrap:anywhere; }
  #folyamat .steps p{ display:none; }
  #folyamat .section-head{ margin-bottom:var(--s-4); }
  #folyamat{ padding-block:1.5rem; }

  /* "Mire számíthatsz a kezelés után": tömörebb */
  #utana{ padding-block:1.5rem; }
  #utana .section-head{ margin-bottom:var(--s-4); }
  #utana .timeline{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; row-gap:.6rem; }
  #utana .timeline--n1{ grid-template-columns:minmax(0,1fr); }
  #utana .timeline li{ padding-top:1.1rem; }
  #utana .timeline li::before{ --dot:10px; }
  #utana .timeline li::after{ height:.5rem; }
  #utana .timeline__card{ padding:.55rem .7rem .65rem; }
  #utana .timeline h3{ font-size:.5625rem; margin-bottom:.25rem; }
  #utana .timeline p{ font-size:.75rem; line-height:1.4; }
  #utana .acc > summary{ padding:.6rem var(--s-4); font-size:.875rem; }

  /* Lábléc: a hivatkozások egy sorban */
  .footer__links{ display:flex; flex-wrap:nowrap; justify-content:space-between; gap:.25rem; width:100%; font-size:.6875rem; white-space:nowrap; }
  .footer__links span{ display:none; }

  /* Űrlap: a hozzájárulás egy sor; a "Mire szeretnél jönni?" lista nem görgethető, 2 oszlopban */
  .form .consent label{ font-size:.6875rem; white-space:nowrap; }
  #f-treatment .dd .opts__list{ display:grid; grid-template-columns:1fr 1fr; gap:0 .25rem; max-height:none; overflow:visible; padding:.35rem; }
  .dd .opt label{ padding:.3rem .45rem; font-size:.75rem; }
  .dd .opts__list{ max-height:none; overflow:visible; }
}

/* Mobil menü: sűrűbb sorok, hogy a lenyitott "Kezelések" félig látszódjon görgetés nélkül */
@media (max-width:1080px){
  .mobile-nav ul{ padding:.25rem 0 var(--s-4); }
  .mobile-nav a,.mnav-group > summary{ padding:.55rem var(--s-6); font-size:.875rem; }
  .mobile-nav .mnav-group a{ padding:.28rem var(--s-6) .28rem var(--s-8); font-size:.8125rem; line-height:1.25; }
  .mnav-group__label{ padding:.55rem var(--s-6) .1rem; font-size:.5625rem; }
  .mobile-nav .btn{ margin-top:var(--s-3); padding-block:.55rem; }
}

/* ============================================================
   Finomítások 4 (2026-10-08, éjjel)
   ============================================================ */
/* gombok: azonos, egész pixeles magasság; a keretes gomb kerete látszik, így nem tűnik kisebbnek */
.btn{ line-height:1.25rem; padding:.9375rem 1.75rem; }
.btn--ghost{ border-color:#CDBB98; }

/* Asztal: az árak és a kapcsolat szekció két hasábja azonos szélességű, egymás alatt; a kapcsolat bal hasábja a form magasságáig ér */
@media (min-width:901px){
  .pricing,.contact{ grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); gap:clamp(2rem,4.5vw,3.5rem); }
  .contact{ align-items:stretch; }
  .contact > div:first-child{ display:flex; flex-direction:column; min-height:0; }
  .contact__left{ flex:1 1 auto; grid-template-rows:minmax(7rem,1fr) auto; min-height:0; margin-top:var(--s-3); gap:var(--s-3); }
  .contact__photo{ aspect-ratio:auto; min-height:0; }
  .contact__photo img{ position:absolute; inset:0; height:100%; }
  .contact__info{ gap:var(--s-3) var(--s-4); }
  .contact__info-block p{ font-size:.8125rem; line-height:1.4; }
  .contact__info-block strong{ font-size:.875rem; margin-bottom:.1rem; }
}

/* "Ismerd meg Beát": a videó négyzetes marad (Bea feje egészében látszik), az idézet kisebben alatta */
.bea .video-card{ order:1; }
.bea .quote-card{ order:2; padding:var(--s-4) var(--s-5); }
.bea .quote-card p{ font-size:1.0625rem; }
.bea .quote-card .fineprint{ font-size:.75rem; letter-spacing:.06em; }
/* Asztal: keskenyebb jobb oszlop, hogy a négyzetes videó és az idézet együtt se nyújtsa meg a sávot */
@media (min-width:1081px){
  #bea{ padding-block:clamp(1.75rem,3.5vw,2.75rem); }
  .bea{ grid-template-columns:minmax(0,1fr) minmax(0,.63fr) 16.25rem; }
  .bea__side{ justify-content:center; }
}

/* Instagram és vélemények: tömörebb */
#videok{ padding-block:clamp(1.75rem,3.5vw,2.75rem); }
.igsplit{ grid-template-columns:minmax(0,1fr) minmax(0,26rem); }
.media{ grid-template-columns:minmax(0,26rem) minmax(0,16rem); }
#velemenyek{ padding-block:clamp(1.5rem,3vw,2.25rem); }
#velemenyek .greviews__list{ margin-top:var(--s-4); }
#velemenyek .greviews__more{ margin-top:var(--s-3); }
#velemenyek .gbadge{ padding:.5rem var(--s-4); }
#velemenyek .gbadge__score{ font-size:2rem; }

@media (max-width:640px){
  /* kapcsolati blokkok: kisebb szöveg */
  .contact__info{ gap:.6rem .75rem; }
  .contact__info-block{ gap:.5rem; }
  .contact__info-block svg{ width:15px; height:15px; margin-top:.15rem; }
  .contact__info-block strong{ font-size:.8125rem; margin-bottom:0; line-height:1.25; }
  .contact__info-block p{ font-size:.75rem; line-height:1.3; }
  /* lábléc: elválasztók látszanak, minden egy sorban */
  .footer__links{ gap:.35rem; }
  .footer__links span{ display:inline; opacity:.45; }
}
@media (max-width:640px){
  .contact__info-block a[href^="mailto"]{ font-size:.6875rem; letter-spacing:-.01em; overflow-wrap:normal; }
}

/* Mobil menü: a lenyitott Kezelések még sűrűbb, hogy minél több elférjen egy képernyőn */
@media (max-width:1080px){
  .mobile-nav .mnav-group a{ padding:.17rem var(--s-6) .17rem var(--s-8); font-size:.8125rem; line-height:1.2; }
  .mnav-group__label{ padding:.4rem var(--s-6) 0; font-size:.5625rem; line-height:1.2; }
  .mnav-group[open] > summary{ border-bottom:0; }
  .mobile-nav ul{ padding:.1rem 0 var(--s-3); }
  .mobile-nav a,.mnav-group > summary{ padding:.45rem var(--s-6); }
}

/* Asztal: a szekciók közötti hely egy picivel kisebb; a "Páciensek tapasztalatai" cím ugyanakkora, mint a többi */
@media (min-width:901px){
  .section{ padding-block:clamp(2.75rem,5.8vw,4.5rem); }
  #bea,#videok{ padding-block:clamp(1.5rem,3vw,2.5rem); }
  #velemenyek{ padding-block:clamp(1.5rem,3vw,2.25rem); }
  .section-head{ margin-bottom:var(--s-8); }
}

/* Kezelésoldalak: a "A kezelésről" leírás két bekezdése, a javallat-kártyák felirata */
.solutions .split__text p + p{ margin-top:var(--s-3); }
.solutions .split__text p{ font-size:.9375rem; line-height:1.65; }
.solutions__right{ min-width:0; }
.solutions__cap{ font-size:.6875rem; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); margin-bottom:var(--s-3); }


/* --- Instagram-feed (Trustindex-formátum, statikus hasonmás) --- */
.tif{ background:#fff; border:1px solid #e6e6e6; border-radius:12px; padding:18px; font-family:var(--sans); }
.tif__head{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:16px; }
.tif__avatar{ width:56px; height:56px; border-radius:50%; object-fit:cover; background:#2b2420; padding:6px; border:2px solid #fff; box-shadow:0 0 0 2px #d62976; }
.tif__who{ display:flex; flex-direction:column; line-height:1.3; }
.tif__who b{ color:#262626; font-weight:600; }
.tif__who span{ color:#8e8e8e; font-size:.9rem; }
.tif__stats{ display:flex; gap:18px; margin-left:auto; color:#262626; font-size:.9rem; }
.tif__stats b{ display:block; font-size:1.05rem; }
.tif__follow{ display:inline-flex; align-items:center; gap:6px; background:#0095f6; color:#fff; border-radius:8px; padding:8px 16px; font-weight:600; font-size:.9rem; text-decoration:none; }
.tif__follow svg{ width:16px; height:16px; }
.tif__grid{ display:grid; grid-template-columns:repeat(6,1fr); gap:6px; }
.tif__grid a{ position:relative; display:block; aspect-ratio:1; overflow:hidden; border-radius:6px; }
.tif__grid img{ width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.tif__grid a:hover img{ transform:scale(1.04); }
.tif__grid i{ position:absolute; top:8px; right:8px; width:20px; height:20px; background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3C/svg%3E"); filter:drop-shadow(0 1px 2px rgba(0,0,0,.5)); }
.tif__grid i.is-reel{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E"); }
@media (max-width:1000px){ .tif__grid{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:640px){ .tif__grid{ grid-template-columns:repeat(2,1fr); } .tif__stats{ margin-left:0; width:100%; } }

/* --- Google-vélemények (Trustindex Slider-formátum, statikus hasonmás) --- */
.tir{ font-family:var(--sans); }
.tir__head{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; background:#fff; border:1px solid #e6e6e6; border-radius:12px; padding:14px 18px; margin-bottom:16px; }
.tir__g{ width:26px; height:26px; }
.tir__word{ font-weight:700; color:#000; font-size:1.05rem; }
.tir__stars{ color:#f6bb06; letter-spacing:1px; font-size:1.05rem; }
.tir__score{ color:#555; }
.tir__score b{ color:#000; }
.tir__write{ margin-left:auto; border:1px solid #ccc; border-radius:6px; padding:7px 14px; color:#222; font-weight:600; font-size:.9rem; text-decoration:none; background:#fff; }
.tir__wrap{ position:relative; }
.tir__track{ display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 32px)/3); gap:16px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; padding:2px; }
.tir__track::-webkit-scrollbar{ display:none; }
.tir__card{ scroll-snap-align:start; background:#fff; border:1px solid #e6e6e6; border-radius:12px; padding:16px 18px; display:flex; flex-direction:column; gap:8px; min-height:210px; }
.tir__top{ display:flex; align-items:center; gap:10px; }
.tir__av{ width:40px; height:40px; border-radius:50%; display:grid; place-items:center; color:#fff; font-weight:600; flex:none; }
.tir__name{ font-weight:600; color:#000; font-size:.95rem; line-height:1.2; }
.tir__date{ color:#888; font-size:.8rem; }
.tir__top .tir__g{ width:18px; height:18px; margin-left:auto; flex:none; }
.tir__rate{ display:flex; align-items:center; gap:6px; }
.tir__rate .tir__stars{ font-size:1rem; }
.tir__ok{ width:14px; height:14px; flex:none; }
.tir__text{ color:#222; font-size:.92rem; line-height:1.5; margin:0; display:-webkit-box; -webkit-line-clamp:5; -webkit-box-orient:vertical; overflow:hidden; }
.tir__card.is-open .tir__text{ -webkit-line-clamp:unset; display:block; }
.tir__more{ align-self:flex-start; background:none; border:0; padding:0; color:#888; font-size:.85rem; cursor:pointer; }
.tir__nav{ position:absolute; top:50%; transform:translateY(-50%); z-index:2; width:34px; height:34px; border-radius:50%; border:1px solid #ddd; background:#fff; box-shadow:0 2px 6px rgba(0,0,0,.1); font-size:22px; line-height:1; cursor:pointer; color:#333; }
.tir__nav--prev{ left:-14px; }
.tir__nav--next{ right:-14px; }
.tir__foot{ margin-top:12px; text-align:right; font-size:.9rem; }
.tir__foot a{ color:var(--gold); }
@media (max-width:900px){ .tir__track{ grid-auto-columns:calc((100% - 16px)/2); } }
@media (max-width:600px){ .tir__track{ grid-auto-columns:88%; } .tir__nav{ display:none; } }
.ti-live:empty{ display:none; }

/* --- Rendelők: lapozható galéria (főkép + előnézetek) --- */
.rgal{ display:grid; gap:.75rem; min-width:0; }
.rgal__stage{ position:relative; overflow:hidden; border-radius:var(--r-md); background:var(--gold-wash); border:1px solid var(--line); }
.rgal__track{ display:flex; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; aspect-ratio:4/3; overscroll-behavior-x:contain; }
.rgal__track::-webkit-scrollbar{ display:none; }
.rgal__track:focus-visible{ outline:2px solid var(--gold); outline-offset:-2px; }
.rgal__slide{ flex:0 0 100%; margin:0; scroll-snap-align:center; scroll-snap-stop:always; }
.rgal__slide img{ display:block; width:100%; height:100%; object-fit:cover; }
.rgal__badge{ position:absolute; left:.75rem; bottom:.75rem; max-width:calc(100% - 1.5rem); padding:.35rem .8rem; border-radius:999px; background:rgba(31,26,22,.74); color:#fff; font-size:.8rem; line-height:1.3; backdrop-filter:blur(4px); pointer-events:none; }
.rgal__nav{ position:absolute; top:50%; transform:translateY(-50%); width:38px; height:38px; border-radius:50%; border:0; background:rgba(255,255,255,.92); color:var(--ink); font-size:24px; line-height:1; cursor:pointer; box-shadow:0 2px 8px rgba(0,0,0,.18); }
.rgal__nav--prev{ left:.6rem; }
.rgal__nav--next{ right:.6rem; }
.rgal__nav:hover{ background:#fff; }
@media (max-width:640px){ .rgal__nav{ width:34px; height:34px; } .rgal__badge{ font-size:.74rem; } }

/* "Ismerd meg Beát": a lejátszó gomb az arc alatt van, nem takarja Bea arcát */
.bea .video-card__play{ top:72%; }

/* Asztal: a két hasáb egyforma magas (a galéria alatt nincs miniatűr-sor); az űrlap kitölti a kártyát, a többletet az üzenet doboz kapja */
@media (min-width:901px){
  .contact{ align-items:stretch; }
  .form-card{ display:flex; flex-direction:column; }
  .form-card .form{ flex:1 1 auto; grid-template-rows:auto auto auto minmax(3.6rem,1fr) auto auto auto; }
  .form-card #f-message{ display:flex; align-self:stretch; }
  .form-card #f-message textarea{ flex:1; height:auto; min-height:0; resize:none; }
}

/* Helyszínválasztó (kötelező): két kártya, a kiválasztott aranyszínű */
.loc__list{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; }
.loc__opt{ position:relative; display:block; cursor:pointer; }
.loc__opt input{ position:absolute; opacity:0; width:1px; height:1px; }
.loc__box{
  display:flex; flex-direction:column; gap:.15rem; height:100%; padding:.6rem .85rem;
  border:1px solid var(--line-dark); border-radius:var(--r-md); background:rgba(255,255,255,.06);
  transition:border-color .18s ease, background-color .18s ease;
}
.loc__box b{ font-weight:500; font-size:.875rem; line-height:1.25; color:#fff; }
.loc__box small{ font-size:.75rem; line-height:1.3; color:#B7ABA0; }
.loc__opt:hover .loc__box{ border-color:rgba(201,169,97,.6); }
.loc__opt input:checked + .loc__box{ background:rgba(201,169,97,.2); border-color:var(--gold-2); }
.loc__opt input:focus-visible + .loc__box{ outline:2px solid var(--gold-2); outline-offset:2px; }
/* Méhecske-csapda (spam ellen): képernyőn kívül, csak robotok töltik ki */
.hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }

/* Főoldali főkép: a portré nagyobb részét mutatja (haj, váll, mellény), nem csak az arcot: magasabb hero, keskenyebb képoszlop */
@media (min-width:901px){
  .hero--home{ min-height:clamp(520px,44vw,760px); display:flex; align-items:center; }
  .hero--home > .container{ width:100%; }
  .hero--home .hero__media{ width:44%; }
}
@media (max-width:560px){
  .hero--home .hero__photo{ aspect-ratio:1/1; }
}

/* Új oldalak (Kozmetika, Wellarise intimfotel) és az "Újdonság" jelzés a menüben és a kártyán */
.mega__new,.tcard__new{
  display:inline-block; margin-left:.4rem; padding:.05rem .5rem; border-radius:999px; vertical-align:middle;
  background:var(--gold-wash); color:var(--gold); font-style:normal; font-size:.625rem; letter-spacing:.06em; text-transform:uppercase; line-height:1.5;
}
.about__role{ font-size:.9375rem; line-height:1.5; color:var(--gold); letter-spacing:.01em; }
.wl-who{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s-5); }
.wl-who > div,.wl-nogo{ background:#fff; border:1px solid var(--line); border-radius:var(--r-md); padding:var(--s-6); }
.wl-who h3,.wl-nogo h3{ margin-bottom:var(--s-3); }
.wl-process{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(2rem,4.5vw,3.5rem); align-items:start; }
.wl-facts{ display:flex; flex-wrap:wrap; gap:var(--s-3); margin-top:var(--s-5); padding:0; list-style:none; }
.wl-facts li{ padding:.55rem 1rem; border:1px solid var(--gold-soft); border-radius:999px; background:var(--cream); font-size:.9375rem; }
.wl-facts b{ font-weight:600; color:var(--gold); }
.wl-nogo ul{ margin:var(--s-3) 0 0; padding-left:1.1rem; list-style:disc; }
.wl-nogo li{ margin-top:.35rem; }
.wl-cta{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:var(--s-4); text-align:center; padding:var(--s-8) var(--s-6); border-radius:var(--r-lg); background:var(--grad-ink-rich); color:#EDE4D8; box-shadow:0 26px 62px -34px rgba(43,36,32,.6); }
.wl-cta .includes__words{ margin:0; }
@media (max-width:760px){
  .wl-who,.wl-process{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  #emese .about__photo{ aspect-ratio:4/5; max-width:340px; }
  #emese .about__photo img{ object-position:center 12%; }
  .hero--wl .hero__photo{ aspect-ratio:4/5; }
}
/* "Újdonság" jelzés a kezelés-kártyán: a kép sarkában, nem a cím mellett */
.tcard{ position:relative; }
.tcard h4 .tcard__new{ position:absolute; top:.6rem; right:.6rem; margin:0; background:#fff; box-shadow:0 2px 8px rgba(43,36,32,.18); }

/* Bea a médiában: statikus Instagram-előnézet (mobilon is megjelenik) + videó; a lejátszó gomb nem takarja az arcot */
.media{ align-items:center; }
.media .tif{ align-self:center; }
.media .tif__grid{ grid-template-columns:repeat(3,1fr); }
.media .tif__stats{ margin-left:0; width:100%; }
.media .video-card__play{ top:72%; }
@media (min-width:761px){ .media .video-card{ aspect-ratio:9/16; } }
@media (max-width:760px){
  .media{ grid-template-columns:minmax(0,1fr); gap:var(--s-5); }
  .media .video-card{ order:-1; aspect-ratio:9/16; width:100%; max-width:17rem; margin-inline:auto; }
  .media .video-card video{ object-position:50% 30%; }
}

/* ---------- Űrlap: egységes mezőszínek, kitöltés-szín, jelölőnégyzet, mobil magasság ---------- */
/* a gombok színe mindenhol azonos: az érintőképernyőn nem ragad rá a :hover (a fejléc-gomb ettől lett világosabb) */
.btn--gold:hover{ background:var(--gold-2); }
.btn--dark:hover{ background:var(--ink); }
@media (hover:hover) and (pointer:fine){
  .btn--gold:hover{ background:#D8BA79; }
  .btn--dark:hover{ background:#191310; }
}
.btn:focus:not(:focus-visible){ outline:none; }
@media (hover:none){ .btn:hover{ transform:none; } .btn:hover svg{ transform:none; } }

/* a születési idő üres állapota (éééé. hh. nn.) ugyanolyan halvány, mint a többi mező helykitöltője */
.field .datebox input:invalid{ color:#9C9086; }
.field .datebox input::-webkit-calendar-picker-indicator{ opacity:.55; cursor:pointer; }

/* böngésző-kitöltés (autofill): ne legyen világoskék, a mező marad sötét, a szöveg fehér */
.field input:-webkit-autofill,
.field input:-webkit-autofill:hover,
.field input:-webkit-autofill:focus,
.field textarea:-webkit-autofill,
.field select:-webkit-autofill{
  -webkit-text-fill-color:#fff; caret-color:#fff;
  transition:background-color 600000s 0s, color 600000s 0s;
}
.field input:autofill{ background-color:rgba(255,255,255,.06); color:#fff; }

/* jelölőnégyzet és felirata egy vonalban, középen */
.consent{ align-items:center; }
.consent input{ margin-top:0; }

/* az "Időpontot kérek" ugrás után a teljes űrlap férjen egy képernyőre (a fejléc alatt, felesleges plusz hézag nélkül) */
.form-card{ scroll-margin-top:.5rem; }
@media (max-width:640px){
  .form-card{ padding:.75rem .9rem; }
  .form-card h2{ font-size:1.0625rem; }
  .form-card > p{ margin-top:.1rem; }
  .form{ margin-top:.5rem; gap:.35rem .5rem; }
  .loc legend,.form .opts legend{ margin-bottom:.2rem; font-size:.75rem; }
  .loc__list{ gap:.35rem; }
  .loc__box{ padding:.4rem .6rem; gap:.05rem; }
  .loc__box b{ font-size:.8125rem; line-height:1.2; }
  .loc__box small{ font-size:.6875rem; line-height:1.25; }
  .field input,.field textarea{ padding-block:.3rem; }
  .field .datebox input{ padding-block:.3rem; }
  .datebox label{ font-size:1rem; }
  .dd > summary{ padding-block:.32rem; }
  .field textarea{ height:2.3rem; }
  .form button[type="submit"]{ margin-top:.25rem !important; padding-block:.45rem; }
}

/* Páciensek tapasztalatai (kezelés-oldalak): mobilon az értékelés-kártya olyan széles, mint a vélemény-kártyák */
@media (max-width:640px){
  .greviews .gbadge{ display:grid; width:100%; justify-content:center; }
}

/* Táboraink és Blog (a régi oldalról átvéve): bannerkép, képrács, lábléc hat hivatkozással */
.post__banner{ margin:0 0 var(--s-6); max-width:70ch; }
.post__banner img{ display:block; width:100%; height:auto; border-radius:var(--r-md); }
.post__banner--group{ max-width:none; }
.post__banner--group img{ aspect-ratio:21/9; object-fit:cover; object-position:50% 30%; }
@media (max-width:640px){ .post__banner--group img{ aspect-ratio:3/2; } }
.taborgal{ display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr)); gap:var(--s-4); }
.taborgal figure{ margin:0; border-radius:var(--r-md); overflow:hidden; box-shadow:var(--shadow-soft); background:var(--gold-soft); }
.taborgal img{ display:block; width:100%; height:100%; aspect-ratio:3/2; object-fit:cover; transition:transform .35s ease; }
@media (hover:hover){ .taborgal figure:hover img{ transform:scale(1.03); } }
@media (max-width:420px){
  .footer__links{ flex-wrap:wrap; justify-content:flex-start; gap:.3rem 1rem; white-space:normal; }
}

/* Blog: a kártyák három hasábban, szélesen */
.tcards--blog{ display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr)); gap:var(--s-5); }
.tcards--blog .tcard{ width:auto; max-width:none; }
.tcards--blog .tcard h4{ font-size:1.25rem; }
@media (max-width:420px){ .footer__links span{ display:none; } }
