/* MasterSlate v4 global layer (loaded last on every page). Owner: builder C */

:root {
  --v4-head: 'Inconsolata', ui-monospace, 'SFMono-Regular', Menlo, monospace;
  /* the shadow Matt liked on szinek-es-mintak #kapcsolat h2 (review-revisions.css) */
  --v4-ts: 0 3px 8px #000a, 0 12px 28px #000b, 0 22px 50px #0007;
  /* softer version for white text on small solid red / black UI (buttons, chips, avatars) */
  --v4-ts-soft: 0 1px 2px #0006, 0 2px 10px #0004;
  --v4-lit: #FFC928; /* same yellow as the homepage marquee bulbs (home-v3.css .hv3-lt-bulb) */
}

/* ---------- c521b206: Inconsolata headings ---------- */
h1, h2, h3, h4, .section-title, .onehand-title {
  font-family: var(--v4-head) !important;
  letter-spacing: -.02em;
}
h1 { font-weight: 800 !important; line-height: 1.08; }
h2, .section-title, .onehand-title { font-weight: 800 !important; line-height: 1.12; }
h3, h4 { font-weight: 700 !important; line-height: 1.22; }
/* Inconsolata runs small next to Montserrat, give section-level titles a touch more size */
h1 { font-size-adjust: .52; }
h2, h3, h4, .section-title, .onehand-title { font-size-adjust: .52; }

/* ---------- c521b206 + 0b807e7a: shadow on all white text ---------- */
/* text on photos and dark bands: the big shadow */
:is(.story-hero-copy, .hero-content, .hero-text, .contact-info, .experience-copy) :is(h1, h2, h3, h4, p, li, a, span, strong, small),
:is(.section-dark, .hv3-stats, .hv3-process-dark, .hv3-trust, .acc-content, .onehand-band, .impregnation-banner .imp-text,
    .material-band .mat-item, .premium-media-section .experience-copy,
    .complete-footer-grid, .marquee-wrap, .hv3-ticker, .price-tile, .hv3-mq > .container.text-center,
    .translucent-teaser .teaser-content) :is(h1, h2, h3, h4, h5, p, li, span, strong, small, a:not(.btn-white):not(.btn-primary), figcaption, label, em, b, time),
.acc-vtitle,
.premium-media-section > .container > div > :is(h2, h3, p, .section-subtitle, .section-title),
.hero.hero-v2 .hero-content :is(h1, p),
.btn-outline, .hv3-textlink {
  text-shadow: var(--v4-ts);
}
/* white text on small solid UI: buttons, chips, avatars, numbered markers, widget launchers */
.btn-primary, .btn-primary *, #desktop-cta, #desktop-cta *, .btn-dark, .btn-dark *,
.filter-buttons button, .filter-buttons button *, .rv-card .rv-avatar, .rv-avatar, .hv3-tm-avatar, .hf4-progress span,
.labor-card .labor-label, .photo-marker, .layer-num, .hv3-step-no, .hv3-tb-no, .hv3-stat-idx, .v4-bulb,
.msc-launch, .msc-launch *, .msw-launch, .msw-launch *,
:is(.lt-card, .editorial-photo) figcaption, .editorial-photo > span {
  text-shadow: var(--v4-ts-soft);
}
.mss-root .mss-launch, .msc-root .msc-title, .mcw-root .mcw-title, .mss-root .mss-title { text-shadow: var(--v4-ts-soft) !important; }
/* white text inside the opened widget panels (dark headers, red buttons, chips) */
.msc-root :is(.msc-head, .msc-head *, .msc-next, .msc-next *, .msc-btn-primary, .msc-btn-primary *, .msc-total, .msc-total *, .msc-cta, .msc-cta *),
.msc-root .msc-seg button:is([aria-pressed="true"], .is-on, .is-active, [aria-checked="true"]),
.mcw-root :is(.mcw-head, .mcw-head *, .mcw-submit, .mcw-submit *),
.mss-root :is(.mss-head, .mss-head *, .mss-tag, .mss-mark) { text-shadow: var(--v4-ts-soft) !important; }
/* dark or red-on-light text inside those containers keeps a clean edge */
:is(.white-detail-card, .ms-form, .rv-card, .faq-item, .btn-white, .labor-card, .hv3-mq-cap) :is(h1, h2, h3, h4, p, li, span:not(.rv-avatar):not(.labor-label), strong, small, label),
.btn-white, .tile-no, .hv3-mq-cap {
  text-shadow: none !important;
}
.btn-outline:is(:hover, :focus-visible) { text-shadow: none; }
/* outline buttons on light backgrounds have dark text */
:is(.hero-ed-actions, .hv3-sd-actions, .page-intro, .section-action, .catalogue-hero, .hero-editorial) .btn-outline, #referenciak .btn-outline { text-shadow: none; }
:is(.story-hero, .contact-info, .contact-section) .btn-outline { text-shadow: var(--v4-ts); }
:is(.story-hero, .contact-info, .contact-section) .btn-outline:is(:hover, :focus-visible) { text-shadow: none; }

/* ---------- reviews (3fb9313e, 3035f8c0, 032ed3d3, cb822b8b) ---------- */
.reviews-v2 .rv-grid.rv-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.reviews-v2 .rv-grid-3 .rv-card,
.reviews-v2 .rv-grid-3 .rv-card:nth-child(n) {
  grid-column: auto !important;
  background: #fff !important;
  color: var(--ms-black, #111) !important;
  border: 1px solid var(--ms-g200, #e2e2e2) !important;
  border-top: 3px solid var(--ms-red, #E90117) !important;
  padding: 28px;
}
.reviews-v2 .rv-grid-3 .rv-card :is(blockquote, footer strong, .google-source) { color: var(--ms-black, #111) !important; }
.reviews-v2 .rv-grid-3 .rv-card blockquote { font-size: 1rem; line-height: 1.7; color: #2b2b2b !important; }
.reviews-v2 .rv-grid-3 .rv-avatar { background: var(--ms-black, #111) !important; color: #fff !important; }
.reviews-v2 .rv-grid-3 .rv-card footer { padding-top: 14px; border-top: 1px solid var(--ms-g200, #e2e2e2); }
.reviews-v2 .rv-score { color: var(--ms-black, #111); }
.reviews-v2 .rv-score strong { color: var(--ms-black, #111); }
.v4-home-reviews { background: var(--ms-g100, #f2f2f2); }
@media (max-width: 900px) {
  .reviews-v2 .rv-grid.rv-grid-3 { grid-template-columns: 1fr 1fr; }
  .reviews-v2 .rv-grid-3 .rv-card:last-child { grid-column: 1 / -1 !important; }
}
@media (max-width: 560px) {
  .reviews-v2 .rv-grid.rv-grid-3 { grid-template-columns: 1fr; }
}

/* ---------- arak: 04f5e415 smaller craft photo ---------- */
.new-page .v4-send-split { grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); align-items: center; }
.new-page .v4-send-split .v4-figure-sm { max-width: 440px; justify-self: center; width: 100%; margin: 0; }
.new-page .v4-send-split .v4-figure-sm img { width: 100%; aspect-ratio: 4 / 5; height: auto; object-fit: cover; border-radius: var(--ms-radius, 4px); }
@media (max-width: 900px) { .new-page .v4-send-split { grid-template-columns: 1fr; } }

/* ---------- rolunk: 5a64e260 + 6fd2d023 ---------- */
.new-page .v4-szemlelet { grid-template-columns: minmax(0, .9fr) minmax(0, 1fr); align-items: stretch; }
.new-page .v4-szemlelet > div:first-child { display: flex; }
.new-page .v4-szemlelet .editorial-photo { width: 100%; height: 100%; min-height: 520px; }
.new-page .v4-szemlelet .editorial-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.new-page .v4-szemlelet > div:last-child { align-self: center; }
.v4-bg { margin-bottom: 30px; padding-bottom: 28px; border-bottom: 1px solid var(--ms-g200, #e2e2e2); }
.v4-bg-lead { font-size: 1.12rem !important; line-height: 1.65; color: var(--ms-black, #111) !important; margin: 0 0 22px; padding-left: 18px; border-left: 3px solid var(--ms-red, #E90117); }
.v4-bg-stats { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.v4-bg-stats li { display: flex; flex-direction: column; gap: 4px; }
.v4-bg-stats strong { font: 800 2.1rem/1 var(--v4-head); color: var(--ms-black, #111); }
.v4-bg-stats span { font-size: .86rem; line-height: 1.4; color: #555; }
@media (max-width: 900px) { .new-page .v4-szemlelet .editorial-photo { min-height: 380px; } }

/* ---------- szinek-es-mintak: fe62e878 translucent light effect ---------- */
.v4-lit-media { position: relative; overflow: hidden; aspect-ratio: 2 / 1; background: #111; }
.new-page .material-card .v4-lit-media > img { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; display: block; }
.new-page .material-card .v4-lit-media > .v4-lit-img { opacity: 0; transform: scale(1.32); filter: saturate(1.08); transition: opacity .8s var(--ms-ease, ease), transform 1.4s var(--ms-ease, ease); }
.v4-lit-media::after { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: 0; transition: opacity .8s var(--ms-ease, ease);
  background: radial-gradient(ellipse at 50% 55%, rgba(255, 201, 60, .22), transparent 65%); box-shadow: inset 0 0 60px rgba(255, 190, 70, .35); mix-blend-mode: screen; }
.v4-bulb { position: absolute; right: 12px; bottom: 12px; z-index: 2; width: 42px; height: 42px; display: grid; place-items: center; padding: 0;
  border: 0; border-radius: 4px; background: rgba(17, 17, 17, .66); color: rgba(255, 255, 255, .82); font-size: 1.35rem; cursor: pointer;
  backdrop-filter: blur(4px); box-shadow: 0 0 0 1px rgba(255, 255, 255, .24);
  transition: color .4s, background .5s, box-shadow .5s; }
.v4-bulb:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.material-card:is(:hover, :focus-within) .v4-lit-media > .v4-lit-img,
.v4-lit-media.is-lit > .v4-lit-img { opacity: 1; transform: scale(1.38); }
.material-card:is(:hover, :focus-within) .v4-lit-media::after,
.v4-lit-media.is-lit::after { opacity: 1; }
.material-card:is(:hover, :focus-within) .v4-bulb,
.v4-lit-media.is-lit .v4-bulb { color: var(--v4-lit); background: rgba(40, 30, 8, .82);
  box-shadow: 0 0 0 1px rgba(255, 201, 40, .7), 0 0 26px rgba(255, 190, 40, .65); text-shadow: 0 0 5px rgba(255, 200, 40, .9); }
.v4-lit-grid .material-card:is(:hover, :focus-within) { box-shadow: 0 14px 36px #0002, 0 0 36px rgba(255, 190, 70, .28); }
@media (prefers-reduced-motion: reduce) {
  .new-page .material-card .v4-lit-media > .v4-lit-img, .v4-lit-media::after, .v4-bulb { transition: none; }
  .new-page .material-card .v4-lit-media > .v4-lit-img { transform: scale(1.32) !important; }
}

/* verifier: hover / active states that turn text white on a filled red or black background */
.btn-outline:is(:hover, :focus-visible), .btn-white:is(:hover, :focus-visible),
.btn-outline:is(:hover, :focus-visible) *, .btn-white:is(:hover, :focus-visible) *,
.topic-nav a:is(:hover, :focus-visible, .is-active, [aria-current]) { text-shadow: var(--v4-ts-soft) !important; }
