/* =====================================================================
   REPAIRCENTER — aloldalak stílusai (az editorial.css-re épül)
   ===================================================================== */

/* JS nélkül is látszódjon minden (az animáció csak JS-sel indul) */
html:not(.js) .ed-reveal,
html:not(.js) .ed-reveal-stagger > * { opacity: 1 !important; transform: none !important; }

.sr-only { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.rc-skip { position: absolute; left: -9999px; top: 0; z-index: 10000; background: #000; color: #fff !important; padding: 10px 16px; }
.rc-skip:focus { left: 8px; top: 8px; }
[hidden] { display: none !important; }
body.rc-noscroll { overflow: hidden; }

/* --- Fejléc ----------------------------------------------------------- */
.rc-header .sidemenu_btn { background: transparent; border: 0; font-size: 20px; color: var(--text-primary); padding: 8px 12px; cursor: pointer; }
.rc-header .navbar-nav .nav-link.active { color: var(--text-primary) !important; font-weight: 600; }
.rc-header .logo-center img { height: 40px; width: auto; }

/* Oldalsó menü */
.rc-side-menu { position: fixed; inset: 0; z-index: 10001; background: rgba(0,0,0,0); transition: background .25s ease; }
.rc-side-menu.is-open { background: rgba(0,0,0,.35); }
.rc-side-inner {
    position: absolute; top: 0; left: 0; bottom: 0; width: min(360px, 88vw);
    background: #fff; padding: 64px 28px 28px; overflow-y: auto;
    transform: translateX(-100%); transition: transform .25s var(--ease);
    box-shadow: var(--shadow-deep);
}
.rc-side-menu.is-open .rc-side-inner { transform: none; }
.rc-side-close { position: absolute; top: 14px; right: 14px; width: 40px; height: 40px; border-radius: 50%; border: 0; background: var(--bg-tertiary); font-size: 18px; cursor: pointer; }
.rc-side-list { list-style: none; margin: 0 0 24px; padding: 0; }
.rc-side-list li { border-bottom: 1px solid var(--border-soft); }
.rc-side-list a { display: block; padding: 14px 4px; color: var(--text-primary) !important; font-size: 1.05rem; font-weight: 500; }
.rc-side-list a:hover { color: var(--accent) !important; }
.rc-side-cta { width: 100%; }

/* Morzsamenü */
.rc-crumbs { background: var(--bg-secondary); border-bottom: 1px solid var(--border-soft); font-size: 13px; }
.rc-crumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; padding-top: 10px !important; padding-bottom: 10px !important; margin: 0 auto; }
.rc-crumbs li { color: var(--text-tertiary); }
.rc-crumbs li + li::before { content: "›"; margin-right: 6px; color: var(--text-quaternary); }
.rc-crumbs a { color: var(--text-secondary); }

/* --- Oldalfej --------------------------------------------------------- */
.rc-page-hero, section.rc-page-hero { padding: clamp(36px, 6vw, 72px) 0 clamp(20px, 3vw, 32px) !important; background: var(--bg-primary) !important; }
.rc-page-hero h1 { font-size: clamp(2rem, 4.6vw, 3.4rem); font-weight: 600; letter-spacing: -0.03em; line-height: 1.08; margin: 0 0 16px; max-width: 900px; }
.rc-page-hero h1 em { color: #fd4545; font-weight: 600; }
.rc-page-hero .lead { max-width: 760px; color: var(--text-secondary); font-size: 1.15rem; margin: 0; }
.rc-eyebrow { font-family: var(--font-mono); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--text-tertiary); margin: 0 0 12px; }
.banner .rc-eyebrow { margin-bottom: 18px !important; font-size: 12px !important; }

/* --- Szekciók --------------------------------------------------------- */
section.rc-section { padding: clamp(36px, 6vw, 72px) 0 !important; overflow: visible; }
section.rc-section.rc-tight { padding-top: 4px !important; padding-bottom: 12px !important; }
section.rc-alt { background: var(--bg-secondary) !important; }
.rc-h2 { font-size: clamp(1.4rem, 2.6vw, 1.9rem); font-weight: 600; letter-spacing: -0.02em; margin: 0 0 22px; }
.rc-h3 { font-size: clamp(1.15rem, 2vw, 1.4rem); font-weight: 600; letter-spacing: -0.015em; margin: 0 0 16px; }
.rc-muted { color: var(--text-tertiary); }
.rc-small { font-size: 13px; }
.rc-center { text-align: center; }
.rc-narrow { max-width: 860px; }
.rc-link { font-weight: 600; }
.rc-more { margin: 14px 0 0; font-size: 14px; }
.rc-more a { font-weight: 600; }

/* Hős-kereső a főoldalon + kereső az árlistában */
.rc-hero-search, .rc-search {
    position: relative; display: flex; align-items: center; max-width: 640px; margin: 0 auto 28px;
    background: #fff; border: 1px solid var(--border); border-radius: var(--r-pill); padding: 6px 6px 6px 48px;
    box-shadow: var(--shadow-card);
}
.rc-search { max-width: 820px; margin: 0 0 20px; }
.rc-hero-search > i, .rc-search > i { position: absolute; left: 20px; color: var(--text-tertiary); }
.rc-hero-search input, .rc-search input { flex: 1; border: 0; outline: none; font-size: 1.05rem; padding: 10px 6px; background: transparent; min-width: 0; color: var(--text-primary); }
.rc-hero-search button, .rc-search button { border: 0; border-radius: var(--r-pill); background: var(--text-primary); color: #fff; padding: 10px 22px; font-weight: 600; cursor: pointer; }
.rc-hero-search:focus-within, .rc-search:focus-within { border-color: var(--accent); box-shadow: 0 0 0 4px rgba(0,113,227,.15); }
.rc-hero-row { min-height: auto; }

/* Márka- és kategória-csempék */
.rc-brand-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 14px; margin-bottom: 26px; }
.rc-brand {
    display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 20px;
    background: #fff; border: 1px solid var(--border-soft); border-radius: var(--r); color: var(--text-primary) !important;
    transition: transform var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease), border-color var(--t-fast);
}
.rc-brand:hover { transform: translateY(-3px); box-shadow: var(--shadow-hover); border-color: var(--border); }
.rc-brand i { font-size: 26px; color: var(--text-primary); font-style: normal; }
.rc-brand-name { font-weight: 600; font-size: 1.05rem; }
.rc-brand-count { font-size: 13px; color: var(--text-tertiary); }

.rc-cat-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; }
.rc-cat {
    display: grid; grid-template-columns: 36px 1fr; grid-template-rows: auto auto; column-gap: 12px; align-items: center;
    padding: 14px 16px; background: #fff; border: 1px solid var(--border-soft); border-radius: var(--r-sm); color: var(--text-primary) !important;
    transition: border-color var(--t-fast), box-shadow var(--t-fast);
}
.rc-cat:hover { border-color: var(--border); box-shadow: var(--shadow-card); }
.rc-cat i { grid-row: 1 / 3; width: 36px; height: 36px; border-radius: 10px; display: flex; align-items: center; justify-content: center; background: var(--bg-tertiary); color: var(--text-primary); font-style: normal; }
.rc-cat span { font-weight: 600; }
.rc-cat small { color: var(--text-tertiary); }

.rc-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 18px; }
.rc-chip {
    display: inline-flex; align-items: center; gap: 7px; padding: 8px 14px; border-radius: var(--r-pill);
    background: #fff; border: 1px solid var(--border-soft); color: var(--text-primary) !important; font-size: 14px; font-weight: 500;
}
.rc-chip:hover { border-color: var(--text-primary); }
.rc-chip i { color: var(--text-secondary); font-style: normal; font-size: 13px; }
.rc-chip small { color: var(--text-tertiary); }

/* Modell-lista */
.rc-filter { position: relative; display: block; max-width: 420px; margin: 4px 0 20px; }
.rc-filter i { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: var(--text-tertiary); font-style: normal; line-height: 1; }
.rc-filter input { width: 100%; padding: 11px 16px 11px 42px; border: 1px solid var(--border); border-radius: var(--r-pill); font-size: 15px; outline: none; }
.rc-filter input:focus { border-color: var(--accent); }
.rc-model-group { margin-bottom: 34px; }
.rc-model-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; }
.rc-model {
    display: flex; flex-direction: column; gap: 2px; padding: 14px 16px; background: #fff; border: 1px solid var(--border-soft);
    border-radius: var(--r-sm); color: var(--text-primary) !important; transition: border-color var(--t-fast), box-shadow var(--t-fast);
}
.rc-model:hover { border-color: var(--border); box-shadow: var(--shadow-card); }
.rc-model-name { font-weight: 600; }
.rc-model-meta { font-size: 13px; color: var(--text-tertiary); }

/* Szerviz-kártyák */
.rc-svc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 14px; }
.rc-svc { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--border-soft); border-radius: var(--r); padding: 18px; box-shadow: 0 1px 2px rgba(0,0,0,.02); }
.rc-svc-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; gap: 10px; }
.rc-svc-ic { width: 34px; height: 34px; border-radius: 10px; display: flex; align-items: center; justify-content: center; background: var(--bg-tertiary); color: var(--text-primary); flex-shrink: 0; }
.rc-svc-ic i { font-style: normal; font-size: 14px; color: inherit; }
.rc-svc-price { background: rgba(40,167,69,.1); color: #1a7f37; font-weight: 700; padding: 5px 12px; border-radius: var(--r-pill); font-size: 14px; white-space: nowrap; }
.rc-svc-name { font-size: 1rem; font-weight: 600; margin: 0 0 6px; line-height: 1.35; letter-spacing: -0.01em; }
.rc-svc-model { margin: 0 0 6px; font-size: 13px; }
.rc-svc-meta { margin: 0 0 6px; font-size: 13px; color: var(--text-tertiary); }
.rc-svc-meta i { font-style: normal; color: inherit; font-weight: 400; }
.rc-svc-desc { font-size: 13.5px; color: var(--text-secondary); line-height: 1.5; margin: 0 0 12px; }
.rc-svc-btn { margin-top: auto; display: block; text-align: center; padding: 9px 14px; border-radius: var(--r-pill); border: 1.5px solid var(--text-primary); color: var(--text-primary) !important; font-weight: 600; font-size: 14px; }
.rc-svc-btn:hover { background: var(--text-primary); color: #fff !important; }
.rc-cat-block { margin-bottom: 40px; scroll-margin-top: 90px; }
.rc-stats { color: var(--text-tertiary); margin: 0 0 14px; }
.rc-stats b { color: var(--text-primary); }
.rc-empty { text-align: center; padding: 40px 20px; border: 1px dashed var(--border); border-radius: var(--r); background: #fff; }
.rc-empty .btn { margin: 4px; }
.rc-note { margin-top: 24px; padding: 16px 20px; border-radius: var(--r-sm); background: var(--bg-tertiary); font-size: 14px; color: var(--text-secondary); }
.rc-note p { margin: 0; font-size: 14px; }

/* Ár-sorok (modell oldal) */
.rc-plist { background: #fff; border: 1px solid var(--border-soft); border-radius: var(--r); overflow: hidden; }
.rc-prow { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 8px 18px; align-items: center; padding: 14px 18px; border-bottom: 1px solid var(--border-soft); }
.rc-prow:last-child { border-bottom: 0; }
.rc-prow-name { font-weight: 600; margin: 0; font-size: 1rem; }
.rc-prow-desc { margin: 2px 0 0; font-size: 13.5px; color: var(--text-secondary); }
.rc-prow-time { font-size: 13px; color: var(--text-tertiary); white-space: nowrap; }
.rc-prow-time i { font-style: normal; color: inherit; font-weight: 400; margin-right: 4px; }
.rc-prow-right { display: flex; align-items: center; gap: 12px; }
.rc-prow .rc-svc-btn { margin: 0; padding: 7px 14px; font-size: 13px; white-space: nowrap; }
.rc-cat-block .rc-h3 { display: flex; align-items: center; gap: 10px; }
.rc-cat-block .rc-h3 .rc-svc-ic { width: 32px; height: 32px; font-size: 14px; }

/* Ezeket a régi stílusok felülírnák */
.ed-stats .ed-stat-num { white-space: nowrap; font-size: clamp(1.8rem, 3.4vw, 2.6rem) !important; }
.rc-reviews-grid .rc-review-head { display: flex; align-items: center; }
.rc-reviews-grid .rc-review-avatar { display: flex !important; align-items: center; justify-content: center; font-weight: 700; color: #fff; flex-shrink: 0; }
.rc-footer .rc-footer-brand { font-size: 1.4rem !important; font-weight: 700 !important; }

/* Árlista-táblázat (javítás-típus oldalak) */
.rc-table-wrap { overflow-x: auto; border: 1px solid var(--border-soft); border-radius: var(--r-sm); background: #fff; }
.rc-ptable { width: 100%; border-collapse: collapse; font-size: 14.5px; }
.rc-ptable th, .rc-ptable td { padding: 11px 14px; border-bottom: 1px solid var(--border-soft); text-align: left; vertical-align: top; }
.rc-ptable thead th { background: var(--bg-secondary); font-weight: 600; font-size: 13px; color: var(--text-secondary); white-space: nowrap; }
.rc-ptable tbody tr:last-child td { border-bottom: 0; }
.rc-ptable td a { font-weight: 600; }
.rc-num { text-align: right !important; white-space: nowrap; }

/* Szöveges oldalak */
.rc-prose-wrap { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 40px; align-items: start; }
.rc-prose h2 { font-size: 1.45rem; font-weight: 600; margin: 32px 0 12px; letter-spacing: -0.015em; }
.rc-prose h2:first-child { margin-top: 0; }
.rc-prose p, .rc-prose li { color: var(--text-secondary); line-height: 1.65; font-size: 1.02rem; }
.rc-prose ul { padding-left: 20px; }
.rc-checks { list-style: none; padding: 0 !important; }
.rc-checks li { position: relative; padding-left: 28px; margin-bottom: 8px; }
.rc-checks li::before { content: "✓"; position: absolute; left: 0; top: 0; color: #1a7f37; font-weight: 700; }
.rc-aside { position: sticky; top: 90px; }
.rc-aside-card { background: var(--bg-secondary); border: 1px solid var(--border-soft); border-radius: var(--r); padding: 22px; }
.rc-aside-card p { margin: 0 0 10px; font-size: 15px; }
.rc-aside-card .btn { width: 100%; margin-top: 6px; }
.rc-aside-title { font-weight: 600; font-size: 1.05rem !important; }
.rc-aside-price { font-size: 1.6rem !important; font-weight: 700; color: var(--text-primary); }
.rc-legal h2 { font-size: 1.2rem; }
.rc-legal p, .rc-legal li { font-size: 15.5px; }

.rc-faq { border-bottom: 1px solid var(--border-soft); padding: 14px 0; }
.rc-faq summary { cursor: pointer; font-weight: 600; font-size: 1.05rem; list-style: none; position: relative; padding-right: 28px; }
.rc-faq summary::-webkit-details-marker { display: none; }
.rc-faq summary::after { content: "+"; position: absolute; right: 4px; top: -2px; font-size: 1.4rem; color: var(--text-tertiary); }
.rc-faq[open] summary::after { content: "–"; }
.rc-faq p { margin: 10px 0 0; color: var(--text-secondary); }

/* Kettes panel (főoldal) */
.rc-split { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.rc-panel { padding: 32px; border-radius: var(--r-lg); background: var(--bg-tertiary); }
.rc-panel h2 { font-size: 1.5rem; font-weight: 600; margin: 0 0 12px; letter-spacing: -0.02em; }
.rc-panel p { color: var(--text-secondary); }
.rc-panel-dark { background: var(--bg-dark); }
.rc-panel-dark h2, .rc-panel-dark p { color: #f5f5f7 !important; }
.rc-panel-dark .rc-eyebrow { color: #a1a1a6; }
.rc-panel-dark .btn-outline-success { color: #fff !important; border-color: #fff !important; }

/* Térkép */
.rc-map-link { position: relative; display: block; border-radius: var(--r-xl); overflow: hidden; box-shadow: var(--shadow-card); }
.rc-map-link span { position: absolute; right: 16px; bottom: 16px; background: #fff; color: var(--text-primary); padding: 8px 14px; border-radius: var(--r-pill); font-weight: 600; font-size: 14px; box-shadow: var(--shadow-card); }
.rc-map { position: relative; border-radius: var(--r-xl); overflow: hidden; background: var(--bg-tertiary); }
.rc-map > img { width: 100%; height: auto; filter: saturate(.9); }
.rc-map > .btn { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }
.rc-map > p { position: absolute; left: 0; right: 0; bottom: 8px; text-align: center; margin: 0; }
.rc-map.is-loaded iframe { width: 100%; height: 460px; border: 0; display: block; }

/* Használt készülékek */
.rc-dev-filters { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 14px; }
.rc-dev-filters select, .rc-dev-filters input { padding: 10px 14px; border: 1px solid var(--border); border-radius: var(--r-pill); background: #fff; font-size: 15px; min-width: 160px; }
.rc-dev-q { flex: 1; min-width: 200px; }
.rc-dev-filters label, .rc-dev-filters .btn { margin: 0 !important; }
.rc-dev-q input { width: 100%; }
.rc-dev-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
.rc-dev-open {
    position: relative; width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 4px;
    background: #fff; border: 1px solid var(--border-soft); border-radius: var(--r); padding: 14px 14px 18px; cursor: pointer;
    transition: transform var(--t-fast) var(--ease), box-shadow var(--t-fast);
}
.rc-dev-open:hover { transform: translateY(-3px); box-shadow: var(--shadow-hover); }
.rc-dev-img { width: 100%; height: 190px; display: flex; align-items: center; justify-content: center; margin-bottom: 8px; }
.rc-dev-img img { max-height: 100%; width: auto; object-fit: contain; }
.rc-dev-img i { font-size: 56px; color: var(--border); font-style: normal; }
.rc-dev-cond { position: absolute; top: 10px; right: 10px; background: var(--text-primary); color: #fff; font-size: 12px; font-weight: 700; padding: 3px 9px; border-radius: var(--r-pill); }
.rc-dev-brand { font-size: 12px; text-transform: uppercase; letter-spacing: .08em; color: var(--text-tertiary); }
.rc-dev-title { font-weight: 600; color: var(--text-primary); line-height: 1.3; }
.rc-dev-sub { font-size: 13px; color: var(--text-tertiary); }
.rc-dev-price { margin-top: auto; padding-top: 6px; font-size: 1.15rem; font-weight: 700; color: var(--text-primary); }

/* Dialógusok (natív <dialog>) */
.rc-dialog { border: 0; border-radius: var(--r-lg); padding: 28px; max-width: min(860px, 94vw); width: 100%; box-shadow: var(--shadow-deep); }
.rc-dialog::backdrop { background: rgba(0,0,0,.45); }
.rc-dialog-close { position: absolute; top: 12px; right: 12px; width: 38px; height: 38px; border-radius: 50%; border: 0; background: var(--bg-tertiary); cursor: pointer; font-size: 16px; }
.rc-dd-body { display: grid; grid-template-columns: 260px 1fr; gap: 28px; }
.rc-dd-img img { width: 100%; max-height: 300px; object-fit: contain; }
.rc-dd-price { font-size: 1.8rem; font-weight: 700; margin: 4px 0 14px; }
.rc-dd-table { width: 100%; margin-bottom: 16px; font-size: 14.5px; }
.rc-dd-table th { font-weight: 500; color: var(--text-tertiary); padding: 5px 10px 5px 0; width: 42%; }
.rc-dd-table td { padding: 5px 0; text-align: right; font-weight: 500; }
.rc-good { color: #1a7f37; } .rc-warn { color: #b26a00; } .rc-bad { color: #c62828; }
.rc-lightbox { padding: 12px; max-width: min(1000px, 96vw); width: auto; background: #111; }
.rc-lightbox img { max-height: 85vh; width: auto; margin: 0 auto; display: block; }

/* Referencia galéria */
.rc-gallery { columns: 3 260px; column-gap: 14px; }
.rc-gallery-item { break-inside: avoid; margin: 0 0 14px; border-radius: var(--r); overflow: hidden; background: #fff; border: 1px solid var(--border-soft); }
.rc-gallery-item img { width: 100%; height: auto; transition: transform .5s var(--ease); }
.rc-gallery-item a { display: block; overflow: hidden; }
.rc-gallery-item a:hover img { transform: scale(1.03); }
.rc-gallery-item figcaption { padding: 10px 14px; font-weight: 600; font-size: 14px; }

/* CTA sáv és lábléc */
section.rc-cta-band { background: var(--bg-secondary) !important; border-top: 1px solid var(--border-soft) !important; padding: 44px 0 !important; }
.rc-cta-inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; }
.rc-cta-inner h2 { font-size: 1.5rem; font-weight: 600; margin: 0 0 6px; }
.rc-cta-inner p { margin: 0; color: var(--text-secondary); }
.rc-cta-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.rc-footer { padding: 56px 0 30px !important; }
.rc-footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 32px; }
.rc-footer ul { list-style: none; margin: 0; padding: 0; }
.rc-footer li { margin-bottom: 8px; font-size: 14px; }
.rc-footer-brand { font-size: 1.5rem; font-weight: 700; letter-spacing: -0.02em; color: var(--text-primary) !important; margin-bottom: 10px; }
.rc-footer-text { font-size: 14px; line-height: 1.7; }
.rc-footer-head { font-family: var(--font-mono) !important; font-size: 11px !important; letter-spacing: .16em; text-transform: uppercase; margin-bottom: 14px; }
.rc-footer-bottom { border-top: 1px solid var(--border-soft); margin-top: 40px; padding-top: 20px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; font-size: 12px; color: var(--text-tertiary); }
.rc-footer-bottom div:last-child { max-width: 560px; }

/* --- Reszponzív -------------------------------------------------------- */
@media (max-width: 991px) {
    .rc-prose-wrap { grid-template-columns: 1fr; }
    .rc-aside { position: static; }
    .rc-footer-grid { grid-template-columns: 1fr 1fr; }
    .rc-split { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
    .rc-dd-body { grid-template-columns: 1fr; }
    .rc-dd-img img { max-height: 200px; }
    .rc-footer-grid { grid-template-columns: 1fr; }
    .rc-ptable th:nth-child(3), .rc-ptable td:nth-child(3) { display: none; }
    .rc-prow { grid-template-columns: 1fr; }
    .rc-prow-right { justify-content: space-between; }
    .rc-hero-search { padding-left: 40px; }
    .rc-hero-search > i { left: 16px; }
    .rc-hero-search button, .rc-search button { padding: 10px 16px; }
    .rc-panel { padding: 24px; }
    body { padding-bottom: 64px; } /* alsó mobilmenü miatt */
    .rc-dev-filters select { flex: 1 1 45%; min-width: 0; }
}
@media (max-width: 420px) {
    .rc-svc-grid, .rc-model-grid { grid-template-columns: 1fr; }
    .rc-brand-grid { grid-template-columns: 1fr 1fr; }
}

/* --- Mobil fejléc tömörítése ------------------------------------------- */
@media (max-width: 991px) {
    .rc-header .navbar { display: none !important; }
}
@media (max-width: 767px) {
    .rc-header .top-banner .col-4,
    .rc-header .top-banner .text-right { display: none !important; }
    .rc-header .top-banner .row > div { flex: 0 0 100%; max-width: 100%; justify-content: center !important; }
    .rc-header .top-banner { padding: 4px 0 !important; }
    .rc-header .logo-center { position: static !important; margin: 0 auto !important; transform: none !important; float: none !important; text-align: center; width: auto !important; }
    .rc-header .logo-center img { height: 34px; margin: 0 auto; }
    .rc-prow, .rc-cat, .rc-model, .rc-brand, .rc-svc, .rc-ptable, .rc-prose, .rc-aside-card, .rc-dev-filters { text-align: left; }
    .rc-prow-right { justify-content: space-between; }
    .rc-cat-block .rc-h3 { font-size: 1.1rem; }
}

/* --- Főoldal: eredeti szekciók kiegészítései --------------------------- */
.rc-search-center { margin: 0 auto 28px !important; }
.rc-chips-center { justify-content: center; }
.rc-gallery-4 { columns: 4 200px; }
.rc-b2b-card { background: var(--bg-dark); border-radius: 14px; padding: 32px; text-align: center; box-shadow: 0 4px 6px rgba(0,0,0,.02); }
.rc-b2b-card h3 { color: #fff !important; font-weight: 600; margin-bottom: 10px; }
.rc-b2b-card p { color: #c7c9cc !important; font-size: 14px; margin-bottom: 22px; }
.banner .alt-font { color: var(--text-tertiary) !important; }
.price-item-dark .btn-yellow { display: inline-block; }

/* =====================================================================
   Javítások (2026-11-07, képernyőképek alapján)
   ===================================================================== */

/* 1. Fejléc: a style.css 30px felső margója + az editorial 12px paddingja egy üres,
      áttetsző (homályos) sávot hagyott a logó fölött, és két alsó vonal látszott. */
header#home.rc-header { padding: 0 !important; background: rgba(255,255,255,.94) !important; }
.rc-header .top-banner { margin: 0 !important; padding: 10px 0 !important; background: transparent !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; border: 0 !important; }
.rc-header .navbar-top-default { background: transparent !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; border: 0 !important; padding: 6px 0 10px !important; }
.rc-header .top-banner .row { align-items: center; }

/* 2. Egységes betűtípus: a régi style.css a bekezdéseket 'Source Sans Pro'-ra állította,
      ezért a szövegtörzs más betűvel jelent meg, mint a címsorok. */
body p, body li, body td, body th, body label, body input, body select, body button,
.contact-info, .contact-info p, .rc-reviews-sub, .price_header_text { font-family: var(--font-text) !important; }

/* 3. Ikonok a gombokban: az editorial.css minden <i>-t kékre színez → kék gombon láthatatlan volt */
.btn i, .btn .fa, .btn .fas, .btn .fab,
.rc-svc-btn i, .rc-mbs-cta i, .rc-hero-search button i { color: inherit !important; font-weight: 900; }
.btn .fab { font-weight: 400; }

/* 4. B2B kártya: csak a nagy kézfogás-ikon legyen sárga és nagy, a gombban lévő nem */
.rc-b2b-card > i { font-size: 38px; color: #cee002; margin-bottom: 16px; display: inline-block; }
.rc-b2b-card .btn i { font-size: inherit; color: inherit; margin: 0 8px 0 0; }
.rc-b2b-card .btn-neon { padding: 12px 26px !important; }

/* 5. Térkép (az eredeti Google-beágyazás) */
.rc-map-embed { border-radius: var(--r-xl); overflow: hidden; box-shadow: var(--shadow-card); background: var(--bg-tertiary); }
.rc-map-embed iframe { display: block; width: 100%; height: 420px; border: 0; }

/* =====================================================================
   Lapozás, keresési találatok, fülek — és mobil UX
   ===================================================================== */

/* Lapozó */
.rc-pager { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 24px 0 8px; flex-wrap: wrap; }
.rc-pager:empty { display: none; }
.rc-pg {
    min-width: 42px; height: 42px; padding: 0 12px; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    border: 1px solid var(--border-soft); border-radius: 12px; background: #fff; color: var(--text-primary) !important;
    font: 600 15px/1 var(--font-text); cursor: pointer; text-decoration: none; transition: border-color .15s, background .15s;
}
a.rc-pg:hover, button.rc-pg:hover { border-color: var(--text-primary); }
.rc-pg.is-cur { background: var(--text-primary); border-color: var(--text-primary); color: #fff !important; }
.rc-pg.is-off { opacity: .35; cursor: default; }
.rc-pg i { color: inherit !important; font-size: 13px; }
.rc-pg-nums { display: inline-flex; gap: 6px; align-items: center; }
.rc-pg-gap { color: var(--text-tertiary); padding: 0 2px; }
.rc-pg-info { display: none; font-weight: 600; color: var(--text-secondary); min-width: 64px; text-align: center; }

/* Kereső: törlés gomb, töltés jelzése */
.rc-search .rc-search-clear { background: transparent !important; color: var(--text-tertiary) !important; padding: 10px 12px !important; }
#rc-search-results { transition: opacity .15s; min-height: 10px; }
#rc-search-results.is-loading { opacity: .45; }

/* Modell-javaslatok a keresés fölött */
.rc-suggest { display: flex; gap: 10px; align-items: flex-start; margin: 0 0 16px; }
.rc-suggest-label { font-size: 13px; font-weight: 600; color: var(--text-tertiary); padding-top: 9px; white-space: nowrap; }
.rc-suggest-list { display: flex; flex-wrap: wrap; gap: 8px; }
.rc-suggest .rc-chip { background: var(--bg-tertiary); border-color: transparent; }
.rc-suggest .rc-chip i { font-size: 11px; }

/* Találati sor */
.rc-rrow { grid-template-columns: 36px minmax(0, 1fr) auto; }
.rc-rrow-ic { width: 36px; height: 36px; }
.rc-rrow-sub { margin: 3px 0 0; font-size: 13.5px; color: var(--text-tertiary); display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.rc-rrow-sub a { font-weight: 600; }
.rc-dot { color: var(--text-quaternary); }
.rc-ask i { display: none; }

/* Fülek (márkaválasztó) + eszköztár */
.rc-toolbar { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.rc-toolbar .rc-filter { margin: 0; flex: 1 1 260px; max-width: 360px; }
.rc-tabs { display: flex; gap: 6px; flex-wrap: wrap; }
.rc-tab {
    border: 1px solid var(--border-soft); background: #fff; border-radius: var(--r-pill); padding: 8px 14px;
    font: 500 14px/1.2 var(--font-text); color: var(--text-primary); cursor: pointer; white-space: nowrap;
}
.rc-tab small { color: var(--text-tertiary); margin-left: 2px; }
.rc-tab.is-active { background: var(--text-primary); border-color: var(--text-primary); color: #fff; }
.rc-tab.is-active small { color: #c7c7cc; }

/* Szűrődoboz (használt készülékek) */
.rc-filterbox { margin-bottom: 8px; }
.rc-filterbox > summary {
    display: none; list-style: none; cursor: pointer; font-weight: 600; padding: 10px 16px; border: 1px solid var(--border);
    border-radius: var(--r-pill); width: max-content; margin-bottom: 10px; background: #fff;
}
.rc-filterbox > summary::-webkit-details-marker { display: none; }
.rc-filterbox > summary i { color: var(--text-primary); font-style: normal; margin-right: 6px; }

/* Nagyobb érintési felületek */
.rc-chip, .rc-tab, .rc-svc-btn { min-height: 40px; }
.rc-filter input, .rc-dev-filters select, .rc-dev-filters input { min-height: 44px; font-size: 16px; } /* 16px: iOS nem nagyít rá */
.rc-search input, .rc-hero-search input { font-size: 16px; }

/* ---------------- Telefon ---------------- */
@media (max-width: 767px) {
    /* lapozó: Előző – 3 / 12 – Következő */
    .rc-pg-nums { display: none; }
    .rc-pg-info { display: inline-block; }
    .rc-pager { justify-content: space-between; gap: 6px; flex-wrap: nowrap; }
    .rc-pg-prev, .rc-pg-next { flex: 1; max-width: 150px; }

    /* vízszintesen görgethető chip- és fülsorok (nem tolják le a tartalmat) */
    .rc-chips, .rc-tabs, .rc-suggest-list {
        flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; scroll-snap-type: x proximity;
        margin-left: -20px; margin-right: -20px; padding: 2px 20px 6px; scrollbar-width: none;
    }
    .rc-chips::-webkit-scrollbar, .rc-tabs::-webkit-scrollbar, .rc-suggest-list::-webkit-scrollbar { display: none; }
    .rc-chip, .rc-tab { flex: 0 0 auto; scroll-snap-align: start; }
    .rc-chips-center { justify-content: flex-start; }
    .rc-suggest { flex-direction: column; gap: 6px; }
    .rc-suggest-label { padding-top: 0; }
    .rc-toolbar { flex-direction: column; align-items: stretch; }
    .rc-toolbar .rc-filter { max-width: none; }

    /* találati sor: kompakt, ár és boríték-gomb egy sorban */
    .rc-rrow { grid-template-columns: 32px minmax(0, 1fr); padding: 12px 14px; gap: 6px 12px; }
    .rc-rrow .rc-prow-right { grid-column: 2; justify-content: space-between; }
    .rc-rrow-ic { width: 32px; height: 32px; }
    .rc-ask { padding: 7px 12px !important; }
    .rc-ask span { display: none; }
    .rc-ask i { display: inline-block; font-style: normal; }
    .rc-prow-name { font-size: .97rem; }

    /* modell-oldal ár-sorai */
    .rc-prow { padding: 12px 14px; }
    .rc-prow .rc-svc-btn { padding: 7px 12px; }

    /* használt készülékek: 2 oszlop, kisebb kártya, csukható szűrő */
    .rc-filterbox > summary { display: block; }
    .rc-filterbox:not([open]) { margin-bottom: 0; }
    .rc-dev-filters { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
    .rc-dev-filters .rc-dev-q { grid-column: 1 / -1; order: -1; }
    .rc-dev-filters select { min-width: 0; width: 100%; }
    .rc-dev-filters .btn { grid-column: 1 / -1; }
    .rc-dev-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .rc-dev-open { padding: 10px 10px 12px; border-radius: 14px; }
    .rc-dev-img { height: 120px; }
    .rc-dev-img i { font-size: 40px; }
    .rc-dev-title { font-size: 14px; }
    .rc-dev-sub { font-size: 12px; }
    .rc-dev-price { font-size: 1rem; }
    .rc-dev-brand { font-size: 11px; }

    /* dialógus mobilon: alulról felcsúszó lap jelleg */
    .rc-dialog { max-width: 100vw; width: 100vw; margin: auto 0 0; border-radius: 20px 20px 0 0; padding: 22px 18px calc(18px + env(safe-area-inset-bottom, 0px)); max-height: 90vh; overflow-y: auto; }

    /* javítás-típus táblázat: kártyaszerű sorok */
    .rc-ptable thead { display: none; }
    .rc-ptable tr { display: grid; grid-template-columns: 1fr auto; gap: 2px 12px; padding: 10px 14px; border-bottom: 1px solid var(--border-soft); }
    .rc-ptable td { border: 0; padding: 0; }
    .rc-ptable td:nth-child(1) { grid-column: 1; font-size: 15px; }
    .rc-ptable td:nth-child(2) { grid-column: 1; font-size: 13px; color: var(--text-tertiary); }
    .rc-ptable td:nth-child(4) { grid-column: 2; grid-row: 1 / 3; align-self: center; }
    .rc-ptable tbody tr:last-child { border-bottom: 0; }

    /* oldalfej kisebb hellyel */
    .rc-page-hero h1 { font-size: 1.9rem; }
    .rc-page-hero .lead { font-size: 1rem; }
    section.rc-section { padding: 28px 0 !important; }
}
@media (max-width: 380px) {
    .rc-dev-img { height: 100px; }
}

/* böngésző saját "×" törlőgombja ne duplázódjon a sajátunkkal */
.rc-search input[type="search"]::-webkit-search-cancel-button,
.rc-hero-search input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; display: none; }
.rc-dd-table th, .rc-dd-table td { text-align: left; }
.rc-dd-table td { text-align: right; }
.rc-dd-img.is-empty img { display: none; }
.rc-dd-img.is-empty::before { content: "\f3cd"; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 64px; color: var(--border); display: block; text-align: center; padding: 20px 0; }
@media (max-width: 767px) {
    .rc-dd-body { gap: 12px; }
    .rc-dd-img img { max-height: 160px; margin: 0 auto; }
    .rc-dd-price { font-size: 1.5rem; margin-bottom: 8px; }
    .rc-dd-body h2 { padding-right: 40px; text-align: left; }
}

/* =====================================================================
   v5: kompakt kereső, al-menü, Hívás gomb
   ===================================================================== */

/* Kompakt, formás kereső (felülírja a korábbi nagy változatot) */
form.rc-search {
    display: flex; align-items: center; gap: 4px; width: 100%; max-width: 640px; margin: 0 0 18px;
    height: 52px; padding: 0 5px 0 44px; position: relative;
    background: #fff; border: 1px solid var(--border); border-radius: 14px; box-shadow: 0 1px 2px rgba(0,0,0,.04);
}
.rc-home-search form.rc-search { margin: 0 auto 18px; }
form.rc-search:focus-within { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(0,113,227,.14); }
form.rc-search .rc-search-ic { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: var(--text-tertiary) !important; font-size: 15px; font-weight: 900; }
form.rc-search input {
    flex: 1; min-width: 0; height: 40px; border: 0; outline: 0; background: transparent; padding: 0 4px;
    font: 400 16px/1 var(--font-text) !important; color: var(--text-primary);
}
form.rc-search input::placeholder { color: var(--text-quaternary); }
form.rc-search button { border: 0; cursor: pointer; flex-shrink: 0; }
form.rc-search .rc-search-clear { width: 36px; height: 36px; border-radius: 10px; background: transparent !important; color: var(--text-tertiary) !important; padding: 0 !important; }
form.rc-search .rc-search-clear:hover { background: var(--bg-tertiary) !important; }
form.rc-search .rc-search-go {
    height: 42px; padding: 0 18px !important; border-radius: 10px; background: var(--text-primary) !important; color: #fff !important;
    font: 600 15px/1 var(--font-text) !important; display: inline-flex; align-items: center; gap: 8px;
}
form.rc-search .rc-search-go i { display: none; color: inherit !important; }
.rc-results-box:not(:empty) { margin-bottom: 26px; }
.rc-home-search { max-width: 860px; margin: 0 auto 30px; text-align: left; }
.rc-home-search .rc-results-box { text-align: left; }

/* Al-menü: Gyártók szerint | Javítás típusa szerint | Általános szolgáltatások */
.rc-subnav { display: flex; gap: 4px; padding: 4px; background: var(--bg-tertiary); border-radius: 14px; margin: 0 0 24px; width: max-content; max-width: 100%; }
.rc-subnav-item {
    display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 10px;
    color: var(--text-secondary) !important; font-weight: 600; font-size: 14.5px; white-space: nowrap; text-decoration: none;
}
.rc-subnav-item i { color: inherit !important; font-size: 13px; font-weight: 900; }
.rc-subnav-item:hover { color: var(--text-primary) !important; }
.rc-subnav-item.is-active { background: #fff; color: var(--text-primary) !important; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
.rc-brand-alt { background: var(--bg-secondary); }

/* Érdeklődöm + Hívás gombpár */
.rc-actions { display: inline-flex; gap: 6px; flex-shrink: 0; }
.rc-act {
    display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 36px; padding: 0 12px;
    border-radius: 10px; font: 600 13.5px/1 var(--font-text); white-space: nowrap; text-decoration: none !important;
    border: 1.5px solid var(--text-primary); color: var(--text-primary) !important; background: #fff;
}
.rc-act i { color: inherit !important; font-size: 13px; font-weight: 900; }
.rc-act-mail:hover { background: var(--text-primary); color: #fff !important; }
.rc-act-call { background: #1a7f37; border-color: #1a7f37; color: #fff !important; }
.rc-act-call:hover { background: #146c2e; border-color: #146c2e; }
.rc-svc-foot { margin-top: auto; padding-top: 8px; }
.rc-svc-foot .rc-actions { display: flex; }
.rc-svc-foot .rc-act { flex: 1; }
.rc-prow-desc { margin: 3px 0 0; }
.rc-rrow .rc-rrow-main { min-width: 0; }

@media (max-width: 767px) {
    form.rc-search { height: 48px; padding-left: 40px; border-radius: 12px; max-width: none; }
    form.rc-search .rc-search-ic { left: 14px; }
    form.rc-search .rc-search-go { width: 40px; height: 38px; padding: 0 !important; justify-content: center; }
    form.rc-search .rc-search-go span { display: none; }
    form.rc-search .rc-search-go i { display: inline-block; font-weight: 900; }
    .rc-subnav { width: auto; overflow-x: auto; scrollbar-width: none; margin-left: -4px; margin-right: -4px; }
    .rc-subnav::-webkit-scrollbar { display: none; }
    .rc-subnav-item { padding: 9px 12px; font-size: 13.5px; }
    .rc-act { height: 38px; width: 42px; padding: 0; }
    .rc-act span { display: none; }
    .rc-act i { font-size: 15px; }
    .rc-svc-foot .rc-act { width: auto; }
    .rc-svc-foot .rc-act span { display: inline; }
}
.rc-ptable td.rc-td-act { width: 1%; white-space: nowrap; vertical-align: middle; }
.rc-ptable td.rc-num { vertical-align: middle; }
.rc-ptable .rc-act { height: 32px; padding: 0 10px; font-size: 12.5px; }
@media (min-width: 768px) { .rc-ptable .rc-act span { display: none; } .rc-ptable .rc-act { width: 36px; padding: 0; } }
@media (max-width: 767px) {
    .rc-ptable td:nth-child(4) { grid-column: 2; grid-row: 1; align-self: start; }
    .rc-ptable td.rc-td-act { grid-column: 2; grid-row: 2 / 4; width: auto; text-align: right; }
    .rc-ptable .rc-act { width: 38px; height: 34px; }
}
.rc-l-short { display: none; }
#szerviz .ed-container, .bx-container .ed-container { padding-left: 20px; padding-right: 20px; }
@media (max-width: 767px) {
    .rc-subnav { display: grid; grid-template-columns: repeat(3, 1fr); width: 100%; overflow: visible; margin-left: 0; margin-right: 0; }
    .rc-subnav-item { flex-direction: column; gap: 4px; padding: 9px 4px; font-size: 12.5px; text-align: center; white-space: normal; line-height: 1.2; }
    .rc-subnav-item i { font-size: 15px; }
    .rc-l-long { display: none; }
    .rc-l-short { display: inline; }
}
.price-item-dark .btn-yellow { padding: 10px 0 !important; min-height: 40px; display: inline-flex; align-items: center; }
.rc-mbn-logo { min-height: 44px; }

/* =====================================================================
   v6: mobil javítások (Galaxy S25 + nagyobb rendszer-betűméret)
   ===================================================================== */

/* Fejléc mobilon teljesen fedjen: ne látszódjon át a görgetett tartalom */
@media (max-width: 991px) {
    header#home.rc-header { background: #fff !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
}

/* Hosszú modellnevek (pl. „Galaxy Watch 7 44mm (SM-L310,SM-L315)”) se lóghassanak ki,
   akkor sem, ha a telefonon nagyobb betűméret van beállítva */
.rc-model-grid, .rc-svc-grid, .rc-dev-grid, .rc-cat-grid, .rc-brand-grid { grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 1fr)); }
.rc-model, .rc-svc, .rc-cat, .rc-brand, .rc-prow, .rc-rrow-main, .rc-dev-open, .ed-service { min-width: 0; max-width: 100%; }
.rc-model-name, .rc-prow-name, .rc-svc-name, .rc-dev-title, .rc-brand-name, .rc-ptable td, .rc-rrow-sub a,
.rc-page-hero h1, .ed-service h3, .ed-service p { overflow-wrap: anywhere; word-break: normal; hyphens: manual; }
.ed-services { grid-template-columns: repeat(auto-fill, minmax(min(280px, 100%), 1fr)) !important; }

/* Modellkereső mező: az ikon pontosan középen (flex, nem abszolút pozíció) */
label.rc-filter {
    display: flex !important; align-items: center; gap: 10px; position: relative;
    height: 48px; padding: 0 16px; margin: 4px 0 18px; max-width: 420px;
    border: 1px solid var(--border); border-radius: 14px; background: #fff;
}
label.rc-filter:focus-within { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(0,113,227,.14); }
label.rc-filter i { position: static !important; transform: none !important; flex-shrink: 0; font-size: 15px; color: var(--text-tertiary) !important; font-weight: 900; }
label.rc-filter input { flex: 1; min-width: 0; height: auto !important; min-height: 0 !important; margin: 0 !important; border: 0 !important; outline: 0; padding: 0 !important; background: transparent; border-radius: 0; font: 400 16px/1.3 var(--font-text) !important; align-self: center; box-shadow: none !important; }
label.rc-filter input::-webkit-search-cancel-button { -webkit-appearance: none; }

@media (max-width: 767px) {
    /* címsorok balra, a tartalommal egy vonalban */
    .rc-h2, .rc-h3, .rc-model-group h2, .rc-cat-block h2, .rc-stats { text-align: left !important; }
    .rc-model-group { margin-bottom: 24px; }
    .rc-model-group .rc-h3 { margin-bottom: 10px; font-size: 1.1rem; }
    .rc-model-grid { gap: 8px; }
    .rc-model { padding: 12px 14px; }
    .rc-model-name { font-size: 15px; line-height: 1.3; }
    .rc-model-meta { font-size: 12.5px; }
    label.rc-filter { max-width: none; margin-bottom: 8px; }
    /* felesleges függőleges üresség csökkentése a márka- és listaoldalakon */
    section.rc-section.rc-tight + section.rc-section { padding-top: 8px !important; }
    .rc-page-hero, section.rc-page-hero { padding: 22px 0 14px !important; }
    .rc-page-hero .rc-eyebrow { margin-bottom: 6px; }
    .rc-subnav { margin-bottom: 14px; }
    .rc-chips { margin-bottom: 10px; }
}
.rc-reviews-grid { grid-template-columns: repeat(auto-fill, minmax(min(280px, 100%), 1fr)) !important; }
.rc-review { min-width: 0; }
