/* evnxt.de, öffentliche Unterseiten im Entwurf "Abzug": Stilschicht über app.css (Tailwind).
   Wird nur vom Layout components/layouts/marketing.blade.php geladen (html.abzug). Das Backend (Layouts app, publisher, guest) bleibt unberührt.
   Ohne @layer geschrieben: Regeln hier schlagen die Komponenten- und Utility-Ebenen von Tailwind. */
@font-face{font-family:'Archivo';font-style:normal;font-weight:400 600;font-stretch:100%;font-display:swap;src:url(fonts/archivo-latin.woff2) format('woff2')}
@font-face{font-family:'Archivo Narrow';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/archivo-narrow-600-latin.woff2) format('woff2')}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:400 600;font-display:swap;src:url(fonts/newsreader-italic-latin.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ibm-plex-mono-400-latin.woff2) format('woff2')}

/* ---------- Farben und Schriften: die Tokens von app.css umstellen ---------- */
html.abzug{
  --az-papier:#f6f5f1;--az-papier-2:#eeece6;--az-tinte:#0f1222;--az-violett:#6c5ce7;--az-violett-text:#5a48d6;--az-grau:#5b6072;--az-haar:rgba(15,18,34,.14);
  --az-narrow:"Archivo Narrow","Arial Narrow",Arial,sans-serif;
  --az-text:Archivo,"Helvetica Neue",Arial,sans-serif;
  --az-kursiv:Newsreader,Georgia,serif;
  --az-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --az-breite:min(1240px,94vw);--az-kopf:64px;--az-rand:16px;
  /* gemeinsame Maße der Unterseiten (Fließtext wie auf der Startseite) */
  --az-fliess:clamp(17px,1.32vw,20px);--az-lead:clamp(1.15rem,1.5vw,1.4rem);--az-h2:clamp(2rem,3.7vw,3.4rem);--az-luft:clamp(88px,10vw,144px);
  --font-sans:var(--az-text);--font-display:var(--az-text);
  --color-paper:#f6f5f1;--color-paper-2:#eeece6;--color-bg:#f6f5f1;--color-bg-alt:#eeece6;--color-surface:#f6f5f1;--color-surface-2:#eeece6;
  --color-line:rgba(15,18,34,.14);--color-line-light:rgba(15,18,34,.14);--color-divider-light:rgba(15,18,34,.14);
  --color-ink:#0f1222;--color-ink-dim:#3f4459;--color-ink-light:#0f1222;--color-ink-light-dim:#3f4459;--color-ink-light-mute:#5b6072;
  --color-accent:#6c5ce7;--color-accent-ink:#5a48d6;--color-accent-tint:#e9e6fb;--color-accent-2:#5a48d6;--color-accent-3:#6c5ce7;--color-slab:#0f1222;
  --radius-card:0px;--radius-card-light:0px;--shadow-frame:none;--shadow-card:none;
  background:var(--az-papier);color:var(--az-tinte);font-family:var(--az-text);
  scroll-padding-top:calc(var(--az-kopf) + 24px);
}
.abzug body{font-family:var(--az-text);background:var(--az-papier);color:var(--az-tinte);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none}
.abzug ::selection{background:var(--az-tinte);color:var(--az-papier)}
.abzug :focus-visible{outline:2px solid var(--az-tinte);outline-offset:3px}

/* ---------- Überschriften: Tinte in der schmalen Grotesk, Akzentwörter in violetter Kursive ---------- */
.abzug :is(h1,h2,h3,h4){font-family:var(--az-narrow);font-weight:600;letter-spacing:-.015em;text-wrap:balance}
.abzug main h1{font-size:clamp(2.9rem,7.2vw,6.6rem);line-height:.94}
.abzug main h2{font-size:var(--az-h2);line-height:1}
.abzug main h3{font-size:clamp(1.35rem,1.8vw,1.7rem);line-height:1.1}
.abzug main h4{font-size:1.2rem;line-height:1.15}
.abzug main :is(h1,h2,h3) :is(.text-accent,.gradient-text){font-family:var(--az-kursiv);font-style:italic;font-weight:460;letter-spacing:0;color:var(--az-violett);background:none}
.abzug main strong{font-weight:600}

/* Ausrichtung: links statt mittig (kein zentrierter Hero) */
.abzug main .text-center{text-align:left}
.abzug main .text-center.items-center,.abzug main .text-center .items-center{align-items:flex-start}
.abzug main .text-center .mx-auto,.abzug main :not(section).text-center.mx-auto{margin-left:0}
.abzug main .text-center.justify-center,.abzug main .text-center .justify-center{justify-content:flex-start}

/* ---------- Etiketten: Mono statt Versalien, Ring statt Punkt ---------- */
.abzug :is(.kicker,.lp-badge){font-family:var(--az-mono);font-weight:400;font-size:13px;line-height:1.5;letter-spacing:.02em;text-transform:none;color:var(--az-grau);background:none;padding:0;border-radius:0}
.abzug .lp-badge{gap:9px}
.abzug .lp-badge-dot{width:9px;height:9px;border-radius:50%;background:none;box-shadow:inset 0 0 0 1.5px var(--az-violett)}

/* ---------- Knöpfe: Tintenrechteck und Rahmen, keine Pillen ---------- */
.abzug :is(.btn,.btn-primary,.btn-ghost,.btn-danger){border-radius:0;font-family:var(--az-text);font-weight:600;box-shadow:none;transition:none;filter:none}
.abzug .btn-primary{background:var(--az-tinte);color:var(--az-papier);border:1px solid var(--az-tinte)}
.abzug .btn-primary:hover{background:var(--az-tinte);color:var(--az-papier);box-shadow:none;filter:none;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.abzug .btn-ghost{background:transparent;color:var(--az-tinte);border:1px solid var(--az-tinte)}
.abzug .btn-ghost:hover{background:transparent;color:var(--az-tinte);border-color:var(--az-tinte);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}

/* ---------- Karten: kein Kasten, eine Linie oben ---------- */
.abzug main .card{background:transparent;border:0;border-top:1px solid var(--az-tinte);border-radius:0;box-shadow:none;padding-left:0;padding-right:0}
.abzug main .card.lp-card-accent,.abzug main .lp-card-accent{background:var(--az-tinte);color:var(--az-papier);border-radius:0;border:0}
.abzug main [class*="rounded"]{border-radius:0}
.abzug main input[type="radio"]{border-radius:50%}
.abzug main [class*="shadow"]{box-shadow:none}
.abzug main [style*="box-shadow"]{box-shadow:none!important}
.abzug main .lp-surface{background:var(--az-papier-2);border-radius:0}
.abzug main .lp-slab{background:var(--az-tinte);color:var(--az-papier);border-radius:0}
.abzug main .lp-elevated{box-shadow:none}
.abzug main .lp-icon{display:none}
.abzug main .lp-step-num{width:auto;height:auto;border:0;border-radius:0;background:none;font-family:var(--az-mono);font-weight:400;font-size:13px;color:var(--az-grau)}
.abzug main .lp-step-num-active{color:var(--az-violett-text);background:none}
/* Bildschirmfotos: Haarlinie statt Browserrahmen */
.abzug main .lp-frame{border:1px solid var(--az-haar);border-radius:0;box-shadow:none;background:transparent}
.abzug main .lp-frame-bar{display:none}
.abzug main img{border-radius:0}

/* ---------- Häufige Fragen: Zeilen mit Linie ---------- */
.abzug main details.card{padding:0}
.abzug main details.card>summary{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:20px 0;list-style:none;cursor:pointer;font-family:var(--az-text);font-weight:500;font-size:clamp(1.15rem,1.7vw,1.5rem);line-height:1.2;letter-spacing:-.01em}
.abzug main details.card>summary::-webkit-details-marker{display:none}
.abzug main details.card>summary::after{content:"öffnen";flex:none;font-family:var(--az-mono);font-weight:400;font-size:13px;letter-spacing:.02em;color:var(--az-grau)}
.abzug main details.card[open]>summary::after{content:"schließen"}
html[lang="en"].abzug main details.card>summary::after{content:"open"}
html[lang="en"].abzug main details.card[open]>summary::after{content:"close"}
.abzug main details.card>summary:hover{color:var(--az-violett-text)}
.abzug main details.card>summary>svg{display:none}
.abzug main details.card{border-top-color:var(--az-haar)}
.abzug main details.card:first-of-type{border-top-color:var(--az-tinte)}
.abzug main details.card + details.card{margin-top:0}
.abzug main details.card:last-of-type{border-bottom:1px solid var(--az-haar)}
.abzug main details.card>:not(summary){margin-top:0;padding-bottom:26px}

/* ---------- Formulare: Linie statt Kasten ---------- */
.abzug .field-input{background:transparent;border:0;border-bottom:1px solid var(--az-tinte);border-radius:0;padding:8px 0 10px;color:var(--az-tinte);font-size:1.05rem;box-shadow:none}
.abzug .field-input:focus{border-color:var(--az-violett-text);border-bottom-width:2px;padding-bottom:9px;box-shadow:none;outline:0}
.abzug .field-input:user-invalid,.abzug .field-input[aria-invalid="true"]{border-bottom:2px solid var(--az-violett-text);padding-bottom:9px}
.abzug .field-input::placeholder{color:#686d7f}
/* Meldungen an Formularen sprechen wie die Randnotizen der Startseite: violette Kursive statt Rot */
.abzug main .text-danger{color:var(--az-violett-text);font-family:var(--az-kursiv);font-style:italic;font-weight:440;font-size:1.08em;line-height:1.35}
/* Häkchen: Quadrat mit Tintenrahmen wie auf der Startseite (nicht für versteckte Felder) */
.abzug main input[type="checkbox"]:not(.hidden):not(.sr-only){appearance:none;-webkit-appearance:none;display:inline-grid;place-content:center;flex:none;width:22px;height:22px;margin-top:.1em;border:1px solid var(--az-tinte);border-radius:0;background:transparent;cursor:pointer;vertical-align:top}
.abzug main input[type="checkbox"]:not(.hidden):not(.sr-only)::before{content:"";width:13px;height:13px;background:var(--az-violett);clip-path:polygon(12% 50%,0 63%,38% 100%,100% 22%,87% 9%,37% 72%);transform:scale(0)}
.abzug main input[type="checkbox"]:not(.hidden):not(.sr-only):checked::before{transform:scale(1)}
.abzug select.field-input{padding-right:28px}
.abzug input[type="checkbox"],.abzug input[type="radio"]{accent-color:var(--az-violett)}
.abzug .table-shell thead th{font-family:var(--az-mono);font-weight:400;font-size:12px;letter-spacing:.02em;text-transform:none;color:var(--az-grau)}

/* ---------- Kopfzeile ---------- */
.az-kopfband{position:sticky;top:0;z-index:40;background:var(--az-papier);border-bottom:1px solid var(--az-haar)}
.az-kopf{max-width:var(--az-breite);margin-inline:auto;height:var(--az-kopf);padding-inline:var(--az-rand);display:flex;align-items:center;gap:clamp(16px,2.4vw,40px)}
.az-marke{font-family:var(--az-text);font-weight:600;font-size:24px;line-height:1;letter-spacing:-.02em;color:var(--az-tinte);text-decoration:none;white-space:nowrap}
.az-mpkt{display:inline-block;width:.2em;height:.2em;margin-left:.05em;border-radius:50%;background:var(--az-violett)}
.az-nav{display:none;align-items:center;gap:clamp(14px,1.9vw,30px);margin-left:auto}
.az-kopf-r{display:flex;align-items:center;gap:clamp(14px,1.9vw,30px);margin-left:auto}
.az-navlink{font-family:var(--az-mono);font-size:13px;line-height:1.2;letter-spacing:.02em;color:var(--az-grau);text-decoration:none;white-space:nowrap;background:none;border:0;padding:0;cursor:pointer}
.az-navlink:hover,.az-navlink.active{color:var(--az-tinte)}
.az-navlink:hover{text-decoration:underline;text-underline-offset:4px}
.az-navlink.active{box-shadow:0 2px 0 var(--az-violett)}
.az-sprache{display:none;align-items:center;gap:8px;font-family:var(--az-mono);font-size:13px;letter-spacing:.02em}
.az-sprache a{color:var(--az-grau);text-decoration:none}
.az-sprache a.active,.az-sprache a:hover{color:var(--az-tinte)}
.az-sprache a.active{box-shadow:0 2px 0 var(--az-violett)}
.az-cta{display:inline-block;background:var(--az-tinte);color:var(--az-papier);font-family:var(--az-text);font-weight:600;font-size:15px;line-height:1.2;padding:9px 14px 10px;text-decoration:none;white-space:nowrap}
.az-cta:hover{color:var(--az-papier);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.az-kopfband .az-lang,.az-kopfband .az-login,.az-nutzer{display:none}
.az-nav-konto{display:flex}
.az-nutzer{font-family:var(--az-mono);font-size:12px;color:var(--az-grau)}
.az-nav-konto form{margin:0}
@media (min-width:640px){
  .az-kopfband .az-lang{display:inline}.az-kopfband .az-kurz{display:none}
  .az-kopfband .az-login{display:inline}
  .az-sprache{display:flex}
}
@media (min-width:1024px){
  .az-nav{display:flex}
  .az-nav + .az-kopf-r{margin-left:0}
  .az-menue,.az-kopfband .az-navlink.az-menue{display:none}
  .az-nutzer{display:inline}
}
/* Die englische Navigation hat fünf Einträge: sie passt erst ab 1200 px neben Login, Sprache und Knopf */
@media (min-width:1024px) and (max-width:1239px){
  html[lang="en"] .az-nav{display:none}
  html[lang="en"] .az-nav + .az-kopf-r{margin-left:auto}
  html[lang="en"] .az-kopfband .az-navlink.az-menue{display:inline}
}
@media (max-width:1023px),(pointer:coarse){
  .az-navlink,.az-sprache a,.az-marke{position:relative}
  .az-navlink::after,.az-sprache a::after{content:"";position:absolute;left:-8px;right:-8px;top:-15px;bottom:-15px}
  .az-marke::after{content:"";position:absolute;left:0;right:0;top:-10px;bottom:-10px}
  .az-cta{display:inline-flex;align-items:center;min-height:44px}
  .az-fusszeile a{display:inline-flex;align-items:center;min-height:44px}
}
/* Sprunglink für die Tastatur: nur sichtbar, wenn er den Fokus hat */
.az-skip{position:absolute;left:var(--az-rand);top:-80px;z-index:60;background:var(--az-tinte);color:var(--az-papier);font-family:var(--az-text);font-weight:600;font-size:15px;padding:12px 16px;text-decoration:none}
.az-skip:focus{top:10px;color:var(--az-papier)}

/* ---------- Fuß: Verzeichnis aller Seiten ---------- */
.az-fuss{margin-top:clamp(40px,5vw,80px);border-top:1px solid var(--az-haar)}
.az-fuss-innen{max-width:var(--az-breite);margin-inline:auto;padding:clamp(28px,3vw,44px) var(--az-rand) 28px}
.az-seiten{display:grid;gap:clamp(32px,4vw,56px) 20px}
.abzug .az-seiten-titel{margin:0 0 14px;font-family:var(--az-mono);font-weight:400;font-size:13px;line-height:1.5;letter-spacing:.02em;color:var(--az-grau)}
.az-seiten ul{display:grid;gap:2px 0;margin:0;padding:0;list-style:none}
.az-seiten a{display:inline-block;padding:4px 0;font-family:var(--az-narrow);font-weight:600;font-size:clamp(20px,1.7vw,26px);line-height:1.2;letter-spacing:-.012em;color:var(--az-tinte);text-decoration:none}
.az-seiten a:hover{color:var(--az-violett-text);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.az-fusszeile{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:14px 28px;margin-top:clamp(40px,5vw,72px);border-top:1px solid var(--az-haar);padding-top:20px;font-family:var(--az-mono);font-size:13px;letter-spacing:.02em;color:var(--az-grau)}
.az-fusszeile p{margin:0}
.az-fusszeile a{color:inherit}
@media (min-width:720px){
  .az-seiten{grid-template-columns:repeat(12,minmax(0,1fr))}
  .az-seiten .az-spalte{grid-column:span 6}
  .az-seiten .az-spalte:first-child:nth-last-child(3){grid-column:1 / -1}
  .az-zweispaltig{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}
}
@media (min-width:900px){
  .az-seiten .az-spalte:first-child:nth-last-child(3){grid-column:1 / 7}
  .az-seiten .az-spalte:first-child:nth-last-child(3) ~ .az-spalte{grid-column:span 3}
}
@media (max-width:719px),(pointer:coarse){.az-seiten a{display:inline-flex;align-items:center;min-height:44px;padding:0}}

/* ---------- Einwilligungsbanner (Komponente consent-banner) ---------- */
#consent-banner{font-family:Archivo,"Helvetica Neue",Arial,sans-serif;font-size:14px;line-height:1.5;color:#0f1222}
#consent-banner .card{background:#f6f5f1;border:1px solid #0f1222;border-radius:0;box-shadow:0 18px 60px rgba(15,18,34,.2)!important;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
#consent-banner h2{margin:0;font-family:"Archivo Narrow","Arial Narrow",Arial,sans-serif;font-weight:600;font-size:24px;line-height:1.05;letter-spacing:-.012em}
#consent-banner p{margin:8px 0 0;color:#5b6072}
#consent-banner a{color:inherit;text-underline-offset:3px}
#consent-banner .grid{display:grid;gap:10px;margin-top:16px}
#consent-banner .text-ink-light-mute{color:#5b6072}
#consent-banner input[type="checkbox"]{accent-color:#6c5ce7;width:16px;height:16px;flex:none}
#consent-banner .flex{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
#consent-banner button{font:600 14px/1 Archivo,"Helvetica Neue",Arial,sans-serif;padding:14px 16px 15px;border:1px solid #0f1222;border-radius:0;background:transparent;color:#0f1222;cursor:pointer;-webkit-appearance:none;appearance:none;box-shadow:none}
#consent-banner #consent-alle{background:#0f1222;color:#f6f5f1}
#consent-banner button:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}

/* ---------- Ergänzungen nach der ersten Runde der Seitenfamilien ---------- */
/* Seitenrand: Inhalt, Kopf und Fuß stehen auf derselben Kante (16 px, ab 640 px 24 px) und in derselben Breite */
@media (min-width:640px){html.abzug{--az-rand:24px}}
.abzug main>section,.abzug main>div>section{max-width:var(--az-breite)!important;padding-left:var(--az-rand);padding-right:var(--az-rand)}
/* Lesegröße: die kleinen Utility-Größen der alten Seiten sind neben der Startseite zu klein */
:where(.abzug main) .text-sm{font-size:1rem;line-height:1.5}
:where(.abzug main) .text-xs{font-size:.8125rem;line-height:1.5}
/* Textverweise wie auf der Startseite: Tinte, halbfett, kräftige Unterstreichung */
.abzug main a:is(.text-accent-ink,.text-accent-2){color:var(--az-tinte);font-weight:600;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.abzug main a:is(.text-accent-ink,.text-accent-2):hover{color:var(--az-violett-text)}
/* Knöpfe auf dunklem Grund */
.abzug main :is(.lp-slab,.lp-card-accent) .btn-primary{background:var(--az-papier);color:var(--az-tinte);border-color:var(--az-papier)}
.abzug main :is(.lp-slab,.lp-card-accent) .btn-primary:hover{background:var(--az-papier);color:var(--az-tinte)}
.abzug main :is(.lp-slab,.lp-card-accent) .btn-ghost{border-color:var(--az-papier);color:var(--az-papier)}
/* Lightbox des Layouts */
.abzug #lightbox-img{border-radius:0!important;box-shadow:none!important}
.abzug #lightbox-cap{font-family:var(--az-mono);font-size:13px!important;letter-spacing:.02em}
.abzug #lightbox>button{min-width:44px;min-height:44px;display:grid;place-content:center}
@media (forced-colors:active){.abzug main input[type="checkbox"]:checked::before{background:CanvasText}}
/* ---------- 10-seo: Feinschliff der Leistungsseiten und der Vita (nur mit der Seitenklasse az-seo am body) ----------
   Landing-Template seo.blade.php. Aufbau wie die Startseite: Zwölferraster, je Abschnitt eine Haarlinie, Etikett in Spalte 1 bis 2,
   Überschrift und Inhalt ab Spalte 3. Die Hüllkarten (Erfahrung, Anfrage) lösen sich auf, ihre Kinder sitzen direkt im Raster. */
body.az-seo{
  --abst:clamp(52px,6.4vw,100px);       /* Abstand über und unter jeder Haarlinie */
  --fliess:clamp(17px,1.32vw,20px);     /* Fließtext wie überall */
  --lead:clamp(1.15rem,1.5vw,1.4rem);   /* Lead unter Überschriften */
  --lesen:33rem;                         /* Zeilenlänge Fließtext, höchstens etwa 72 Zeichen */
  --dim:#3f4459;
  --ring:inset 0 0 0 1.5px var(--az-violett);
}

/* ---------- Abschnitte ---------- */
body.az-seo main>section:not(:first-of-type){position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:0 20px;align-items:start;padding-block:var(--abst)}
body.az-seo main>section:not(:first-of-type)::before{content:"";position:absolute;top:0;left:var(--az-rand);right:var(--az-rand);height:1px;background:var(--az-haar)}
body.az-seo main>section>div.card{display:contents}
body.az-seo main>section[id]{scroll-margin-top:0}   /* Sprungziel: die Haarlinie landet unter der Kopfzeile (scroll-padding der Basis) */
body.az-seo main>section:has(>div.card):not(#anfrage),body.az-seo main>section:has(>nav[aria-label]){padding-block:calc(var(--abst) * .78)}
body.az-seo :where(main>section:not(:first-of-type),main>section>div.card)>*{min-width:0;margin-block:0}
body.az-seo :where(main>section:not(:first-of-type),main>section>div.card)>.kicker{margin-bottom:16px}
body.az-seo :where(main>section:not(:first-of-type),main>section>div.card)>h2{max-width:36ch}
body.az-seo :where(main>section:not(:first-of-type),main>section>div.card)>h2+*{margin-top:clamp(22px,2.6vw,34px)}
body.az-seo :where(main>section:not(:first-of-type),main>section>div.card)>h2+p{max-width:34em;font-size:var(--lead);line-height:1.42;color:var(--az-tinte)}
body.az-seo main>section a.text-accent-ink{display:inline-flex;align-items:center;justify-self:start;min-height:44px;margin-top:20px}
@media (min-width:1024px){
  body.az-seo main>section:not(:first-of-type){grid-template-columns:repeat(12,minmax(0,1fr))}
  body.az-seo :where(main>section:not(:first-of-type),main>section>div.card)>*{grid-column:3/-1}
  body.az-seo :where(main>section:not(:first-of-type),main>section>div.card)>:is(.kicker,h2){grid-row:1;align-self:baseline}
  body.az-seo :where(main>section:not(:first-of-type),main>section>div.card)>.kicker{grid-column:1/3;margin:0}
}

/* ---------- Kopf der Seite: Etikett, h1 über die volle Breite, darunter Lead und Knöpfe links, Aufgaben oder Porträt rechts ----------
   Die Brotkrumen rücken ans Ende des Kopfes (ein Etikett oben genügt); .grid und sein Textblock lösen sich auf. */
body.az-seo main>section:first-of-type{display:grid;grid-template-columns:minmax(0,1fr);padding-top:clamp(36px,6vw,92px);padding-bottom:clamp(56px,7vw,104px)}
body.az-seo main>section:first-of-type :is(.grid,.grid>div){display:contents}
body.az-seo main>section:first-of-type p.lp-badge{justify-self:start;margin:0}
body.az-seo main>section:first-of-type h1{max-width:none;margin:clamp(20px,2.4vw,36px) 0 0;line-height:1;overflow-wrap:break-word;hyphens:manual}
body.az-seo main>section:first-of-type h1+p{max-width:32em;margin:clamp(28px,3.4vw,52px) 0 0;font-size:var(--lead);line-height:1.45;color:var(--az-tinte)}
body.az-seo main>section:first-of-type .grid>div>div{margin:clamp(24px,2.6vw,36px) 0 0;gap:12px}
body.az-seo main>section:first-of-type .grid>div>div>a{display:inline-flex;align-items:center;min-height:48px;font-size:1rem;line-height:1.3}
body.az-seo main>section:first-of-type .grid>div>div+p{max-width:72ch;margin:22px 0 0;font:400 13px/1.6 var(--az-mono);letter-spacing:.02em;color:var(--az-grau)}
body.az-seo main>section:first-of-type>nav{order:9;margin:clamp(40px,5vw,64px) 0 0;font:400 13px/1.5 var(--az-mono);letter-spacing:.02em;color:var(--az-grau)}
body.az-seo main>section:first-of-type>nav a{margin:0 -2px;padding:14px 2px;color:var(--az-grau);text-decoration-color:var(--az-haar);text-underline-offset:4px}
body.az-seo main>section:first-of-type>nav a:hover{color:var(--az-tinte);text-decoration-color:var(--az-tinte)}
@media (min-width:1024px){
  body.az-seo main>section:first-of-type{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;grid-template-rows:auto auto auto auto auto minmax(0,1fr) auto}
  body.az-seo main>section:first-of-type p.lp-badge{grid-area:1/1/2/-1}
  body.az-seo main>section:first-of-type h1{grid-area:2/1/3/-1}
  body.az-seo main>section:first-of-type h1+p{grid-area:3/1/4/7}
  body.az-seo main>section:first-of-type .grid>div>div{grid-area:4/1/5/7}
  body.az-seo main>section:first-of-type .grid>div>div+p{grid-area:5/1/6/7}
  body.az-seo main>section:first-of-type .grid>:is(aside,figure){grid-area:3/8/7/-1;align-self:start;margin-top:0}
  body.az-seo main>section:first-of-type .grid>figure{grid-column:9/-1}
  body.az-seo main>section:first-of-type>nav{grid-area:7/1/8/-1}
}

/* Aufgaben rechts: Linie oben, drei Zeilen, vor dem Titel ein Ring, vor dem letzten (deinem) Schritt ein voller Punkt */
body.az-seo main>section:first-of-type aside.card{margin-top:clamp(40px,5vw,64px);padding:16px 0 0}
body.az-seo main>section:first-of-type aside ol{display:grid;margin:16px 0 0;padding:0;list-style:none}
body.az-seo main>section:first-of-type aside li{margin:0;padding:16px 0 18px;border-top:1px solid var(--az-haar)}
body.az-seo main>section:first-of-type aside li strong{display:block;font-family:var(--az-narrow);font-weight:600;font-size:clamp(1.3rem,1.7vw,1.55rem);line-height:1.15;letter-spacing:-.012em;color:var(--az-tinte)}
body.az-seo main>section:first-of-type aside li strong::before{content:"";display:inline-block;width:9px;height:9px;margin-right:.55em;border-radius:50%;box-shadow:var(--ring);vertical-align:.08em}
body.az-seo main>section:first-of-type aside li:last-child strong::before{background:var(--az-violett)}
body.az-seo main>section:first-of-type aside li p{margin:8px 0 0;font-size:var(--fliess);line-height:1.5;color:var(--dim)}
@media (min-width:640px) and (max-width:1023px){
  body.az-seo main>section:first-of-type aside ol{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px}
  body.az-seo main>section:first-of-type aside li{padding-top:0;border-top:0}
}
/* Porträt der Vita: ohne Rahmen */
body.az-seo main>section:first-of-type figure.card{width:100%;max-width:24rem;margin:clamp(40px,5vw,64px) 0 0;padding:0;border-top:0}
body.az-seo main>section:first-of-type figure img{display:block;width:100%;height:auto}

/* ---------- Leistungsumfang: drei Spalten mit Linie oben ---------- */
body.az-seo #leistungen>.grid{display:grid;grid-template-columns:minmax(0,1fr);gap:36px clamp(24px,2.6vw,40px);margin-top:clamp(40px,5vw,72px)}
@media (min-width:900px){body.az-seo #leistungen>.grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:0}}
body.az-seo #leistungen>.grid>article{padding:18px 0 0}
body.az-seo #leistungen>.grid>article>span{display:flex;align-items:center;gap:9px;font:400 13px/1.4 var(--az-mono);letter-spacing:.02em;color:var(--az-violett-text)}
body.az-seo #leistungen>.grid>article>span::before{content:"";flex:none;width:9px;height:9px;border-radius:50%;box-shadow:var(--ring)}
body.az-seo #leistungen>.grid>article h3{margin:clamp(18px,2vw,28px) 0 0;font-size:clamp(1.55rem,2.1vw,1.95rem);line-height:1.08}
body.az-seo #leistungen>.grid>article p{max-width:30em;margin:14px 0 0;font-size:var(--fliess);line-height:1.55;color:var(--dim)}
@media (min-width:900px){body.az-seo #leistungen>.grid>article{display:grid;grid-row:span 3;grid-template-rows:subgrid;row-gap:0;align-content:start}}

/* ---------- Fließtext mit Beispiel: Text in Spalte 3 bis 8, die Randnotiz ab Spalte 9 ---------- */
body.az-seo main>section:has(>aside.card)>div>h2{max-width:none;margin:0}
body.az-seo main>section:has(>aside.card)>div>p{max-width:var(--lesen);margin:1.1em 0 0;font-size:var(--fliess);line-height:1.6;color:var(--az-tinte)}
body.az-seo main>section:has(>aside.card)>div>h2+p{margin-top:clamp(24px,3vw,40px)}
body.az-seo main>section>aside.card{align-self:start;margin-top:44px;padding:14px 0 0}
body.az-seo main>section>aside.card h3{margin:22px 0 0;font-family:var(--az-kursiv);font-style:italic;font-weight:460;letter-spacing:0;font-size:clamp(1.55rem,2.1vw,1.95rem);line-height:1.15;color:var(--az-violett-text)}
body.az-seo main>section>aside.card h3::before{content:"";display:inline-block;width:.34em;height:.34em;margin-right:.5em;border-radius:50%;box-shadow:var(--ring);vertical-align:.12em}
body.az-seo main>section>aside.card p:not(.kicker){max-width:var(--lesen);margin:16px 0 0;font-size:var(--fliess);line-height:1.55;color:var(--dim)}
@media (min-width:1024px){
  body.az-seo main>section:has(>aside.card)>div{grid-column:3/9}
  body.az-seo main>section>aside.card{grid-column:9/-1;margin-top:0}
}

/* ---------- Vita: Stationen als Verzeichnis ---------- */
body.az-seo main>section>ol{margin:clamp(40px,5vw,64px) 0 0;padding:0;list-style:none;border-top:1px solid var(--az-tinte)}
body.az-seo main>section>ol>li.card{display:grid;grid-template-columns:minmax(0,1fr);gap:10px 28px;margin:0;padding:20px 0 24px;border-top:0;border-bottom:1px solid var(--az-haar)}
body.az-seo main>section>ol>li.card>p:first-child{margin:0;font:400 13px/1.5 var(--az-mono);letter-spacing:.02em;color:var(--az-grau)}
body.az-seo main>section>ol>li.card:first-child>p:first-child{color:var(--az-violett-text)}
body.az-seo main>section>ol>li.card>div{display:grid;grid-template-columns:minmax(0,1fr);gap:0 32px;align-items:start}
body.az-seo main>section>ol>li.card h3{margin:0;font-size:clamp(1.4rem,1.9vw,1.7rem);line-height:1.1}
body.az-seo main>section>ol>li.card>div>p{margin:0;font-size:var(--fliess);line-height:1.5;color:var(--dim)}
body.az-seo main>section>ol>li.card>div>p:nth-of-type(1){margin-top:6px;font-weight:600;color:var(--az-tinte)}
body.az-seo main>section>ol>li.card>div>p:nth-of-type(2){margin-top:8px}
@media (min-width:768px){
  body.az-seo main>section>ol>li.card{grid-template-columns:12.5rem minmax(0,1fr)}
  body.az-seo main>section>ol>li.card>p:first-child{padding-top:.5rem}
  body.az-seo main>section>ol>li.card>div{grid-column:2;grid-template-columns:minmax(0,5fr) minmax(0,6fr);grid-template-rows:auto 1fr}
  body.az-seo main>section>ol>li.card>div>h3{grid-column:1;grid-row:1}
  body.az-seo main>section>ol>li.card>div>p:nth-of-type(1){grid-column:1;grid-row:2}
  body.az-seo main>section>ol>li.card>div>p:nth-of-type(2){grid-column:2;grid-row:1/3;margin-top:.35rem}
}

/* ---------- Konferenzen: Namen als Satzliste mit Ring ---------- */
body.az-seo [data-landing="konferenzen"]>ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px clamp(20px,3vw,44px);margin:clamp(34px,4.4vw,56px) 0 0;padding:0;list-style:none}
@media (min-width:640px){body.az-seo [data-landing="konferenzen"]>ul{grid-template-columns:repeat(3,minmax(0,1fr))}}
body.az-seo [data-landing="konferenzen"]>ul>li{display:flex;align-items:baseline;gap:.5em;margin:0;padding:0;border:0;font-family:var(--az-narrow);font-weight:600;font-size:clamp(1.4rem,2.3vw,2.1rem);line-height:1.15;letter-spacing:-.012em;color:var(--az-tinte)}
body.az-seo [data-landing="konferenzen"]>ul>li::before{content:"";flex:none;width:.34em;height:.34em;border-radius:50%;box-shadow:var(--ring);transform:translateY(-.1em)}
body.az-seo [data-landing="konferenzen"]>ul>li:last-child{font:400 13px/1.15 var(--az-mono);letter-spacing:.02em;color:var(--az-grau)}
body.az-seo [data-landing="konferenzen"]>ul>li:last-child::before{display:none}

/* ---------- Referenzen: eine Zeile je Zeichen, links das Zeichen in Tinte auf Papier ----------
   Die Logos liegen als weiß-auf-schwarz-Bilder (838 x 650) mit zentriertem Zeichen vor. grayscale/brightness/contrast/invert macht daraus
   schwarze Zeichen auf Weiß (contrast schneidet das JPEG-Rauschen im Schwarz ab), multiply lässt das Weiß im Papier verschwinden. Jedes Bild wird
   so skaliert (--s) und verschoben (--x0, --yc: Mitte des Zeichens in Bildpunkten), dass sein Zeichen links beginnt und in einem 76 px hohen
   Streifen mittig steht. Hängt an den Dateinamen: bei neuen Logos messen (Blade-Wunsch: Logos als SVG). */
body.az-seo [data-landing="referenzen"]>.grid{display:block;margin-top:clamp(40px,5vw,72px);border-top:1px solid var(--az-tinte)}
body.az-seo [data-landing="referenz"]{display:grid;grid-template-columns:minmax(0,1fr);gap:14px 28px;padding:22px 0 26px;border:0;border-bottom:1px solid var(--az-haar);overflow:visible}
body.az-seo [data-landing="referenz"] picture{position:relative;display:block;height:76px;overflow:clip;mix-blend-mode:multiply;pointer-events:none}
body.az-seo [data-landing="referenz"] img{position:absolute;display:block;max-width:none;height:auto;width:calc(838px * var(--s,.3));left:calc(var(--x0,0) * var(--s,.3) * -1px);top:calc(38px - var(--yc,325) * var(--s,.3) * 1px);filter:grayscale(1) brightness(3) contrast(5) invert(1)}
body.az-seo [data-landing="referenz"] img[src*="referenz-dept"]{--s:.412;--x0:236;--yc:324.5}
body.az-seo [data-landing="referenz"] img[src*="referenz-zalando"]{--s:.254;--x0:45;--yc:325}
body.az-seo [data-landing="referenz"] img[src*="referenz-omio"]{--s:.277;--x0:131;--yc:304}
body.az-seo [data-landing="referenz"] img[src*="referenz-vodafone"]{--s:.381;--x0:189;--yc:324.5}
body.az-seo [data-landing="referenz"] img[src*="referenz-haufe"]{--s:.38;--x0:159;--yc:324.5}
body.az-seo [data-landing="referenz"] img[src*="referenz-guenstiger"]{--s:.30;--x0:149;--yc:349}
body.az-seo [data-landing="referenz"] img[src*="referenz-kuehnenagel"]{--s:.27;--x0:181;--yc:305}
body.az-seo [data-landing="referenz"]>div{padding:0}
body.az-seo [data-landing="referenz"] h3{margin:8px 0 0;font-size:clamp(1.5rem,2vw,1.85rem)}
body.az-seo [data-landing="referenz"] p:not(.kicker){max-width:28em;margin:10px 0 0;font-size:var(--fliess);line-height:1.5;color:var(--dim)}
@media (min-width:768px){body.az-seo [data-landing="referenz"]{grid-template-columns:14rem minmax(0,1fr);align-items:center}}
@media (min-width:1100px){
  body.az-seo [data-landing="referenz"]>div{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:0 32px;align-items:baseline}
  body.az-seo [data-landing="referenz"]>div>.kicker{grid-area:1/1}
  body.az-seo [data-landing="referenz"]>div>h3{grid-area:2/1}
  body.az-seo [data-landing="referenz"]>div>p:not(.kicker){grid-area:1/2/3/3;margin:0}
}

/* ---------- Häufige Fragen: Zeilen mit Haarlinie (Zeichen, Abstände und Schlusslinie kommen aus der Basis) ---------- */
body.az-seo main>section:has(details)>div{margin-top:clamp(34px,4.4vw,56px)}
body.az-seo main details.card:not(:first-of-type){border-top-color:var(--az-haar)}
body.az-seo main details.card:last-of-type{border-bottom-color:var(--az-haar)}
body.az-seo main details.card>p{max-width:var(--lesen);font-size:var(--fliess);line-height:1.6}

/* ---------- "Passende Leistungen vertiefen": Linkliste ---------- */
body.az-seo main>section:not(:first-of-type)>nav[aria-label]{display:grid;grid-template-columns:minmax(0,1fr);gap:0 clamp(24px,2.6vw,40px);margin-top:clamp(28px,3.6vw,48px)}
@media (min-width:640px){body.az-seo main>section:not(:first-of-type)>nav[aria-label]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){body.az-seo main>section:not(:first-of-type)>nav[aria-label]{grid-template-columns:repeat(3,minmax(0,1fr))}}
body.az-seo main>section:not(:first-of-type)>nav[aria-label]>a.btn-ghost{position:relative;display:flex;align-items:baseline;justify-content:space-between;gap:16px;min-height:52px;margin:0;padding:14px 28px 15px 0;border:0;border-top:1px solid var(--az-haar);background:none;font-family:var(--az-narrow);font-size:clamp(1.25rem,1.55vw,1.5rem);line-height:1.15;letter-spacing:-.012em;text-align:left}
body.az-seo main>section:not(:first-of-type)>nav[aria-label]>a.btn-ghost::after{content:"→";position:absolute;right:0;top:50%;transform:translateY(-50%);font:400 17px/1 var(--az-mono);color:var(--az-grau)}
body.az-seo main>section:not(:first-of-type)>nav[aria-label]>a.btn-ghost:hover{border-top-color:var(--az-haar);color:var(--az-violett-text)}
body.az-seo main>section:not(:first-of-type)>nav[aria-label]>a.btn-ghost:hover::after{color:var(--az-violett-text)}

/* ---------- Anfrage: Abschlussblock unter einer Tintenlinie, Formular ab Spalte 3 ---------- */
body.az-seo #anfrage{padding-top:calc(var(--abst) * 1.25);padding-bottom:0}
body.az-seo #anfrage::before{background:var(--az-tinte)}
body.az-seo #anfrage h2{max-width:none;font-size:clamp(2.6rem,5vw,4.5rem);line-height:.98}
body.az-seo #anfrage form{display:grid;gap:30px;max-width:46rem;margin-top:clamp(30px,4vw,52px)}
body.az-seo #anfrage form>*{margin:0}
body.az-seo #anfrage form .grid{gap:30px 28px}
body.az-seo #anfrage label.block{margin:0 0 4px;font:400 13px/1.5 var(--az-mono);letter-spacing:.02em;color:var(--az-grau)}
body.az-seo #anfrage form div:focus-within>label{color:var(--az-tinte)}
body.az-seo #anfrage .field-input{line-height:1.4}
body.az-seo #anfrage textarea.field-input{min-height:7.5rem;resize:vertical}
body.az-seo #anfrage label.flex{align-items:flex-start;gap:14px;min-height:44px;font-size:1rem;line-height:1.5;color:var(--az-tinte)}
body.az-seo #anfrage label.flex a{text-underline-offset:3px}
body.az-seo #anfrage .cf-turnstile{min-height:65px}
/* Platzhalter in der Fläche des Elements, bis Turnstile geladen ist (gestrichelt = noch offen) */
body.az-seo #anfrage .turnstile-platz{position:relative;min-height:65px}
body.az-seo #anfrage .turnstile-wartet{position:absolute;top:0;left:0;box-sizing:border-box;display:flex;align-items:center;width:300px;max-width:100%;height:65px;margin:0;padding:0 14px;border:1px dashed rgba(15,18,34,.34);font:400 12px/1.45 var(--az-mono);letter-spacing:.02em;color:var(--az-grau);pointer-events:none}
body.az-seo #anfrage .turnstile-wartet[hidden]{display:none}
@media (max-width:359px){body.az-seo #anfrage .cf-turnstile{margin-left:calc(-3vw - 6px)}}   /* das 300 px breite Widget passt sonst nicht in 320 px */
body.az-seo #anfrage form p.text-xs{max-width:60ch;font:400 13px/1.6 var(--az-mono);letter-spacing:.02em;color:var(--az-grau)}
body.az-seo #anfrage form p.text-xs a{color:inherit;text-decoration:underline;text-underline-offset:3px}
body.az-seo #anfrage form noscript{font:400 13px/1.5 var(--az-mono);color:var(--az-grau)}
body.az-seo #anfrage button[type="submit"]{display:inline-flex;align-items:center;gap:14px;justify-self:start;min-height:54px;padding:14px 26px;font-size:1.0625rem}
body.az-seo #anfrage button[type="submit"]::after{content:"";flex:none;width:9px;height:9px;border-radius:50%;box-shadow:inset 0 0 0 1.5px #9d93f5}
/* Rückmeldungen: Tintenlinie, Kopfzeile in Mono, Meldungen in violetter Kursive mit Ring (Farbe und Schrift der Meldung kommen aus der Basis) */
body.az-seo #anfrage [role="alert"]{max-width:46rem;margin-top:28px;padding-top:14px;border-top:1px solid var(--az-tinte)}
body.az-seo #anfrage [role="alert"] p{margin:0;font:400 13px/1.5 var(--az-mono);font-style:normal;letter-spacing:.02em;color:var(--az-grau)}
body.az-seo #anfrage [role="alert"] ul{display:grid;gap:6px;margin:10px 0 0;padding:0;list-style:none}
body.az-seo #anfrage [role="alert"] li{display:flex;align-items:flex-start;gap:10px;font-size:1.15rem;line-height:1.35}
body.az-seo #anfrage [role="alert"] li::before{content:"";flex:none;width:9px;height:9px;margin-top:.45em;border-radius:50%;box-shadow:var(--ring)}
body.az-seo #anfrage [role="status"]{max-width:46rem;margin-top:30px;padding:22px 0 0;border:0;border-top:1px solid var(--az-tinte);font-family:var(--az-narrow);font-weight:600;font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1.1;letter-spacing:-.012em}
