/*
Theme Name: Vista v5
Theme URI: https://vistaappstore.hu
Author: Vista Appstore — Coach Eszköz Fejlesztés és Coaching Kft.
Author URI: https://vistaappstore.hu
Template: hello-elementor
Description: Diagnosztika D v2 (LOCKED 2026-06-11) — B2B lab-report design, Comfortaa+Mulish, navy ink + vistaverde zöld háttér-ritmus. CHILD theme a hello-elementor parent-en.
Version: 6.0.1
License: GNU General Public License v2 or later
Text Domain: vista-v5
Tags: editorial, custom-colors, custom-menu, featured-images, threaded-comments, translation-ready, woocommerce
*/

/* ═════════════════════════════════════════════════════════════
   1. DESIGN TOKENS
   ═════════════════════════════════════════════════════════════ */
:root{
  /* D v2 design-target (LOCKED 2026-06-11) — Diagnosztika + Comfortaa + vistaverde zöld */
  --ink:#0A2540;
  --cream:#F7F9FB;
  --sage-50:#EAF1EC;
  --sage-100:#DDE9E4;
  --sage-200:#E3E9F0;
  --forest-600:#156B5C;
  --forest-700:#10343B;
  --mint-300:#8DE7C5;
  --mint-400:#62D8B0;
  --clay-500:#4BAC9B;
  --clay-600:#156B5C;
  --sand-100:#EDF8F6;
  --sand-200:#DDF0EA;
  --charcoal-400:#5B6B82;
  --charcoal-300:#7E8CA0;
  --line:rgba(10,37,64,.10);
  --line-strong:rgba(10,37,64,.22);
  --display:'Comfortaa',ui-sans-serif,system-ui,sans-serif;
  --body:'Mulish',ui-sans-serif,system-ui,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,monospace;
  --max:1280px;
  --r:12px;
  --r-lg:18px;
  --shadow-1:0 6px 24px rgba(10,37,64,.06);
  --shadow-h:0 14px 36px rgba(10,37,64,.10);
  --grad-hero:radial-gradient(60vw 50vw at 12% 5%, rgba(42,119,112,.55), transparent 60%),radial-gradient(50vw 45vw at 90% 22%, rgba(75,172,155,.28), transparent 55%),linear-gradient(180deg,#0a2226 0%,#10343B 100%);
  --grad-band:radial-gradient(55vw 55vw at 95% 90%, rgba(20,53,39,.55), transparent 60%),linear-gradient(165deg,#156B5C 0%,#10343B 100%);
  --grad-cta:linear-gradient(135deg,#143527 0%,#1F4D3A 100%);
}

/* ═════════════════════════════════════════════════════════════
   2. RESET / BASE
   ═════════════════════════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--body);
  font-size:17.5px;
  line-height:1.7;
  color:var(--ink);
  background:var(--cream);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--forest-600);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:text-decoration-thickness .15s}
a:hover{text-decoration-thickness:2px}
h1,h2,h3,h4,h5,h6{font-family:var(--display);font-weight:400;letter-spacing:-.01em;line-height:1.1;margin:0}
.container{max-width:var(--max);margin:0 auto;padding:0 24px}

.h-display{font-family:var(--display);font-weight:300;font-size:clamp(2.4rem,6vw,4.6rem);line-height:1.06;letter-spacing:-.02em}
.h-display em{font-style:italic;color:var(--forest-600);font-weight:300}
.h-section{font-family:var(--display);font-weight:400;font-size:clamp(1.8rem,3.5vw,2.6rem);line-height:1.1;letter-spacing:-.015em}
.eyebrow{font-family:var(--body);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--forest-600);font-weight:600}
.lead{font-size:1.13rem;color:var(--charcoal-400);max-width:54ch}
.section-label{display:flex;align-items:center;gap:14px;margin-bottom:18px;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--forest-600);font-weight:600}
.section-label::before{content:"";width:32px;height:1px;background:var(--forest-600)}

/* ═════════════════════════════════════════════════════════════
   3. HEADER
   ═════════════════════════════════════════════════════════════ */
.site-header,
.site-header.dynamic-header,
.site-header:not(.dynamic-header){
  position:sticky;top:0;z-index:50;
  background:rgba(250,246,238,.92) !important;
  backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid var(--line-strong);
  box-shadow:0 1px 0 rgba(14,24,18,.04), 0 6px 18px -14px rgba(14,24,18,.18);
  max-width:100% !important;width:100% !important;margin:0 !important;
}
.site-header__row{
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 40px;
  max-width:100% !important;margin:0 auto;gap:32px;width:100%;
}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.brand__logo{height:42px!important;width:42px!important;max-height:42px!important;max-width:42px!important;border-radius:50%;display:block;flex:0 0 auto;object-fit:contain}
.brand__mark{
  width:36px;height:36px;border-radius:50%;
  background:radial-gradient(circle at 30% 30%,var(--mint-400),var(--forest-600));
  position:relative;
}
.brand__mark::after{content:"";position:absolute;inset:8px;border:1.5px solid var(--cream);border-radius:50%;border-right-color:transparent;transform:rotate(15deg)}
.brand__name{font-family:var(--display);font-weight:500;font-size:1.18rem;letter-spacing:-.01em}
.brand__name em{font-style:italic;color:var(--forest-600);font-weight:400}
.nav{display:flex;gap:28px;font-size:.96rem;list-style:none;margin:0;padding:0}
.nav a{text-decoration:none;color:var(--ink);position:relative;padding:6px 0}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1.5px;background:var(--forest-600);transition:right .25s ease}
.nav a:hover::after,.nav .current-menu-item > a::after{right:0}
.nav .menu-item-has-children > a::before{content:"";display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid currentColor;margin-right:8px;transform:translateY(-2px);opacity:.5}
.utils{display:flex;gap:6px;align-items:center}
.icon-btn{
  width:42px;height:42px;border-radius:50%;border:1px solid var(--line);
  background:transparent;cursor:pointer;display:grid;place-items:center;
  color:var(--ink);transition:.2s;position:relative;text-decoration:none;
}
.icon-btn:hover{background:var(--sage-50);border-color:var(--sage-200)}
.icon-btn svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.6;fill:none}
.cart-badge{position:absolute;top:-2px;right:-2px;background:var(--forest-600);color:var(--cream);font-size:.68rem;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-weight:600}
.menu-toggle{display:none}

/* intermediate header — tighter spacing on narrow desktop / laptop */
@media (max-width:1100px) and (min-width:981px){
  .site-header__row{gap:20px;padding:16px 20px}
  .nav{gap:18px}
  .nav a{font-size:.9rem}
  .brand__name{font-size:1.05rem}
}

/* mobile header (hamburger from 980 px down) */
@media (max-width:980px){
  .site-header__row{padding:14px 20px}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;background:var(--cream);padding:24px;border-bottom:1px solid var(--line-strong);box-shadow:var(--shadow-1);gap:14px}
  .nav.is-open{display:flex}
  .menu-toggle{display:grid}
  .brand__name{font-size:1.05rem}
}

/* ═════════════════════════════════════════════════════════════
   4. BUTTONS
   ═════════════════════════════════════════════════════════════ */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:14px 26px;border-radius:var(--r);
  font-family:var(--body);font-size:.96rem;font-weight:500;
  text-decoration:none;cursor:pointer;transition:.2s;
  border:1px solid transparent;line-height:1;
}
a.btn,button.btn,.btn{font-family:var(--body) !important;text-decoration:none !important}
a.btn--primary,button.btn--primary,.btn--primary{background:var(--forest-600) !important;color:var(--cream) !important;border-color:var(--forest-600) !important}
a.btn--primary:hover,button.btn--primary:hover,.btn--primary:hover{background:var(--forest-700) !important;color:var(--cream) !important;transform:translateY(-1px)}
a.btn--ghost,button.btn--ghost,.btn--ghost{background:transparent !important;color:var(--ink) !important;border-color:var(--ink) !important}
a.btn--ghost:hover,button.btn--ghost:hover,.btn--ghost:hover{background:var(--ink) !important;color:var(--cream) !important}
a.btn--clay,button.btn--clay,.btn--clay{background:#4BAC9B !important;color:var(--cream) !important;border-color:#4BAC9B !important}
a.btn--clay:hover,button.btn--clay:hover,.btn--clay:hover{background:#156B5C !important;color:var(--cream) !important}
.btn .arr{transition:transform .2s;display:inline-block}
.btn:hover .arr{transform:translateX(4px)}

/* ═════════════════════════════════════════════════════════════
   5. HERO
   ═════════════════════════════════════════════════════════════ */
.hero{padding:104px 0 88px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.hero::before{
  content:"";position:absolute;right:-10%;top:-15%;width:55%;aspect-ratio:1;
  background:radial-gradient(circle,var(--sage-100),transparent 65%);
  z-index:0;pointer-events:none;
}
.hero__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:72px;align-items:center;position:relative;z-index:1}
@media (max-width:920px){.hero__grid{grid-template-columns:1fr;gap:48px}}
.hero__lead .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.hero__lead .eyebrow::before{content:"";width:24px;height:1px;background:var(--forest-600)}
.hero h1{margin-top:6px}
.hero__sub{margin:28px 0 44px;font-size:1.18rem;color:var(--charcoal-400);max-width:46ch}
.cta-row{display:flex;gap:18px;flex-wrap:wrap}

.hero__panel{
  display:grid;grid-template-columns:1fr 1fr;gap:18px;
  background:var(--cream);
  border:1px solid var(--line);border-radius:var(--r-lg);
  padding:22px;box-shadow:var(--shadow-1);
}
.hero__tile{
  background:var(--sage-50);border-radius:10px;padding:24px;
  border:1px solid var(--sage-200);
  display:flex;flex-direction:column;gap:10px;
  transition:.2s;cursor:pointer;text-decoration:none;
}
.hero__tile:hover{transform:translateY(-3px);border-color:var(--forest-600)}
.hero__tile.dark,.hero__tile.dark *{color:var(--cream) !important}
.hero__tile.dark{background:var(--forest-600);border-color:var(--forest-600)}
.hero__tile.mint,.hero__tile.mint *{color:var(--ink) !important}
.hero__tile.mint{background:var(--mint-400);border-color:var(--mint-400)}
.hero__tile h4{font-family:var(--display);font-size:1.3rem;font-weight:400;line-height:1.2}
.hero__tile p{font-size:.94rem;margin:0;opacity:.88;line-height:1.45}
.hero__tile small{font-size:.77rem;letter-spacing:.14em;text-transform:uppercase;opacity:.72;font-weight:600}

/* trust strip */
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:80px;border-top:1px solid var(--line);padding-top:24px}
@media (max-width:680px){.trust{grid-template-columns:repeat(2,1fr);gap:24px}}
.trust__item{padding:0 24px;border-right:1px solid var(--line)}
.trust__item:last-child{border-right:none}
.trust__num{font-family:var(--display);font-size:2.2rem;font-weight:300;color:var(--ink);line-height:1}
.trust__num em{color:var(--forest-600);font-style:italic;font-weight:400}
.trust__lab{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--charcoal-400);margin-top:8px}

/* ═════════════════════════════════════════════════════════════
   6. VALUE 3-COL
   ═════════════════════════════════════════════════════════════ */
.value{padding:112px 0;background:var(--cream)}
.value__head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:60px;flex-wrap:wrap}
.value__head h2{max-width:18ch}
.value__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
@media (max-width:880px){.value__cols{grid-template-columns:1fr;gap:28px}}
.val-card{padding:34px 60px 34px 34px;background:var(--sage-50);border:1px solid var(--sage-200);border-radius:var(--r-lg);position:relative;transition:.25s}
.val-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-1)}
.val-card .num{position:absolute;top:22px;right:22px;font-family:var(--display);font-style:italic;color:var(--forest-600);font-size:1.15rem;font-weight:400;opacity:.7;letter-spacing:.04em}
.val-card h3{font-size:1.35rem;margin:0 0 12px;line-height:1.2}
.val-card p{margin:0 0 20px;color:var(--charcoal-400);font-size:.96rem}
.val-card a{font-weight:500}

/* ═════════════════════════════════════════════════════════════
   7. PRODUCTS
   ═════════════════════════════════════════════════════════════ */
.products{padding:112px 0;background:var(--sand-100)}
.woocommerce-page.archive .page-wrap,
body.woocommerce-shop .page-wrap{background:var(--sand-100)}
.product-card{background:var(--cream)}
.products__head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:60px;flex-wrap:wrap;gap:24px}
.products__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
@media (max-width:1080px){.products__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.products__grid{grid-template-columns:1fr}}
.product-card{
  background:var(--cream);border:1px solid var(--line);border-radius:var(--r-lg);
  overflow:hidden;display:flex;flex-direction:column;transition:.25s;text-decoration:none;color:var(--ink);
}
.product-card:hover{transform:translateY(-4px);border-color:var(--forest-600);box-shadow:var(--shadow-1);text-decoration:none}
/* FIXED-height image container — text rows align across all cards */
.product-card{background:var(--cream) !important}
.product-card__img{
  height:240px !important;
  min-height:240px;
  max-height:240px;
  background:var(--cream) !important;
  position:relative;
  overflow:hidden;
  display:grid;place-items:center;
  border-bottom:none !important;
}
.product-card__img img{
  width:auto !important;height:auto !important;
  max-width:100%;max-height:212px;
  object-fit:contain;
  padding:14px;
  display:block;
}
.product-card__img.placeholder{background:linear-gradient(135deg,var(--sage-100),var(--sage-200))}
/* Unify body row — body padding-top equal, gap fixed so price aligns */
.product-card__body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:8px;flex:1;min-height:200px}
.product-card__body::before{
  content:"";
  display:block;
  height:1px;
  background:var(--line);
  margin:0 0 14px;
}
.product-card .desc{flex:1;min-height:42px}
.product-card__foot{
  margin-top:auto;
  border-top:1px solid var(--line) !important;
  padding-top:14px;
  min-height:60px;
  display:flex !important;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}
.product-card .price{display:inline-flex;align-items:center;line-height:1.2;flex-shrink:1;font-size:1.15rem}
.product-card .arr{flex-shrink:0;white-space:nowrap}
.product-card__img.placeholder::after{
  content:"";position:absolute;inset:30%;border-radius:50%;
  background:radial-gradient(circle at 30% 30%,var(--cream),transparent 70%);
}
.product-card__body{padding:24px 26px 28px;display:flex;flex-direction:column;gap:6px;flex:1}
.pill{
  display:inline-block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--forest-600);font-weight:600;margin-bottom:6px;
}
.product-card h4,.product-card .product-title{font-family:var(--display);font-size:1.2rem;font-weight:400;line-height:1.25;margin:0}
.product-card .desc{font-size:.88rem;color:var(--charcoal-400);margin:6px 0 16px;flex:1}
.product-card__foot{display:flex;justify-content:space-between;align-items:center;border-top:1px dashed var(--line);padding-top:14px}
.product-card .price{font-family:var(--display);font-size:1.3rem;font-weight:400}
.product-card .price em,.product-card .price .amount{font-style:italic;color:var(--forest-600);font-weight:400}
a.product-card,a.product-card:visited,a.product-card:hover,a.product-card:focus{color:var(--ink) !important;text-decoration:none !important}
.product-card *{text-decoration:none !important}.product-card .price del,.product-card .price del *{text-decoration:line-through !important}
.product-card h4,.product-card .product-title{color:var(--ink) !important}
.product-card .pill{color:var(--forest-600) !important}
.product-card .desc,.product-card p{color:var(--charcoal-400) !important}
.product-card .arr,.product-card .arr:hover{color:var(--forest-600) !important;font-weight:500;font-size:.9rem}
.product-card .price,.product-card .price em,.product-card .price ins,.product-card .price .amount,.product-card .price bdi{color:var(--forest-600) !important}

/* ═════════════════════════════════════════════════════════════
   8. BLOG MAGAZINE
   ═════════════════════════════════════════════════════════════ */
.blog{padding:112px 0;background:var(--cream)}
.blog__grid{display:grid;grid-template-columns:1.5fr 1fr;gap:40px}
@media (max-width:920px){.blog__grid{grid-template-columns:1fr}}
.blog__featured{
  background:var(--forest-600);color:var(--cream);
  border-radius:var(--r-lg);overflow:hidden;
  display:grid;grid-template-columns:1.3fr 1fr;gap:36px;align-items:stretch;
  position:relative;min-height:420px;padding:40px;text-decoration:none;
}
@media (max-width:760px){.blog__featured{grid-template-columns:1fr;gap:24px}}
.blog__featured::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 95% 10%,rgba(98,216,176,.18),transparent 60%);
  pointer-events:none;
}
.blog__featured > *{position:relative;z-index:1}
.blog__featured__text{display:flex;flex-direction:column;justify-content:flex-end}
.blog__featured .pill{color:var(--mint-400) !important;background:transparent;padding:0;margin-bottom:8px}
.blog__featured h3{font-size:2rem;font-weight:400;margin:0 0 16px;max-width:18ch;color:var(--cream) !important;line-height:1.15}
.blog__featured p{opacity:.85;font-size:.95rem;margin:0 0 24px;max-width:55ch;color:var(--cream)}
.blog__featured .arr{color:var(--mint-400) !important;font-weight:500}
.blog__featured__image{
  display:flex;align-items:center;justify-content:center;
  height:100%;min-height:200px;
  background:transparent;padding:0;
  border-radius:0;
}
.blog__featured__image img{
  max-width:100%;max-height:340px;
  width:auto;height:auto;
  object-fit:contain;
  border-radius:var(--r-lg);
  display:block;
}
.blog__list{display:flex;flex-direction:column;gap:24px}
.blog-card{
  display:grid;grid-template-columns:120px 1fr;gap:18px;
  padding:20px;background:var(--cream);border:1px solid var(--line);
  border-radius:var(--r-lg);transition:.2s;text-decoration:none;color:var(--ink);
}
.blog-card:hover{background:var(--sage-50);border-color:var(--sage-200);text-decoration:none}
.blog-card .thumb{background:#FFFFFF;border-radius:8px;overflow:hidden;display:grid;place-items:center;min-height:120px;aspect-ratio:auto;padding:10px}
.blog-card .thumb img{width:auto;height:auto;max-width:100%;max-height:140px;object-fit:contain;display:block}
.archive-grid .blog-card .thumb{min-height:200px;max-height:260px;padding:14px}
.archive-grid .blog-card .thumb img{max-height:220px}
.blog-card h4{font-family:var(--display);font-size:1.1rem;font-weight:400;line-height:1.25;margin:0 0 8px;color:var(--ink)}
.blog-card .meta{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--charcoal-400)}

/* ═════════════════════════════════════════════════════════════
   9. CTA STRIP
   ═════════════════════════════════════════════════════════════ */
.cta-strip{
  background:var(--ink);color:var(--cream);
  padding:96px 0;position:relative;overflow:hidden;
}
.cta-strip::before{
  content:"";position:absolute;left:-5%;top:30%;width:40%;aspect-ratio:1;
  background:radial-gradient(circle,var(--forest-600),transparent 60%);
  z-index:0;
}
.cta-strip__row{display:flex;justify-content:space-between;align-items:center;gap:48px;position:relative;z-index:1;flex-wrap:wrap}
.cta-strip h2{font-size:clamp(1.8rem,3.5vw,2.6rem);max-width:18ch;color:var(--cream)}
.cta-strip h2 em{color:var(--mint-400);font-style:italic}

/* ═════════════════════════════════════════════════════════════
   10. FOOTER
   ═════════════════════════════════════════════════════════════ */
.site-footer,
.site-footer.dynamic-footer,
.site-footer:not(.dynamic-footer){
  background:var(--forest-700) !important;color:var(--cream);
  padding:80px 0 32px;
  max-width:100% !important;width:100% !important;margin:0 !important;
}
.site-footer .container{max-width:100% !important;padding:0 40px;width:100%}
.site-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px}
@media (max-width:1100px){.site-footer__grid{grid-template-columns:1fr 1fr 1fr 1fr;gap:32px}}
@media (max-width:760px){.site-footer__grid{grid-template-columns:1fr 1fr;gap:32px}}
@media (max-width:480px){.site-footer__grid{grid-template-columns:1fr}}
.site-footer h5{font-family:var(--display);font-size:1.1rem;font-weight:400;margin:0 0 16px;color:var(--cream)}
.site-footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.site-footer a{color:var(--cream);text-decoration:none;opacity:.78;font-size:.92rem}
.site-footer a:hover{opacity:1;text-decoration:underline}
.site-footer__about p{opacity:.75;font-size:.92rem;margin:0 0 20px;max-width:32ch}
.site-footer__news{margin-top:24px}
.site-footer__news input{
  background:transparent;color:var(--cream);
  border:1px solid rgba(250,246,238,.25);
  padding:12px 14px;border-radius:var(--r);width:100%;
  font-family:var(--body);font-size:.92rem;
}
.site-footer__news input::placeholder{color:rgba(250,246,238,.5)}
.site-footer__news button{
  margin-top:8px;background:var(--mint-400);color:var(--ink);
  border:none;padding:11px 20px;border-radius:var(--r);
  font-weight:600;cursor:pointer;font-family:var(--body);
}
.site-footer__news button:hover{background:var(--cream)}
.site-footer__bottom{
  margin-top:56px;padding-top:24px;
  border-top:1px solid rgba(250,246,238,.15);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;
  font-size:.82rem;opacity:.7;
}
.site-footer .brand{color:var(--cream)}
.site-footer .brand__name{color:var(--cream)}

/* ═════════════════════════════════════════════════════════════
   11. PAGE / ARTICLE / ARCHIVE generic
   ═════════════════════════════════════════════════════════════ */
.page-wrap{padding:80px 0;min-height:60vh}
.page-wrap--narrow{max-width:780px;margin:0 auto;padding:80px 24px}
.page-wrap h1{font-size:clamp(2.4rem,5vw,3.6rem);margin-bottom:24px}
.page-wrap h2{font-size:1.8rem;margin:48px 0 16px}
.page-wrap p{margin:0 0 1.2em}
.entry-meta{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--charcoal-400);margin-bottom:24px}

/* archive grid */
.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:48px}
@media (max-width:880px){.archive-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.archive-grid{grid-template-columns:1fr}}

/* pagination */
.vista-pagination{display:flex;gap:8px;justify-content:center;margin-top:48px}
.vista-pagination a,.vista-pagination span{
  padding:8px 14px;border:1px solid var(--line);border-radius:var(--r);
  text-decoration:none;color:var(--ink);font-family:var(--body);font-size:.94rem;
}
.vista-pagination .current{background:var(--forest-600);color:var(--cream);border-color:var(--forest-600)}

/* ═════════════════════════════════════════════════════════════
   12. WC LOGIN/AUTH FORM (vista_wc_auth_form shortcode)
   ═════════════════════════════════════════════════════════════ */
.vista-auth{display:grid;grid-template-columns:1fr 1fr;gap:32px;background:var(--sage-50);padding:32px;border-radius:var(--r-lg);border:1px solid var(--sage-200);margin:24px 0}
@media (max-width:680px){.vista-auth{grid-template-columns:1fr}}
.vista-auth h3{font-family:var(--display);font-size:1.4rem;margin:0 0 16px}
.vista-auth label{display:block;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--charcoal-400);margin-bottom:6px}
.vista-auth input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r);font-family:var(--body);font-size:1rem;margin-bottom:14px;background:var(--cream)}
.vista-auth input:focus{outline:2px solid var(--forest-600);outline-offset:2px;border-color:var(--forest-600)}
.vista-auth button{width:100%}
.vista-auth__divider{margin:20px 0;font-size:.8rem;color:var(--charcoal-400);text-align:center}

/* ═════════════════════════════════════════════════════════════
   13. WOOCOMMERCE OVERRIDES (minimal)
   ═════════════════════════════════════════════════════════════ */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;list-style:none;padding:0;margin:0}
@media (max-width:1080px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.woocommerce ul.products{grid-template-columns:1fr}}
.woocommerce ul.products li.product{margin:0 !important;width:100% !important;padding:0 !important;float:none !important}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none !important;content:none !important}
.woocommerce ul.page-numbers{display:flex;gap:8px;list-style:none;padding:0;margin:0;justify-content:center;width:auto !important;height:auto !important;border:none !important;min-width:unset !important}
.woocommerce ul.page-numbers::before,.woocommerce ul.page-numbers::after{display:none !important;content:none !important}
.woocommerce ul.page-numbers li{margin:0;padding:0;display:list-item}
.woocommerce-page .single-product-main,.woocommerce div.product{padding:64px 0}
.woocommerce .button{font-family:var(--body);font-weight:500;border-radius:var(--r) !important;padding:14px 26px !important;background:var(--forest-600) !important;color:var(--cream) !important}
.woocommerce .button:hover{background:var(--forest-700) !important}
.woocommerce-cart .cart_totals .button,.woocommerce-checkout .button{background:#4BAC9B !important}
.woocommerce-cart .cart_totals .button:hover,.woocommerce-checkout .button:hover{background:#156B5C !important}

/* hide the broken/legacy shortcode rendering text */
.cart-empty + .return-to-shop a{margin-top:24px}

/* ═════════════════════════════════════════════════════════════
   14. UTILITIES
   ═════════════════════════════════════════════════════════════ */
.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}
.text-center{text-align:center}
.mt-l{margin-top:48px}
.mb-l{margin-bottom:48px}

/* hide stray pattern-v decoration */
.entry-content img[src*="pattern-v"]{display:none !important}

/* hide WP custom-logo if any (we use our own brand mark+name) */
.brand .custom-logo,.brand .custom-logo-link{display:none !important}

/* Hide leftover Hello Elementor / vista v4 stray site-logo image at top of pages */
body.wp-theme-vista-v5 > svg,body.wp-theme-vista-v5 > img[src*="logo"]{display:none !important}

/* ═════════════════════════════════════════════════════════════
   15. LEARNDASH — fix LD lesson 3-Vissza-gomb duplicate
   ═════════════════════════════════════════════════════════════ */
/* LD lesson: 3 duplikált "Vissza: Tanfolyam" gomb — csak a back-to-course-t tartjuk meg,
   a previous + next nav redundáns (mind ugyanarra a course URL-re mutat). */
.ld-navigation__previous,
.ld-navigation__next{display:none !important}
.ld-navigation__back-to-course-link{
    display:inline-flex !important;
    align-items:center !important;
    gap:10px !important;
    background:var(--forest-600) !important;
    color:var(--cream) !important;
    padding:14px 26px !important;
    border:1px solid var(--forest-600) !important;
    border-radius:var(--r) !important;
    text-decoration:none !important;
    font-family:var(--body) !important;
    font-weight:500 !important;
    font-size:.96rem !important;
    line-height:1 !important;
    margin-top:24px !important;
}
.ld-navigation__back-to-course-link:hover{background:var(--forest-700) !important;color:var(--cream) !important;text-decoration:none !important}
.ld-navigation__back-to-course-link,
.ld-navigation__back-to-course-link *,
.ld-navigation__back-to-course-link span,
.ld-navigation__back-to-course-link svg{color:var(--cream) !important;fill:var(--cream)}

/* ═════════════════════════════════════════════════════════════
   16. WC SINGLE PRODUCT — 60/40 split + Vista styling
   ═════════════════════════════════════════════════════════════ */
.single-product-vista{padding:80px 0}
.single-product-vista div.product{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:start}
@media (max-width:880px){.single-product-vista div.product{grid-template-columns:1fr;gap:32px}}
.single-product-vista .product .images,
.single-product-vista .product .woocommerce-product-gallery{width:100% !important;margin-bottom:0 !important;float:none !important}
.single-product-vista .product .summary,
.single-product-vista .product .entry-summary{width:100% !important;margin:0 !important;float:none !important;padding:0}
.single-product-vista .product .summary .product_title{font-family:var(--display);font-weight:400;font-size:clamp(1.8rem,3.5vw,2.6rem);letter-spacing:-.01em;margin-bottom:16px}
.single-product-vista .product .price{font-family:var(--display);font-size:1.8rem;color:var(--forest-600);margin:16px 0 24px;display:block}
.single-product-vista .product .price .amount,.single-product-vista .product .price ins{font-style:italic;color:var(--forest-600)}
.single-product-vista .product form.cart{margin:24px 0;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.single-product-vista .product form.cart .quantity{display:flex;align-items:center}
.single-product-vista .product form.cart input.qty{width:64px;padding:14px;border:1px solid var(--line);border-radius:var(--r);text-align:center;font-family:var(--body)}
.single-product-vista .woocommerce-product-details__short-description{font-size:1.05rem;color:var(--charcoal-400);margin:16px 0 24px;line-height:1.6}
.single-product-vista .woocommerce-tabs{margin-top:64px;border-top:1px solid var(--line);padding-top:32px}
.single-product-vista .related,.single-product-vista .upsells{margin-top:64px}
.single-product-vista .related h2,.single-product-vista .upsells h2,.single-product-vista .related > h2{font-family:var(--display);font-size:1.8rem;margin-bottom:32px}

/* ═════════════════════════════════════════════════════════════
   17. WC CART + CHECKOUT + MY ACCOUNT — minimal Vista skin
   ═════════════════════════════════════════════════════════════ */
.woocommerce-cart .page-wrap,.woocommerce-checkout .page-wrap,.woocommerce-account .page-wrap{padding:64px 0}
.woocommerce-cart h1,.woocommerce-checkout h1,.woocommerce-account h1{font-family:var(--display);font-size:clamp(2rem,4vw,2.8rem);margin-bottom:32px}
.woocommerce-cart table.shop_table,.woocommerce-checkout table.shop_table{background:var(--cream);border:1px solid var(--line);border-radius:var(--r-lg);border-collapse:separate;border-spacing:0;width:100%}
.woocommerce-cart table.shop_table th,.woocommerce-checkout table.shop_table th{font-family:var(--body);font-weight:600;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--charcoal-400);padding:16px;background:var(--sage-50);text-align:left}
.woocommerce-cart table.shop_table td,.woocommerce-checkout table.shop_table td{padding:18px 16px;border-top:1px solid var(--line)}
.woocommerce-cart .cart_totals{background:var(--sage-50);padding:24px;border-radius:var(--r-lg);margin-top:32px}
.woocommerce-cart .cart_totals h2{font-family:var(--display);font-size:1.4rem;margin-bottom:16px}
.woocommerce-cart .coupon{display:flex;gap:8px;margin-bottom:24px}
.woocommerce-cart .coupon input[type=text]{flex:1;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r);font-family:var(--body)}

/* My Account login/register (NOT logged in) — 2-col grid override WC float defaults */
.woocommerce #customer_login,
.woocommerce-page #customer_login,
.woocommerce-account #customer_login{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:48px !important;
  margin:48px 0 0 !important;
  width:100% !important;
  max-width:100% !important;
}
.woocommerce #customer_login::before,
.woocommerce #customer_login::after,
.woocommerce-page #customer_login::before,
.woocommerce-page #customer_login::after{content:none !important;display:none !important}
@media (max-width:680px){
  .woocommerce #customer_login,
  .woocommerce-page #customer_login,
  .woocommerce-account #customer_login{grid-template-columns:1fr !important;gap:24px !important}
}
.woocommerce #customer_login > .col-1,
.woocommerce #customer_login > .col-2,
.woocommerce #customer_login > .u-column1,
.woocommerce #customer_login > .u-column2,
.woocommerce-page #customer_login > .col-1,
.woocommerce-page #customer_login > .col-2,
.woocommerce-page #customer_login > .u-column1,
.woocommerce-page #customer_login > .u-column2{
  width:100% !important;
  float:none !important;
  margin:0 !important;
  padding:36px !important;
  background:var(--sage-50) !important;
  border:1px solid var(--sage-200) !important;
  border-radius:var(--r-lg) !important;
}
.woocommerce #customer_login h2,
.woocommerce-page #customer_login h2{
  font-family:var(--display) !important;
  font-size:1.5rem !important;
  font-weight:400 !important;
  margin:0 0 20px !important;
  color:var(--ink) !important;
}
.woocommerce #customer_login form,
.woocommerce-page #customer_login form{
  background:transparent !important;
  border:none !important;
  padding:0 !important;
  margin:0 !important;
  width:100% !important;
}
.woocommerce #customer_login form p,
.woocommerce-page #customer_login form p{margin:0 0 16px !important;line-height:1.5}
.woocommerce #customer_login form label,
.woocommerce-page #customer_login form label{
  display:block !important;
  font-size:.78rem !important;
  letter-spacing:.1em !important;
  text-transform:uppercase !important;
  font-weight:600 !important;
  color:var(--charcoal-400) !important;
  margin-bottom:6px !important;
}
.woocommerce #customer_login form input[type=text],
.woocommerce #customer_login form input[type=email],
.woocommerce #customer_login form input[type=password],
.woocommerce-page #customer_login form input[type=text],
.woocommerce-page #customer_login form input[type=email],
.woocommerce-page #customer_login form input[type=password]{
  width:100% !important;
  padding:12px 14px !important;
  border:1px solid var(--line) !important;
  border-radius:var(--r) !important;
  background:var(--cream) !important;
  font-family:var(--body) !important;
  font-size:1rem !important;
  box-shadow:none !important;
}
.woocommerce #customer_login form input:focus,
.woocommerce-page #customer_login form input:focus{
  outline:2px solid var(--forest-600) !important;
  outline-offset:2px !important;
  border-color:var(--forest-600) !important;
}
.woocommerce #customer_login form button.button,
.woocommerce-page #customer_login form button.button{
  margin-top:8px !important;
  background:var(--forest-600) !important;
  color:var(--cream) !important;
  border-radius:var(--r) !important;
  padding:14px 26px !important;
  font-family:var(--body) !important;
  font-weight:500 !important;
  border:none !important;
}
.woocommerce #customer_login form button.button:hover,
.woocommerce-page #customer_login form button.button:hover{background:var(--forest-700) !important}
/* register button — clay accent */
.woocommerce #customer_login .woocommerce-form-register button.button,
.woocommerce-page #customer_login .woocommerce-form-register button.button{background:#4BAC9B !important}
.woocommerce #customer_login .woocommerce-form-register button.button:hover,
.woocommerce-page #customer_login .woocommerce-form-register button.button:hover{background:#156B5C !important}
.woocommerce #customer_login .lost_password a,
.woocommerce-page #customer_login .lost_password a{color:var(--forest-600) !important;font-size:.9rem}

/* === Regisztráció doboz: "Elfelejtetted a jelszavad?" a submit-sorban, doboz-méret növelése nélkül === */
.woocommerce #customer_login .woocommerce-form-register .vista-register-actions,
.woocommerce-page #customer_login .woocommerce-form-register .vista-register-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  flex-wrap:wrap !important;
  gap:8px 16px !important;
}
.woocommerce #customer_login .vista-reg-lostpw,
.woocommerce-page #customer_login .vista-reg-lostpw{
  color:var(--forest-600) !important;
  font-size:.85rem !important;
  white-space:nowrap;
}
.woocommerce #customer_login .vista-reg-lostpw:hover,
.woocommerce-page #customer_login .vista-reg-lostpw:hover{text-decoration-thickness:2px}

/* ═════════════════════════════════════════════════════════════
   21. WC CART — cross-sells és cart_totals stilizálás
   ═════════════════════════════════════════════════════════════ */
.woocommerce-cart .cross-sells{margin-top:80px;padding-top:48px;border-top:1px solid var(--line)}
.woocommerce-cart .cross-sells > h2{
  font-family:var(--display) !important;
  font-weight:400 !important;
  font-size:1.8rem !important;
  margin:0 0 32px !important;
  color:var(--ink) !important;
}
.woocommerce-cart .cross-sells ul.products{
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:24px !important;
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
}
@media (max-width:880px){.woocommerce-cart .cross-sells ul.products{grid-template-columns:repeat(2,1fr) !important}}
@media (max-width:560px){.woocommerce-cart .cross-sells ul.products{grid-template-columns:1fr !important}}
.woocommerce-cart .cross-sells ul.products li.product{
  list-style:none !important;
  background:var(--cream) !important;
  border:1px solid var(--line) !important;
  border-radius:var(--r-lg) !important;
  padding:0 !important;
  overflow:hidden !important;
  margin:0 !important;
  width:100% !important;
  text-align:left !important;
}
.woocommerce-cart .cross-sells ul.products li.product a{text-decoration:none !important;color:inherit !important}
.woocommerce-cart .cross-sells ul.products li.product img{
  aspect-ratio:4/3 !important;
  object-fit:contain !important;
  padding:14px !important;
  background:var(--cream) !important;
  width:100% !important;
  height:auto !important;
  margin:0 !important;
  border-bottom:1px solid var(--line) !important;
}
.woocommerce-cart .cross-sells ul.products li.product h2,
.woocommerce-cart .cross-sells ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--display) !important;
  font-size:1.05rem !important;
  font-weight:400 !important;
  padding:14px 20px 0 !important;
  margin:0 !important;
  color:var(--ink) !important;
  line-height:1.25 !important;
}
.woocommerce-cart .cross-sells ul.products li.product .price{
  padding:6px 20px !important;
  font-family:var(--display) !important;
  font-size:1.1rem !important;
  color:var(--forest-600) !important;
  margin:0 0 4px !important;
}
.woocommerce-cart .cross-sells ul.products li.product .price ins,
.woocommerce-cart .cross-sells ul.products li.product .price bdi,
.woocommerce-cart .cross-sells ul.products li.product .price .amount{color:var(--forest-600) !important}
.woocommerce-cart .cross-sells ul.products li.product .button,
.woocommerce-cart .cross-sells ul.products li.product .add_to_cart_button{
  margin:14px 20px 20px !important;
  background:var(--forest-600) !important;
  color:var(--cream) !important;
  border-radius:var(--r) !important;
  padding:10px 20px !important;
  font-family:var(--body) !important;
  font-weight:500 !important;
  display:inline-block !important;
  font-size:.9rem !important;
}
.woocommerce-cart .cross-sells ul.products li.product .button:hover{background:var(--forest-700) !important}

/* WC cart_totals + coupon — Vista finishing */
.woocommerce-cart .cart-collaterals{margin-top:48px}
.woocommerce-cart .cart_totals{
  background:var(--sage-50) !important;
  padding:32px !important;
  border-radius:var(--r-lg) !important;
  border:1px solid var(--sage-200) !important;
}
.woocommerce-cart .cart_totals h2{
  font-family:var(--display) !important;
  font-size:1.5rem !important;
  font-weight:400 !important;
  margin:0 0 20px !important;
}
.woocommerce-cart .cart_totals table{border:none !important;background:transparent !important}
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td{background:transparent !important;border:none !important;padding:10px 0 !important}
.woocommerce-cart .cart_totals .wc-proceed-to-checkout{margin-top:24px}
.woocommerce-cart .cart_totals .checkout-button{
  background:#4BAC9B !important;
  color:var(--cream) !important;
  border-radius:var(--r) !important;
  padding:14px 26px !important;
  font-family:var(--body) !important;
  font-weight:500 !important;
  display:block !important;
  text-align:center !important;
}
.woocommerce-cart .cart_totals .checkout-button:hover{background:#156B5C !important}
.woocommerce-cart .coupon{display:flex !important;gap:8px !important;margin:0 0 24px !important;align-items:center}
.woocommerce-cart .coupon input[type=text]{
  flex:1;padding:12px 14px !important;
  border:1px solid var(--line) !important;border-radius:var(--r) !important;
  font-family:var(--body) !important;background:var(--cream) !important;
}
.woocommerce-cart .coupon button{
  background:var(--forest-600) !important;color:var(--cream) !important;
  border-radius:var(--r) !important;padding:12px 20px !important;
  font-family:var(--body) !important;font-weight:500 !important;border:none !important;
}

/* My Account — flex 2-col (sidebar + content) */
body.woocommerce-account .woocommerce{
  display:flex !important;
  gap:40px !important;
  align-items:flex-start !important;
  margin-top:16px;
}
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .vista-myaccount-nav{
  flex:0 0 260px !important;
  width:260px !important;
  max-width:260px !important;
  margin:0 !important;
  padding:0 !important;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  flex:1 1 auto !important;
  min-width:0 !important;
  margin:0 !important;
  width:auto !important;
}
@media (max-width:880px){
  body.woocommerce-account .woocommerce{flex-direction:column !important;gap:24px !important}
  body.woocommerce-account .vista-myaccount-nav{flex:0 0 auto !important;width:100% !important;max-width:none !important}
}

/* Label color enforce */
.vista-myaccount-nav a,
.vista-myaccount-nav a *,
.vista-myaccount-nav .vmn-label{color:var(--cream) !important}
.vista-myaccount-nav .vmn-label{font-weight:500 !important;font-size:.96rem !important;line-height:1.3}

/* Vista MyAccount navigation — 7 forest-dark gomb */
.vista-myaccount-nav{margin:0;padding:0}
.vista-myaccount-nav ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.vista-myaccount-nav li{margin:0}
.vista-myaccount-nav a{
    display:flex !important;
    align-items:center;
    gap:14px;
    padding:14px 18px !important;
    background:var(--forest-600) !important;
    color:var(--cream) !important;
    border-radius:6px;
    text-decoration:none !important;
    font-family:var(--body);
    font-size:.95rem;
    font-weight:500;
    transition:.2s;
    border:1px solid var(--forest-600) !important;
}
.vista-myaccount-nav a:hover{background:var(--forest-700) !important;border-color:var(--forest-700) !important;transform:translateX(2px)}
.vista-myaccount-nav li.is-active a,
.vista-myaccount-nav li.woocommerce-MyAccount-navigation-link--customer-logout a{background:var(--forest-700) !important}
.vista-myaccount-nav .vmn-ico{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0}
.vista-myaccount-nav .vmn-ico svg{width:20px;height:20px;stroke:var(--cream);stroke-width:1.6;fill:none}
.vista-myaccount-nav .vmn-label{flex:1}

/* Dashboard content */
.vista-myaccount-dashboard{background:var(--sage-50);padding:32px 36px;border-radius:14px;border:1px solid var(--sage-200)}
.vista-myaccount-greeting{font-size:1.1rem;margin:0 0 14px}
.vista-myaccount-greeting strong{color:var(--forest-600)}
.vista-myaccount-intro{font-size:1rem;color:var(--charcoal-400);margin:0;line-height:1.7}
.woocommerce-MyAccount-content{background:transparent;padding:0;border:none;border-radius:0}
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3{font-family:var(--display);font-weight:400;color:var(--ink);margin:24px 0 14px;font-size:1.4rem}

/* Orders / downloads / subscriptions — tables */
.woocommerce-account .woocommerce-orders-table,
.woocommerce-account .shop_table,
.woocommerce-account table.account-orders-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--cream);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-top:16px}
.woocommerce-account .woocommerce-orders-table th,
.woocommerce-account .shop_table th{background:var(--sage-50);padding:14px 16px;font-family:var(--body);font-weight:600;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--charcoal-400);text-align:left;border-bottom:1px solid var(--line)}
.woocommerce-account .woocommerce-orders-table td,
.woocommerce-account .shop_table td{padding:16px;border-top:1px solid var(--line);font-size:.95rem}
.woocommerce-account .woocommerce-orders-table tbody tr:hover{background:var(--sage-50)}
.woocommerce-account .woocommerce-orders-table .button,
.woocommerce-account .shop_table .button{padding:8px 16px !important;font-size:.85rem !important;margin:2px}

/* Address / Edit Account form */
.woocommerce-account .woocommerce-EditAccountForm,
.woocommerce-account .woocommerce-address-fields,
.woocommerce-account form.edit-account{background:var(--cream);padding:32px;border-radius:14px;border:1px solid var(--line);margin-top:8px}
.woocommerce-account form.edit-account fieldset{border:1px solid var(--line);padding:24px;margin:32px 0 0;border-radius:10px;background:var(--sage-50)}
.woocommerce-account form.edit-account legend{font-family:var(--display);font-size:1.15rem;padding:0 8px;color:var(--forest-600)}
.woocommerce-account .form-row{margin-bottom:18px}
.woocommerce-account .form-row label{display:block;font-size:.84rem;font-weight:600;color:var(--charcoal-400);margin-bottom:6px;letter-spacing:.04em}
.woocommerce-account .form-row input[type=text],
.woocommerce-account .form-row input[type=email],
.woocommerce-account .form-row input[type=password],
.woocommerce-account .form-row input[type=tel],
.woocommerce-account .form-row select,
.woocommerce-account .form-row textarea{width:100%;padding:12px 14px !important;border:1px solid var(--line) !important;border-radius:6px !important;font-family:var(--body) !important;font-size:1rem !important;background:#FFFFFF !important;box-shadow:none !important}
.woocommerce-account .form-row input:focus{outline:2px solid var(--forest-600) !important;outline-offset:2px;border-color:var(--forest-600) !important}
.woocommerce-account .button[type=submit],
.woocommerce-account .button[name=save_account_details],
.woocommerce-account .button[name=save_address]{background:var(--forest-600) !important;color:var(--cream) !important;padding:14px 26px !important;border-radius:6px !important;font-family:var(--body) !important;font-weight:500 !important;border:none !important}
.woocommerce-account .button:hover{background:var(--forest-700) !important}

/* Addresses 2-col */
.woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:8px}
@media (max-width:680px){.woocommerce-Addresses{grid-template-columns:1fr}}
.woocommerce-Address{background:var(--sage-50);padding:24px;border-radius:14px;border:1px solid var(--sage-200)}
.woocommerce-Address header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.woocommerce-Address h2,.woocommerce-Address .woocommerce-Address-title h3{font-family:var(--display);font-weight:400;font-size:1.25rem;margin:0;color:var(--ink)}
.woocommerce-Address .edit{font-size:.85rem;color:var(--forest-600);font-weight:500}
.woocommerce-Address address{font-style:normal;font-size:.95rem;color:var(--charcoal-400);line-height:1.55}
.woocommerce-account .woocommerce-MyAccount-navigation{margin:0;padding:0}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}
.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0}
.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:12px 16px;text-decoration:none;color:var(--ink);border-radius:var(--r);font-family:var(--body);font-size:.94rem;font-weight:500}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover{background:var(--sage-50);color:var(--forest-600)}
.woocommerce-account .woocommerce-MyAccount-content{background:var(--cream);padding:32px;border:1px solid var(--line);border-radius:var(--r-lg)}

/* ═════════════════════════════════════════════════════════════
   18. COOKIE CONSENT — Moove GDPR restyle
   ═════════════════════════════════════════════════════════════ */
#moove_gdpr_cookie_info_bar,
#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container{
  background:var(--forest-700) !important;
  color:var(--cream) !important;
  border-top:none !important;
}
#moove_gdpr_cookie_info_bar a,
#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a{color:var(--mint-400) !important}
#moove_gdpr_cookie_info_bar button.mgbutton,
#moove_gdpr_cookie_info_bar #moove_gdpr_cookie_info_bar_thirdparty button,
.moove-gdpr-button-holder button{
  background:var(--mint-400) !important;
  color:var(--ink) !important;
  border:none !important;
  border-radius:var(--r) !important;
  font-family:var(--body) !important;
  font-weight:600 !important;
  padding:11px 22px !important;
}
.moove-gdpr-button-holder button:hover{background:var(--cream) !important}
.moove-gdpr-branding,a.moove-gdpr-branding,.moove-gdpr-info-bar-container .moove-gdpr-branding{display:none !important}

/* ═════════════════════════════════════════════════════════════
   19. PAGE CONTENT cleanup
   ═════════════════════════════════════════════════════════════ */
/* legacy pattern-v decoration */
.entry-content img[src*="pattern-v"]{display:none !important}
/* dupla h1 cleanup — ha a page content tartalmaz egy h1-et közvetlenül a tetején, megőrizzük csak az elsőt */
.page-wrap--narrow > h1.h-display + .entry-content > h1:first-child{display:none}
/* legacy heavy WC text */
.return-to-shop{margin-top:32px}

/* ═════════════════════════════════════════════════════════════
   22. ABOUT PAGE — editorial layout
   ═════════════════════════════════════════════════════════════ */
.va{max-width:1080px;margin:0 auto}
.va .eyebrow{display:flex;align-items:center;gap:10px;justify-content:flex-start}
.va .eyebrow::before{content:"";width:24px;height:1px;background:var(--forest-600)}
.va-intro{text-align:center;padding:48px 24px 72px;border-bottom:1px solid var(--line);margin-bottom:80px}
.va-intro .eyebrow{justify-content:center}
.va-quote{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(1.8rem,3.4vw,2.6rem);line-height:1.25;color:var(--forest-600);max-width:28ch;margin:32px auto 16px}
.va-quote-attr{font-family:var(--body);font-size:.92rem;color:var(--charcoal-400);letter-spacing:.06em}

/* Bio sections (Zoli + Móni) — 2-col magazine layout */
.va-bio{display:grid;grid-template-columns:340px 1fr;gap:56px;align-items:start;margin-bottom:80px}
.va-bio--reverse{grid-template-columns:1fr 340px}
.va-bio--reverse .va-bio__img{order:2}
.va-bio--reverse .va-bio__text{order:1}
@media (max-width:880px){
  .va-bio,.va-bio--reverse{grid-template-columns:1fr;gap:28px}
  .va-bio--reverse .va-bio__img,.va-bio--reverse .va-bio__text{order:initial}
}
.va-bio__img{margin:0;position:sticky;top:96px}
.va-bio__img img{border-radius:14px;width:100%;height:auto;display:block;max-width:320px}
.va-bio__img figcaption{margin-top:12px;font-size:.95rem;color:var(--ink);text-align:left;font-family:var(--display);font-style:italic;letter-spacing:0;line-height:1.3}
.va-bio__img figcaption span{display:block;font-size:.8rem;color:var(--charcoal-400);font-style:normal;letter-spacing:.06em;text-transform:uppercase;margin-top:4px}
.va-bio__text .va-lead{font-size:1.18rem;line-height:1.65;color:var(--ink);margin:0 0 24px}
.va-bio__text h2{font-family:var(--display);font-size:1.75rem;font-weight:400;margin:24px 0 16px;line-height:1.2}
.va-bio__text p{color:var(--charcoal-400);font-size:1.02rem;line-height:1.7;margin:0 0 14px}
.va-bio__text .va-credo{margin:24px 0 16px;column-count:2;column-gap:36px;column-rule:1px solid var(--line)}
.va-bio__text .va-credo p{font-size:.96rem;line-height:1.65;break-inside:avoid}
@media (max-width:760px){.va-bio__text .va-credo{column-count:1;column-rule:none}}
.va-sign{font-family:var(--display);font-style:italic;font-size:1.05rem;color:var(--forest-600);margin:16px 0 0 !important}

.va-pillars{padding:48px 0;margin-bottom:48px}
.va-pillars__head{margin-bottom:48px;max-width:32ch}
.va-pillars__head h2{font-family:var(--display);font-size:clamp(2rem,3.6vw,2.6rem);font-weight:400;margin:14px 0 0;line-height:1.15}
.va-pillars__head h2 em{font-style:italic;color:var(--forest-600)}
.va-pillars__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media (max-width:880px){.va-pillars__grid{grid-template-columns:1fr;gap:18px}}
.va-pillar{padding:32px 28px;background:var(--sage-50);border:1px solid var(--sage-200);border-radius:14px;position:relative;min-height:200px}
.va-pillar__num{position:absolute;top:18px;right:22px;font-family:var(--display);font-style:italic;color:var(--forest-600);font-size:1.05rem;opacity:.65;letter-spacing:.04em}
.va-pillar h3{font-family:var(--display);font-size:1.3rem;font-weight:400;margin:0 0 12px;padding-right:32px;line-height:1.2}
.va-pillar p{font-size:.95rem;line-height:1.55;color:var(--charcoal-400);margin:0}

.va-motto{
  text-align:center;
  padding:72px 32px;
  margin:48px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.va-motto p{
  font-family:var(--display);font-style:italic;font-weight:300;
  font-size:clamp(1.6rem,2.8vw,2.2rem);line-height:1.3;
  color:var(--ink);max-width:30ch;margin:0 auto;
}

/* (Old va-credo standalone section — kept as fallback, now used inside .va-bio__text instead) */
.va > .va-credo{max-width:640px;margin:0 auto 80px;padding:0 24px}
.va > .va-credo h2{font-family:var(--display);font-size:1.85rem;font-weight:400;margin:0 0 24px}
.va > .va-credo p{font-size:1.05rem;line-height:1.75;color:var(--charcoal-400);margin:0 0 1.3em}

.va-cta{
  text-align:center;
  background:var(--sage-50);
  border-radius:14px;
  padding:56px 32px;
  margin:80px 0 0;
  border:1px solid var(--sage-200);
}
.va-cta h3{font-family:var(--display);font-weight:400;font-size:1.8rem;margin:0 0 12px}
.va-cta p{color:var(--charcoal-400);font-size:1.02rem;margin:0 0 28px;max-width:46ch;margin-left:auto;margin-right:auto}
.va-cta__row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* Hide WC guest-checkout notice on non-cart pages — visible only inside cart/checkout */
body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) .woocommerce-notices-wrapper,
body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account) .woocommerce-info{display:none !important}
/* Style any remaining WC notices that DO show (cart-empty etc) */
.woocommerce-cart .woocommerce-info,.woocommerce-checkout .woocommerce-info{
  background:var(--sage-50) !important;
  border-left:4px solid var(--forest-600) !important;
  color:var(--ink) !important;
  padding:18px 24px !important;
  border-radius:var(--r) !important;
  margin-bottom:24px !important;
}

/* ═════════════════════════════════════════════════════════════
   20. LINK COLOR fix — override hello-elementor parent default red/pink links
   ═════════════════════════════════════════════════════════════ */
.entry-content a:not(.btn):not(.button):not(.icon-btn):not(.brand),
.page-wrap a:not(.btn):not(.button):not(.icon-btn):not(.brand),
.page-wrap--narrow a:not(.btn):not(.button):not(.icon-btn):not(.brand),
main a:not(.btn):not(.button):not(.icon-btn):not(.brand):not(.product-card){color:var(--forest-600) !important}
.entry-content a:hover:not(.btn):not(.button):not(.icon-btn),
.page-wrap a:hover:not(.btn):not(.button):not(.icon-btn),
main a:hover:not(.btn):not(.button):not(.icon-btn){color:var(--forest-700) !important;text-decoration-thickness:2px !important}

/* nav links stay ink */
.nav a,.nav a:hover,.site-header .nav a{color:var(--ink) !important}
.site-footer a{color:var(--cream) !important}


/* ═════════════════════════════════════════════════════════════
   9. D v2 LAYER — Diagnosztika/Comfortaa (LOCKED 2026-06-11)
   ═════════════════════════════════════════════════════════════ */
/* Comfortaa címsúly (a Fraunces 400 helyett) */
h1,h2,h3,h4,h5,h6,.h-section,.h-display{font-weight:700;letter-spacing:-.01em}
.brand__name em,.trust__num em{font-style:normal;font-weight:700}

/* Pill gombok mindenhol */
.btn,.woocommerce .button,.woocommerce button.button,
.woocommerce #respond input#submit,.woocommerce a.button,
.woocommerce input.button,button[type=submit],input[type=submit],
.single_add_to_cart_button{border-radius:999px !important}

/* Kártya-radius egységesítés */
.card,.product-card,.vv-card{border-radius:var(--r-lg)}
input[type=text],input[type=email],input[type=tel],input[type=password],
input[type=number],textarea,select{border-radius:var(--r) !important}

/* Mono metaadat-sor (lab-report elem) */
.vv-meta{font-family:var(--mono);font-size:11px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--charcoal-400)}
.vv-meta--light{color:rgba(255,255,255,.65)}

/* Háttér-sáv utility-k (vezeto-kepzes ritmus) */
.vv-hero-dark{background:var(--grad-hero);color:#fff}
.vv-hero-dark h1,.vv-hero-dark h2,.vv-hero-dark h3{color:#fff}
.vv-hero-dark p{color:rgba(255,255,255,.78)}
.vv-band-green{background:var(--grad-band);color:#fff}
.vv-band-green h2,.vv-band-green h3{color:#fff}
.vv-band-green p{color:rgba(255,255,255,.72)}
.vv-band-green .vv-meta{color:rgba(255,255,255,.65)}
.vv-cta-band{background:var(--grad-cta);color:#fff;border-radius:calc(var(--r-lg) + 8px)}
.vv-sage{background:var(--sage-50)}

/* Áttetsző kártya zöld banden */
.vv-glass{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  border-radius:var(--r-lg)}
.vv-glass:hover{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.28)}

/* Lab-report kártya */
.vv-report{background:#fff;border:1px solid var(--sage-200);border-radius:var(--r-lg);
  box-shadow:var(--shadow-1);transition:box-shadow .2s ease,transform .2s ease}
.vv-report:hover{box-shadow:var(--shadow-h);transform:translateY(-3px)}
.vv-bar{height:6px;border-radius:999px;background:var(--sage-50);overflow:hidden}
.vv-bar i{display:block;height:100%;border-radius:999px;background:var(--clay-500)}

/* Nagy szekciószám */
.vv-secnum{font-family:var(--display);font-weight:700;
  font-size:clamp(72px,9vw,120px);line-height:1;color:rgba(10,37,64,.07);user-select:none}
.vv-band-green .vv-secnum,.vv-hero-dark .vv-secnum{color:rgba(255,255,255,.08)}

/* Linkek: mély zöld (kontraszt-biztos) */
a{color:var(--forest-600)}

/* WC zoom-kép overflow fix (smoke #110) */
.woocommerce div.product div.images{overflow:hidden;border-radius:var(--r-lg)}
.zoomImg{max-width:none}

/* ── Ported snippet #34 pénztár-CSS (PHP echo → style.css, WAF miatt) ── */

    /* Login szekciók elrejtése bejelentkezve */
    body.logged-in.woocommerce-checkout .woocommerce-form-login-toggle,
    body.logged-in.woocommerce-checkout .woocommerce-form-login {
        display: none !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border: none !important;
    }
    body.woocommerce-checkout .woocommerce-checkout h3:empty {
        display: none !important;
    }

    /* BAL OSZLOP: Számlázási cím */
    body.woocommerce-checkout .woocommerce-checkout #customer_details {
        background: #ffffff;
        padding: 28px 24px;
        border-radius: 18px;
        border: 2px solid #4BAC9B;
        box-shadow: 0 2px 12px rgba(21, 107, 92, 0.08);
        box-sizing: border-box;
    }

    /* JOBB OSZLOP: Rendelés összegzés */
    body.woocommerce-checkout .woocommerce-checkout #order_review {
        background: linear-gradient(135deg, #f0faf8 0%, #e8f5f2 100%);
        padding: 28px 24px;
        border-radius: 18px;
        border: 2px solid #197262;
        box-shadow: 0 4px 16px rgba(25, 114, 98, 0.12);
        box-sizing: border-box;
    }

    /* Szekció címek */
    body.woocommerce-checkout .woocommerce-checkout h3 {
        color: #0A2540;
        font-size: 18px;
        font-weight: 700;
        margin: 0 0 20px 0;
        padding-bottom: 12px;
        border-bottom: 2px solid #4BAC9B;
    }

    /* Labelek */
    body.woocommerce-checkout .woocommerce-checkout label:not(.woocommerce-form__label-for-checkbox) {
        color: #0A2540;
        font-weight: 600;
        font-size: 14px;
    }

    /* Input mezők */
    body.woocommerce-checkout .woocommerce-checkout input.input-text,
    body.woocommerce-checkout .woocommerce-checkout textarea,
    body.woocommerce-checkout .woocommerce-checkout select {
        border: 1.5px solid #c5ddd8 !important;
        border-radius: 8px !important;
        padding: 10px 14px !important;
        font-size: 15px;
        transition: border-color 0.2s, box-shadow 0.2s;
        background: #fff;
        box-sizing: border-box;
        width: 100% !important;
    }
    body.woocommerce-checkout .woocommerce-checkout input.input-text:focus,
    body.woocommerce-checkout .woocommerce-checkout textarea:focus,
    body.woocommerce-checkout .woocommerce-checkout select:focus {
        border-color: #197262 !important;
        box-shadow: 0 0 0 3px rgba(25, 114, 98, 0.12) !important;
        outline: none;
    }

    /* Select2 (Ország, Megye dropdownok) */
    body.woocommerce-checkout .select2-container {
        width: 100% !important;
    }
    body.woocommerce-checkout .select2-container .select2-selection--single {
        border: 1.5px solid #c5ddd8 !important;
        border-radius: 8px !important;
        padding: 6px 14px !important;
        height: auto !important;
        min-height: 42px !important;
        background: #fff;
        box-sizing: border-box;
    }
    body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
        line-height: 28px !important;
        padding-left: 0 !important;
        color: #0A2540;
    }
    body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow {
        height: 100% !important;
        right: 10px !important;
    }
    body.woocommerce-checkout .select2-container--open .select2-selection--single {
        border-color: #197262 !important;
        box-shadow: 0 0 0 3px rgba(25, 114, 98, 0.12) !important;
    }

    /* Form row layout */
    body.woocommerce-checkout .woocommerce-checkout .form-row {
        margin-bottom: 14px;
        box-sizing: border-box;
    }
    body.woocommerce-checkout .woocommerce-checkout .form-row-first {
        float: left !important;
        width: 48% !important;
        clear: left;
    }
    body.woocommerce-checkout .woocommerce-checkout .form-row-last {
        float: right !important;
        width: 48% !important;
    }
    body.woocommerce-checkout .woocommerce-checkout .form-row-wide {
        float: none !important;
        width: 100% !important;
        clear: both;
    }
    body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper::after,
    body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper::after {
        content: "";
        display: table;
        clear: both;
    }

    /* Megrendelés gomb */
    body.woocommerce-checkout #place_order {
        background: #197262 !important;
        color: #fff !important;
        border: none !important;
        border-radius: 999px !important;
        padding: 16px 28px !important;
        font-size: 18px !important;
        font-weight: 700 !important;
        cursor: pointer;
        width: 100%;
        transition: background 0.2s;
    }
    body.woocommerce-checkout #place_order:hover {
        background: #4BAC9B !important;
    }

    /* Egyéb gombok */
    body.woocommerce-checkout .woocommerce-checkout .button:not(#place_order) {
        background: #4BAC9B !important;
        color: #fff !important;
        border: none !important;
        border-radius: 999px !important;
        padding: 10px 20px !important;
        font-weight: 600 !important;
        cursor: pointer;
        transition: background 0.2s;
    }
    body.woocommerce-checkout .woocommerce-checkout .button:not(#place_order):hover {
        background: #197262 !important;
    }

    /* Rendelés táblázat */
    body.woocommerce-checkout .woocommerce-checkout-review-order-table {
        border-collapse: collapse;
        width: 100%;
    }
    body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
    body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
        padding: 10px 8px;
        border-bottom: 1px solid #e0ece9;
        color: #0A2540;
    }
    body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
        font-weight: 700;
        border-bottom: 2px solid #4BAC9B;
    }

    /* Fizetési módok */
    body.woocommerce-checkout .wc_payment_methods {
        list-style: none !important;
        padding: 0 !important;
        margin: 20px 0 !important;
    }
    body.woocommerce-checkout .wc_payment_method {
        padding: 12px 16px;
        margin-bottom: 8px;
        background: rgba(255,255,255,0.6);
        border-radius: 8px;
        border: 1px solid #e0ece9;
    }
    body.woocommerce-checkout .wc_payment_method > label {
        cursor: pointer;
    }
    body.woocommerce-checkout .payment_box {
        padding: 10px;
        background: rgba(255,255,255,0.4) !important;
        border-radius: 6px;
        margin-top: 8px;
    }

    /* Newsletter checkbox */
    body.woocommerce-checkout .newsletter-optin-row {
        margin: 16px 0 !important;
        padding: 12px 16px !important;
        background: rgba(255,255,255,0.6);
        border-radius: 8px;
        border: 1px solid #e0ece9;
    }
    body.woocommerce-checkout .newsletter-optin-row label {
        display: inline !important;
        font-weight: 400 !important;
        font-size: 14px !important;
        color: #555;
    }
    body.woocommerce-checkout .newsletter-optin-row input[type=checkbox] {
        width: auto !important;
        padding: 0 !important;
    }

    /* Adatvédelem + linkek */
    body.woocommerce-checkout .woocommerce-privacy-policy-text,
    body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
        font-size: 13px;
        color: #666;
        line-height: 1.5;
    }
    body.woocommerce-checkout .woocommerce-checkout a:not(.button) {
        color: #197262;
        text-decoration: none;
    }
    body.woocommerce-checkout .woocommerce-checkout a:not(.button):hover {
        color: #4BAC9B;
        text-decoration: underline;
    }

    /* Mobil */
    @media (max-width: 768px) {
        body.woocommerce-checkout .woocommerce-checkout #customer_details,
        body.woocommerce-checkout .woocommerce-checkout #order_review {
            padding: 20px 16px;
        }
        body.woocommerce-checkout .woocommerce-checkout .form-row-first,
        body.woocommerce-checkout .woocommerce-checkout .form-row-last {
            width: 100% !important;
            float: none !important;
        }
    }
    

/* ── Ported snippet #75 fiókom-CSS (PHP echo → style.css, WAF miatt) ── */

    /* === JOBB OLDALI KONTÉNER (My Account tartalom) === */
    body.woocommerce-account .woocommerce-MyAccount-content {
        background: #ffffff !important;
        padding: 28px 24px !important;
        border-radius: 18px !important;
        border: 2px solid #4BAC9B !important;
        box-shadow: 0 2px 12px rgba(21, 107, 92, 0.08) !important;
        box-sizing: border-box;
    }

    /* === BAL SIDEBAR KONTÉNER (My Account navigáció) === */
    body.woocommerce-account .woocommerce-MyAccount-navigation {
        background: linear-gradient(135deg, #f0faf8 0%, #e8f5f2 100%) !important;
        border-radius: 18px !important;
        border: 2px solid #197262 !important;
        box-shadow: 0 4px 16px rgba(25, 114, 98, 0.12) !important;
    }

    /* === Dashboard szöveg === */
    body.woocommerce-account .woocommerce-MyAccount-content p {
        color: #0A2540;
        font-size: 15px;
        line-height: 1.6;
    }
    body.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-Button) {
        color: #197262;
        text-decoration: none;
    }
    body.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-Button):hover {
        color: #4BAC9B;
        text-decoration: underline;
    }

    /* === Táblázatok (rendelések, előfizetések) === */
    body.woocommerce-account .woocommerce-MyAccount-content table {
        border-collapse: collapse;
        width: 100%;
    }
    body.woocommerce-account .woocommerce-MyAccount-content table th,
    body.woocommerce-account .woocommerce-MyAccount-content table td {
        padding: 12px 10px;
        border-bottom: 1px solid #e0ece9;
        color: #0A2540;
        text-align: left;
    }
    body.woocommerce-account .woocommerce-MyAccount-content table thead th {
        font-weight: 700;
        border-bottom: 2px solid #4BAC9B;
        font-size: 14px;
    }

    /* === Gombok === */
    body.woocommerce-account .woocommerce-MyAccount-content .button,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button {
        background: #197262 !important;
        color: #fff !important;
        border: none !important;
        border-radius: 999px !important;
        padding: 10px 20px !important;
        font-weight: 600 !important;
        font-size: 14px !important;
        cursor: pointer;
        transition: background 0.2s;
        text-decoration: none !important;
        display: inline-block;
    }
    body.woocommerce-account .woocommerce-MyAccount-content .button:hover,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button:hover {
        background: #4BAC9B !important;
    }

    /* === Szekció címek === */
    body.woocommerce-account .woocommerce-MyAccount-content h2,
    body.woocommerce-account .woocommerce-MyAccount-content h3 {
        color: #0A2540;
        font-size: 18px;
        font-weight: 700;
        margin: 0 0 20px 0;
        padding-bottom: 12px;
        border-bottom: 2px solid #4BAC9B;
    }

    /* === Input mezők === */
    body.woocommerce-account .woocommerce-MyAccount-content input[type=text],
    body.woocommerce-account .woocommerce-MyAccount-content input[type=email],
    body.woocommerce-account .woocommerce-MyAccount-content input[type=tel],
    body.woocommerce-account .woocommerce-MyAccount-content input[type=password],
    body.woocommerce-account .woocommerce-MyAccount-content textarea,
    body.woocommerce-account .woocommerce-MyAccount-content select {
        border: 1.5px solid #c5ddd8 !important;
        border-radius: 8px !important;
        padding: 10px 14px !important;
        font-size: 15px;
        width: 100% !important;
        background: #fff;
        box-sizing: border-box;
        transition: border-color 0.2s, box-shadow 0.2s;
    }
    body.woocommerce-account .woocommerce-MyAccount-content input:focus,
    body.woocommerce-account .woocommerce-MyAccount-content textarea:focus,
    body.woocommerce-account .woocommerce-MyAccount-content select:focus {
        border-color: #197262 !important;
        box-shadow: 0 0 0 3px rgba(25, 114, 98, 0.12) !important;
        outline: none;
    }

    /* === Select2 === */
    body.woocommerce-account .select2-container {
        width: 100% !important;
    }
    body.woocommerce-account .select2-container .select2-selection--single {
        border: 1.5px solid #c5ddd8 !important;
        border-radius: 8px !important;
        min-height: 42px !important;
        height: auto !important;
    }

    /* === Labelek === */
    body.woocommerce-account .woocommerce-MyAccount-content label {
        color: #0A2540;
        font-weight: 600;
        font-size: 14px;
    }

    /* === Form row layout === */
    body.woocommerce-account .woocommerce-MyAccount-content .form-row-first {
        float: left !important;
        width: 48% !important;
    }
    body.woocommerce-account .woocommerce-MyAccount-content .form-row-last {
        float: right !important;
        width: 48% !important;
    }

    /* === "Elfelejtetted a jelszavad?" link elrejtése === */
    body.woocommerce-account .woocommerce-LostPassword {
        display: none !important;
    }

    /* === Notices === */
    body.woocommerce-account .woocommerce-message,
    body.woocommerce-account .woocommerce-info {
        background: #f0faf8;
        border-left: 4px solid #4BAC9B;
        padding: 12px 16px;
        border-radius: 0 8px 8px 0;
        color: #0A2540;
        margin-bottom: 16px;
    }
    body.woocommerce-account .woocommerce-error {
        background: #fef2f2;
        border-left: 4px solid #dc3545;
        padding: 12px 16px;
        border-radius: 0 8px 8px 0;
        margin-bottom: 16px;
    }

    /* === Mobil === */
    @media (max-width: 768px) {
        body.woocommerce-account .woocommerce-MyAccount-content {
            padding: 20px 16px !important;
        }
        body.woocommerce-account .woocommerce-MyAccount-content .form-row-first,
        body.woocommerce-account .woocommerce-MyAccount-content .form-row-last {
            width: 100% !important;
            float: none !important;
        }
    }
    
/* Hide default page H1 on WC account endpoint sub-pages */
body.woocommerce-account:not(.woocommerce-page) h1.h-display,
.woocommerce-account .woocommerce-orders-header h2 { display: block; }

/* WC Account pages: hide theme H1 (Elementor handled it on .hu) */
body.woocommerce-account h1.h-display { display: none !important; }

/* WC account info box button: ensure white text on green bg */
.woocommerce-info .woocommerce-Button, .woocommerce-account .woocommerce-info a.button { color: #fff !important; }

/* WC account: remove excess top space from hidden H1 */
body.woocommerce-account .site-main > * + * { margin-top: 0; }
body.woocommerce-account .woocommerce { padding-top: 24px; padding-bottom: 40px; }

/* WC info box button - force white text */
.woocommerce-info a.button, .woocommerce-info .woocommerce-Button,
.woocommerce-account .woocommerce-message a.button,
.woocommerce-account .woocommerce-info a { color: #ffffff !important; background-color: #156B5C !important; }

/* FINAL button fix - ultra-specific */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info a.woocommerce-Button,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info a.button,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info > a,
html body .woocommerce-info a.woocommerce-Button { color: #fff !important; background-color: #156B5C !important; }

/* tanfolyamaim + account pages: reduce top padding (H1 hidden) */
.page-id-2044 main.page-wrap--narrow,
.page-id-2044 main { padding-top: 20px !important; }
body.woocommerce-account main.page-wrap--narrow,
body.woocommerce-account main { padding-top: 20px !important; }

/* === 2026-06-11 főmenü zöld (user-kérés: #156B5C, fehér Comfortaa) === */
.site-header,.site-header.dynamic-header,.site-header:not(.dynamic-header){background:#156B5C !important;border-bottom-color:rgba(255,255,255,.16) !important;}
.site-header .brand,.site-header .brand__name,.site-header .brand__name em{color:#fff !important;font-family:'Comfortaa',cursive !important;}
.site-header .nav a,.site-header .nav a:hover,.site-header .nav .current-menu-item>a{color:#fff !important;font-family:'Comfortaa',cursive !important;font-weight:600;}
.site-header .nav a::after{background:#fff !important;}
.site-header .icon-btn{color:#fff !important;border-color:rgba(255,255,255,.35) !important;}
.site-header .icon-btn:hover{background:rgba(255,255,255,.12) !important;border-color:rgba(255,255,255,.6) !important;}
/* === /főmenü zöld === */

/* ── Cookie gomb: sötétzöld (#156B5C) + fehér betű (user 2026-06-18, kontraszt-fix) ── */
#moove_gdpr_cookie_info_bar button.mgbutton,
#moove_gdpr_cookie_info_bar #moove_gdpr_cookie_info_bar_thirdparty button,
.moove-gdpr-button-holder button{background:var(--forest-600) !important;color:#fff !important;}
#moove_gdpr_cookie_info_bar button.mgbutton:hover,
#moove_gdpr_cookie_info_bar #moove_gdpr_cookie_info_bar_thirdparty button:hover,
.moove-gdpr-button-holder button:hover{background:var(--forest-700) !important;color:#fff !important;}

/* ═════════════════════════════════════════════════════════════
   24. UI FIXES 2026-06-18 — gomb fehér betű + notice-ikon + block-gombok
   ═════════════════════════════════════════════════════════════ */
/* Minden WC / block / add-to-cart gomb fehér betűvel (a link-szín szabály zöldre vitte) */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce .single_add_to_cart_button, .woocommerce .wc-backward,
.woocommerce .checkout-button, .woocommerce #place_order, .woocommerce .wp-element-button,
.wp-block-button__link, .wc-block-cart__submit-button, .wc-block-components-button,
.return-to-shop a.button, main a.button, body a.button,
.woocommerce a.button:hover, .woocommerce button.button:hover{
  color:#ffffff !important;
}
/* Notice (info/message/error) — a WC-default ráúszó ikon ELREJTÉSE (a téma bal-border-t használ) */
.woocommerce-info::before, .woocommerce-message::before, .woocommerce-error::before,
.woocommerce-noreviews::before, .wc-block-components-notice-banner::before,
.woocommerce-account .woocommerce-info::before, .woocommerce-account .woocommerce-message::before{
  content:none !important; display:none !important;
}
.woocommerce-info, .woocommerce-message, .woocommerce-error{ padding-left:24px !important; }
