/* NC Finance v4 – Produktionsergänzungen (native WordPress-Bausteine im v4-Stil) */

/* Admin-Leiste: Sticky-Header darunter ausrichten */
body.admin-bar .site-header{top:32px}
@media (max-width:782px){body.admin-bar .site-header{top:46px}#wpadminbar{position:fixed}}

/* Reste des bisherigen Themes ausblenden, falls über wp_footer ausgegeben */
#be-themes-back-to-top,.exp-search-form-wrap,#tatsu-footer-container{display:none!important}
/* v4-Fuß gegen Alt-Snippet durchsetzen: ein verbliebenes anonymes
   `.tatsu-footer-wrap, footer.site-footer{display:none!important}` aus wp_head
   darf den eigenen v4-Footer (footer.site-footer) nicht verbergen. Höhere
   Spezifität (body.ncv4 …) gewinnt die Kaskade, ohne Drittanbieter-Ausgabe zu entfernen. */
body.ncv4 footer.site-footer{display:block!important}

/* Consent über fremder Schnellkontaktleiste erzwingen: die fremde Leiste
   `nav.ncf-mcta` ist fixed bottom:0 mit z-index:9990 (Beleg:
   audit/live-home-compatibility-before.html) und liegt damit über dem
   GDPR-Cookie-Banner `#moove_gdpr_cookie_info_bar` (fixed bottom:0, z-index:9900)
   sowie gleichauf mit dem Einstellungs-Dialog `.gdpr_lightbox`/`#moove_gdpr_cookie_modal`
   (z-index:9990, Quelle gdpr-cookie-compliance/dist/styles/gdpr-main.css). Dadurch
   überlagert die CTA-Leiste die unteren Consent-Schaltflächen. Die Einwilligung muss
   klickbar oben liegen. Reine Stapelreihenfolge (keine Designänderung, nichts
   ausgeblendet, keine Fremd-CSS/DB-Änderung); scoped auf die v4-Ansicht (body.ncv4). */
body.ncv4 #moove_gdpr_cookie_info_bar,
body.ncv4 .gdpr_lightbox,
body.ncv4 #moove_gdpr_cookie_modal{z-index:10000!important}

/* ---------- WPForms 4821 im v4-Panel ---------- */
.ncv4-form .wpforms-container{margin:0!important;max-width:none}
.ncv4-form .wpforms-form .wpforms-field{padding:0!important;margin:0 0 4px!important}
.ncv4-form .wpforms-form .wpforms-field-label{display:block;font:500 11px/1.4 var(--mono)!important;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)!important;margin:18px 0 8px!important}
.ncv4-form .wpforms-form input[type=text],.ncv4-form .wpforms-form input[type=email],.ncv4-form .wpforms-form input[type=tel],.ncv4-form .wpforms-form textarea,.ncv4-form .wpforms-form select{display:block;width:100%!important;max-width:none!important;border:1px solid #d6d0c4!important;border-radius:0!important;padding:13px 16px!important;height:auto!important;font:400 14px/1.5 var(--sans)!important;color:var(--ink)!important;background:#fff!important;box-shadow:none!important;transition:border-color .2s}
.ncv4-form .wpforms-form textarea{min-height:150px!important;resize:vertical}
.ncv4-form .wpforms-form input:focus,.ncv4-form .wpforms-form textarea:focus{border-color:var(--gold)!important;outline:2px solid rgba(201,168,76,.25);outline-offset:0}
.ncv4-form .wpforms-form .wpforms-submit-container{padding:0!important;margin-top:26px!important}
.ncv4-form .wpforms-form button[type=submit]{background:var(--gold)!important;color:var(--ink)!important;border:0!important;border-radius:999px!important;padding:15px 34px!important;font:500 12px/1 var(--mono)!important;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:background .2s,transform .2s}
.ncv4-form .wpforms-form button[type=submit]:hover{background:var(--gold-deep)!important;color:#fff!important;transform:translateY(-1px)}
.ncv4-form .wpforms-form label.wpforms-error,.ncv4-form .wpforms-form em.wpforms-error{color:#a0322b!important;font:400 12px/1.4 var(--sans)!important;margin-top:6px}
.ncv4-form .wpforms-form .wpforms-field-required{color:var(--gold-deep)}
.ncv4-form .wpforms-confirmation-container-full,.ncv4-form .wpforms-confirmation-container{background:#fff!important;border:1px solid var(--gold)!important;color:var(--ink)!important;padding:22px 24px!important;font:400 15px/1.6 var(--sans)}
.ncv4-form .wpforms-field-hp,.ncv4-form .wpforms-field-hp label{display:none!important}

/* ---------- Native Suche ---------- */
.ncv4-search{margin:0}
.ncv4-search label{display:block;font:500 11px/1.4 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink);margin:0 0 10px}
.ncv4-search-row{display:flex;gap:0;max-width:520px}
.ncv4-search input[type=search]{flex:1 1 auto;min-width:0;border:1px solid #d6d0c4;border-right:0;border-radius:0;padding:12px 14px;font:400 14px/1.4 var(--sans);color:var(--ink);background:#fff;-webkit-appearance:none;appearance:none}
.ncv4-search input[type=search]:focus{outline:2px solid rgba(201,168,76,.35);outline-offset:0;border-color:var(--gold)}
.ncv4-search button{flex:0 0 auto;border:0;background:var(--ink);color:#fff;padding:0 18px;font:500 11px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .2s}
.ncv4-search button:hover{background:var(--gold-deep)}
.page-hero .ncv4-search{margin-top:30px}
.ncv4-404-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}

/* ---------- Archive / Suche ---------- */
.archive-card .archive-card-media{display:block;overflow:hidden;margin:0 0 18px;aspect-ratio:3/2;background:var(--paper)}
.archive-card .archive-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.archive-card:hover .archive-card-media img{transform:scale(1.03)}
.ncv4-excerpt{font-size:14px;line-height:1.7;margin:10px 0 14px;color:var(--text)}
.archive-pagination{flex-wrap:wrap;align-items:center}
.archive-pagination .current{background:var(--ink);color:#fff;border-color:var(--ink)}
.archive-pagination .dots{border:0}
.archive-pagination a:hover{border-color:var(--gold);color:var(--gold-deep)}
.archive-sidebar .ncv4-search-row{max-width:none}
.archive-sidebar .cat-item a{color:var(--ink)}
.ncv4-empty{padding:30px;background:var(--paper)}
.ncv4-empty p{margin:0 0 18px}
.archive-hero .eyebrow a{color:inherit}

/* ---------- Standortkarte statt defekter Google-Maps-Einbettung ---------- */
.service-detail .ncfr-h3{min-width:0;overflow-wrap:anywhere;hyphens:auto}
.ncv4-map-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding:clamp(28px,4vw,44px);background:var(--ink);color:rgba(248,246,241,.82)}
.ncv4-kicker{font:500 11px/1.4 var(--mono);letter-spacing:.24em;text-transform:uppercase;color:#dfc078;margin:0 0 10px}
.ncv4-map-address{font:400 clamp(22px,2.6vw,30px)/1.3 var(--display);color:#fff;margin:0}

/* ---------- Zoho-Recruit-Stellenliste ---------- */
.ncv4-jobs{margin-top:10px}
#rec_job_listing_div a{color:var(--gold-deep)!important}
input.rec-job-info.searchButton{background:var(--gold)!important;color:var(--ink)!important;border:0!important;border-radius:999px!important;font:500 11px/1 var(--mono)!important;letter-spacing:.18em;text-transform:uppercase;padding:10px 22px!important;cursor:pointer}
input.rec-job-info[type=text]{border:1px solid var(--line)!important;border-radius:0!important;box-shadow:none!important;font-family:var(--sans)}

/* ProvenExpert-Bewertungen im Fuß */
.site-footer .pe-richsnippets{margin-top:18px;text-align:center}

@media (prefers-reduced-motion:reduce){.archive-card .archive-card-media img,.ncv4-form .wpforms-form button[type=submit]{transition:none}}

/* ---------- Ambient-Hero-Loop-Videos (4 freigegebene Flächen) ---------- */
/* Dezentes Zusatzvideo über dem bestehenden Posterbild. Das Original-Poster bleibt
   sichtbarer Fallback, bis die Wiedergabe läuft; Rahmen-Geometrie unverändert. */
.ncv4-hero-loop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s ease;z-index:1;pointer-events:none;border:0;background:transparent}
.ncv4-loop-playing .ncv4-hero-loop{opacity:1}
@media (prefers-reduced-motion:reduce){.ncv4-hero-loop{transition:none}}
/* Der goldene Innenrahmen des Home-Heros bleibt über dem Video sichtbar. */
.hero-media:after{z-index:2}
/* Zugängliche Bewegungssteuerung. Nur sichtbar, wenn ein Loop vorhanden ist. */
.ncv4-hero-motion{display:none}
.ncv4-loop-ready .ncv4-hero-motion{position:absolute;z-index:3;right:16px;bottom:16px;display:inline-flex;align-items:center;gap:9px;padding:9px 15px;border:0;border-radius:999px;background:rgba(10,22,40,.72);color:#fff;font:500 10px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;backdrop-filter:blur(4px);transition:background .2s}
.ncv4-loop-ready .ncv4-hero-motion:hover{background:rgba(10,22,40,.9)}
.ncv4-hero-motion:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.ncv4-hero-motion__icon{width:9px;height:10px;flex:0 0 auto;background:#fff;clip-path:polygon(0 0,100% 50%,0 100%)}
.ncv4-loop-playing .ncv4-hero-motion__icon{clip-path:none;background:linear-gradient(90deg,#fff 0 38%,transparent 38% 62%,#fff 62% 100%)}
.ncv4-loop-error .ncv4-hero-motion{display:none}

/* YouTube: Vorschaubild lokal, Video erst nach Klick extern (keine Einwilligung nötig) */
.ncv4-video-link{position:relative;display:block;overflow:hidden;background:var(--ink);color:#fff;text-decoration:none}
.ncv4-video-link img{display:block;width:100%;height:auto;opacity:.82;transition:opacity .3s,transform .6s}
.ncv4-video-link:hover img{opacity:1;transform:scale(1.02)}
.ncv4-video-label{position:absolute;left:20px;bottom:20px;background:var(--gold);color:var(--ink);padding:12px 20px;border-radius:999px;font:500 11px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase}
