/*
Theme Name: CLEACO Consulting
Theme URI: https://cleacoconsulting.de/
Author: CLEACO Consulting
Description: Schlankes, responsives Theme für CLEACO Consulting mit Parser-Check-Landingpage, Scroll-Animationen und einstellbaren Buchungslinks.
Version: 1.2.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: cleaco-consulting
*/

:root {
  --cleaco-ink: #14353a;
  --cleaco-ink-soft: #31545a;
  --cleaco-teal: #168b84;
  --cleaco-teal-dark: #0c6c68;

  --cleaco-mint: #dff1e9;
  --cleaco-mint-strong: #b8e1d4;
  --cleaco-lime: #d8ee91;
  --cleaco-paper: #f6f7f3;
  --cleaco-white: #fff;
  --cleaco-muted: #647a7c;
  --cleaco-line: #dbe6e1;
  --cleaco-shadow: 0 24px 70px rgba(20, 53, 58, .12);
  --cleaco-radius: 24px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body {
  margin: 0;
  color: var(--cleaco-ink);
  background: var(--cleaco-paper);
  font-family: Poppins, Roboto, "Segoe UI", system-ui, -apple-system, sans-serif;
  font-size: 17px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}
img, svg { max-width: 100%; }
a { color: inherit; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 3px solid #ed9c6c; outline-offset: 4px; }
.site-shell { overflow: clip; }
.container { width: min(1160px, calc(100% - 48px)); margin-inline: auto; }
.section { padding: 104px 0; }
.section-kicker { margin: 0 0 12px; color: var(--cleaco-teal-dark); font-size: .76rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.section-title { max-width: 760px; margin: 0; font-size: clamp(2.1rem, 4vw, 3.5rem); line-height: 1.08; letter-spacing: -.055em; }
.section-intro { max-width: 660px; margin: 20px 0 0; color: var(--cleaco-muted); font-size: 1.08rem; }
.eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 22px; color: var(--cleaco-teal-dark); font-size: .78rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.eyebrow::before { display: inline-block; width: 28px; height: 2px; background: currentColor; content: ""; }
.button {
  display: inline-flex; align-items: center; justify-content: center; gap: 12px;
  min-height: 54px; padding: 14px 22px; border: 1px solid transparent; border-radius: 999px;
  font-weight: 750; line-height: 1.15; text-decoration: none; transition: transform .22s ease, background .22s ease, box-shadow .22s ease;
}
.button:hover { transform: translateY(-2px); }
.button-primary { color: #fff; background: var(--cleaco-ink); box-shadow: 0 10px 24px rgba(20, 53, 58, .18); }
.button-primary:hover { background: var(--cleaco-teal-dark); box-shadow: 0 14px 30px rgba(20, 53, 58, .22); }
.button-light { color: var(--cleaco-ink); background: #fff; }
.button-light:hover { background: var(--cleaco-lime); }
.button-ghost { min-height: 48px; padding-inline: 15px; color: var(--cleaco-ink-soft); }
.button-ghost:hover { background: rgba(20, 53, 58, .06); }
.button-arrow { font-size: 1.15rem; transition: transform .2s ease; }
.button:hover .button-arrow { transform: translateX(4px); }

/* Header */
.site-header { position: sticky; z-index: 30; top: 0; border-bottom: 1px solid rgba(219, 230, 225, .72); background: rgba(246, 247, 243, .9); backdrop-filter: blur(18px); }
.header-inner { display: flex; align-items: center; justify-content: space-between; min-height: 78px; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 11px; color: var(--cleaco-ink); text-decoration: none; }
.brand-logo { display: block; width: 176px; max-height: 74px; object-fit: contain; }
.header-nav { display: flex; align-items: center; gap: 17px; }
.header-nav a { color: var(--cleaco-ink-soft); font-size: .9rem; font-weight: 650; text-decoration: none; }
.header-nav a:hover { color: var(--cleaco-teal-dark); }
.header-nav .nav-cta { padding: 12px 17px; border-radius: 999px; color: #fff; background: var(--cleaco-ink); }
.header-nav .nav-cart { padding: 9px 12px; border: 1px solid var(--cleaco-line); border-radius: 999px; white-space: nowrap; }
.menu-toggle { display: none; width: 46px; height: 46px; border: 1px solid var(--cleaco-line); border-radius: 50%; color: var(--cleaco-ink); background: #fff; font-size: 1.25rem; cursor: pointer; }

/* Hero */
.hero { position: relative; padding: 72px 0 88px; background: radial-gradient(circle at 77% 28%, rgba(184, 225, 212, .6), transparent 28%), linear-gradient(145deg, #f6f7f3 4%, #eef5ef 100%); }
.hero::after { position: absolute; right: -110px; bottom: -215px; width: 420px; height: 420px; border: 1px solid rgba(22, 139, 132, .12); border-radius: 50%; content: ""; }
.hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.04fr .96fr; align-items: center; gap: 60px; }
.hero h1 { max-width: 730px; margin: 0; font-size: clamp(3rem, 6.3vw, 5.8rem); line-height: .99; letter-spacing: -.07em; }
.hero h1 em { color: var(--cleaco-teal); font-style: normal; }
.hero-lede { max-width: 590px; margin: 24px 0 0; color: var(--cleaco-ink-soft); font-size: clamp(1.04rem, 1.5vw, 1.22rem); }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 30px; }
.hero-note { margin: 15px 0 0; color: var(--cleaco-muted); font-size: .88rem; }
.hero-note strong { color: var(--cleaco-ink); }
.hero-art { position: relative; min-height: 470px; }
.art-orbit { position: absolute; inset: 4% 3% 2% 4%; border: 1px solid rgba(22, 139, 132, .19); border-radius: 48% 52% 50% 50%; transform: rotate(-12deg); }
.art-orbit::before, .art-orbit::after { position: absolute; border: 1px solid rgba(22, 139, 132, .15); border-radius: 50%; content: ""; }
.art-orbit::before { inset: 10% -5% 12% 12%; transform: rotate(28deg); }
.art-orbit::after { inset: 17% 10% 5% -7%; transform: rotate(-18deg); }
.doc-card { position: absolute; top: 10%; left: 13%; width: min(340px, 74%); padding: 27px; border: 1px solid rgba(255,255,255,.8); border-radius: 22px; background: rgba(255,255,255,.93); box-shadow: var(--cleaco-shadow); transform: rotate(-5deg); }
.doc-top { display: flex; align-items: center; justify-content: space-between; padding-bottom: 17px; border-bottom: 1px solid var(--cleaco-line); }
.doc-label { color: var(--cleaco-muted); font-size: .67rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.doc-check { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 50%; color: var(--cleaco-teal-dark); background: var(--cleaco-mint); font-weight: 900; }
.doc-name { margin: 22px 0 7px; font-size: 1.2rem; font-weight: 800; letter-spacing: -.03em; }
.doc-sub { margin: 0 0 23px; color: var(--cleaco-muted); font-size: .8rem; }
.doc-line { height: 7px; margin: 10px 0; border-radius: 999px; background: #e7eeeb; }
.doc-line.wide { width: 100%; }
.doc-line.mid { width: 78%; }
.doc-line.short { width: 53%; }
.doc-section { display: flex; align-items: center; gap: 10px; margin: 22px 0 10px; color: var(--cleaco-ink); font-size: .73rem; font-weight: 800; }
.doc-section::before { width: 7px; height: 7px; border-radius: 50%; background: var(--cleaco-teal); content: ""; }
.scan-card { position: absolute; right: 1%; bottom: 11%; width: min(250px, 57%); padding: 22px; border: 1px solid rgba(255,255,255,.6); border-radius: 20px; color: #fff; background: var(--cleaco-ink); box-shadow: 0 24px 54px rgba(20, 53, 58, .2); transform: rotate(5deg); }
.scan-label { margin: 0; color: var(--cleaco-mint-strong); font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.scan-title { margin: 9px 0 15px; font-size: 1.1rem; font-weight: 750; }
.scan-progress { height: 8px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.17); }
.scan-progress span { display: block; width: 82%; height: 100%; border-radius: inherit; background: var(--cleaco-lime); }
.scan-meta { display: flex; justify-content: space-between; margin-top: 9px; color: rgba(255,255,255,.72); font-size: .69rem; }
.float-chip { position: absolute; top: 16%; right: 3%; display: inline-flex; align-items: center; gap: 9px; padding: 11px 15px; border: 1px solid rgba(20,53,58,.08); border-radius: 999px; color: var(--cleaco-ink); background: rgba(255,255,255,.94); box-shadow: 0 10px 35px rgba(20,53,58,.1); font-size: .77rem; font-weight: 800; transform: rotate(3deg); }
.float-chip span { display: grid; width: 20px; height: 20px; place-items: center; border-radius: 50%; color: var(--cleaco-ink); background: var(--cleaco-lime); }
.art-caption { position: absolute; bottom: 0; left: 11%; color: var(--cleaco-muted); font-size: .73rem; }

/* Proof / offer */
.trust-strip { padding: 20px 0; border-block: 1px solid var(--cleaco-line); background: rgba(255,255,255,.55); }
.trust-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.trust-item { display: flex; align-items: center; gap: 11px; color: var(--cleaco-ink-soft); font-size: .87rem; font-weight: 700; }
.trust-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--cleaco-teal); box-shadow: 0 0 0 5px var(--cleaco-mint); }
.offer-section { padding: 105px 0; }
.offer-grid { display: grid; grid-template-columns: .82fr 1.18fr; align-items: center; gap: 74px; }
.offer-copy .section-title { max-width: 480px; }
.check-list { display: grid; gap: 14px; margin: 27px 0 0; padding: 0; list-style: none; }
.check-list li { display: flex; align-items: flex-start; gap: 12px; color: var(--cleaco-ink-soft); }
.check-list li::before { display: grid; flex: 0 0 23px; width: 23px; height: 23px; place-items: center; margin-top: 2px; border-radius: 50%; color: var(--cleaco-teal-dark); background: var(--cleaco-mint); content: "✓"; font-size: .78rem; font-weight: 900; }
.offer-card { position: relative; overflow: hidden; padding: clamp(28px, 4vw, 48px); border-radius: 28px; color: #fff; background: var(--cleaco-ink); box-shadow: var(--cleaco-shadow); }
.offer-card::after { position: absolute; right: -135px; bottom: -220px; width: 430px; height: 430px; border: 1px solid rgba(216,238,145,.24); border-radius: 50%; box-shadow: 0 0 0 36px rgba(216,238,145,.04), 0 0 0 74px rgba(216,238,145,.03); content: ""; }
.offer-card > * { position: relative; z-index: 1; }
.offer-topline { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 15px; }
.offer-tag { display: inline-flex; align-items: center; gap: 8px; color: var(--cleaco-lime); font-size: .75rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.offer-tag::before { width: 8px; height: 8px; border-radius: 50%; background: currentColor; content: ""; }
.offer-price { color: rgba(255,255,255,.7); font-size: .85rem; }
.offer-price strong { display: block; color: #fff; font-size: clamp(2.7rem, 5vw, 4.2rem); line-height: 1; letter-spacing: -.07em; }
.offer-card h3 { max-width: 550px; margin: 19px 0 12px; font-size: clamp(1.8rem, 3vw, 2.7rem); line-height: 1.08; letter-spacing: -.05em; }
.offer-card p { max-width: 560px; color: rgba(255,255,255,.76); }
.offer-points { display: grid; grid-template-columns: 1fr 1fr; gap: 11px 18px; margin: 25px 0 28px; padding: 0; list-style: none; }
.offer-points li { display: flex; gap: 9px; color: rgba(255,255,255,.91); font-size: .9rem; }
.offer-points li::before { color: var(--cleaco-lime); content: "✓"; font-weight: 900; }
.small-print { margin: 14px 0 0 !important; color: rgba(255,255,255,.6) !important; font-size: .75rem; }

/* Process */
.process-section { background: var(--cleaco-mint); }
.process-header { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 46px; }
.process-header .section-title { max-width: 670px; }
.process-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.process-card { position: relative; min-height: 235px; padding: 28px; border: 1px solid rgba(20,53,58,.1); border-radius: 20px; background: rgba(255,255,255,.72); }
.step-number { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; color: var(--cleaco-ink); background: var(--cleaco-lime); font-weight: 850; }
.process-card h3 { margin: 25px 0 8px; font-size: 1.22rem; letter-spacing: -.03em; }
.process-card p { margin: 0; color: var(--cleaco-muted); font-size: .94rem; }
.process-arrow { position: absolute; top: 31px; right: 28px; color: rgba(20,53,58,.35); font-size: 1.45rem; }

/* Services */
.services-section { background: #fff; }
.services-top { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 38px; }
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.service-card { display: flex; min-height: 210px; flex-direction: column; align-items: flex-start; padding: 25px; border: 1px solid var(--cleaco-line); border-radius: 19px; background: #fff; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.service-card:hover { transform: translateY(-4px); border-color: var(--cleaco-mint-strong); box-shadow: 0 16px 34px rgba(20,53,58,.08); }
.service-icon { display: grid; width: 43px; height: 43px; place-items: center; border-radius: 14px; color: var(--cleaco-teal-dark); background: var(--cleaco-mint); font-size: 1.15rem; font-weight: 800; }
.service-card h3 { margin: 20px 0 7px; font-size: 1.08rem; letter-spacing: -.025em; }
.service-card p { margin: 0 0 17px; color: var(--cleaco-muted); font-size: .9rem; }
.service-card a { margin-top: auto; color: var(--cleaco-teal-dark); font-size: .85rem; font-weight: 800; text-decoration: none; }

/* About */
.about-section { color: #fff; background: var(--cleaco-ink); }
.about-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 72px; align-items: center; }
.about-badge { display: grid; width: min(280px, 100%); aspect-ratio: 1; place-items: center; margin: auto; border: 1px solid rgba(216,238,145,.36); border-radius: 50%; background: radial-gradient(circle, rgba(22,139,132,.32), transparent 66%); }
.about-badge-inner { display: grid; width: 70%; aspect-ratio: 1; place-items: center; border: 1px solid rgba(255,255,255,.17); border-radius: 50%; color: var(--cleaco-lime); font-size: 4.4rem; font-weight: 800; letter-spacing: -.1em; }
.about-section .section-kicker { color: var(--cleaco-lime); }
.about-section .section-title { color: #fff; }
.about-copy { max-width: 700px; color: rgba(255,255,255,.75); font-size: 1.02rem; }
.about-copy strong { color: #fff; }
.about-facts { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.about-facts span { padding: 9px 13px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; color: rgba(255,255,255,.88); font-size: .78rem; font-weight: 700; }

/* FAQ / Contact */
.faq-section { background: var(--cleaco-paper); }
.faq-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; }
.faq-list { border-top: 1px solid var(--cleaco-line); }
.faq-list details { border-bottom: 1px solid var(--cleaco-line); }
.faq-list summary { position: relative; padding: 19px 38px 19px 0; cursor: pointer; font-weight: 750; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { position: absolute; top: 15px; right: 3px; color: var(--cleaco-teal); content: "+"; font-size: 1.5rem; font-weight: 500; }
.faq-list details[open] summary::after { content: "−"; }
.faq-list details p { max-width: 650px; margin: -4px 0 20px; color: var(--cleaco-muted); }
.contact-section { padding: 70px 0; background: var(--cleaco-lime); }
.contact-card { display: flex; align-items: center; justify-content: space-between; gap: 35px; }
.contact-card h2 { max-width: 660px; margin: 0; font-size: clamp(2rem, 4.2vw, 3.7rem); line-height: 1.05; letter-spacing: -.06em; }
.contact-card p { margin: 13px 0 0; color: var(--cleaco-ink-soft); }

/* Footer and internal pages */
.site-footer { padding: 37px 0; color: rgba(255,255,255,.75); background: #0b272c; }
.footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.footer-brand { color: #fff; }
.footer-brand .brand-logo { border-radius: 4px; }
.footer-meta { margin: 7px 0 0; color: rgba(255,255,255,.56); font-size: .77rem; }
.footer-links { display: flex; flex-wrap: wrap; gap: 18px; }
.footer-links a { color: rgba(255,255,255,.72); font-size: .82rem; text-decoration: none; }
.footer-links a:hover { color: var(--cleaco-lime); }
.legal-content { width: min(820px, calc(100% - 48px)); margin: 70px auto; padding: clamp(24px, 5vw, 56px); border: 1px solid var(--cleaco-line); border-radius: var(--cleaco-radius); background: #fff; }
.legal-content h1 { font-size: clamp(2.2rem, 4vw, 3.5rem); line-height: 1.05; letter-spacing: -.05em; }
.legal-content h2 { margin-top: 2em; font-size: 1.35rem; }
.upload-content { width: min(850px, calc(100% - 48px)); min-height: 54vh; margin: 70px auto; padding: clamp(24px, 5vw, 50px); border-radius: var(--cleaco-radius); background: #fff; box-shadow: var(--cleaco-shadow); }
.upload-frame { width: 100%; min-height: 700px; border: 0; }
.empty-integration { padding: 22px; border: 1px dashed #9bb9b2; border-radius: 16px; color: var(--cleaco-muted); background: var(--cleaco-paper); }

/* Scroll motion */
.reveal { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: .08s; }
.reveal-delay-2 { transition-delay: .16s; }
.reveal-delay-3 { transition-delay: .24s; }
.float-soft { animation: cleaco-float 6s ease-in-out infinite; }
@keyframes cleaco-float { 0%,100% { transform: translateY(0) rotate(-5deg); } 50% { transform: translateY(-10px) rotate(-4deg); } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .reveal { opacity: 1; transform: none; }
}

@media (max-width: 900px) {
  .section { padding: 82px 0; }
  .hero { padding-top: 62px; }
  .hero-grid { grid-template-columns: 1fr; gap: 28px; }
  .hero-copy { max-width: 760px; }
  .hero-art { width: min(560px, 100%); min-height: 440px; margin: 0 auto; }
  .offer-grid, .about-grid { grid-template-columns: 1fr; gap: 38px; }
  .about-badge { width: 210px; order: 2; }
  .faq-grid { grid-template-columns: 1fr; gap: 26px; }
  .process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
  .header-inner { gap: 16px; }
  .header-nav { gap: 10px; }
  .header-nav a { font-size: .82rem; }
}
@media (max-width: 700px) {
  .container { width: min(100% - 32px, 560px); }
  .header-inner { min-height: 68px; }
  .brand-logo { width: 154px; max-height: 64px; }
  .menu-toggle { display: inline-grid; place-items: center; }
  .header-nav { position: absolute; top: calc(100% + 1px); right: 0; left: 0; display: none; align-items: stretch; flex-direction: column; gap: 0; padding: 8px 16px 17px; border-bottom: 1px solid var(--cleaco-line); background: var(--cleaco-paper); }
  .header-nav.is-open { display: flex; }
  .header-nav a { padding: 13px 8px; }
  .header-nav .nav-cta { margin-top: 8px; text-align: center; }
  .header-nav .nav-cart { border: 0; }
  .hero { padding: 49px 0 63px; }
  .hero h1 { font-size: clamp(2.65rem, 13vw, 4.5rem); }
  .hero-art { min-height: 355px; }
  .doc-card { top: 9%; left: 7%; width: 75%; padding: 20px; }
  .scan-card { right: 0; bottom: 6%; width: 58%; padding: 17px; }
  .float-chip { top: 4%; right: -1%; font-size: .68rem; }
  .art-caption { left: 5%; max-width: 70%; font-size: .67rem; }
  .trust-inner { align-items: flex-start; flex-direction: column; gap: 13px; }
  .trust-item { font-size: .82rem; }
  .offer-points { grid-template-columns: 1fr; }
  .process-header, .services-top, .contact-card { align-items: flex-start; flex-direction: column; }
  .process-grid, .service-grid { grid-template-columns: 1fr; }
  .process-card { min-height: 190px; }
  .contact-card .button { width: 100%; }
  .footer-inner { align-items: flex-start; flex-direction: column; }
  .footer-links { gap: 14px; }
}

/* Multi-page, booking, calendar, and blog layouts */
.calendar-page-layout { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(260px,.85fr); gap: 34px; align-items: start; }
.calendar-embed { min-height: 720px; margin-top: 26px; overflow: hidden; border: 1px solid var(--cleaco-line); border-radius: 18px; background: #fff; }
.calendar-embed iframe { display: block; width: 100%; min-height: 720px; border: 0; }
.woocommerce-content { padding: clamp(24px,4vw,44px); border: 1px solid var(--cleaco-line); border-radius: var(--cleaco-radius); background: #fff; }
.woocommerce-content .button, .woocommerce .button, .woocommerce button.button, .woocommerce a.button { min-height: 46px; border: 0; border-radius: 999px; color: #fff; background: var(--cleaco-ink); font-weight: 750; }
.woocommerce-message, .woocommerce-info { border-top-color: var(--cleaco-teal); }
.woocommerce-message::before, .woocommerce-info::before { color: var(--cleaco-teal-dark); }
.cleaco-paid-booking { margin: 32px 0 8px; padding: 26px; border: 1px solid var(--cleaco-mint-strong); border-radius: 18px; background: var(--cleaco-mint); }
.cleaco-paid-booking h2 { margin-top: 0; }
.blog-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.blog-card { display: flex; min-height: 290px; flex-direction: column; align-items: flex-start; padding: 27px; border: 1px solid var(--cleaco-line); border-radius: 20px; background: #fff; }
.blog-card h2 { margin: 0 0 12px; font-size: 1.35rem; line-height: 1.2; letter-spacing: -.03em; }
.blog-card h2 a { color: inherit; text-decoration: none; }
.blog-card p:not(.section-kicker) { color: var(--cleaco-muted); }
.blog-card .text-link { margin-top: auto; }
.blog-article h1 { margin: 10px 0 20px; font-size: clamp(2.2rem,5vw,4rem); line-height: 1.05; letter-spacing: -.055em; }
.blog-article .entry-content { color: var(--cleaco-ink-soft); font-size: 1.1rem; }
.post-meta { color: var(--cleaco-muted); font-size: .85rem; }
.blog-pagination { margin-top: 30px; }
.empty-integration { padding: 24px; border: 1px dashed #9bb9b2; border-radius: 16px; color: var(--cleaco-muted); background: var(--cleaco-paper); }
@media (max-width: 900px) { .blog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 700px) { .calendar-page-layout, .blog-grid { grid-template-columns: 1fr; } }

/* Compact internal pages and clear offer cards */
.internal-hero {
  padding: clamp(46px, 6vw, 72px) 0 24px;
  background: linear-gradient(145deg, #f6f7f3 4%, #eef5ef 100%);
}
.internal-hero h1 {
  max-width: 900px;
  margin: 0;
  font-size: clamp(2.45rem, 5vw, 4.2rem);
  line-height: 1.04;
  letter-spacing: -.065em;
}
.internal-lede {
  max-width: 760px;
  margin: 17px 0 0;
  color: var(--cleaco-ink-soft);
  font-size: clamp(1rem, 1.5vw, 1.14rem);
}
.internal-hero + .section { padding-top: 28px; }
.internal-hero + .services-index-section { padding-top: 16px; }
.services-index-section { padding-bottom: 84px; }
.services-index-section .service-grid { gap: 18px; }
.services-index-section .service-card { min-height: 200px; padding: 22px; }

.pricing-section { padding-top: 28px; }
.price-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.price-card {
  display: flex;
  min-height: 320px;
  flex-direction: column;
  align-items: flex-start;
  padding: 26px;
  border: 1px solid var(--cleaco-line);
  border-radius: 21px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(20, 53, 58, .055);
}
.price-card-featured { border-color: var(--cleaco-teal); box-shadow: 0 15px 38px rgba(22, 139, 132, .12); }
.price-scope { margin: 0 0 15px; padding: 6px 11px; border-radius: 999px; color: var(--cleaco-teal-dark); background: var(--cleaco-mint); font-size: .76rem; font-weight: 800; }
.price-card h2 { margin: 0; font-size: 1.35rem; line-height: 1.2; letter-spacing: -.035em; }
.price-amount { margin: 12px 0 8px; color: var(--cleaco-ink); font-size: 2.1rem; font-weight: 850; line-height: 1.1; letter-spacing: -.06em; }
.price-card > p:not(.price-scope):not(.price-amount) { margin: 0 0 24px; color: var(--cleaco-muted); font-size: .94rem; line-height: 1.55; }
.price-card .button { margin-top: auto; }
.small-business-note { padding: 20px 24px; border: 1px solid var(--cleaco-line); border-radius: 16px; background: #fff; }
.small-business-note p { margin: 0; }

/* Contact page and form */
.contact-layout { display: grid; grid-template-columns: minmax(260px, .78fr) minmax(0, 1.22fr); align-items: start; gap: 28px; }
.contact-details { padding: clamp(24px, 3.5vw, 34px); border: 1px solid var(--cleaco-line); border-radius: 22px; background: var(--cleaco-mint); }
.contact-details .section-title { font-size: clamp(1.75rem, 3vw, 2.55rem); }
.contact-details > p:not(.section-kicker) { color: var(--cleaco-ink-soft); }
.contact-methods { display: grid; gap: 10px; margin-top: 24px; }
.contact-method { display: grid; gap: 2px; padding: 13px 15px; border: 1px solid rgba(20, 53, 58, .09); border-radius: 14px; background: rgba(255, 255, 255, .8); }
.contact-method span { color: var(--cleaco-muted); font-size: .73rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.contact-method a { color: var(--cleaco-ink); font-weight: 700; text-decoration: none; overflow-wrap: anywhere; }
.contact-method a:hover { color: var(--cleaco-teal-dark); }
.cleaco-contact-form { padding: clamp(22px, 3.5vw, 34px); border: 1px solid var(--cleaco-line); border-radius: 22px; background: #fff; box-shadow: 0 15px 45px rgba(20, 53, 58, .07); }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px; }
.form-grid label { display: grid; gap: 7px; color: var(--cleaco-ink); font-size: .88rem; font-weight: 750; }
.form-grid .form-span { grid-column: 1 / -1; }
.form-grid input:not([type="checkbox"]), .form-grid select, .form-grid textarea {
  width: 100%;
  min-height: 49px;
  padding: 11px 13px;
  border: 1px solid #cbd9d4;
  border-radius: 12px;
  color: var(--cleaco-ink);
  background: #fbfcfa;
  font: inherit;
  font-weight: 450;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.form-grid textarea { min-height: 145px; resize: vertical; }
.form-grid input:focus, .form-grid select:focus, .form-grid textarea:focus { outline: 0; border-color: var(--cleaco-teal); background: #fff; box-shadow: 0 0 0 4px rgba(22, 139, 132, .13); }
.form-consent { display: flex; align-items: flex-start; gap: 10px; margin: 18px 0 20px; color: var(--cleaco-muted); font-size: .82rem; line-height: 1.5; }
.form-consent input { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--cleaco-teal-dark); }
.cleaco-contact-form > .button { min-width: 190px; }
.form-success, .form-error { margin: 0 0 18px; padding: 13px 15px; border-radius: 12px; }
.form-success { color: #155c46; background: #e3f5eb; }
.form-error { color: #843838; background: #fff0ef; }
.visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }

/* Joshua's harbor portrait */
.about-photo-frame { width: min(100%, 410px); margin: 0; padding: 8px; border: 1px solid rgba(255,255,255,.22); border-radius: 28px; background: rgba(255,255,255,.08); box-shadow: 0 24px 62px rgba(0,0,0,.2); }
.about-photo { display: block; width: 100%; height: 500px; border-radius: 21px; object-fit: cover; object-position: 61% 23%; }

@media (max-width: 900px) {
  .price-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .about-photo-frame { width: min(350px, 100%); margin: 0 auto; }
  .about-photo { height: 440px; }
}
@media (max-width: 700px) {
  .internal-hero { padding: 42px 0 20px; }
  .internal-hero + .section, .internal-hero + .services-index-section { padding-top: 14px; }
  .services-index-section { padding-bottom: 60px; }
  .price-grid, .contact-layout, .form-grid { grid-template-columns: 1fr; }
  .price-card { min-height: 280px; padding: 23px; }
  .form-grid .form-span { grid-column: auto; }
  .contact-details { padding: 23px; }
  .cleaco-contact-form { padding: 20px; }
  .about-photo-frame { width: min(310px, 100%); }
  .about-photo { height: 390px; }
}


/* Parser-Check: Hinweis sanft einblenden */
.trust-warning {
  max-width: 1160px;
  margin: 0 auto;
  padding: 18px 22px;
  border: 1px solid rgba(186, 53, 47, .2);
  border-left: 5px solid #bd3832;
  border-radius: 16px;
  color: var(--cleaco-ink-soft);
  background: linear-gradient(115deg, #fff4f1 0%, #fff 76%);
  box-shadow: 0 14px 34px rgba(20, 53, 58, .08);
  animation: trust-warning-reveal .7s cubic-bezier(.2, .7, .2, 1) .12s both;
}
.trust-warning-kicker {
  display: block;
  margin-bottom: 5px;
  color: #a92e29;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .09em;
}
.trust-warning p {
  margin: 0;
  color: var(--cleaco-ink-soft);
  font-size: .93rem;
  line-height: 1.55;
}
.trust-warning strong { color: var(--cleaco-ink); }
@keyframes trust-warning-reveal {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  .trust-warning { animation: none; }
}


/* Homepage first-screen parser-check sequence */
.hero {
  min-height: calc(100svh - 78px);
  display: flex;
  align-items: center;
  padding: clamp(28px, 4.5vh, 48px) 0;
}
.hero-grid {
  width: min(1160px, calc(100% - 48px));
  min-height: calc(100svh - 174px);
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(28px, 4.5vw, 58px);
}
.hero h1 { font-size: clamp(2.65rem, 5.2vw, 4.55rem); }
.hero-lede { margin-top: 20px; font-size: clamp(1rem, 1.35vw, 1.16rem); line-height: 1.55; }
.hero .hero-actions, .hero .hero-note { display: none !important; }
.hero-art { min-height: clamp(360px, 53vh, 460px); }
.doc-card { top: 12%; left: 4%; width: min(320px, 56%); padding: 23px; }
.scan-card { z-index: 3; top: 7%; right: 1%; bottom: auto; width: min(250px, 45%); transform: rotate(4deg); }
.hero .float-chip { display: none; }
body.parser-demo-ready .trust-strip { display: none; }
.hero .scan-score strong { visibility: hidden; }
body.parser-demo-ready .hero .scan-score strong { visibility: visible; }
.hero .scan-progress span { width: 0; transition: none; }
.hero .scan-warning {
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .35s ease, transform .35s ease, visibility 0s linear .35s;
}
.hero .scan-warning.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition-delay: 0s;
  animation: urgent-score-flash .55s ease 2;
}
.trust-warning.hero-warning {
  width: 100%;
  max-width: 550px;
  margin: 23px 0 0;
  padding: 17px 20px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(14px);
  animation: none;
  transition: opacity .55s ease, transform .55s ease, visibility 0s linear .55s;
}
.hero.is-warning-visible .trust-warning.hero-warning {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition-delay: 0s;
  animation: hero-warning-arrive .55s cubic-bezier(.2,.7,.2,1) both;
}
.automation-email {
  position: absolute;
  z-index: 4;
  right: 0;
  bottom: 1%;
  display: grid;
  width: min(330px, 60%);
  gap: 8px;
  padding: 19px 21px;
  border: 1px solid rgba(20,53,58,.1);
  border-radius: 17px;
  color: var(--cleaco-ink);
  background: rgba(255,255,255,.97);
  box-shadow: 0 20px 48px rgba(20,53,58,.18);
  opacity: 0;
  visibility: hidden;
  transform: translate(10px, 14px) rotate(1deg);
  transition: opacity .55s ease, transform .55s cubic-bezier(.2,.7,.2,1), visibility 0s linear .55s;
}
.hero.is-email-visible .automation-email {
  opacity: 1;
  visibility: visible;
  transform: translate(0, 0) rotate(1deg);
  transition-delay: 0s;
}
.automation-email-kicker { color: var(--cleaco-teal-dark); font-size: .66rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.automation-email-subject { font-size: .95rem; line-height: 1.25; }
.automation-email-to { color: var(--cleaco-muted); font-size: .7rem; }
.automation-email p { margin: 2px 0 0; color: var(--cleaco-ink-soft); font-size: .79rem; line-height: 1.48; }
.automation-email-status { justify-self: start; padding: 5px 9px; border-radius: 999px; color: #a92e29; background: #fff0ed; font-size: .66rem; font-weight: 850; }
@keyframes urgent-score-flash { 0%,100% { filter: brightness(1); } 50% { filter: brightness(1.3); } }
@keyframes hero-warning-arrive { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 900px) {
  .hero { min-height: auto; padding: 34px 0 38px; }
  .hero-grid { min-height: auto; grid-template-columns: 1fr; gap: 8px; }
  .hero h1 { font-size: clamp(2.45rem, 7.5vw, 3.9rem); }
  .hero-art { width: min(560px, 100%); min-height: clamp(300px, 38vh, 380px); margin: 0 auto; }
  .trust-warning.hero-warning { margin-top: 17px; }
}
@media (max-width: 700px) {
  .hero { min-height: calc(100svh - 68px); padding: 27px 0 22px; }
  .hero-grid { width: min(100% - 32px, 560px); gap: 8px; }
  .hero h1 { font-size: clamp(2.05rem, 9.4vw, 3.25rem); line-height: .98; }
  .hero-lede { margin-top: 13px; font-size: .94rem; line-height: 1.45; }
  .trust-warning.hero-warning { margin-top: 13px; padding: 13px 15px; }
  .trust-warning-kicker { margin-bottom: 3px; font-size: .62rem; }
  .trust-warning p { font-size: .82rem; line-height: 1.42; }
  .hero-art { min-height: clamp(245px, 33vh, 275px); }
  .doc-card { top: 8%; left: 2%; width: 57%; padding: 13px; border-radius: 16px; }
  .doc-top { padding-bottom: 9px; }
  .doc-label { font-size: .55rem; }
  .doc-check { width: 23px; height: 23px; }
  .doc-name { margin: 12px 0 5px; font-size: .95rem; }
  .doc-sub { margin: 0 0 12px; font-size: .62rem; }
  .doc-line { height: 5px; margin: 7px 0; }
  .doc-section { gap: 7px; margin: 12px 0 7px; font-size: .62rem; }
  .scan-card { top: 2%; right: 0; bottom: auto; width: 46%; padding: 12px; border-radius: 15px; }
  .scan-title.scan-score { margin: 6px 0 8px !important; font-size: 2rem !important; }
  .scan-title.scan-score span { font-size: .72rem !important; }
  .scan-meta { margin-top: 7px; font-size: .58rem; }
  .scan-meta span:last-child { display: none; }
  .scan-warning { margin-top: 9px !important; padding: 7px 8px !important; font-size: .66rem !important; }
  .automation-email { right: 0; bottom: 0; width: 64%; gap: 5px; padding: 12px 13px; border-radius: 14px; }
  .automation-email-kicker { font-size: .54rem; }
  .automation-email-subject { font-size: .73rem; }
  .automation-email-to { font-size: .58rem; }
  .automation-email p { font-size: .64rem; line-height: 1.34; }
  .automation-email-status { padding: 4px 7px; font-size: .54rem; }
}
@media (prefers-reduced-motion: reduce) {
  .hero .scan-warning, .trust-warning.hero-warning, .automation-email { transition: none; animation: none !important; }
}


/* Sample résumé card in the homepage illustration */
.resume-card { top: 9%; left: 2%; width: min(360px, 63%); padding: 17px 19px; }
.resume-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding-bottom: 7px; border-bottom: 1px solid var(--cleaco-line); }
.resume-kicker { color: var(--cleaco-teal-dark); font-size: .57rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.resume-mark { display: grid; flex: 0 0 auto; width: 23px; height: 23px; place-items: center; border-radius: 7px; color: var(--cleaco-teal-dark); background: var(--cleaco-mint); font-size: .52rem; font-weight: 900; }
.resume-name { margin: 9px 0 2px; color: var(--cleaco-ink); font-size: 1.05rem; font-weight: 850; line-height: 1.12; letter-spacing: -.035em; }
.resume-profession { margin: 0; color: var(--cleaco-ink-soft); font-size: .68rem; font-weight: 700; line-height: 1.3; }
.resume-contact { margin: 5px 0 8px; color: var(--cleaco-muted); font-size: .55rem; line-height: 1.3; overflow-wrap: anywhere; }
.resume-profile { margin: 0 0 8px; color: var(--cleaco-ink-soft); font-size: .6rem; line-height: 1.35; }
.resume-section { margin-top: 7px; }
.resume-section-title { margin: 0 0 4px; color: var(--cleaco-teal-dark); font-size: .55rem; font-weight: 850; letter-spacing: .08em; line-height: 1.2; text-transform: uppercase; }
.resume-entry { display: grid; grid-template-columns: 57px minmax(0, 1fr); align-items: start; gap: 7px; }
.resume-date { color: var(--cleaco-teal-dark); font-size: .54rem; font-weight: 850; line-height: 1.3; white-space: nowrap; }
.resume-entry strong { display: block; color: var(--cleaco-ink); font-size: .61rem; line-height: 1.2; }
.resume-entry small { display: block; margin-top: 2px; color: var(--cleaco-muted); font-size: .54rem; line-height: 1.25; }
.resume-skills { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 8px; }
.resume-skills span { padding: 3px 6px; border-radius: 999px; color: var(--cleaco-teal-dark); background: var(--cleaco-mint); font-size: .49rem; font-weight: 800; line-height: 1.2; }
.resume-foot { margin: 6px 0 0; color: var(--cleaco-muted); font-size: .47rem; line-height: 1.2; text-align: right; }
.scan-label { line-height: 1.25; }
@media (max-width: 900px) {
  .resume-card { top: 7%; left: 1%; width: min(350px, 63%); padding: 14px 15px; }
}
@media (max-width: 700px) {
  .resume-card { top: 7%; left: 1%; width: 62%; padding: 10px 11px; border-radius: 15px; }
  .resume-top { padding-bottom: 5px; }
  .resume-kicker { font-size: .45rem; letter-spacing: .045em; }
  .resume-mark { width: 19px; height: 19px; border-radius: 6px; font-size: .47rem; }
  .resume-name { margin: 7px 0 1px; font-size: .77rem; }
  .resume-profession { font-size: .49rem; }
  .resume-contact { margin: 4px 0 6px; font-size: .43rem; }
  .resume-profile { display: none; }
  .resume-section { margin-top: 5px; }
  .resume-section-title { margin-bottom: 3px; font-size: .44rem; }
  .resume-entry { grid-template-columns: 39px minmax(0, 1fr); gap: 4px; }
  .resume-date { font-size: .42rem; }
  .resume-entry strong { font-size: .47rem; }
  .resume-entry small { font-size: .43rem; }
  .resume-skills { gap: 3px; margin-top: 6px; }
  .resume-skills span { padding: 2px 4px; font-size: .4rem; }
  .resume-foot { margin-top: 5px; font-size: .39rem; }
  .scan-label { font-size: .49rem; letter-spacing: .045em; }
}


/* Homepage offer card and parser-check flow link */
.offer-grid-centered { grid-template-columns: minmax(0, 860px); justify-content: center; }
.offer-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin-top: 25px; }
.parser-flow .section-title { margin-bottom: 34px; }
@media (max-width: 700px) {
  .offer-grid-centered { grid-template-columns: minmax(0, 1fr); }
  .offer-actions { align-items: stretch; flex-direction: column; gap: 7px; }
  .offer-actions .button { width: 100%; }
}


/* Service-card illustrations and streamlined parser-check actions */
.button-outline-light { color: #fff; border-color: rgba(255,255,255,.58); background: rgba(255,255,255,.035); }
.button-outline-light:hover { color: var(--cleaco-ink); border-color: #fff; background: #fff; }
.services-top { display: block; }
.services-top > div { max-width: 760px; }
.service-card { position: relative; isolation: isolate; min-height: 320px; padding: 181px 23px 24px; overflow: hidden; border-radius: 21px; background: #fff; }
.service-card::before { content: ""; position: absolute; z-index: 0; inset: 0 0 auto; height: 158px; border-radius: 20px 20px 0 0; background-color: #e8f2ed; background-size: cover; background-position: center; }
.service-card > * { position: relative; z-index: 1; }
.service-card .service-icon { position: absolute; top: 133px; left: 23px; z-index: 2; width: 46px; height: 46px; border: 4px solid #fff; border-radius: 16px; box-shadow: 0 4px 12px rgba(20,53,58,.12); }
.service-card h3 { margin: 0 0 8px; font-size: 1.1rem; letter-spacing: -.025em; }
.service-card p { margin: 0 0 17px; color: var(--cleaco-muted); font-size: .92rem; line-height: 1.55; }
.service-card a { margin-top: auto; }
.service-card-bewerbung::before { background-color: #e8f2ed; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20600%20240%22%3E%3Crect%20width%3D%22600%22%20height%3D%22240%22%20fill%3D%22%23e8f2ed%22%2F%3E%3Ccircle%20cx%3D%2284%22%20cy%3D%22204%22%20r%3D%22107%22%20fill%3D%22%23d8ee91%22%20opacity%3D%22.72%22%2F%3E%3Ccircle%20cx%3D%22531%22%20cy%3D%2224%22%20r%3D%22112%22%20fill%3D%22%23c5e4dc%22%2F%3E%3Cpath%20d%3D%22M63%2035c43-25%2091-24%20133%201%22%20fill%3D%22none%22%20stroke%3D%22%23168b84%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20opacity%3D%22.55%22%2F%3E%3Crect%20x%3D%22292%22%20y%3D%2238%22%20width%3D%22178%22%20height%3D%22178%22%20rx%3D%2218%22%20fill%3D%22%23bdd9d0%22%20transform%3D%22rotate(6%20381%20127)%22%2F%3E%3Crect%20x%3D%22315%22%20y%3D%2222%22%20width%3D%22174%22%20height%3D%22190%22%20rx%3D%2216%22%20fill%3D%22%23fff%22%2F%3E%3Crect%20x%3D%22336%22%20y%3D%2243%22%20width%3D%2244%22%20height%3D%2244%22%20rx%3D%2214%22%20fill%3D%22%23d8ee91%22%2F%3E%3Ccircle%20cx%3D%22358%22%20cy%3D%2258%22%20r%3D%229%22%20fill%3D%22%23168b84%22%2F%3E%3Cpath%20d%3D%22M344%2077c3-8%2025-8%2028%200%22%20fill%3D%22%23168b84%22%2F%3E%3Crect%20x%3D%22392%22%20y%3D%2247%22%20width%3D%2273%22%20height%3D%227%22%20rx%3D%223.5%22%20fill%3D%22%2314353a%22%2F%3E%3Crect%20x%3D%22392%22%20y%3D%2261%22%20width%3D%2254%22%20height%3D%226%22%20rx%3D%223%22%20fill%3D%22%239db9b1%22%2F%3E%3Crect%20x%3D%22336%22%20y%3D%22102%22%20width%3D%22130%22%20height%3D%226%22%20rx%3D%223%22%20fill%3D%22%23168b84%22%20opacity%3D%22.8%22%2F%3E%3Crect%20x%3D%22336%22%20y%3D%22117%22%20width%3D%22139%22%20height%3D%225%22%20rx%3D%222.5%22%20fill%3D%22%23d7e2dd%22%2F%3E%3Crect%20x%3D%22336%22%20y%3D%22129%22%20width%3D%22121%22%20height%3D%225%22%20rx%3D%222.5%22%20fill%3D%22%23d7e2dd%22%2F%3E%3Crect%20x%3D%22336%22%20y%3D%22151%22%20width%3D%2285%22%20height%3D%226%22%20rx%3D%223%22%20fill%3D%22%23168b84%22%20opacity%3D%22.8%22%2F%3E%3Crect%20x%3D%22336%22%20y%3D%22166%22%20width%3D%22131%22%20height%3D%225%22%20rx%3D%222.5%22%20fill%3D%22%23d7e2dd%22%2F%3E%3Crect%20x%3D%22336%22%20y%3D%22178%22%20width%3D%22102%22%20height%3D%225%22%20rx%3D%222.5%22%20fill%3D%22%23d7e2dd%22%2F%3E%3Ccircle%20cx%3D%22522%22%20cy%3D%22168%22%20r%3D%2227%22%20fill%3D%22%23ed9c6c%22%2F%3E%3Cpath%20d%3D%22m510%20168%208%208%2016-19%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E"); }
.service-card-potenzial::before { background-color: #fbf0e9; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20600%20240%22%3E%3Crect%20width%3D%22600%22%20height%3D%22240%22%20fill%3D%22%23fbf0e9%22%2F%3E%3Ccircle%20cx%3D%22494%22%20cy%3D%2228%22%20r%3D%22124%22%20fill%3D%22%23f5d9c7%22%2F%3E%3Ccircle%20cx%3D%2285%22%20cy%3D%22205%22%20r%3D%2293%22%20fill%3D%22%23d8ee91%22%20opacity%3D%22.72%22%2F%3E%3Cpath%20d%3D%22M116%2056c36-22%2075-22%20112%201%22%20fill%3D%22none%22%20stroke%3D%22%23ed9c6c%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%22148%22%20cy%3D%22148%22%20r%3D%2266%22%20fill%3D%22%23fff%22%20opacity%3D%22.72%22%2F%3E%3Cpath%20d%3D%22M361%2062c-27%200-49%2021-49%2048%200%2020%2011%2035%2027%2046%207%205%209%2012%209%2019h28c0-7%202-14%209-19%2016-11%2027-26%2027-46%200-27-22-48-51-48Z%22%20fill%3D%22%23d8ee91%22%20stroke%3D%22%23168b84%22%20stroke-width%3D%225%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M354%20181h34m-30%2012h26%22%20stroke%3D%22%23168b84%22%20stroke-width%3D%226%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M378%2046V25M326%2062l-14-15m105%2015%2014-15m-125%2060h-22m160%200h22%22%20stroke%3D%22%23168b84%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22m350%20123%2017%2017%2026-34%22%20fill%3D%22none%22%20stroke%3D%22%23168b84%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Ccircle%20cx%3D%22475%22%20cy%3D%22177%22%20r%3D%2221%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22m475%20164%204%209%2010%201-7%207%202%2010-9-5-9%205%202-10-7-7%2010-1Z%22%20fill%3D%22%23ed9c6c%22%2F%3E%3Ccircle%20cx%3D%22252%22%20cy%3D%2272%22%20r%3D%227%22%20fill%3D%22%23168b84%22%2F%3E%3Ccircle%20cx%3D%22506%22%20cy%3D%2291%22%20r%3D%226%22%20fill%3D%22%23ed9c6c%22%2F%3E%3C%2Fsvg%3E"); }
.service-card-positionierung::before { background-color: #e9f3f0; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20600%20240%22%3E%3Crect%20width%3D%22600%22%20height%3D%22240%22%20fill%3D%22%23e9f3f0%22%2F%3E%3Ccircle%20cx%3D%2282%22%20cy%3D%2234%22%20r%3D%22112%22%20fill%3D%22%23d8ee91%22%20opacity%3D%22.7%22%2F%3E%3Ccircle%20cx%3D%22515%22%20cy%3D%22221%22%20r%3D%22126%22%20fill%3D%22%23c3e2da%22%2F%3E%3Ccircle%20cx%3D%22372%22%20cy%3D%22120%22%20r%3D%2291%22%20fill%3D%22%23fff%22%20opacity%3D%22.55%22%2F%3E%3Ccircle%20cx%3D%22372%22%20cy%3D%22120%22%20r%3D%2267%22%20fill%3D%22none%22%20stroke%3D%22%23168b84%22%20stroke-width%3D%223%22%20opacity%3D%22.34%22%2F%3E%3Ccircle%20cx%3D%22372%22%20cy%3D%22120%22%20r%3D%2243%22%20fill%3D%22none%22%20stroke%3D%22%23168b84%22%20stroke-width%3D%223%22%20opacity%3D%22.5%22%2F%3E%3Ccircle%20cx%3D%22372%22%20cy%3D%22120%22%20r%3D%2218%22%20fill%3D%22%23d8ee91%22%20stroke%3D%22%23168b84%22%20stroke-width%3D%224%22%2F%3E%3Cpath%20d%3D%22M222%20189%20339%20139l69-74%22%20fill%3D%22none%22%20stroke%3D%22%2314353a%22%20stroke-width%3D%227%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22m395%2062%2020-8-4%2021%22%20fill%3D%22%2314353a%22%2F%3E%3Ccircle%20cx%3D%22222%22%20cy%3D%22189%22%20r%3D%2210%22%20fill%3D%22%23ed9c6c%22%20stroke%3D%22%23fff%22%20stroke-width%3D%225%22%2F%3E%3Crect%20x%3D%2279%22%20y%3D%2291%22%20width%3D%2296%22%20height%3D%2258%22%20rx%3D%2218%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M101%20109h54m-54%2013h36%22%20stroke%3D%22%23168b84%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%22491%22%20cy%3D%2261%22%20r%3D%2217%22%20fill%3D%22%23ed9c6c%22%2F%3E%3Cpath%20d%3D%22m491%2049%204%208%209%201-7%206%202%209-8-4-8%204%202-9-7-6%209-1Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"); }
.service-card-gespraech::before { background-color: #f7f1dc; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20600%20240%22%3E%3Crect%20width%3D%22600%22%20height%3D%22240%22%20fill%3D%22%23f7f1dc%22%2F%3E%3Ccircle%20cx%3D%22510%22%20cy%3D%2217%22%20r%3D%22121%22%20fill%3D%22%23e7e8c8%22%2F%3E%3Ccircle%20cx%3D%2281%22%20cy%3D%22226%22%20r%3D%22105%22%20fill%3D%22%23f0d0bb%22%2F%3E%3Crect%20x%3D%22213%22%20y%3D%2234%22%20width%3D%22202%22%20height%3D%2275%22%20rx%3D%2222%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22m277%20109-13%2019%2036-19%22%20fill%3D%22%23fff%22%2F%3E%3Ccircle%20cx%3D%22250%22%20cy%3D%2271%22%20r%3D%227%22%20fill%3D%22%23168b84%22%2F%3E%3Ccircle%20cx%3D%22281%22%20cy%3D%2271%22%20r%3D%227%22%20fill%3D%22%23168b84%22%2F%3E%3Ccircle%20cx%3D%22312%22%20cy%3D%2271%22%20r%3D%227%22%20fill%3D%22%23168b84%22%2F%3E%3Cpath%20d%3D%22M300%20155h120%22%20stroke%3D%22%2314353a%22%20stroke-width%3D%228%22%20stroke-linecap%3D%22round%22%20opacity%3D%22.8%22%2F%3E%3Cpath%20d%3D%22M324%20155v34m73-34v34%22%20stroke%3D%22%23168b84%22%20stroke-width%3D%227%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%22174%22%20cy%3D%22113%22%20r%3D%2226%22%20fill%3D%22%23ed9c6c%22%2F%3E%3Cpath%20d%3D%22M126%20210c4-40%2021-65%2048-65s45%2025%2049%2065%22%20fill%3D%22%23168b84%22%2F%3E%3Ccircle%20cx%3D%22449%22%20cy%3D%22112%22%20r%3D%2226%22%20fill%3D%22%2314353a%22%2F%3E%3Cpath%20d%3D%22M402%20210c4-40%2020-65%2047-65s44%2025%2048%2065%22%20fill%3D%22%23d8ee91%22%2F%3E%3Crect%20x%3D%2281%22%20y%3D%2247%22%20width%3D%22105%22%20height%3D%2254%22%20rx%3D%2217%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M105%2065h57m-57%2013h37%22%20stroke%3D%22%23ed9c6c%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22m155%20101%206%2015%2017-15%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"); }
.service-card-fuehrung::before { background-color: #e8f2e9; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20600%20240%22%3E%3Crect%20width%3D%22600%22%20height%3D%22240%22%20fill%3D%22%23e8f2e9%22%2F%3E%3Ccircle%20cx%3D%22510%22%20cy%3D%22212%22%20r%3D%22128%22%20fill%3D%22%23d8ee91%22%20opacity%3D%22.8%22%2F%3E%3Ccircle%20cx%3D%2252%22%20cy%3D%2218%22%20r%3D%22106%22%20fill%3D%22%23c8e3dd%22%2F%3E%3Crect%20x%3D%22355%22%20y%3D%2234%22%20width%3D%22179%22%20height%3D%22124%22%20rx%3D%2218%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M384%20127V99m42%2028V79m42%2048V91m41%2036V65%22%20stroke%3D%22%23168b84%22%20stroke-width%3D%2215%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22m378%2082%2038-23%2043%2010%2049-35%22%20fill%3D%22none%22%20stroke%3D%22%23ed9c6c%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22m494%2034%2017-2-4%2016%22%20fill%3D%22none%22%20stroke%3D%22%23ed9c6c%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Ccircle%20cx%3D%22153%22%20cy%3D%22111%22%20r%3D%2225%22%20fill%3D%22%23ed9c6c%22%2F%3E%3Ccircle%20cx%3D%22226%22%20cy%3D%2299%22%20r%3D%2225%22%20fill%3D%22%23168b84%22%2F%3E%3Ccircle%20cx%3D%22299%22%20cy%3D%22112%22%20r%3D%2225%22%20fill%3D%22%2314353a%22%2F%3E%3Cpath%20d%3D%22M111%20207c3-39%2018-65%2042-65s39%2026%2042%2065%22%20fill%3D%22%23d8ee91%22%2F%3E%3Cpath%20d%3D%22M183%20207c3-45%2018-74%2043-74s40%2029%2043%2074%22%20fill%3D%22%23ed9c6c%22%2F%3E%3Cpath%20d%3D%22M258%20207c3-39%2018-65%2041-65s39%2026%2042%2065%22%20fill%3D%22%23168b84%22%2F%3E%3Cpath%20d%3D%22M89%20224h250%22%20stroke%3D%22%2314353a%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%20opacity%3D%22.4%22%2F%3E%3C%2Fsvg%3E"); }
.service-card-konflikt::before { background-color: #f6ece7; background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20600%20240%22%3E%3Crect%20width%3D%22600%22%20height%3D%22240%22%20fill%3D%22%23f6ece7%22%2F%3E%3Ccircle%20cx%3D%2258%22%20cy%3D%2219%22%20r%3D%22119%22%20fill%3D%22%23f0d0bd%22%2F%3E%3Ccircle%20cx%3D%22537%22%20cy%3D%22226%22%20r%3D%22118%22%20fill%3D%22%23d8ee91%22%20opacity%3D%22.72%22%2F%3E%3Crect%20x%3D%22104%22%20y%3D%2238%22%20width%3D%22174%22%20height%3D%2280%22%20rx%3D%2222%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22m231%20116%2019%2023%205-27%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M135%2065h108m-108%2018h78%22%20stroke%3D%22%23ed9c6c%22%20stroke-width%3D%226%22%20stroke-linecap%3D%22round%22%2F%3E%3Crect%20x%3D%22326%22%20y%3D%2261%22%20width%3D%22174%22%20height%3D%2280%22%20rx%3D%2222%22%20fill%3D%22%23168b84%22%2F%3E%3Cpath%20d%3D%22m365%20139-18%2023-5-27%22%20fill%3D%22%23168b84%22%2F%3E%3Cpath%20d%3D%22M358%2088h108m-108%2018h78%22%20stroke%3D%22%23fff%22%20stroke-width%3D%226%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M169%20185c30-20%2059-20%2089%200s59%2020%2089%200%2059-20%2089%200%22%20fill%3D%22none%22%20stroke%3D%22%2314353a%22%20stroke-width%3D%227%22%20stroke-linecap%3D%22round%22%20opacity%3D%22.72%22%2F%3E%3Ccircle%20cx%3D%22256%22%20cy%3D%22185%22%20r%3D%2210%22%20fill%3D%22%23ed9c6c%22%20stroke%3D%22%23fff%22%20stroke-width%3D%224%22%2F%3E%3Ccircle%20cx%3D%22344%22%20cy%3D%22185%22%20r%3D%2210%22%20fill%3D%22%23d8ee91%22%20stroke%3D%22%23fff%22%20stroke-width%3D%224%22%2F%3E%3Cpath%20d%3D%22M289%20163v-13m22%2013v-13%22%20stroke%3D%22%2314353a%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3Ccircle%20cx%3D%22300%22%20cy%3D%22144%22%20r%3D%2212%22%20fill%3D%22%23ed9c6c%22%2F%3E%3Cpath%20d%3D%22M278%20178c2-18%209-26%2022-26s20%208%2022%2026%22%20fill%3D%22%2314353a%22%2F%3E%3C%2Fsvg%3E"); }
@media (max-width: 700px) {
  .services-top { margin-bottom: 28px; }
  .service-card { min-height: 300px; padding: 174px 19px 21px; }
  .service-card::before { height: 150px; }
  .service-card .service-icon { top: 125px; left: 19px; }
}


/* Hero screening sequence and aligned Parser-Check actions */
.trust-warning.hero-warning { position: relative; border: 2px solid #c83232; border-left-width: 6px; }
.hero.is-warning-visible .trust-warning.hero-warning { animation: hero-warning-arrive .55s cubic-bezier(.2,.7,.2,1) both, screening-outline-pulse .85s ease .45s 1 both; }
.trust-warning.hero-warning::after { content: ""; position: absolute; z-index: 3; top: 50%; right: clamp(-270px, -20vw, -170px); width: clamp(155px, 18.5vw, 245px); height: 10px; opacity: 0; background: #c83232; clip-path: polygon(0 39%, 84% 39%, 84% 0, 100% 50%, 84% 100%, 84% 61%, 0 61%); filter: drop-shadow(0 3px 5px rgba(200,50,50,.2)); transform: translateY(-50%) scaleX(.72); transform-origin: left center; pointer-events: none; }
.hero.is-warning-visible .trust-warning.hero-warning::after { animation: screening-arrow-once .82s cubic-bezier(.2,.7,.2,1) .83s 1 both; }
.hero.is-warning-visible .automation-email { border: 2px solid #c83232; box-shadow: 0 0 0 2px rgba(200,50,50,.12), 0 20px 48px rgba(20,53,58,.18); animation: automation-email-alert .78s ease 1.55s 1 both; }
.automation-email::before { content: "ABSAGE"; position: absolute; z-index: 8; top: -17px; right: 17px; display: grid; min-width: 96px; min-height: 34px; place-items: center; padding: 4px 9px; border: 3px solid #c83232; border-radius: 6px; color: #c83232; background: #fff; box-shadow: 0 5px 12px rgba(20,53,58,.16); font-size: .78rem; font-weight: 950; letter-spacing: .14em; opacity: 0; transform: rotate(12deg) scale(1.65) translateY(-8px); pointer-events: none; }
.hero.is-warning-visible .automation-email::before { animation: absage-stamp-in .5s cubic-bezier(.18,.89,.32,1.35) 2.12s 1 both; }
@keyframes screening-outline-pulse { 0%,100% { box-shadow: 0 14px 34px rgba(20,53,58,.08); } 42% { box-shadow: 0 0 0 7px rgba(200,50,50,.17), 0 18px 38px rgba(20,53,58,.12); } }
@keyframes screening-arrow-once { 0% { opacity: 0; transform: translateY(-50%) scaleX(.72); } 25% { opacity: 1; transform: translateY(-50%) scaleX(1); } 68% { opacity: 1; transform: translateY(-50%) scaleX(1); } 100% { opacity: .3; transform: translateY(-50%) scaleX(.96); } }
@keyframes automation-email-alert { 0%,100% { filter: brightness(1); box-shadow: 0 0 0 2px rgba(200,50,50,.12), 0 20px 48px rgba(20,53,58,.18); } 42% { filter: brightness(1.04); box-shadow: 0 0 0 8px rgba(200,50,50,.18), 0 20px 48px rgba(20,53,58,.18); } }
@keyframes absage-stamp-in { 0% { opacity: 0; transform: rotate(12deg) scale(1.65) translateY(-8px); } 62% { opacity: 1; transform: rotate(12deg) scale(.92) translateY(1px); } 100% { opacity: 1; transform: rotate(12deg) scale(1) translateY(0); } }
.offer-card { text-align: left; }
.offer-topline { align-items: center; gap: 24px; }
.offer-price { margin-left: auto; text-align: right; }
.offer-card h3, .offer-card > p { width: min(100%, 700px); }
.offer-card h3 { margin-top: 18px; }
.offer-points { width: 100%; max-width: 760px; column-gap: 32px; row-gap: 14px; }
.offer-points li { align-items: flex-start; line-height: 1.42; }
.offer-actions { width: 100%; align-items: center; justify-content: space-between; gap: 18px; margin-top: 30px; }
.offer-actions .button { justify-content: center; }
.offer-actions .button-outline-light { margin-left: auto; }
@media (max-width: 900px) {
  .trust-warning.hero-warning::after { top: auto; right: 12%; bottom: -136px; left: auto; width: 9px; height: 128px; clip-path: polygon(39% 0, 61% 0, 61% 70%, 100% 70%, 50% 100%, 0 70%, 39% 70%); transform: scaleY(.72); transform-origin: center top; }
  .hero.is-warning-visible .trust-warning.hero-warning::after { animation-name: screening-arrow-down-once; }
}
@keyframes screening-arrow-down-once { 0% { opacity: 0; transform: translateY(-10px) scaleY(.72); } 25% { opacity: 1; transform: translateY(0) scaleY(1); } 68% { opacity: 1; transform: translateY(0) scaleY(1); } 100% { opacity: .3; transform: translateY(8px) scaleY(.96); } }
@media (max-width: 700px) {
  .offer-topline { gap: 12px; }
  .offer-points { grid-template-columns: 1fr; gap: 11px; margin: 22px 0 24px; }
  .offer-actions { align-items: stretch; flex-direction: column; gap: 8px; margin-top: 25px; }
  .offer-actions .button { width: 100%; }
  .offer-actions .button-outline-light { margin-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .hero.is-warning-visible .trust-warning.hero-warning { border-color: #c83232; box-shadow: 0 0 0 2px rgba(200,50,50,.12), 0 14px 34px rgba(20,53,58,.08); animation: none !important; }
  .hero.is-warning-visible .trust-warning.hero-warning::after { opacity: 1; transform: translateY(-50%) scaleX(1); animation: none !important; }
  .hero.is-warning-visible .automation-email { border: 2px solid #c83232; animation: none !important; }
  .hero.is-warning-visible .automation-email::before { opacity: 1; transform: rotate(12deg) scale(1); animation: none !important; }
}


/* Keep the Absage stamp inside the mail mockup */
.automation-email::before { top: 12px; right: 13px; }
.automation-email-kicker { max-width: 160px; font-size: .58rem; line-height: 1.15; }
@media (max-width: 700px) {
  .automation-email::before { top: 9px; right: 9px; min-width: 76px; min-height: 28px; padding: 3px 6px; font-size: .59rem; }
  .automation-email-kicker { max-width: calc(100% - 88px); font-size: .45rem; line-height: 1.08; }
  .automation-email-subject { margin-top: 12px; }
}

/* Lift the hero illustration slightly on compact screens so the Absage email stays visible. */
@media (max-width: 900px) {
  .hero-art { top: -18px; margin-bottom: -18px; }
}

/* Keep the hero illustration visible in its final position on first load. */
.hero .hero-art.reveal {
  opacity: 1;
  transform: none;
}

/* Lift the illustration slightly so the Absage email stays fully in view. */
.hero-art {
  top: -12px;
  margin-bottom: -12px;
}
@media (max-width: 900px) {
  .hero-art {
    top: -26px;
    margin-bottom: -26px;
  }
}


/* Parser-Check detail page and aligned service index cards */
.parser-page .parser-hero {
  padding: clamp(58px, 8vw, 98px) 0 72px;
  background: radial-gradient(circle at 82% 16%, rgba(216,238,145,.22), transparent 26%), linear-gradient(145deg, #f6f7f3 4%, #eaf4ef 100%);
}
.parser-page .parser-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr);
  gap: clamp(32px, 5vw, 72px);
  align-items: center;
}
.parser-page .parser-hero h1 {
  max-width: 760px;
  margin: 0;
  font-size: clamp(2.45rem, 5vw, 4.1rem);
  line-height: 1.04;
  letter-spacing: -.065em;
}
.parser-page .parser-hero .hero-lede {
  max-width: 690px;
  margin: 22px 0 26px;
  color: var(--cleaco-ink-soft);
  font-size: clamp(1rem, 1.5vw, 1.13rem);
}
.parser-score-card {
  padding: clamp(26px, 3vw, 36px);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 26px;
  color: #fff;
  background: linear-gradient(145deg, #14353a, #1d6867);
  box-shadow: 0 24px 60px rgba(20,53,58,.18);
}
.parser-score-card .scan-label { margin: 0 0 8px; color: var(--cleaco-lime); font-size: .76rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.parser-score-card h2 { margin: 0 0 24px; color: #fff; font-size: clamp(1.6rem, 2.4vw, 2.2rem); letter-spacing: -.045em; }
.parser-score-card .score-row { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 8px 14px; margin: 0; padding: 15px 0; border-bottom: 1px solid rgba(255,255,255,.16); }
.parser-score-card .score-row span { color: rgba(255,255,255,.88); font-weight: 650; }
.parser-score-card .score-row strong { color: var(--cleaco-lime); font-size: 1.08rem; }
.parser-score-card .score-row i { grid-column: 1 / -1; display: block; height: 6px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.15); }
.parser-score-card .score-row i::after { display: block; width: 82%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--cleaco-lime), #7fd2be); content: ""; }
.parser-score-card .score-row:nth-child(4) i::after { width: 64%; }
.parser-score-card .score-row:nth-child(5) i::after { width: 72%; }
.parser-score-card .score-note { margin: 20px 0 0; color: rgba(255,255,255,.75); font-size: .88rem; }
.parser-details { padding: 84px 0; }
.parser-details-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); gap: clamp(32px, 6vw, 78px); align-items: start; }
.parser-details .section-title { max-width: 720px; font-size: clamp(2rem, 3.5vw, 3.15rem); }
.parser-details .check-list { display: grid; gap: 12px; margin: 28px 0 20px; padding: 0; list-style: none; }
.parser-details .check-list li { padding: 15px 18px; border: 1px solid var(--cleaco-line); border-radius: 15px; background: #fff; }
.parser-details .small-print { margin: 14px 0 0; color: var(--cleaco-muted); font-size: .86rem; line-height: 1.55; }
.parser-price-card { position: sticky; top: 24px; padding: 30px; border: 1px solid var(--cleaco-line); border-radius: 24px; background: #fff; box-shadow: 0 18px 48px rgba(20,53,58,.09); }
.parser-price-card .section-kicker { margin-bottom: 10px; }
.parser-big-price { margin: 0 0 14px; font-size: clamp(3rem, 5vw, 4.2rem); font-weight: 850; line-height: 1; letter-spacing: -.07em; }
.parser-big-price span { font-size: .48em; letter-spacing: -.02em; }
.parser-price-card > p:not(.section-kicker):not(.small-print) { color: var(--cleaco-ink-soft); }
.parser-flow { padding: 82px 0; background: #eef5ef; }
.parser-flow .section-title { max-width: 790px; margin-bottom: 32px; }
.payment-section { padding: 54px 0; color: #fff; background: linear-gradient(135deg, #14353a, #1c6867); }
.payment-panel { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 32px; border: 1px solid rgba(255,255,255,.15); border-radius: 24px; background: rgba(255,255,255,.05); }
.payment-panel .section-kicker { color: var(--cleaco-lime); }
.payment-panel h2 { margin: 0 0 10px; font-size: clamp(1.8rem, 3vw, 2.65rem); line-height: 1.08; letter-spacing: -.05em; }
.payment-panel p { max-width: 680px; margin: 0; color: rgba(255,255,255,.78); }
.parser-footer-note { padding: 22px 0 44px; text-align: center; color: var(--cleaco-muted); }
.parser-footer-note p { margin: 0; }
.parser-footer-note a { color: var(--cleaco-teal-dark); font-weight: 750; }
.services-index-section .service-card { min-height: 320px; padding: 181px 23px 24px; }
.services-index-section .service-card::before { height: 158px; }
.services-index-section .service-card .service-icon { top: 133px; left: 23px; }
.service-card-parser::before { background-color: #e6f0ed; background-image: radial-gradient(circle at 80% 22%, rgba(216,238,145,.82), transparent 18%), linear-gradient(135deg, #d7ece7, #f3f7f2 72%); }
.service-card-unterlagen::before { background-color: #e9f3f0; background-image: radial-gradient(circle at 78% 24%, rgba(22,139,132,.25), transparent 20%), linear-gradient(135deg, #e4f0ec, #f7f1dc 92%); }
@media (max-width: 900px) {
  .parser-page .parser-hero-grid, .parser-details-grid { grid-template-columns: 1fr; }
  .parser-page .parser-hero-grid { gap: 34px; }
  .parser-score-card { max-width: 680px; }
  .parser-price-card { position: static; max-width: 680px; }
  .parser-flow .process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .parser-page .parser-hero { padding: 46px 0 42px; }
  .parser-page .parser-hero h1 { font-size: clamp(2.2rem, 9vw, 3.2rem); }
  .parser-details { padding: 64px 0; }
  .parser-score-card, .parser-price-card { padding: 23px; border-radius: 20px; }
  .parser-flow { padding: 64px 0; }
  .parser-flow .process-grid { grid-template-columns: 1fr; }
  .payment-section { padding: 34px 0; }
  .payment-panel { align-items: stretch; flex-direction: column; padding: 23px; }
  .payment-panel .button { width: 100%; }
  .services-index-section .service-card { min-height: 300px; padding: 174px 19px 21px; }
  .services-index-section .service-card::before { height: 150px; }
  .services-index-section .service-card .service-icon { top: 125px; left: 19px; }
}


/* Give the dedicated services page a clear image band above each card's text. */
.page-id-9 .service-card { min-height: 320px !important; padding: 181px 23px 24px !important; }
.page-id-9 .service-card::before { height: 158px !important; }
.page-id-9 .service-card .service-icon { top: 133px !important; left: 23px !important; }
@media (max-width: 700px) {
  .page-id-9 .service-card { min-height: 300px !important; padding: 174px 19px 21px !important; }
  .page-id-9 .service-card::before { height: 150px !important; }
  .page-id-9 .service-card .service-icon { top: 125px !important; left: 19px !important; }
}


/* Guided package finder and collapsed price catalogue. */
.package-finder-section { padding: clamp(48px, 7vw, 82px) 0; background: radial-gradient(circle at 10% 8%, rgba(216,238,145,.34), transparent 25%), linear-gradient(145deg, #edf5ef, #f8faf7 72%); }
.package-finder-layout { display: grid; grid-template-columns: minmax(250px, .75fr) minmax(0, 1.25fr); align-items: start; gap: clamp(28px, 5vw, 68px); }
.package-finder-intro { padding-top: 12px; }
.package-finder-intro .section-title { max-width: 470px; font-size: clamp(2rem, 3.7vw, 3rem); }
.package-finder-intro > p:not(.section-kicker) { max-width: 510px; color: var(--cleaco-ink-soft); }
.package-finder-intro-note { margin-top: 22px; color: var(--cleaco-muted) !important; font-size: .88rem; }
.package-finder-panel { padding: clamp(22px, 3vw, 34px); border: 1px solid rgba(20,53,58,.09); border-radius: 25px; background: #fff; box-shadow: 0 20px 54px rgba(20,53,58,.09); }
.package-finder-progress { display: inline-flex; margin: 0 0 22px; padding: 7px 12px; border-radius: 999px; color: var(--cleaco-teal-dark); background: var(--cleaco-mint); font-size: .76rem; font-weight: 850; letter-spacing: .04em; }
.package-finder-step { min-width: 0; margin: 0; padding: 0; border: 0; }
.package-finder-step[hidden], .package-finder-result[hidden], .package-finder-actions [hidden], .package-finder-error[hidden] { display: none !important; }
.package-finder-step legend { margin-bottom: 17px; color: var(--cleaco-ink); font-size: 1.2rem; font-weight: 800; line-height: 1.3; }
.package-finder-step-note { margin: -7px 0 17px; color: var(--cleaco-muted); font-size: .9rem; }
.package-finder-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.package-finder-option { display: flex; align-items: flex-start; gap: 11px; min-height: 76px; padding: 14px; border: 1px solid var(--cleaco-line); border-radius: 15px; color: var(--cleaco-ink); background: #fff; cursor: pointer; transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease; }
.package-finder-option:hover { border-color: var(--cleaco-teal); background: #f7fbf8; transform: translateY(-1px); }
.package-finder-option:focus-within { outline: 3px solid rgba(237,156,108,.7); outline-offset: 2px; }
.package-finder-option input { flex: 0 0 auto; width: 18px; height: 18px; margin: 3px 0 0; accent-color: var(--cleaco-teal-dark); }
.package-finder-option:has(input:checked) { border-color: var(--cleaco-teal); background: #eef8f3; box-shadow: 0 0 0 2px rgba(22,139,132,.1); }
.package-finder-option-copy { display: grid; gap: 4px; }
.package-finder-option strong { font-size: .88rem; line-height: 1.32; }
.package-finder-option small { color: var(--cleaco-muted); font-size: .76rem; line-height: 1.35; }
.package-finder-error { margin: 15px 0 0; color: #a32f2b; font-size: .86rem; font-weight: 700; }
.package-finder-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 22px; }
.package-finder-actions .button { min-height: 48px; padding: 12px 18px; }
.package-finder-result { margin-top: 0; padding: clamp(22px, 3vw, 32px); border-radius: 21px; color: #fff; background: linear-gradient(145deg, #14353a, #1d6867); box-shadow: 0 18px 44px rgba(20,53,58,.15); }
.package-finder-result-kicker { margin: 0 0 10px; color: var(--cleaco-lime); font-size: .7rem; font-weight: 900; letter-spacing: .14em; }
.package-finder-result h3 { max-width: 620px; margin: 0 0 8px; color: #fff; font-size: clamp(1.45rem, 2.6vw, 2rem); line-height: 1.16; letter-spacing: -.035em; }
.package-finder-result-price { margin: 0 0 16px; color: var(--cleaco-lime); font-size: 1rem; font-weight: 850; }
.package-finder-result-description { margin: 0 0 13px; color: rgba(255,255,255,.9); font-size: .96rem; }
.package-finder-result-reason { margin: 0; color: rgba(255,255,255,.8); font-size: .9rem; }
.package-finder-result-note { margin: 18px 0 0; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.17); color: rgba(255,255,255,.68); font-size: .78rem; }
.package-finder-result-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.package-finder-result-actions .button { min-height: 46px; padding: 11px 17px; font-size: .85rem; }
.package-finder-result-contact { margin: 14px 0 0; color: rgba(255,255,255,.72); font-size: .82rem; }
.package-finder-contact { margin: 14px 0 0; color: rgba(255,255,255,.7); font-size: .82rem; }
.package-finder-contact a { color: var(--cleaco-lime); font-weight: 750; }
.package-catalog { margin: 0; padding: 0; border: 1px solid var(--cleaco-line); border-radius: 20px; background: #fff; box-shadow: 0 12px 34px rgba(20,53,58,.05); }
.package-catalog > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 19px 22px; color: var(--cleaco-ink); cursor: pointer; font-weight: 800; list-style: none; }
.package-catalog > summary::-webkit-details-marker { display: none; }
.package-catalog > summary::after { content: "+"; color: var(--cleaco-teal-dark); font-size: 1.35rem; font-weight: 500; }
.package-catalog[open] > summary::after { content: "−"; }
.package-catalog-count { margin-left: auto; padding: 5px 10px; border-radius: 999px; color: var(--cleaco-teal-dark); background: var(--cleaco-mint); font-size: .72rem; font-weight: 850; white-space: nowrap; }
.package-catalog-note { margin: 0; padding: 0 22px 16px; color: var(--cleaco-muted); font-size: .86rem; }
.package-catalog .price-grid { padding: 0 20px 22px; }
.package-catalog[open] > summary { padding-bottom: 12px; }
.package-catalog .price-card { scroll-margin-top: 100px; }
@media (max-width: 900px) { .package-finder-layout { grid-template-columns: 1fr; gap: 22px; } .package-finder-intro .section-title { max-width: 680px; } }
@media (max-width: 700px) {
  .package-finder-section { padding: 52px 0; }
  .package-finder-panel { padding: 19px; border-radius: 20px; }
  .package-finder-options { grid-template-columns: 1fr; gap: 8px; }
  .package-finder-option { min-height: 66px; padding: 12px; }
  .package-finder-actions { align-items: stretch; flex-direction: row-reverse; }
  .package-finder-actions .button { flex: 1; }
  .package-finder-result-actions { flex-direction: column; }
  .package-finder-result-actions .button { width: 100%; }
  .package-catalog > summary { align-items: flex-start; padding: 16px; font-size: .9rem; }
  .package-catalog-count { margin-left: auto; }
  .package-catalog-note { padding: 0 16px 12px; font-size: .8rem; }
  .package-catalog .price-grid { padding: 0 12px 14px; }
}
@media (prefers-reduced-motion: reduce) { .package-finder-option { transition: none; } .package-finder-option:hover { transform: none; } }


/* Hide the navigation row once the recommendation is shown. */
.package-finder-actions[hidden] { display: none !important; }


/* Clear service-page entry point and visible package recommendation. */
.service-finder-tile {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  width: min(100%, 680px);
  margin: 24px 0 0;
  padding: 17px 20px;
  border: 1px solid rgba(22, 139, 132, .24);
  border-radius: 18px;
  color: var(--cleaco-ink);
  background: linear-gradient(115deg, #fff, #f1f8f4);
  box-shadow: 0 12px 30px rgba(20, 53, 58, .08);
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.service-finder-tile:hover {
  transform: translateY(-2px);
  border-color: var(--cleaco-teal);
  box-shadow: 0 16px 34px rgba(20, 53, 58, .12);
}
.service-finder-tile-copy { display: grid; gap: 4px; }
.service-finder-tile-copy small {
  color: var(--cleaco-teal-dark);
  font-size: .67rem;
  font-weight: 850;
  letter-spacing: .1em;
}
.service-finder-tile-copy strong { font-size: 1.08rem; line-height: 1.25; }
.service-finder-tile-copy > span:last-child { color: var(--cleaco-muted); font-size: .88rem; line-height: 1.4; }
.service-finder-tile-arrow {
  display: grid;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--cleaco-ink);
  font-size: 1.25rem;
  transition: transform .2s ease, background .2s ease;
}
.service-finder-tile:hover .service-finder-tile-arrow { transform: translateX(3px); background: var(--cleaco-teal-dark); }
.price-card.package-card-recommended {
  position: relative;
  z-index: 1;
  border-color: var(--cleaco-teal);
  box-shadow: 0 0 0 4px rgba(22, 139, 132, .18), 0 18px 44px rgba(20, 53, 58, .13);
  transform: translateY(-3px);
}
.package-recommendation-badge {
  display: inline-flex;
  align-items: center;
  margin: 0 0 12px !important;
  padding: 7px 11px;
  border-radius: 999px;
  color: var(--cleaco-ink);
  background: var(--cleaco-lime);
  font-size: .71rem !important;
  font-weight: 900;
  letter-spacing: .04em;
  line-height: 1.2;
}
.price-card .package-recommendation-badge + .price-scope { margin-top: 0; }
@media (max-width: 700px) {
  .service-finder-tile { gap: 13px; margin-top: 20px; padding: 15px 16px; }
  .service-finder-tile-copy strong { font-size: 1rem; }
  .service-finder-tile-copy > span:last-child { font-size: .8rem; }
  .service-finder-tile-arrow { flex-basis: 38px; width: 38px; height: 38px; }
}
@media (prefers-reduced-motion: reduce) {
  .service-finder-tile, .service-finder-tile-arrow { transition: none; }
  .service-finder-tile:hover { transform: none; }
  .service-finder-tile:hover .service-finder-tile-arrow { transform: none; }
  .price-card.package-card-recommended { transform: none; }
}


/* Make each service card clickable through its existing learn-more link. */
.service-card { cursor: pointer; }
.service-card > a {
  position: static;
  z-index: auto;
}
.service-card > a::after {
  content: "";
  position: absolute;
  z-index: 3;
  display: block;
  inset: 0;
  border-radius: inherit;
}
.service-card > a:focus-visible::after {
  outline: 3px solid #ed9c6c;
  outline-offset: 4px;
}


/* Keep the ranking artwork below the intro copy on smaller screens. */
@media (max-width: 900px) {
  body.home .hero-art {
    top: 0;
    margin-bottom: 0;
  }
}


/* Keep the service-page finder focused on the questions. */
.package-finder-section--questions-only .package-finder-layout { grid-template-columns: minmax(0, 1fr); max-width: 900px; margin-inline: auto; }
#package-finder-form { scroll-margin-top: 110px; }


/* Preisübersicht: auf den Karten zuerst Umfang, Paketname und Preis zeigen. */
body.page-id-11 .cleaco-pricing-service-group { margin: 0 0 12px; padding: 0; }
body.page-id-11 .cleaco-pricing-service-header { display: none !important; }
body.page-id-11 .cleaco-discount-notices.cleaco-discount-compact {
  width: min(100%, 640px);
  margin: 0 auto 14px;
  padding: 8px 12px;
  border-radius: 12px;
  font-size: .74rem;
  line-height: 1.35;
}
body.page-id-11 .cleaco-discount-compact p { margin: 3px 0; font-size: .74rem; line-height: 1.35; }
body.page-id-11 .cleaco-discount-compact p:last-child { font-size: .67rem; }
body.page-id-11 .price-card-compact {
  min-height: 0;
  gap: 6px;
  padding: 18px;
  align-items: stretch;
}
body.page-id-11 .price-card-compact .price-scope { margin: 0 0 2px; font-size: .7rem; }
body.page-id-11 .price-card-compact h2,
body.page-id-11 .price-card-compact h3 { margin: 0; font-size: 1.03rem; line-height: 1.25; }
body.page-id-11 .price-card-compact .price-amount { margin: 3px 0 4px; font-size: 1.55rem; }
body.page-id-11 .price-card-more { margin-top: auto; border-top: 1px solid var(--cleaco-line); }
body.page-id-11 .price-card-more summary {
  position: relative;
  padding: 10px 28px 10px 0;
  cursor: pointer;
  list-style: none;
  font-size: .82rem;
  font-weight: 750;
}
body.page-id-11 .price-card-more summary::-webkit-details-marker { display: none; }
body.page-id-11 .price-card-more summary::after {
  position: absolute;
  right: 3px;
  color: var(--cleaco-teal-dark);
  content: "+";
  font-size: 1.2rem;
  font-weight: 500;
}
body.page-id-11 .price-card-more[open] summary::after { content: "−"; }
body.page-id-11 .price-card-more-content { padding: 2px 0 3px; }
body.page-id-11 .price-card-more-content > p { margin: 0 0 10px; font-size: .86rem; line-height: 1.48; }
body.page-id-11 .price-card-more-content .cleaco-price-service-link { margin: 0 0 8px; }
body.page-id-11 .price-card-more-content form { margin-top: 9px; }
body.page-id-11 .package-finder-section { padding-block: 34px; }
body.page-id-11 .package-finder-layout { grid-template-columns: 1fr; max-width: 940px; margin-inline: auto; }

/* Startseite: die CV-/Ranking-Einblendung nutzt den freien Platz im Hero. */
body.home .hero-art { top: 14px; margin-bottom: -14px; }
@media (max-width: 900px) {
  body.home .hero-art { top: 10px; margin-bottom: -10px; }
}

/* Expanded package details must not stretch their neighbouring cards. */
body.page-id-11 .price-card-compact { align-self: start; }


/* Klare Rabattwahl mit sofortiger, sichtbarer Preisvorschau. */
body.page-id-11 .cleaco-discount-notices.cleaco-discount-selector {
  display: grid;
  gap: 8px;
  width: min(100%, 940px);
  margin: 0 auto 14px;
  padding: 12px 14px;
  border-radius: 14px;
}
body.page-id-11 .cleaco-discount-selector-heading { display: grid; gap: 2px; }
body.page-id-11 .cleaco-discount-selector-heading strong { font-size: .92rem; }
body.page-id-11 .cleaco-discount-selector-heading span { font-size: .76rem; line-height: 1.35; }
body.page-id-11 .cleaco-discount-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
body.page-id-11 .cleaco-discount-option {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  min-height: 48px;
  margin: 0;
  padding: 8px 10px;
  border: 1px solid var(--cleaco-line);
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
}
body.page-id-11 .cleaco-discount-option.is-selected { border-color: var(--cleaco-teal-dark); background: #edf8f4; }
body.page-id-11 .cleaco-discount-option input { flex: 0 0 auto; width: 16px; height: 16px; margin: 0; accent-color: var(--cleaco-teal-dark); }
body.page-id-11 .cleaco-discount-option > span { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
body.page-id-11 .cleaco-discount-option strong { font-size: .76rem; line-height: 1.2; }
body.page-id-11 .cleaco-discount-option small { font-size: .66rem; line-height: 1.25; }
body.page-id-11 .cleaco-unemployed-confirm { display: flex; align-items: flex-start; gap: 7px; margin: 0; font-size: .72rem; line-height: 1.35; }
body.page-id-11 .cleaco-unemployed-confirm input { flex: 0 0 auto; margin-top: 2px; accent-color: var(--cleaco-teal-dark); }
body.page-id-11 .cleaco-discount-selector-note { margin: 0; font-size: .68rem; line-height: 1.3; }
body.page-id-11 .cleaco-discount-selector-feedback { margin: 0; font-size: .72rem; font-weight: 700; line-height: 1.35; }
body.page-id-11 .price-card-compact .price-amount { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; }
body.page-id-11 .price-original { color: #72817c; font-size: .72em; font-weight: 600; text-decoration: line-through; }
body.page-id-11 .price-discounted { color: var(--cleaco-teal-dark); }
body.page-id-11 .price-card-discount-label {
  display: inline-flex;
  width: max-content;
  max-width: 100%;
  margin: 0 0 6px;
  padding: 6px 9px;
  border-radius: 999px;
  color: var(--cleaco-ink);
  background: var(--cleaco-lime);
  font-size: .68rem;
  font-weight: 800;
  line-height: 1.2;
}
body.page-id-11 .price-card-discount-label--excluded { color: #586962; background: #eef2f0; font-weight: 650; }
body.page-id-11 .price-card-compact form { margin: 4px 0 0; }
body.page-id-11 .price-card-more { margin-top: 8px; }
@media (max-width: 700px) {
  body.page-id-11 .cleaco-discount-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-id-11 .cleaco-discount-option:nth-child(3) { grid-column: 1 / -1; }
  body.page-id-11 .cleaco-discount-notices.cleaco-discount-selector { padding: 10px; }
}

/* Startseitenmotiv klar sichtbar tiefer setzen; die Layout-Höhe bleibt erhalten. */
body.home .hero-art { top: 42px; margin-bottom: -42px; }
@media (max-width: 900px) {
  body.home .hero-art { top: 26px; margin-bottom: -26px; }
}

/* The employment confirmation is only shown when its discount is selected. */
body.page-id-11 .cleaco-unemployed-confirm[hidden] { display: none !important; }


/* Homepage: verständliche Prozesskarte für das automatische Bewerbungs-Screening. */
body.home .hero-art { top: 0; height: 460px; min-height: 460px; margin-bottom: 0; }
.hero .hero-process-card {
  display: grid;
  height: 100%;
  min-height: 0;
  grid-template-rows: auto minmax(150px, 1fr) minmax(132px, 1fr) auto;
  gap: 10px;
  padding: 17px;
  border: 1px solid rgba(20, 53, 58, .1);
  border-radius: 24px;
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 20px 50px rgba(20, 53, 58, .1);
}
.hero-process-heading { display: grid; gap: 2px; }
.hero-process-kicker { color: var(--cleaco-teal-dark); font-size: .63rem; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
.hero-process-heading strong { color: var(--cleaco-ink); font-size: .94rem; line-height: 1.2; }
.hero-process-track { display: grid; grid-template-columns: minmax(0, .9fr) 28px minmax(0, .95fr) 28px minmax(0, 1.22fr); align-items: stretch; gap: 8px; min-width: 0; }
.hero-flow-step { position: relative; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; justify-content: center; padding: 13px; border: 1px solid var(--cleaco-line); border-radius: 17px; background: #fff; box-shadow: 0 8px 20px rgba(20, 53, 58, .055); }
.hero-flow-number { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 50%; color: var(--cleaco-teal-dark); background: var(--cleaco-mint); font-size: .6rem; font-weight: 900; }
.hero-flow-icon { width: 29px; height: 29px; margin: 6px 0; color: var(--cleaco-teal-dark); }
.hero-flow-step > strong { color: var(--cleaco-ink); font-size: .98rem; line-height: 1.18; }
.hero-flow-step > small { margin-top: 4px; color: var(--cleaco-muted); font-size: .69rem; line-height: 1.3; }
.hero-flow-arrow { position: relative; display: flex; align-items: center; justify-content: center; min-width: 0; font-size: 0; }
.hero-flow-arrow::before { position: absolute; top: calc(50% - 4px); right: 0; left: 0; height: 8px; border: 1px solid #b9d9cd; border-radius: 99px; background: repeating-linear-gradient(90deg, #d9eee5 0 8px, #b8ddcf 8px 13px); content: ""; }
.hero-flow-arrow::after { position: relative; z-index: 1; display: grid; width: 25px; height: 25px; place-items: center; border-radius: 50%; color: #fff; background: var(--cleaco-teal-dark); content: "→"; font-size: 1rem; font-weight: 900; }
.hero .hero-flow-ranking { position: relative; inset: auto; z-index: 1; display: grid; width: auto; grid-template-columns: 1fr; align-content: center; gap: 7px; padding: 13px; border-radius: 17px; color: #fff; background: linear-gradient(145deg, #14353a, #1d6867); box-shadow: 0 14px 32px rgba(20, 53, 58, .16); transform: none; }
.hero-flow-ranking .scan-label { margin: 0; color: var(--cleaco-lime); font-size: .59rem; line-height: 1.2; letter-spacing: .07em; }
.hero .hero-flow-ranking .scan-score { display: flex; align-items: baseline; gap: 3px; margin: 0; color: #fff; font-size: 2.35rem; font-weight: 850; line-height: 1; letter-spacing: -.06em; }
.hero .hero-flow-ranking .scan-score span { color: rgba(255,255,255,.78); font-size: .78rem; font-weight: 650; letter-spacing: 0; }
.hero-flow-ranking .scan-progress { height: 7px; }
.hero-flow-ranking .scan-meta { margin: 0; color: rgba(255,255,255,.77); font-size: .59rem; }
.hero-flow-ranking .scan-warning { margin: 0; padding: 6px 8px; border-radius: 9px; color: #fff; background: #bd3832; font-size: .65rem; font-weight: 850; line-height: 1.2; }
.hero-flow-outcomes { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); align-items: stretch; gap: 9px; min-width: 0; }
.hero-flow-personnel-path, .hero-flow-email-path { display: grid; min-width: 0; grid-template-rows: auto 1fr auto; align-content: start; gap: 5px; }
.hero-flow-branch-label { margin: 0; color: var(--cleaco-muted); font-size: .59rem; font-weight: 850; letter-spacing: .055em; line-height: 1.2; text-transform: uppercase; }
.hero-flow-personnel-card { display: flex; min-width: 0; min-height: 70px; align-items: center; gap: 9px; padding: 9px 11px; border: 1px dashed #bccbc5; border-radius: 14px; color: var(--cleaco-ink-soft); background: #f2f6f3; }
.hero-flow-personnel-card svg { flex: 0 0 27px; width: 27px; height: 27px; color: var(--cleaco-teal-dark); }
.hero-flow-personnel-card strong, .hero-flow-personnel-card small { display: block; }
.hero-flow-personnel-card strong { font-size: .77rem; line-height: 1.2; }
.hero-flow-personnel-card small { margin-top: 3px; color: var(--cleaco-muted); font-size: .64rem; line-height: 1.2; }
.hero-flow-not-reached { color: #a92e29; font-size: .6rem; font-weight: 750; line-height: 1.2; }
.hero .automation-email { position: relative; inset: auto; display: grid; width: 100%; min-height: 100%; gap: 5px; padding: 11px 13px; border: 1px solid rgba(20,53,58,.1); border-radius: 14px; opacity: 0; visibility: hidden; transform: translateY(8px); }
.hero .automation-email-kicker { max-width: calc(100% - 90px); color: var(--cleaco-teal-dark); font-size: .56rem; line-height: 1.15; }
.hero .automation-email-subject { margin-top: 5px; font-size: .78rem; line-height: 1.2; }
.hero .automation-email-to { font-size: .61rem; }
.hero .automation-email p { margin: 0; font-size: .67rem; line-height: 1.28; }
.hero .automation-email-status { padding: 4px 7px; font-size: .57rem; }
.hero-process-note { margin: 0; color: var(--cleaco-muted); font-size: .62rem; line-height: 1.25; }
@media (max-width: 900px) {
  body.home .hero-art { height: 430px; min-height: 430px; }
  .hero .hero-process-card { grid-template-rows: auto minmax(145px, 1fr) minmax(132px, 1fr) auto; padding: 14px; }
}
@media (max-width: 700px) {
  body.home .hero { align-items: stretch; padding: 12px 0; }
  body.home .hero-grid { height: calc(100svh - 92px); min-height: 450px; grid-template-columns: 1fr; grid-template-rows: auto minmax(0, 1fr); align-content: stretch; gap: 9px; }
  body.home .hero h1 { font-size: clamp(2rem, 8.5vw, 3.1rem); line-height: .99; }
  body.home .hero-lede { margin-top: 10px; font-size: .9rem; line-height: 1.36; }
  body.home .hero-art { height: auto; min-height: 360px; }
  .hero .hero-process-card { grid-template-rows: auto minmax(175px, 1fr) minmax(150px, .9fr) auto; gap: 7px; padding: 11px; border-radius: 20px; }
  .hero-process-heading { gap: 1px; }
  .hero-process-kicker { font-size: .56rem; }
  .hero-process-heading strong { font-size: .8rem; }
  .hero-process-track { grid-template-columns: minmax(0, 1fr); grid-template-rows: minmax(43px, 1fr) 13px minmax(43px, 1fr) 13px minmax(108px, 1.4fr); gap: 3px; }
  .hero-flow-step { display: grid; grid-template-columns: 24px 26px minmax(0, 1fr); grid-template-rows: auto auto; align-items: center; gap: 0 7px; padding: 5px 8px; }
  .hero-flow-number { grid-column: 1; grid-row: 1 / 3; width: 22px; height: 22px; font-size: .54rem; }
  .hero-flow-icon { grid-column: 2; grid-row: 1 / 3; width: 22px; height: 22px; margin: 0; }
  .hero-flow-step > strong { grid-column: 3; font-size: .8rem; }
  .hero-flow-step > small { grid-column: 3; margin-top: 1px; font-size: .62rem; line-height: 1.15; }
  .hero-flow-arrow { width: 6px; min-height: 13px; justify-self: start; margin-left: 17px; border-radius: 99px; background: #cce5da; }
  .hero-flow-arrow::before { top: 0; right: auto; bottom: 0; left: 0; width: 6px; height: auto; border: 0; background: repeating-linear-gradient(180deg, #b8ddcf 0 6px, #e4f2eb 6px 10px); }
  .hero-flow-arrow::after { width: 19px; height: 19px; content: "↓"; font-size: .82rem; }
  .hero .hero-flow-ranking { grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto auto auto auto; align-items: center; gap: 4px 8px; padding: 8px 10px; }
  .hero-flow-ranking .scan-label { grid-column: 1 / -1; font-size: .54rem; }
  .hero .hero-flow-ranking .scan-score { grid-column: 1; grid-row: 2 / 4; font-size: 1.85rem; }
  .hero-flow-ranking .scan-progress { grid-column: 2; grid-row: 2; width: 74px; }
  .hero-flow-ranking .scan-meta { grid-column: 2; grid-row: 3; font-size: .5rem; }
  .hero-flow-ranking .scan-warning { grid-column: 1 / -1; padding: 5px 7px; font-size: .59rem; }
  .hero-flow-outcomes { grid-template-columns: 1fr; grid-template-rows: auto auto; gap: 5px; }
  .hero-flow-personnel-path, .hero-flow-email-path { gap: 3px; }
  .hero-flow-branch-label { font-size: .54rem; }
  .hero-flow-personnel-card { min-height: 44px; gap: 7px; padding: 6px 8px; }
  .hero-flow-personnel-card svg { flex-basis: 22px; width: 22px; height: 22px; }
  .hero-flow-personnel-card strong { font-size: .69rem; }
  .hero-flow-personnel-card small { margin-top: 1px; font-size: .57rem; }
  .hero-flow-not-reached { font-size: .54rem; }
  .hero .automation-email { min-height: 0; gap: 3px; padding: 8px 10px; }
  .hero .automation-email::before { top: 6px; right: 7px; min-width: 68px; min-height: 23px; padding: 3px 5px; font-size: .52rem; }
  .hero .automation-email-kicker { max-width: calc(100% - 74px); font-size: .49rem; }
  .hero .automation-email-subject { margin-top: 4px; font-size: .69rem; }
  .hero .automation-email-to { font-size: .54rem; }
  .hero .automation-email p { font-size: .61rem; line-height: 1.22; }
  .hero .automation-email-status { padding: 3px 6px; font-size: .52rem; }
  .hero-process-note { font-size: .55rem; }
}


/* Separate the two outcomes in the homepage process card. */
.hero-flow-branch-label {
  width: fit-content;
  max-width: 100%;
  padding: 5px 8px;
  border-radius: 999px;
  background: #eef5f1;
}
.hero-flow-personnel-path .hero-flow-branch-label { border-left: 3px solid #b9c9c2; }
.hero-flow-email-path .hero-flow-branch-label { color: #a92e29; background: #fff0ed; }
@media (max-width: 700px) {
  .hero-flow-branch-label { padding: 4px 7px; }
}


/* CLEACO service-card refresh: homepage photography, clear CTAs, accessible touch targets */
body.home .service-card-potenzial::before { background-image: linear-gradient(0deg, rgba(12,35,38,.18), rgba(12,35,38,0) 72%), url('/wp-content/uploads/2026/11/potenzialanalyse-berufliche-neuorientierung-768x307.png'); background-position: center 43%; }
body.home .service-card-gespraech::before { background-image: linear-gradient(0deg, rgba(12,35,38,.18), rgba(12,35,38,0) 72%), url('/wp-content/uploads/2026/11/vorstellungsgespraech-im-unternehmen-768x307.png'); background-position: center 42%; }
body.home .service-card-fuehrung::before { background-image: linear-gradient(0deg, rgba(12,35,38,.18), rgba(12,35,38,0) 72%), url('/wp-content/uploads/2026/11/fuehrungskraeftecoaching-shopfloor-board-768x307.png'); background-position: center 48%; }
.services-index-section .service-card a { display: inline-flex; align-items: center; justify-content: center; align-self: flex-end; min-height: 48px; margin: auto 0 0 auto; padding: 0 20px; border: 1px solid var(--cleaco-teal-dark); border-radius: 16px 16px 5px 16px; color: #fff; background: var(--cleaco-teal-dark); font-weight: 700; line-height: 1.2; text-decoration: none; transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease; }
.services-index-section .service-card a:hover { transform: translateY(-2px); background: var(--cleaco-ink); box-shadow: 0 8px 18px rgba(20,53,58,.18); }
.services-index-section .service-card a:focus-visible { outline: 3px solid var(--cleaco-lime); outline-offset: 3px; }
@media (max-width: 700px) { .services-index-section .service-card a { min-height: 48px; width: auto; max-width: 100%; padding: 0 18px; } }


/* Shorter contact-page lead-in */
.page-template-page-kontakt .internal-hero { padding-top: 34px; padding-bottom: 12px; }
.page-template-page-kontakt main > .section { padding-top: 42px; }

/* Keep the price guide focused; reveal the full catalogue only on request. */
.discount-details { margin-bottom: 18px; }
.discount-details > summary, .package-catalog > summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 58px; padding: 14px 18px; border: 1px solid var(--cleaco-line); border-radius: 16px; background: #fff; color: var(--cleaco-ink); cursor: pointer; font-weight: 700; list-style: none; }
.discount-details > summary::-webkit-details-marker, .package-catalog > summary::-webkit-details-marker { display: none; }
.discount-details > summary::after { content: '+'; color: var(--cleaco-teal-dark); font-size: 1.25rem; }
.discount-details[open] > summary::after { content: '−'; }
.discount-details[open] > summary { border-radius: 16px 16px 0 0; }
.package-catalog { margin-top: 20px; padding: 0 18px 18px; border: 1px solid var(--cleaco-line); border-radius: 20px; background: #fff; }
.package-catalog > summary { border: 0; background: transparent; }
.package-catalog > summary::after { content: '+'; color: var(--cleaco-teal-dark); font-size: 1.25rem; }
.package-catalog[open] > summary::after { content: '−'; }
.package-catalog[open] > summary { border-bottom: 1px solid var(--cleaco-line); border-radius: 0; }
.package-catalog .price-grid { margin-top: 18px; }
@media (max-width: 700px) { .discount-details > summary, .package-catalog > summary { min-height: 52px; padding: 12px 14px; } .package-catalog { padding: 0 12px 12px; } }


/* Compact disclosure for discounts on individual coaching service pages. */
.cleaco-service-discount-details {
  margin: 0 0 22px;
  border: 1px solid var(--cleaco-line, #dce6e2);
  border-left: 4px solid var(--cleaco-teal, #247f7c);
  border-radius: 14px;
  background: #f2f8f6;
  overflow: hidden;
}
.cleaco-service-discount-details summary {
  position: relative;
  padding: 14px 48px 14px 16px;
  color: var(--cleaco-ink, #173438);
  font-weight: 750;
  cursor: pointer;
  list-style: none;
}
.cleaco-service-discount-details summary::-webkit-details-marker { display: none; }
.cleaco-service-discount-details summary::after {
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  color: var(--cleaco-teal, #247f7c);
  content: "+";
  font-size: 1.25rem;
  line-height: 1;
}
.cleaco-service-discount-details[open] summary::after { content: "−"; }
.cleaco-service-discount-details summary:focus-visible { outline: 3px solid var(--cleaco-teal, #247f7c); outline-offset: -3px; }
.cleaco-service-discount-content { display: grid; gap: 5px; padding: 0 16px 15px; font-size: .9rem; line-height: 1.5; }
.cleaco-service-discount-content p { margin: 0; }
.cleaco-service-discount-content .cleaco-service-discount-note { color: var(--cleaco-muted, #657775); font-size: .82rem; }

/* Replace the synthetic parser score panel with a real, calm document-check scene. */
.parser-page .parser-hero-visual {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 26px;
  background: #f4f7f5;
  box-shadow: 0 24px 60px rgba(20,53,58,.18);
}
.parser-page .parser-hero-visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.parser-page .parser-hero-visual figcaption {
  display: grid;
  gap: 4px;
  padding: 16px 20px 18px;
  color: #fff;
  background: linear-gradient(145deg, #14353a, #1d6867);
}
.parser-page .parser-hero-visual figcaption span {
  color: var(--cleaco-lime);
  font-size: .73rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.parser-page .parser-hero-visual figcaption strong {
  font-size: 1rem;
  line-height: 1.4;
}


/* Vertrauensbereich als ruhige, hochwertige Coaching-Kacheln. */
.trust-section .trust-intro { max-width: 900px; }
.trust-section .trust-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 18px;
  margin-top: 34px;
  counter-reset: trust-tile;
}
.trust-section .trust-grid .detail-card {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 28px 26px 26px;
  overflow: hidden;
  border: 1px solid rgba(22, 139, 132, .18);
  border-radius: 21px;
  background: linear-gradient(155deg, #fff 0%, #f1f8f4 100%);
  box-shadow: 0 14px 34px rgba(20, 53, 58, .075);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.trust-section .trust-grid .detail-card::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 5px;
  background: linear-gradient(90deg, #168b84, #b8e1d4);
  content: "";
}
.trust-section .trust-grid .detail-card:nth-child(2)::before { background: linear-gradient(90deg, #739c73, #d8ee91); }
.trust-section .trust-grid .detail-card:nth-child(3)::before { background: linear-gradient(90deg, #14353a, #168b84); }
.trust-section .trust-grid .detail-card h3 {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 13px;
  color: var(--cleaco-ink);
  font-size: 1.12rem;
  line-height: 1.25;
}
.trust-section .trust-grid .detail-card h3::before {
  display: grid;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 12px;
  color: var(--cleaco-teal-dark);
  background: var(--cleaco-mint);
  content: "0" counter(trust-tile);
  counter-increment: trust-tile;
  font-size: .7rem;
  font-weight: 850;
  letter-spacing: .04em;
}
.trust-section .trust-grid .detail-card:nth-child(2) h3::before { background: #f0f5dd; }
.trust-section .trust-grid .detail-card:nth-child(3) h3::before { color: #fff; background: var(--cleaco-ink); }
.trust-section .trust-grid .detail-card p { margin: 0; color: var(--cleaco-ink-soft); font-size: .94rem; line-height: 1.6; }
@media (hover: hover) {
  .trust-section .trust-grid .detail-card:hover { transform: translateY(-4px); border-color: rgba(22, 139, 132, .38); box-shadow: 0 20px 42px rgba(20, 53, 58, .12); }
}

/* AVGS-Förderung: verständlicher Ablauf und klar erkennbare Infokarten. */
.avgs-section { background: linear-gradient(145deg, #eef6f1 0%, #f6f7f3 75%); }
.avgs-heading { max-width: 880px; margin: 0 0 30px; }
.avgs-heading .section-title { max-width: 780px; }
.avgs-heading > p:not(.section-kicker) { max-width: 830px; margin: 18px 0 0; color: var(--cleaco-ink-soft); font-size: 1.02rem; }
.avgs-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 30px 0; }
.avgs-step { min-width: 0; min-height: 215px; padding: 24px; border: 1px solid rgba(20, 53, 58, .1); border-radius: 20px; background: rgba(255,255,255,.88); box-shadow: 0 12px 30px rgba(20,53,58,.055); }
.avgs-step-number { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 13px; color: var(--cleaco-ink); background: var(--cleaco-lime); font-size: .76rem; font-weight: 900; }
.avgs-step h3 { margin: 19px 0 8px; color: var(--cleaco-ink); font-size: 1.08rem; line-height: 1.25; }
.avgs-step p { margin: 0; color: var(--cleaco-muted); font-size: .9rem; line-height: 1.55; }
.avgs-info-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.avgs-info-grid .avgs-info-card { position: relative; min-width: 0; padding: 27px; border: 1px solid var(--cleaco-line); border-radius: 21px; background: #fff; box-shadow: 0 14px 34px rgba(20,53,58,.065); }
.avgs-info-label { display: inline-flex; margin: 0 0 13px !important; padding: 6px 10px; border-radius: 999px; color: var(--cleaco-teal-dark) !important; background: var(--cleaco-mint); font-size: .7rem !important; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.avgs-info-card h3 { margin: 0 0 10px; color: var(--cleaco-ink); font-size: 1.22rem; line-height: 1.25; }
.avgs-info-card p { color: var(--cleaco-ink-soft); font-size: .92rem; line-height: 1.58; }
.avgs-info-card a { color: var(--cleaco-teal-dark); font-weight: 750; }
.avgs-info-card .avgs-note { margin-bottom: 0; color: var(--cleaco-muted); font-size: .82rem; }
@media (max-width: 900px) {
  .avgs-steps { grid-template-columns: 1fr; gap: 12px; }
  .avgs-step { min-height: 0; }
  .avgs-info-grid { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
  .trust-section .trust-grid { grid-template-columns: 1fr; gap: 12px; margin-top: 24px; }
  .trust-section .trust-grid .detail-card { padding: 23px 21px; border-radius: 18px; }
  .avgs-heading { margin-bottom: 22px; }
  .avgs-steps { margin: 22px 0; }
  .avgs-step, .avgs-info-grid .avgs-info-card { padding: 21px; border-radius: 18px; }
}
@media (prefers-reduced-motion: reduce) { .trust-section .trust-grid .detail-card { transition: none; } }
