@font-face{font-family:'Bricolage';font-weight:700;font-style:normal;font-display:swap;src:url("/assets/fonts/39bb0a42f1d4.woff2") format('woff2');}
@font-face{font-family:'Bricolage';font-weight:800;font-style:normal;font-display:swap;src:url("/assets/fonts/1670d1de4598.woff2") format('woff2');}
@font-face{font-family:'Plus Jakarta Sans';font-weight:400;font-style:normal;font-display:swap;src:url("/assets/fonts/61474df897e5.woff2") format('woff2');}
@font-face{font-family:'Plus Jakarta Sans';font-weight:500;font-style:normal;font-display:swap;src:url("/assets/fonts/db5ebd53e9ff.woff2") format('woff2');}
@font-face{font-family:'Plus Jakarta Sans';font-weight:600;font-style:normal;font-display:swap;src:url("/assets/fonts/dc007dae7e86.woff2") format('woff2');}
@font-face{font-family:'Plus Jakarta Sans';font-weight:700;font-style:normal;font-display:swap;src:url("/assets/fonts/eb1cd4fee1cc.woff2") format('woff2');}
:root{
    --ink:#10171a; --ink-soft:#4c5a5f; --ink-faint:#8a9a9d;
    --paper:#f2f6f5; --surface:#ffffff; --border:#dfe8e6;
    --teal-700:#066b78; --teal-600:#0b93a1; --teal-500:#17b3c1; --teal-pop:#20e6d4;
    --pink-600:#ef1f6f; --pink-700:#c21358;
    --violet-600:#5f2adb; --violet-700:#4a1cb0;
    --lime-500:#d3f23a;
    --deep:#063a40; --deep-soft:#0a545c;
    --on-dark:#eef5f4; --on-dark-soft:#a9bcbc;
    --shadow: 0 1px 2px rgba(16,23,26,.05), 0 18px 40px -18px rgba(16,23,26,.28);
    --shadow-lg: 0 8px 16px rgba(16,23,26,.06), 0 32px 64px -20px rgba(16,23,26,.32);
    --r-lg:20px; --r-md:12px; --r-sm:8px;
    --font-display:'Bricolage','SF Pro Display',system-ui,sans-serif;
    --font-body:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif;
  }
.site-nav{background:var(--deep); display:flex; align-items:center; justify-content:space-between; gap:24px; padding:16px 32px;}
.brand{display:flex; align-items:center; gap:11px;}
.brand img{height:40px; width:auto;}
.brand span{font-family:var(--font-display); font-weight:700; font-size:1.1rem; color:var(--on-dark);}
.nav-links{display:flex; gap:20px; font-size:.82rem; font-weight:600; color:var(--on-dark-soft);}
.nav-links a:hover{color:var(--on-dark);}
.nav-links a.active{color:var(--on-dark);}
.nav-cta{font-family:var(--font-display); font-weight:700; font-size:.85rem; color:var(--ink); background:var(--teal-pop); padding:11px 22px; border-radius:100px;}
@media (max-width:1080px){.nav-links{display:none;}}
.btn{font-family:var(--font-display); font-weight:700; font-size:1rem; border-radius:100px; padding:16px 28px;
    display:inline-flex; align-items:center; gap:9px; cursor:pointer; border:none; transition:transform .15s ease;}
.btn:hover{transform:translateY(-2px);}
.btn-lime{background:var(--teal-pop); color:var(--ink); box-shadow:0 12px 24px -10px rgba(32,230,212,.5);}
.btn-pink{background:var(--pink-600); color:#fff; box-shadow:0 12px 24px -10px rgba(239,31,111,.45);}
.site-footer{background:var(--deep); color:var(--on-dark-soft); padding:56px 32px 28px; margin-top:0;}
.foot-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:32px; padding-bottom:32px; border-bottom:1px solid rgba(255,255,255,.12); max-width:1180px; margin:0 auto;}
@media (max-width:760px){.foot-grid{grid-template-columns:1fr 1fr;}}
.foot-grid h4{font-family:var(--font-display); color:var(--on-dark); font-size:.8rem; text-transform:uppercase; letter-spacing:.06em; margin:0 0 16px; font-weight:700;}
.foot-grid a{display:block; font-size:.86rem; margin-bottom:10px; color:var(--on-dark-soft);}
.foot-brand img{height:36px; margin-bottom:14px;}
.foot-bottom{display:flex; justify-content:space-between; padding-top:20px; font-size:.78rem; flex-wrap:wrap; gap:10px; max-width:1180px; margin:0 auto;}
.brand{color:inherit}
.nav-toggle{display:none;background:transparent;border:2px solid var(--on-dark-soft,#cfd);color:var(--on-dark,#fff);
  border-radius:12px;width:46px;height:42px;font-size:1.3rem;line-height:1;cursor:pointer}
@media (max-width:1080px){.nav-toggle{display:inline-flex;align-items:center;justify-content:center;order:3}.site-nav{flex-wrap:wrap;gap:12px}.site-nav .brand{order:1;margin-right:auto}.site-nav .nav-cta{order:2}.site-nav:not(.open) .nav-links{display:none!important}.site-nav.open .nav-links{display:flex!important;flex-direction:column;gap:4px;width:100%;order:5;
    font-size:1.05rem;padding:10px 0 4px}.site-nav.open .nav-links a{padding:10px 4px;border-top:1px solid rgba(255,255,255,.08)}}
@media (max-width:560px){.nav-cta{padding:10px 16px!important;font-size:.85rem!important}.brand span{display:none}}
.foot-bottom a{color:inherit}
.foot-bottom a:hover,.site-footer a:hover{text-decoration:underline}
.nav-toggle[aria-expanded="true"]{ font-size:0; }
.nav-toggle[aria-expanded="true"]::before{ content:"✕"; font-size:1.3rem; }
.site-nav .nav-links a{ white-space:nowrap; font-size:15.5px !important; }
@media (max-width:1400px){.nav-toggle{display:inline-flex !important;align-items:center;justify-content:center;order:3}.site-nav{flex-wrap:wrap;gap:12px}.site-nav .brand{order:1;margin-right:auto}.site-nav .nav-cta{order:2}.site-nav:not(.open) .nav-links{display:none !important}.site-nav.open .nav-links{display:flex !important;flex-direction:column;gap:4px;width:100%;order:5;font-size:1.05rem;padding:10px 0 4px}.site-nav.open .nav-links a{padding:10px 4px;min-height:46px;display:flex;align-items:center}}
.site-nav{ background:var(--pink-600) !important; position:sticky !important; top:0; z-index:1000; box-shadow:0 8px 22px -10px rgba(60,0,40,.55); }
.site-nav .brand span, .site-nav .nav-links a{ color:#fff !important; }
.site-nav .nav-links a{ opacity:.92; }
.site-nav .nav-links a:hover, .site-nav .nav-links a.active{ opacity:1; text-decoration:underline; text-underline-offset:6px; text-decoration-thickness:2px; }
.site-nav .nav-cta{ background:#fff !important; color:var(--pink-700) !important; font-size:1.05rem !important; padding:12px 24px !important; box-shadow:0 8px 20px -10px rgba(0,0,0,.35); }
.nav-toggle{ border-color:rgba(255,255,255,.8) !important; color:#fff !important; }
.site-nav.open .nav-links a{ border-top-color:rgba(255,255,255,.18) !important; }
.site-nav.open{ max-height:100vh; overflow-y:auto; }
.site-nav .brand span{ color:#3b1a8f !important; }
@media (max-width:1400px){.site-nav .brand{ padding:6px 10px; }}
.foot-social a{ width:44px; height:44px; border-radius:50%; display:inline-flex !important; align-items:center; justify-content:center;
  background:rgba(255,255,255,.1); padding:0 !important; transition:background .15s; }
.foot-social a:hover{ background:var(--pink-600); }
.foot-social svg{ width:22px; height:22px; fill:#fff; }

/* ===== közös kiegészítés (build.py) ===== */
a{color:inherit;text-decoration:none}
.article-content a:not(.btn),.legal-content a:not(.btn){color:var(--teal-700);text-decoration:underline;text-underline-offset:2px}
.article-content a.btn{text-decoration:none;color:#fff}
.article-content p.pt-gomb{margin:22px 0}
a.btn,a.nav-cta{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
button[data-href]{cursor:pointer}
.brand{color:inherit}
.nav-toggle{display:none;background:transparent;border:2px solid var(--on-dark-soft,#cfd);color:var(--on-dark,#fff);
  border-radius:12px;width:46px;height:42px;font-size:1.3rem;line-height:1;cursor:pointer}
@media (max-width:1080px){
  .nav-toggle{display:inline-flex;align-items:center;justify-content:center;order:3}
  .site-nav{flex-wrap:wrap;gap:12px}
  .site-nav .brand{order:1;margin-right:auto}
  .site-nav .nav-cta{order:2}
  .site-nav:not(.open) .nav-links{display:none!important}
  .site-nav.open .nav-links{display:flex!important;flex-direction:column;gap:4px;width:100%;order:5;
    font-size:1.05rem;padding:10px 0 4px}
  .site-nav.open .nav-links a{padding:10px 4px;border-top:1px solid rgba(255,255,255,.08)}
}
@media (max-width:560px){.nav-cta{padding:10px 16px!important;font-size:.85rem!important}.brand span{display:none}}
.foot-bottom a{color:inherit}
.foot-bottom a:hover,.site-footer a:hover{text-decoration:underline}
.wp-figure{margin:28px 0}.wp-figure img{border-radius:16px;width:100%;height:auto;display:block}
.article-content img{border-radius:16px;height:auto}
.article-content table{border-collapse:collapse;width:100%;margin:20px 0;font-size:.95rem}
.article-content td,.article-content th{border:1px solid var(--border);padding:8px 10px;text-align:left;vertical-align:top}
.article-content table{display:block;overflow-x:auto;max-width:100%}
.content-grid>*,.main-col,.sidebar{min-width:0}
@media (max-width:900px){
  .content-grid{grid-template-columns:minmax(0,1fr)!important}
  .photo-gallery,.stats-band{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .photo-gallery img{width:100%;height:auto}
}
@media (max-width:560px){.discount-grid{grid-template-columns:minmax(0,1fr)!important}}

/* ===== mobil-javítások (2026-10-03, ellenőrző csapat 2. jelentése) ===== */
@media (max-width:640px){
  .section > .wrap, .section > .legal-wrap, .wrap.article-wrap, .related-wrap { padding-left:0 !important; padding-right:0 !important; }
  article.section { padding-top:36px !important; }
  .article-cta { padding:28px 20px !important; }
  .article-cta-inner p { text-align:left; }
  .lb-meta { flex-wrap:wrap !important; gap:4px 14px !important; }
  .lb-meta > span { white-space:nowrap; }
  .nav-cta, .nav-toggle, .brand { min-height:44px; }
  .nav-toggle { min-width:46px; }
  .site-nav.open .nav-links a { min-height:46px; display:flex; align-items:center; }
  .filter-chip { min-height:44px; }
  .filter-row { flex-wrap:nowrap !important; overflow-x:auto; margin-inline:-20px; padding:0 20px 6px; scrollbar-width:none; }
  .filter-row::-webkit-scrollbar { display:none; }
  .filter-chip { flex:0 0 auto; }
  .site-footer a { display:inline-block; padding:8px 0; font-size:15px !important; }
  .foot-bottom, .foot-bottom a { font-size:14px !important; }
  .foot-bottom a { padding:10px 4px; }
  .foot-brand p { font-size:14px !important; }
  .site-footer h4 { font-size:14px !important; }
  .foot-brand img { width:64px !important; height:auto !important; }
  .lb-breadcrumb { font-size:14px !important; }
  .lb-breadcrumb a { display:inline-block; padding:8px 0; }
  .lb-breadcrumb > span:last-child { display:inline-block; max-width:100%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; vertical-align:bottom; }
  .cat-tag, .soon-badge, .ec-tag { font-size:12.5px !important; }
  .card-meta { font-size:14px !important; }
  .article-content table { font-size:14px; background:linear-gradient(to left, rgba(0,0,0,.08), transparent 24px) right / 24px 100% no-repeat local; }
  .article-content td, .article-content th { padding:6px 8px; min-width:120px; }
}
@media (max-width:400px){
  .section { padding-left:20px !important; padding-right:20px !important; }
  .lb-header { padding-left:20px !important; padding-right:20px !important; }
  .lb-underline { left:20px !important; }
}
.article-content h5, .article-content h6 { font-size:1.05rem !important; line-height:1.3; margin:22px 0 8px; font-weight:700; }
.article-content p:empty, .article-content p:has(> br:only-child) { display:none; }
.nw { white-space:nowrap; }
@media (max-width:640px){
  .legal-section table, .refund-table { display:block; width:100%; }
  .legal-section table :is(tbody,thead,tr), .refund-table :is(tbody,thead,tr) { display:block; width:100%; }
  .legal-section table :is(td,th), .refund-table :is(td,th) { display:block; width:100% !important; min-width:0 !important; padding:6px 12px !important; }
  .legal-section table tr, .refund-table tr { border-bottom:1px solid var(--border); padding:8px 0; }
  .legal-section table td:first-child, .refund-table td:first-child { font-weight:700; color:var(--ink); }
}
.article-content { overflow-wrap:break-word; }
.article-content a { overflow-wrap:anywhere; }
.article-content blockquote cite { display:block; margin-top:8px; font-style:normal; font-weight:700; color:var(--teal-700); }
.pt-galeria { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:10px; margin:24px 0; }
.pt-galeria img { width:100%; height:160px; object-fit:cover; border-radius:12px; margin:0; }
@media (min-width:700px){ .pt-galeria img { height:200px; } }
.nav-toggle[aria-expanded="true"] { font-size:0; }
.nav-toggle[aria-expanded="true"]::before { content:"✕"; font-size:1.3rem; }

/* ===== mobil-javítások (ellenőrző csapat 1. jelentése: fő oldalak) ===== */
@media (max-width:640px){
  .section, .controls-section { padding-left:20px !important; padding-right:20px !important; }
  .section > .wrap, .controls-section > .wrap { padding-left:0 !important; padding-right:0 !important; }
  .closing-cta { padding:36px 22px !important; }
  .closing-cta .btn { white-space:normal; max-width:100%; text-align:center; }
  .loc-band { padding:36px 20px !important; }
  .loc-band * { max-width:100%; box-sizing:border-box; }
  .loc-band > *, .loc-band [class*="grid"] > * { min-width:0; }
  .loc-band [class*="grid"] { grid-template-columns:minmax(0,1fr) !important; }
  .newsletter { padding:36px 22px !important; }
  .newsletter-form { flex-direction:column !important; align-items:stretch !important; }
  .newsletter-form input { width:100% !important; min-width:0 !important; }
  .nl-consent { display:block !important; }
  .nl-consent input { width:22px; height:22px; vertical-align:middle; margin-right:6px; }
  .mission-photo .badge { position:static !important; margin-top:12px; align-self:flex-start; display:inline-flex; }
  .detail-hero::before { background:linear-gradient(180deg,rgba(6,40,45,.8),rgba(6,40,45,.55) 45%,rgba(6,40,45,.9)) !important; }
  .detail-hero-inner h1, .detail-hero-inner .breadcrumb { text-shadow:0 1px 8px rgba(0,0,0,.5); }
  .contact-grid { grid-template-columns:minmax(0,1fr) !important; }
  .form-card { padding:28px 20px !important; }
  .guide-promo { flex-direction:column !important; align-items:flex-start !important; padding:24px 20px !important; }
  .guide-promo .btn { max-width:100%; white-space:normal; }
  .testi-feature .quote, .testi-feature p { font-size:1.1rem !important; line-height:1.5 !important; font-weight:600 !important; }
  .challenge p { text-align:left !important; }
  #pricingActive table td, #pricingActive table th { display:block; width:100%; }
  .toggle-btn, .chip, .legal-toc a { min-height:44px; }
  .breadcrumb a { display:inline-block; padding:8px 0; }
  .site-footer, .foot-bottom span, .breadcrumb, .nav-cta, .camp-meta span, .camp-link, .testi-card p, .discount-card .lbl,
  .price-sub, #locAddress, #locTransport, .form-field label, .related-card p, .trust-line span { font-size:14px !important; }
  .kicker, .eyebrow, .badge, .hb, .camp-type, .blog-cat, .mini-badge, .vp-badge, .booking-badge { font-size:12px !important; letter-spacing:.06em; }
  .foot-brand { grid-column:1/-1; }
  .foot-brand img { width:120px !important; }
  .loc-photo img { max-height:60vh; object-fit:cover; width:100%; }
  [class*="gallery"] > :last-child:nth-child(odd) { grid-column:1/-1; }
}
.camp-visual.placeholder > span { font-size:2.4rem; }
.camp-visual.placeholder .badge { font-size:.8rem !important; }
.product-card h3 { white-space:normal !important; overflow-wrap:anywhere; }
.block ul li { display:block !important; position:relative; padding-left:28px; }
.block ul li > .icon, .block ul li > :first-child:is(.ic, .icon, svg, img) { position:absolute; left:0; top:3px; }
.camp-foot { flex-wrap:wrap; gap:8px; }
/* látványterv-maradványok: élesben nem látszanak (a JS-ük működik tovább) */
.mission-photo .video-block, .close-note, .demo-toggle-inner, .demo-toggle, .legend-row, .block-tag, .draft-banner { display:none !important; }
/* mobil: alul tapadó jelentkezés/vásárlás gomb */
.pt-mobil-cta { display:none !important; }
@media (max-width:900px){
  .pt-mobil-cta { display:flex !important; position:fixed; left:12px; right:12px; bottom:12px; z-index:60; justify-content:center;
    box-shadow:0 14px 30px -8px rgba(239,31,111,.55); min-height:52px; font-size:1.05rem !important; }
  body.van-mobil-cta { padding-bottom:84px; }
}

/* ===== YouTube: kattintásra töltődő lejátszó (saját bélyegkép, youtube-nocookie) ===== */
.pt-yt { position:relative; width:100%; border-radius:18px; overflow:hidden; background:#0b1a1d center/cover no-repeat; cursor:pointer; }
.pt-yt.allo { aspect-ratio:9/16; max-width:340px; margin-inline:auto; }
.pt-yt.fekvo { aspect-ratio:16/9; }
.pt-yt iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.pt-yt .pt-yt-play { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:74px; height:74px; border-radius:50%;
  background:var(--pink-600); display:flex; align-items:center; justify-content:center; box-shadow:0 12px 30px -8px rgba(239,31,111,.6); transition:transform .15s; }
.pt-yt:hover .pt-yt-play { transform:translate(-50%,-50%) scale(1.06); }
.pt-yt .pt-yt-play svg { width:30px; height:30px; fill:#fff; margin-left:4px; }
.pt-yt .pt-yt-cim { position:absolute; left:0; right:0; bottom:0; padding:28px 16px 14px; color:#fff; font-weight:700; font-size:1rem;
  background:linear-gradient(transparent, rgba(0,0,0,.7)); }
.pt-video-racs { display:grid; grid-template-columns:minmax(0,63fr) minmax(0,100fr); gap:16px; align-items:stretch; }
.pt-video-racs > .pt-yt.allo { max-width:none; margin:0; height:100%; aspect-ratio:auto; min-height:0; }
.pt-video-jobb { display:flex; flex-direction:column; gap:16px; }
@media (max-width:640px){ .pt-video-racs { grid-template-columns:1fr; } .pt-video-racs > .pt-yt.allo { aspect-ratio:9/16; max-width:340px; margin-inline:auto; height:auto; } }
.pt-modal { position:fixed; inset:0; z-index:100000; background:rgba(5,15,18,.86); display:flex; align-items:center; justify-content:center; padding:20px; }
.pt-modal .pt-yt { max-height:86vh; width:auto; height:86vh; }
.pt-modal .pt-yt.fekvo { width:min(92vw,1100px); height:auto; }
.pt-modal-x { position:absolute; top:14px; right:16px; width:48px; height:48px; border-radius:50%; border:0; background:#fff; font-size:1.4rem; cursor:pointer; }

/* ===== Tomi kérései 2026-10-04 ===== */
/* magenta fejléc (a gombok magentája), nagyobb „Jelentkezés” */
.site-nav .nav-links { gap:18px !important; }
.site-nav .nav-links a { white-space:nowrap; font-size:15.5px !important; }
@media (max-width:1400px){
  .nav-toggle{display:inline-flex !important;align-items:center;justify-content:center;order:3}
  .site-nav{flex-wrap:wrap;gap:12px}
  .site-nav .brand{order:1;margin-right:auto}
  .site-nav .nav-cta{order:2}
  .site-nav:not(.open) .nav-links{display:none !important}
  .site-nav.open .nav-links{display:flex !important;flex-direction:column;gap:4px;width:100%;order:5;font-size:1.05rem;padding:10px 0 4px}
  .site-nav.open .nav-links a{padding:10px 4px;min-height:46px;display:flex;align-items:center}
}
.site-nav { background:var(--pink-600) !important; position:sticky !important; top:0; z-index:1000; box-shadow:0 8px 22px -10px rgba(60,0,40,.55); }
.site-nav .brand span, .site-nav .nav-links a { color:#fff !important; }
.site-nav .nav-links a { opacity:.92; }
.site-nav .nav-links a:hover, .site-nav .nav-links a.active { opacity:1; text-decoration:underline; text-underline-offset:6px; text-decoration-thickness:2px; }
.site-nav .nav-cta { background:#fff !important; color:var(--pink-700) !important; font-size:1.05rem !important; padding:12px 24px !important; box-shadow:0 8px 20px -10px rgba(0,0,0,.35); }
.nav-toggle { border-color:rgba(255,255,255,.8) !important; color:#fff !important; }
.site-nav.open .nav-links a { border-top-color:rgba(255,255,255,.18) !important; }
/* rögzített menü: görgetéskor is fent marad (Tomi, 2026-10-04) */
html { scroll-padding-top:96px; }
body.admin-bar .site-nav { top:32px; }
@media (max-width:782px){ body.admin-bar .site-nav { top:0; } }
.site-nav.open { max-height:100vh; overflow-y:auto; }
/* „Mit mondanak rólunk?” kiemelt idézet: a doboz teljes szélességében fut, nem törik rövid sorokra (Tomi, 2026-10-04) */
.testi-feature .quote { max-width:none !important; text-wrap:wrap !important; }
/* „Jelentkezés nyitva” címke: nagyobb, lime — nem magenta (Tomi, 2026-10-04) */
.badge.pt-nyitva, .hb.pt-nyitva { background:#d8f34a !important; color:#2e1470 !important; font-size:.95rem !important; font-weight:800 !important;
  padding:8px 14px !important; border-radius:999px !important; box-shadow:0 6px 16px -6px rgba(46,20,112,.45); letter-spacing:0 !important; text-transform:none !important; }
/* logó fehér címkén, hogy a rózsaszín része ne olvadjon bele a magenta fejlécbe (Tomi, 2026-10-04, B változat) */
.site-nav .brand { background:#fff; border-radius:999px; padding:6px 16px 6px 8px; box-shadow:0 4px 14px -4px rgba(60,0,40,.45); }
.site-nav .brand span { color:#3b1a8f !important; }
@media (max-width:1400px){ .site-nav .brand { padding:6px 10px; } }
/* nagyobb gombfelirat mindenhol */
.btn, a.btn, button.btn { font-size:1.12rem !important; }
.btn-sm, .chip, .filter-chip, .toggle-btn, .year-tab { font-size:1rem !important; }
/* banner-szöveg: ne törjön a banner felénél */
.lb-h1 { max-width:none !important; }
.lb-lead { max-width:none !important; }
.lb-teal .lb-fade { background:linear-gradient(90deg,#eaf7f6 0%,#eaf7f6 55%,rgba(234,247,246,.6) 75%,transparent 95%) !important; }
/* közösségi ikonok a láblécben */
.foot-social { display:flex; gap:12px; margin-top:16px; }
.foot-social a { width:44px; height:44px; border-radius:50%; display:inline-flex !important; align-items:center; justify-content:center;
  background:rgba(255,255,255,.1); padding:0 !important; transition:background .15s; }
.foot-social a:hover { background:var(--pink-600); }
.foot-social svg { width:22px; height:22px; fill:#fff; }
.form-msg{margin-top:14px;font-weight:600;font-size:1rem}
.form-msg.ok{color:var(--teal-700);background:#eaf7f6;padding:14px 16px;border-radius:14px;font-size:1.05rem}.form-msg.err{color:var(--pink-700,#b0185a)}

/* ===== Prestige bolt — a WordPress (Divi + WooCommerce) oldalai az új arculatban =====
   A mu-plugin (pt-uj-arculat.php) a <body>-ra teszi a .pt-uj osztályt, a régi Divi-fejlécet és
   -láblécet elrejti, és az új menüt/láblécet adja be. Házszabály: nincs fekete gomb, olvasható betűméret. */

/* régi Divi-fejléc/-lábléc ki */
body.pt-uj #top-header, body.pt-uj #main-header, body.pt-uj #main-footer,
body.pt-uj .et-l--header, body.pt-uj .et-l--footer, body.pt-uj #et-top-navigation,
body.pt-uj .et_slide_in_menu_container { display:none !important; }
body.pt-uj #page-container { padding-top:0 !important; margin-top:0 !important; }
body.pt-uj.et_fixed_nav #page-container { padding-top:0 !important; }

/* alap tipográfia */
body.pt-uj { font-family:var(--font-body) !important; color:var(--ink); background:#fff; font-size:16px; line-height:1.6; }
body.pt-uj h1, body.pt-uj h2, body.pt-uj h3, body.pt-uj h4,
body.pt-uj .product_title, body.pt-uj .entry-title { font-family:var(--font-display) !important; color:var(--ink); letter-spacing:-.01em; font-weight:700; }
body.pt-uj p, body.pt-uj li, body.pt-uj td, body.pt-uj label { font-size:1rem; }
body.pt-uj a { color:var(--teal-700); }
body.pt-uj .site-nav a, body.pt-uj .site-footer a { color:inherit; }
body.pt-uj .site-nav .nav-cta { color:var(--ink); }

/* tartalmi szélesség */
body.pt-uj .woocommerce-page #main-content .container,
body.pt-uj.woocommerce-page #main-content .container { max-width:1180px; width:92%; padding-top:40px; }
body.pt-uj #main-content .container:before { display:none; }        /* Divi oldalsáv-vonal */
body.pt-uj.woocommerce-page #left-area { width:100%; padding-right:0; }
body.pt-uj.woocommerce-page #sidebar { display:none; }

/* gombok: élénk, kerek — soha nem fekete */
body.pt-uj .woocommerce a.button, body.pt-uj .woocommerce button.button, body.pt-uj .woocommerce input.button,
body.pt-uj .woocommerce #respond input#submit, body.pt-uj .woocommerce-page a.button, body.pt-uj .woocommerce-page button.button,
body.pt-uj .woocommerce button.button.alt, body.pt-uj .woocommerce a.button.alt, body.pt-uj #place_order,
body.pt-uj .single_add_to_cart_button, body.pt-uj .checkout-button, body.pt-uj .et_pb_button {
  font-family:var(--font-display) !important; font-weight:700 !important; font-size:1.05rem !important;
  background:var(--pink-600) !important; color:#fff !important; border:none !important; border-radius:100px !important;
  padding:14px 28px !important; line-height:1.2 !important; box-shadow:0 12px 24px -10px rgba(239,31,111,.45);
  transition:transform .15s ease; text-transform:none !important; letter-spacing:0 !important;
}
body.pt-uj .woocommerce a.button:hover, body.pt-uj .woocommerce button.button:hover, body.pt-uj #place_order:hover,
body.pt-uj .single_add_to_cart_button:hover, body.pt-uj .et_pb_button:hover { transform:translateY(-2px); background:var(--pink-700) !important; padding:14px 28px !important; }
body.pt-uj .woocommerce a.button:after, body.pt-uj .woocommerce button.button:after, body.pt-uj .et_pb_button:after { display:none !important; }
body.pt-uj .woocommerce button.button:disabled, body.pt-uj .woocommerce button.button.disabled { opacity:.55; }
/* másodlagos gombok (kupon, kosár frissítése) türkiz */
body.pt-uj .woocommerce-cart-form button[name="update_cart"], body.pt-uj .coupon button.button {
  background:var(--teal-pop) !important; color:var(--ink) !important; box-shadow:0 12px 24px -10px rgba(32,230,212,.5);
}

/* űrlapmezők */
body.pt-uj .woocommerce form .form-row input.input-text, body.pt-uj .woocommerce form .form-row textarea,
body.pt-uj .woocommerce form .form-row select, body.pt-uj .woocommerce .quantity input.qty, body.pt-uj select,
body.pt-uj .select2-container--default .select2-selection--single, body.pt-uj input[type=text], body.pt-uj input[type=email], body.pt-uj input[type=tel] {
  border:1.5px solid var(--border) !important; border-radius:14px !important; background:#fff !important;
  padding:12px 14px !important; font-size:1rem !important; color:var(--ink) !important; font-family:var(--font-body) !important; min-height:48px;
}
body.pt-uj .select2-container--default .select2-selection--single .select2-selection__rendered { line-height:22px; padding:0; }
body.pt-uj input:focus, body.pt-uj select:focus, body.pt-uj textarea:focus { outline:3px solid rgba(11,147,161,.25) !important; border-color:var(--teal-600) !important; }
body.pt-uj .woocommerce form .form-row label { font-weight:600; color:var(--ink-soft); font-size:.95rem; }

/* termékoldal */
body.pt-uj.single-product .product_title { font-size:clamp(1.8rem,3.4vw,2.6rem); line-height:1.12; margin-bottom:12px; }
body.pt-uj .woocommerce div.product p.price, body.pt-uj .woocommerce div.product span.price,
body.pt-uj .woocommerce ul.products li.product .price { color:var(--teal-700) !important; font-family:var(--font-display); font-weight:800; font-size:1.5rem; }
body.pt-uj .woocommerce div.product p.price del { color:var(--ink-faint) !important; font-size:1.1rem; }
body.pt-uj .woocommerce span.onsale { background:var(--pink-600) !important; border-radius:100px; font-family:var(--font-display); padding:4px 14px !important; min-height:auto; line-height:1.6; }
body.pt-uj .woocommerce div.product div.images img { border-radius:20px; }
body.pt-uj .woocommerce div.product .woocommerce-tabs ul.tabs li { border-radius:14px 14px 0 0; background:var(--paper); border-color:var(--border); }
body.pt-uj .woocommerce div.product .woocommerce-tabs ul.tabs li.active { background:#fff; }
body.pt-uj .woocommerce div.product form.cart .variations td, body.pt-uj .woocommerce div.product form.cart .variations th { padding:8px 0; }
body.pt-uj .product_meta { font-size:.9rem; color:var(--ink-faint); }

/* kosár, pénztár */
body.pt-uj .woocommerce table.shop_table { border:1px solid var(--border); border-radius:18px; overflow:hidden; border-collapse:separate; }
body.pt-uj .woocommerce table.shop_table th { font-family:var(--font-display); background:var(--paper); color:var(--ink); }
body.pt-uj .woocommerce table.shop_table td { border-top:1px solid var(--border); }
body.pt-uj .woocommerce-checkout #payment, body.pt-uj .woocommerce-cart .cart-collaterals .cart_totals {
  background:var(--paper) !important; border-radius:20px; padding:22px; }
body.pt-uj .woocommerce-checkout #payment div.payment_box { background:#fff !important; border-radius:14px; color:var(--ink); }
body.pt-uj .woocommerce-checkout #payment div.payment_box:before { border-bottom-color:#fff !important; }
body.pt-uj .woocommerce-message, body.pt-uj .woocommerce-info { border-top-color:var(--teal-600) !important; background:#eaf7f6 !important; color:var(--ink) !important; border-radius:14px; }
body.pt-uj .woocommerce-error { border-top-color:var(--pink-600) !important; border-radius:14px; }
body.pt-uj .woocommerce-message:before, body.pt-uj .woocommerce-info:before { color:var(--teal-600) !important; }

/* oldalcím-sáv a bolti oldalakon (a mu-plugin teszi be) */
.pt-bolt-fejlec { background:#eaf7f6; padding:44px 0 36px; position:relative; overflow:hidden; }
.pt-bolt-fejlec .pt-in { max-width:1180px; width:92%; margin:0 auto; position:relative; z-index:2; }
.pt-bolt-fejlec .pt-bc { font-size:.9rem; color:var(--ink-faint); margin-bottom:8px; }
.pt-bolt-fejlec .pt-bc a { color:var(--teal-700); font-weight:600; }
.pt-bolt-fejlec h1 { font-family:var(--font-display); font-size:clamp(1.9rem,3.6vw,2.6rem); margin:0; color:var(--ink); }
.pt-bolt-fejlec:after { content:''; position:absolute; top:-30%; right:-8%; width:58%; height:170%; pointer-events:none;
  background:linear-gradient(112deg,transparent 28%,rgba(11,147,161,.4) 42%,transparent 56%),linear-gradient(112deg,transparent 50%,rgba(95,42,219,.25) 64%,transparent 78%);
  filter:blur(46px); transform:rotate(-6deg); }
.pt-bolt-fejlec .pt-vonal { position:absolute; left:4%; bottom:0; width:44px; height:3px; border-radius:100px; background:linear-gradient(90deg,var(--teal-600),var(--violet-600)); }

@media (max-width:980px){
  body.pt-uj .woocommerce div.product div.images, body.pt-uj .woocommerce div.product div.summary { width:100% !important; float:none !important; }
}

/* Divi-színek felülírása (a Divi testreszabó kékje erősebb szelektorral jön) */
body.pt-uj.woocommerce div.product p.price, body.pt-uj.woocommerce div.product span.price,
body.pt-uj.woocommerce-page div.product p.price, body.pt-uj.woocommerce-page div.product span.price,
body.pt-uj .woocommerce ul.products li.product .price, body.pt-uj.woocommerce ul.products li.product .price,
body.pt-uj .woocommerce-Price-amount { color:var(--teal-700) !important; }
body.pt-uj.woocommerce span.onsale, body.pt-uj.woocommerce-page span.onsale, body.pt-uj .woocommerce span.onsale {
  background:var(--pink-600) !important; color:#fff !important; border-radius:100px !important; font-family:var(--font-display) !important;
  font-weight:700 !important; padding:6px 16px !important; font-size:.95rem !important; }
body.pt-uj .site-footer h4 { color:var(--teal-pop) !important; font-family:var(--font-display) !important; }
body.pt-uj .site-footer p { color:var(--on-dark-soft) !important; }
body.pt-uj .woocommerce ul.products li.product .woocommerce-loop-product__title { font-family:var(--font-display) !important; color:var(--ink); }

/* ===== mobil-javítások (ellenőrző csapat 4. jelentése: bolt) ===== */
/* a WooCommerce-szabályok a termék- és listaoldalakon is érvényesüljenek (ott a .woocommerce a <body>-n van) */
body.pt-uj:is(.woocommerce,.woocommerce-page) .quantity input.qty { min-height:48px; width:64px; font-size:16px !important; padding:10px 8px !important;
  border:1.5px solid var(--border) !important; border-radius:14px !important; text-align:center; }
body.pt-uj:is(.woocommerce,.woocommerce-page) ul.products li.product a.button { background:var(--pink-600) !important; color:#fff !important; border-radius:100px !important;
  min-height:44px; width:100%; display:inline-flex; align-items:center; justify-content:center; padding:10px 16px !important; font:700 .95rem/1.2 var(--font-display) !important; text-align:center; }
body.pt-uj:is(.woocommerce,.woocommerce-page) ul.products li.product .price { font-size:1.05rem !important; }
body.pt-uj:is(.woocommerce,.woocommerce-page) div.product div.images img { border-radius:20px; }
body.pt-uj div.product p.price del, body.pt-uj div.product p.price del .amount { color:var(--ink-faint) !important; font-size:1.1rem; }
body.pt-uj div.product p.price ins { text-decoration:none; }
body.pt-uj.single-product table.variations, body.pt-uj.single-product table.variations :is(tbody,tr,th,td) { display:block; width:100%; text-align:left; padding:0; }
body.pt-uj.single-product table.variations th.label { padding:0 0 6px; line-height:1.35; }
body.pt-uj.single-product table.variations select { width:100% !important; min-width:0 !important; max-width:100%; text-overflow:ellipsis; }
body.pt-uj.single-product span.onsale { top:8px !important; left:8px !important; }
body.pt-uj input:is([type=checkbox],[type=radio]) { width:22px; height:22px; accent-color:var(--teal-600); margin-right:8px; vertical-align:middle; flex:none; }
body.pt-uj label:has(> input:is([type=checkbox],[type=radio])) { display:inline-flex; align-items:center; gap:6px; min-height:44px; }
body.pt-uj .woocommerce .cart_totals table.shop_table :is(tbody,tr,td,th) { display:block; width:100%; }
body.pt-uj .woocommerce .cart_totals table.shop_table tr { display:flex; justify-content:space-between; gap:12px; }
body.pt-uj .woocommerce .coupon { display:flex; gap:10px; width:100%; }
body.pt-uj .woocommerce .coupon #coupon_code { flex:1; width:auto !important; }
body.pt-uj .woocommerce .coupon button.button { white-space:nowrap; padding:12px 18px !important; }
body.pt-uj .woocommerce td.product-remove a.remove { width:44px; height:44px; line-height:44px; font-size:1.6rem; }
body.pt-uj .woocommerce-checkout #payment { padding:16px; }
body.pt-uj .woocommerce-checkout #payment ul.payment_methods { padding:0; }
body.pt-uj .woocommerce-checkout #payment div.payment_box { margin:12px 0 0; padding:12px; }
body.pt-uj #wc-stripe-upe-form { border:0; padding:0; margin:0; min-width:0; }
@media (max-width:480px){ body.pt-uj .woocommerce form :is(.form-row-first,.form-row-last) { width:100% !important; float:none !important; } }
body.pt-uj .wpuf-form textarea { font-size:16px !important; border:1.5px solid var(--border) !important; border-radius:14px !important; padding:12px 14px !important;
  background:#fff !important; width:100% !important; min-height:120px; font-family:var(--font-body) !important; }
body.pt-uj .wpuf-form input.weforms_submit_btn { background:var(--pink-600) !important; color:#fff !important; border:0 !important; border-radius:100px !important; min-height:48px;
  width:100%; padding:12px 28px !important; font:700 1.05rem var(--font-display) !important; box-shadow:none !important; text-shadow:none !important; }
body.pt-uj .wpuf-form a[id$="-pickfiles"] { display:inline-flex; align-items:center; min-height:44px; padding:8px 18px; border:1.5px solid var(--teal-600); border-radius:100px; background:#fff; text-decoration:none; }
body.pt-uj .wpuf-form .wpuf-help { font:normal .9rem/1.4 var(--font-body) !important; color:var(--ink-soft); }
body.pt-uj ul.wpuf-form li.wpuf-el { padding-left:0; padding-right:0; }
body.pt-uj .tnp-subscription input.tnp-submit { background:var(--pink-600) !important; color:#fff; border:0; border-radius:100px; min-height:48px; padding:0 28px; font:700 1.05rem var(--font-display); }
body.pt-uj .tnp-subscription label { font-weight:600; color:var(--ink-soft); font-size:.95rem; }
body.pt-uj.archive .woocommerce-products-header__title { display:none; }
body.pt-uj .product_meta > span { display:block; margin-bottom:8px; }
body.pt-uj .product_meta a { display:inline-block; padding:6px 0; }
@media (max-width:640px){ body.pt-uj .product_meta .tagged_as { display:none; } }
body.pt-uj ul.tabs li a { min-height:44px; display:flex !important; align-items:center; }
body.pt-uj button.show-password-input { width:44px; height:44px; }
body.pt-uj .pt-bolt-fejlec .pt-bc a { display:inline-block; padding:10px 0; }
body.pt-uj .woocommerce button.button:disabled, body.pt-uj .woocommerce button.button.disabled { opacity:.75 !important; background:var(--ink-faint) !important; }
.pt-szoveg :is(h5,h6) { font-size:1rem; }

/* ===== 2026-10-04: kosár, napijegy-napok, pénztár, köszönőoldal (mu-plugins/pt-bolt.php + sablon thankyou.php) ===== */
/* kosár: „Kupon beváltása” és „Kosár frissítése” egymás alatt, nem fedik egymást */
body.pt-uj .woocommerce-cart-form td.actions { padding:18px !important; text-align:left; }
body.pt-uj .woocommerce-cart-form td.actions .coupon { float:none !important; display:flex; flex-direction:column; gap:12px; width:100%; max-width:340px; margin:0 0 12px; padding:0; }
body.pt-uj .woocommerce-cart-form td.actions .coupon label { position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
body.pt-uj .woocommerce-cart-form td.actions .coupon #coupon_code,
body.pt-uj .woocommerce-cart-form td.actions .coupon button.button,
body.pt-uj .woocommerce-cart-form td.actions > button[name="update_cart"] { width:100% !important; max-width:340px; margin:0 !important; float:none !important; display:block; }
body.pt-uj .woocommerce-cart-form td.actions > button[name="update_cart"] { clear:both; }
body.pt-uj .woocommerce-cart-form td.actions .coupon #coupon_code { flex:none !important; height:48px; }
/* a pénztár/kosár szélesebb a szöveges oldalaknál, a táblázatok teljes szélességűek */
body.pt-uj.woocommerce-checkout .pt-szoveg, body.pt-uj.woocommerce-cart .pt-szoveg { max-width:1080px; }
body.pt-uj .pt-szoveg .woocommerce table.shop_table { display:table; width:100%; overflow:visible; }
/* kosár: üres „Mennyiség” oszlop ki (a tábortermékek egyenként vásárolhatók), mobilon a végösszeg-címke ne duplázódjon */
body.pt-uj table.shop_table.cart:not(:has(input.qty:not([type=hidden]))) .product-quantity { display:none !important; }
body.pt-uj .woocommerce .cart_totals table.shop_table td::before { display:none !important; }
body.pt-uj .woocommerce .cart_totals table.shop_table td { text-align:right; }
/* napijegy: napválasztó */
body.pt-uj .pt-napok { border:1.5px solid var(--border); border-radius:18px; padding:16px 18px 10px; margin:6px 0 18px; background:#fff; }
body.pt-uj .pt-napok legend { font-family:var(--font-display); font-weight:700; font-size:1.05rem; padding:0 6px; color:var(--ink); }
body.pt-uj .pt-napok abbr { text-decoration:none; color:var(--pink-600); }
body.pt-uj .pt-napok-sugo { margin:0 0 8px; font-size:.92rem; color:var(--ink-soft); }
body.pt-uj .pt-napok-lista { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:4px 14px; }
body.pt-uj .pt-nap { display:flex !important; align-items:center; gap:8px; min-height:44px; cursor:pointer; font-size:1rem; }
body.pt-uj .pt-napok-osszeg { margin:10px 0 4px; font-size:1.05rem; }
body.pt-uj .pt-napok-osszeg strong { color:var(--teal-700); font-family:var(--font-display); font-size:1.2rem; }
body.pt-uj .pt-napok.pt-hiba { border-color:var(--pink-600); }
body.pt-uj .pt-per-nap { font-size:.6em; color:var(--ink-soft); font-weight:600; }
/* nem foglalható régi turnus */
body.pt-uj .pt-nem-foglalhato { background:#fff4f8; border:1.5px solid #f6c2d6; border-radius:18px; padding:18px 20px; margin:14px 0 22px; }
body.pt-uj .pt-nem-foglalhato strong { font-family:var(--font-display); font-size:1.15rem; color:var(--ink); }
body.pt-uj a.pt-nf-gomb { display:inline-flex; align-items:center; min-height:48px; padding:12px 26px; border-radius:100px; background:var(--pink-600);
  color:#fff !important; text-decoration:none !important; font:700 1rem/1.2 var(--font-display); }
body.pt-uj a.pt-nf-gomb:hover { background:var(--pink-700); }
body.pt-uj .pt-nem-foglalhato p { margin:6px 0 14px; color:var(--ink-soft); }
/* pénztár: rejtett ország/megye, résztvevők, jogi tájékoztató */
body.pt-uj .woocommerce form .form-row.pt-rejtett, body.pt-uj #billing_country_field, body.pt-uj #billing_state_field { display:none !important; }
body.pt-uj .woocommerce-billing-fields__field-wrapper { display:flow-root; }
body.pt-uj .woocommerce form .form-row-first, body.pt-uj .woocommerce form .form-row-last { width:48.5%; }
body.pt-uj .woocommerce form .form-row-first { clear:left; }
body.pt-uj .pt-resztvevok { clear:both; margin:26px 0 8px; padding:20px 20px 8px; background:#eaf7f6; border-radius:20px; }
body.pt-uj .pt-resztvevok h3 { margin:0 0 10px; font-size:1.25rem; }
body.pt-uj .pt-resztvevok .optional { font-weight:400; color:var(--ink-faint); font-size:.9rem; }
body.pt-uj .pt-uj-gyermek-sor { margin:0 0 14px; }
body.pt-uj button.pt-uj-gyermek { background:#fff; color:var(--teal-700); border:1.5px dashed var(--teal-600); border-radius:100px; min-height:44px;
  padding:8px 20px; font:700 1rem var(--font-display); cursor:pointer; }
body.pt-uj button.pt-uj-gyermek:hover { background:#f4fbfb; }
body.pt-uj .pt-jogi-info { font-size:.9rem; line-height:1.5; color:var(--ink-soft); background:#fff; border-radius:14px; padding:12px 14px; margin:0 0 14px; }
body.pt-uj #place_order { width:100%; white-space:normal; }
@media (max-width:640px){
  body.pt-uj .woocommerce form .form-row-first, body.pt-uj .woocommerce form .form-row-last { width:100% !important; float:none !important; }
  body.pt-uj .pt-resztvevok { padding:16px 14px 6px; }
}
/* köszönőoldal */
body.pt-uj .pt-koszono { background:linear-gradient(135deg,#eaf7f6 0%,#fff4f8 100%); border-radius:24px; padding:34px 30px; margin:0 0 34px; }
body.pt-uj .pt-koszono h2 { font-family:var(--font-display); font-size:clamp(1.6rem,3vw,2.2rem); margin:0 0 12px; color:var(--ink); }
body.pt-uj .pt-koszono-lead { font-size:1.12rem; color:var(--ink-soft); margin:0 0 22px; }
body.pt-uj .pt-adatlap-doboz { background:#fff; border-radius:20px; padding:24px; box-shadow:0 18px 40px -24px rgba(11,147,161,.45); margin:0 0 18px; }
body.pt-uj .pt-adatlap-doboz h3 { font-family:var(--font-display); margin:0 0 8px; font-size:1.3rem; }
body.pt-uj .pt-adatlap-doboz p { margin:0 0 18px; color:var(--ink-soft); }
body.pt-uj a.pt-adatlap-gomb { display:inline-flex; align-items:center; justify-content:center; min-height:56px; padding:16px 34px; border-radius:100px;
  background:var(--pink-600); color:#fff !important; text-decoration:none !important; font:800 1.15rem/1.2 var(--font-display); box-shadow:0 14px 28px -12px rgba(239,31,111,.55);
  transition:transform .15s ease; text-align:center; }
body.pt-uj a.pt-adatlap-gomb:hover { transform:translateY(-2px); background:var(--pink-700); }
body.pt-uj .pt-koszono-tajek { margin:0; font-size:.98rem; color:var(--ink-soft); }
body.pt-uj .pt-koszono--hiba { background:#fff4f8; }
body.pt-uj .pt-osszesito-cim { font-family:var(--font-display); font-size:1.4rem; margin:0 0 14px; }
body.pt-uj ul.woocommerce-order-overview { display:flex; flex-wrap:wrap; gap:10px 28px; list-style:none; padding:16px 20px; margin:0 0 28px; background:var(--paper); border-radius:18px; }
body.pt-uj ul.woocommerce-order-overview li { margin:0; border:0 !important; padding:0 !important; font-size:.92rem; color:var(--ink-soft); }
body.pt-uj ul.woocommerce-order-overview li strong { display:block; font-size:1.05rem; color:var(--ink); }
@media (max-width:560px){ body.pt-uj .pt-koszono { padding:24px 18px; } body.pt-uj a.pt-adatlap-gomb { width:100%; } }

/* Kosár: a „Kosár frissítése” gomb nem kell (a táboroknál a darabszám mindig 1, a gyermekszámot a termékoldalon választják) — Tomi, 2026-10-04 */
body.pt-uj .woocommerce-cart-form button[name="update_cart"] { display:none !important; }
