:root { --ink:#101619; --muted:#586267; --paper:#f2f3f3; --white:#fff; --line:#dce0e1; --orange:#f39a00; --orange-dark:#c96e00; --display: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; --radius:1.25rem; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--white); color:var(--ink); font:400 1rem/1.55 var(--display); }
img { display:block; max-width:100%; }
a { color:inherit; }
.container { width:min(1140px, calc(100% - 3rem)); margin-inline:auto; }
.skip-link { position:absolute; left:1rem; top:-5rem; z-index:100; background:var(--white); padding:.75rem 1rem; border-radius:.5rem; }
.skip-link:focus { top:1rem; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.site-header { position:fixed; inset:0 0 auto; z-index:20; height:96px; display:flex; align-items:center; justify-content:space-between; padding-inline:max(1.5rem, calc((100vw - 1140px)/2)); color:var(--white); transition:background .25s, color .25s, box-shadow .25s; }
.site-header.is-scrolled { color:var(--ink); background:rgba(255,255,255,.94); backdrop-filter:blur(16px); box-shadow:0 1px 0 rgba(16,22,25,.1); }
.brand { width:168px; padding:.28rem .42rem; border-radius:.32rem; background:var(--white); box-shadow:0 4px 14px rgba(0,0,0,.14); }
.brand img { width:100%; height:auto; }
.primary-nav { display:flex; align-items:center; gap:1.5rem; font-size:.925rem; font-weight:650; }
.primary-nav > a:not(.button) { text-decoration:none; opacity:.9; }
.primary-nav > a:not(.button):hover { opacity:1; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:.65rem; min-height:3.25rem; padding:.8rem 1.1rem; border:1px solid transparent; border-radius:.6rem; text-decoration:none; font-weight:750; letter-spacing:-.01em; transition:transform .18s, background .18s, box-shadow .18s; cursor:pointer; }
.button:hover { transform:translateY(-2px); }
.button-primary { background:var(--orange); color:#1c1710; box-shadow:0 10px 28px rgba(243,154,0,.22); }
.button-primary:hover { background:#ffad1c; }
.button-small { min-height:2.6rem; padding:.55rem .9rem; color:var(--ink); background:var(--orange); }
.menu-toggle { display:none; }
.hero { position:relative; min-height:760px; min-height:100svh; display:grid; align-items:end; overflow:hidden; background:var(--ink); color:var(--white); isolation:isolate; }
.hero-media, .hero-overlay { position:absolute; inset:0; z-index:-2; }
.hero-media img { width:100%; height:100%; object-fit:cover; object-position:center 44%; filter:saturate(.82) contrast(1.04); }
.hero-overlay { z-index:-1; background:linear-gradient(90deg, rgba(10,15,17,.92) 0%, rgba(10,15,17,.7) 37%, rgba(10,15,17,.16) 73%), linear-gradient(0deg, rgba(10,15,17,.64), transparent 52%); }
.hero-content { padding-block:9.5rem 4.5rem; max-width:720px; }
.eyebrow { margin:0 0 1rem; color:var(--muted); font-size:.75rem; line-height:1.2; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.eyebrow-light { color:rgba(255,255,255,.73); }.eyebrow-orange { color:var(--orange-dark); }
h1,h2,h3,p { margin-top:0; } h1,h2,h3 { text-wrap:balance; letter-spacing:-.048em; line-height:1.04; }
h1 { max-width:760px; margin-bottom:1.45rem; font-size:clamp(3rem, 7vw, 6.35rem); }
h2 { margin-bottom:1.35rem; font-size:clamp(2.25rem, 4.3vw, 4.35rem); } h3 { margin-bottom:.7rem; font-size:1.37rem; }
.hero-copy { max-width:610px; margin-bottom:2rem; color:rgba(255,255,255,.86); font-size:clamp(1.05rem, 1.8vw, 1.3rem); }
.hero-actions { display:flex; align-items:center; gap:1.4rem; flex-wrap:wrap; }.text-link { display:inline-flex; gap:.45rem; align-items:center; color:var(--ink); font-weight:750; text-decoration-thickness:1px; text-underline-offset:5px; }.text-link-light { color:var(--white); }
.contact-links { display:flex; align-items:center; gap:1rem; flex-wrap:wrap; }.contact-links a + a { padding-left:1rem; border-left:1px solid currentColor; }
.contact-links a[href^="tel:"]::before { content:"☎"; display:inline-block; margin-right:.05rem; font-size:1.05em; line-height:1; }
.whatsapp-link { display:inline-grid; width:2.5rem; height:2.5rem; place-items:center; padding:0 !important; border:0 !important; border-radius:50%; background:#25d366; color:#fff; box-shadow:0 8px 18px rgba(37,211,102,.22); transition:transform .18s,background .18s; }.whatsapp-link:hover { background:#1fb85a; transform:translateY(-2px); }.whatsapp-link svg { width:1.35rem; height:1.35rem; fill:currentColor; }
.whatsapp-link:focus-visible { outline:3px solid var(--orange); outline-offset:3px; }
.contact-separator { font-size:.9em; font-weight:650; white-space:nowrap; }
.contact-line { display:inline-flex; align-items:center; flex-wrap:wrap; gap:.65rem; max-width:100%; vertical-align:middle; }
.contact-line a[href^="tel:"] { white-space:nowrap; }
.contact-line .whatsapp-link,.legal-copy .contact-line .whatsapp-link { flex:none; color:#fff; text-decoration:none; }
.hero-proof { display:flex; flex-wrap:wrap; gap:.6rem 1.45rem; margin:3.5rem 0 0; padding:0; list-style:none; font-size:.84rem; font-weight:680; }.hero-proof li { display:flex; align-items:center; gap:.5rem; }.hero-proof li::before { content:""; width:.42rem; height:.42rem; background:var(--orange); border-radius:50%; }
.section { padding-block:8rem; }.split-intro { display:grid; grid-template-columns:1.1fr .9fr; gap:5rem; align-items:start; }.intro-copy { max-width:490px; color:var(--muted); font-size:1.15rem; }.benefit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; margin-top:5.5rem; }.benefit-card { min-height:255px; padding:1.75rem; border:1px solid var(--line); border-radius:var(--radius); background:var(--paper); }.benefit-card p { max-width:265px; color:var(--muted); }.benefit-number { display:block; margin-bottom:3rem; color:var(--orange-dark); font-size:.8rem; font-weight:850; }
.calculator-section { background:var(--ink); color:var(--white); }.calculator-layout,.credentials-layout,.area-layout,.inquiry-layout { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:center; }.calculator-layout > div:first-child > p:not(.eyebrow) { max-width:520px; color:rgba(255,255,255,.7); font-size:1.1rem; }.source-link { color:var(--white); font-size:.9rem; font-weight:700; text-underline-offset:5px; }.calculator { padding:2.15rem; border:1px solid rgba(255,255,255,.13); border-radius:var(--radius); background:rgba(255,255,255,.06); }.calculator label { display:block; margin-bottom:1rem; font-weight:750; }.calculator-input-row { display:flex; align-items:center; gap:1.25rem; }.calculator input { width:100%; accent-color:var(--orange); }.calculator output { width:3.5rem; padding:.4rem; border-radius:.45rem; background:var(--white); color:var(--ink); text-align:center; font-weight:800; }.calculator-result { margin:2rem 0 1rem; padding:1.25rem; border-left:3px solid var(--orange); background:rgba(0,0,0,.2); }.calculator-result span,.calculator-result small { display:block; color:rgba(255,255,255,.63); font-size:.85rem; }.calculator-result strong { display:block; margin:.1rem 0; font-size:1.65rem; letter-spacing:-.04em; }.calculator-note { margin:0; color:rgba(255,255,255,.58); font-size:.83rem; }
.process-section { background:var(--paper); }.section-heading { max-width:780px; }.process-list { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; margin-top:4rem; padding:0; list-style:none; counter-reset:steps; }.process-list li { padding-top:1.3rem; border-top:1px solid #aeb7b4; }.process-list li > span { display:block; margin-bottom:2.5rem; color:var(--orange-dark); font-size:.88rem; font-weight:800; }.process-list p { color:var(--muted); }
.training-gallery { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:1.25rem; margin-top:4rem; }
.training-gallery figure { position:relative; min-width:0; margin:0; overflow:hidden; border-radius:var(--radius); background:var(--white); }
.training-gallery img { width:100%; height:420px; object-fit:cover; object-position:center; }
.ai-image-label { position:absolute; right:.85rem; bottom:.85rem; padding:.35rem .65rem; border-radius:999px; background:rgba(255,255,255,.94); color:var(--ink); box-shadow:0 2px 12px rgba(0,0,0,.14); font-size:.75rem; font-weight:750; line-height:1.2; }
.credentials-section { padding-block:7rem; }.credential-list { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin:0; padding:0; list-style:none; font-weight:730; }.credential-list li { display:flex; gap:.7rem; align-items:center; padding:.8rem 0; border-bottom:1px solid var(--line); }.credential-list span { color:var(--orange-dark); font-weight:900; }.reviews-section { padding-top:2rem; }.review-heading { display:flex; align-items:end; justify-content:space-between; gap:2rem; }.rating { display:grid; grid-template-columns:auto 1fr; column-gap:.5rem; text-decoration:none; text-align:right; }.rating strong { grid-row:span 2; font-size:3rem; line-height:.9; letter-spacing:-.08em; }.rating span { color:var(--orange-dark); letter-spacing:.07em; }.rating small { color:var(--muted); }.review-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.25rem; margin-top:3rem; }.review-grid figure { margin:0; padding:2.1rem; border-radius:var(--radius); background:var(--paper); }.review-grid blockquote { margin:0 0 2.4rem; font-size:clamp(1.3rem,2.3vw,1.8rem); line-height:1.28; letter-spacing:-.035em; }.review-grid figcaption { color:var(--muted); font-size:.88rem; }
.area-section { background:var(--paper); }.area-layout p:not(.eyebrow) { max-width:500px; color:var(--muted); font-size:1.12rem; }
.area-card { margin:0; overflow:hidden; border-radius:var(--radius); background:var(--paper); }
.area-card img { width:100%; height:auto; aspect-ratio:900/620; }
.inquiry-section { background:var(--ink); color:var(--white); }.inquiry-intro p:not(.eyebrow) { max-width:490px; color:rgba(255,255,255,.7); font-size:1.12rem; }.inquiry-form { display:grid; gap:1rem; padding:2rem; border-radius:var(--radius); background:var(--white); color:var(--ink); }.form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }.inquiry-form label { display:grid; gap:.4rem; font-size:.83rem; font-weight:750; }.inquiry-form input:not([type=checkbox]),.inquiry-form textarea { width:100%; padding:.78rem .85rem; border:1px solid #cbd1ce; border-radius:.45rem; color:var(--ink); background:var(--white); font:inherit; }.inquiry-form textarea { resize:vertical; }.inquiry-form input:focus,.inquiry-form textarea:focus { outline:3px solid rgba(243,154,0,.35); border-color:var(--orange-dark); }.checkbox-label { grid-template-columns:auto 1fr; align-items:start; gap:.6rem !important; font-size:.77rem !important; color:var(--muted); }.checkbox-label input { margin-top:.2rem; accent-color:var(--orange-dark); }.form-hint { margin:0; color:var(--muted); font-size:.75rem; }.site-footer { padding-block:1.5rem; background:var(--ink); color:rgba(255,255,255,.65); font-size:.8rem; }.footer-content { display:flex; justify-content:space-between; gap:1rem; }.footer-content div { display:flex; gap:1rem; }.footer-content a { text-underline-offset:4px; }
@media (max-width:800px) { .site-header { height:78px; padding-inline:1.1rem; }.brand { width:132px; }.menu-toggle { width:44px; height:44px; display:grid; place-content:center; gap:5px; padding:0; border:0; background:transparent; color:inherit; }.menu-toggle span:not(.sr-only) { width:23px; height:2px; background:currentColor; transition:transform .2s; }.menu-toggle[aria-expanded=true] span:nth-child(2) { transform:translateY(3.5px) rotate(45deg); }.menu-toggle[aria-expanded=true] span:nth-child(3) { transform:translateY(-3.5px) rotate(-45deg); }.primary-nav { position:absolute; top:78px; right:0; left:0; display:none; flex-direction:column; align-items:stretch; gap:0; padding:1rem 1.5rem 1.5rem; color:var(--ink); background:var(--white); box-shadow:0 10px 22px rgba(16,22,25,.1); }.primary-nav.is-open { display:flex; }.primary-nav > a:not(.button) { padding:1rem 0; border-bottom:1px solid var(--line); }.primary-nav .button { margin-top:1rem; }.hero { min-height:720px; }.hero-media img { object-position:54% center; }.hero-overlay { background:linear-gradient(90deg,rgba(10,15,17,.88),rgba(10,15,17,.34)),linear-gradient(0deg,rgba(10,15,17,.55),transparent 60%); }.hero-content { padding-block:8rem 2.5rem; }.hero-proof { margin-top:2.5rem; gap:.6rem 1rem; }.section { padding-block:5.5rem; }.split-intro,.calculator-layout,.credentials-layout,.area-layout,.inquiry-layout { grid-template-columns:1fr; gap:2.5rem; }.benefit-grid,.process-list { grid-template-columns:1fr; margin-top:3rem; }.benefit-card { min-height:0; }.benefit-number { margin-bottom:2rem; }.process-list { gap:2rem; }.process-list li > span { margin-bottom:1.1rem; }.credential-list { grid-template-columns:1fr; }.review-heading { display:block; }.rating { width:max-content; margin-top:1.8rem; text-align:left; }.review-grid { grid-template-columns:1fr; }.area-card { min-height:300px; }.form-row { grid-template-columns:1fr; }.footer-content { flex-direction:column; }.container { width:min(100% - 2.25rem, 1140px); } }
@media (max-width:800px) { .training-gallery { grid-template-columns:1fr; gap:1rem; margin-top:3rem; }.training-gallery img { height:auto; aspect-ratio:4/3; object-fit:cover; } }
@media (max-width:800px) { .brand { width:142px; } }
@media (max-width:800px) { .area-card { min-height:0; } }
@media (max-width:520px) { .area-card img { height:300px; aspect-ratio:auto; object-fit:cover; object-position:center; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; } }

/* Startseite: Text links, Löschübung rechts und nur im Textbereich stark abgedunkelt. */
.site-header { color:var(--ink); background:rgba(255,255,255,.97); backdrop-filter:blur(16px); box-shadow:0 1px 0 rgba(16,22,25,.1); }
.brand { width:330px; padding:0; border-radius:0; background:transparent; box-shadow:none; transform:translateX(20px); }
.review-stars { margin-bottom:1.1rem; color:var(--orange-dark); font-size:1.05rem; letter-spacing:.1em; }
.hero { min-height:760px; min-height:100svh; display:grid; align-items:center; padding:calc(96px + 4.5rem) max(1.5rem,calc((100vw - 1140px)/2)) 5rem; overflow:hidden; background:var(--ink); color:var(--white); isolation:isolate; }
.hero-media { position:absolute; inset:0; z-index:-2; min-height:0; }
.hero-media picture { display:block; width:100%; height:100%; }
.hero-media img { width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(1) contrast(1.01); }
.hero-overlay { display:block; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(8,13,16,.9) 0%,rgba(8,13,16,.76) 35%,rgba(8,13,16,.2) 72%,rgba(8,13,16,.03) 100%),linear-gradient(0deg,rgba(8,13,16,.2),transparent 55%); }
.hero-content { align-self:center; width:min(660px,100%); max-width:660px; margin:0; padding:0; }
.hero h1 { max-width:660px; font-size:clamp(3rem,5.5vw,5.5rem); text-shadow:0 2px 20px rgba(0,0,0,.16); }
.hero .eyebrow-light { color:rgba(255,255,255,.75); }
.hero-copy { color:rgba(255,255,255,.9); }
.hero .text-link-light { color:var(--white); }
.hero-proof { color:var(--white); }
.credentials-lead { max-width:530px; color:var(--muted); font-size:1.1rem; }
.credentials-copy > p { max-width:500px; color:var(--muted); font-size:1.05rem; }

@media (max-width:800px) {
  .brand { width:230px; transform:translateX(8px); }
  .hero { min-height:650px; padding:calc(78px + 3.5rem) 1.15rem 4.5rem; }
  .hero-content { width:100%; max-width:none; margin:0; padding:0; }
  .hero h1 { font-size:clamp(2.55rem,9vw,4.25rem); }
  .hero-media { min-height:0; }
  .hero-media img { object-position:center; }
  .hero-overlay { background:linear-gradient(90deg,rgba(8,13,16,.83),rgba(8,13,16,.57)),linear-gradient(0deg,rgba(8,13,16,.35),transparent 65%); }
  .hero-proof { margin-top:2.25rem; }
}

/* Brandschutzhelfer landing page */
.service-page { background:var(--white); }
.service-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); min-height:720px; padding-top:96px; background:var(--paper); }
.service-hero-copy { align-self:center; width:min(570px, calc(100% - 3rem)); margin-inline:auto; padding-block:5rem; }
.service-hero-copy h1 { font-size:clamp(3rem,5.8vw,5.6rem); }
.service-hero-copy > p:not(.eyebrow) { max-width:510px; color:var(--muted); font-size:1.18rem; }
.service-hero-image { min-height:644px; overflow:hidden; }
.service-hero-image picture { display:block; width:100%; height:100%; }
.service-hero-image img { width:100%; height:100%; object-fit:cover; object-position:center; }
.narrow-section { padding-block:9rem; }
.narrow-copy { width:min(830px, calc(100% - 3rem)); margin-inline:auto; }
.narrow-copy h2 { max-width:740px; }
.lead { max-width:705px; color:var(--muted); font-size:1.28rem; }
.curriculum-section { background:var(--ink); color:var(--white); }
.curriculum-heading { max-width:760px; }
.curriculum-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; overflow:hidden; margin-top:4rem; border:1px solid rgba(255,255,255,.16); border-radius:var(--radius); background:rgba(255,255,255,.16); }
.curriculum-grid article { min-height:295px; padding:1.7rem; background:var(--ink); }
.curriculum-grid h3 { margin-top:3.3rem; font-size:1.25rem; }
.curriculum-grid p { color:rgba(255,255,255,.67); }
.icon-mark { color:var(--orange); font-size:.8rem; font-weight:850; letter-spacing:.08em; }
.quote-band { padding-block:4rem; background:var(--orange); color:var(--ink); }
.quote-band p { max-width:970px; margin:0; font-size:clamp(2rem,4vw,4rem); font-weight:750; letter-spacing:-.06em; line-height:1.05; }
.service-process { background:var(--white); }
.requirement-section { background:var(--paper); }
.requirement-layout,.legal-layout,.faq-layout { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:start; }
.requirement-layout p:not(.eyebrow),.legal-layout p:not(.eyebrow) { max-width:510px; color:var(--muted); font-size:1.08rem; }
.plain-list { margin:0; padding:0; list-style:none; border-top:1px solid var(--line); }
.plain-list li { padding:1.15rem 0 1.15rem 1.5rem; border-bottom:1px solid var(--line); font-weight:700; }
.plain-list li::before { content:""; position:absolute; width:.42rem; height:.42rem; margin:.55rem 0 0 -1.5rem; border-radius:50%; background:var(--orange-dark); }
.legal-section { background:var(--paper); }
.legal-layout > div:last-child { padding-top:3.5rem; }
.faq-list { border-top:1px solid var(--line); }
.faq-list details { border-bottom:1px solid var(--line); }
.faq-list summary { position:relative; padding:1.25rem 2rem 1.25rem 0; cursor:pointer; font-weight:750; list-style:none; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:"+"; position:absolute; right:0; color:var(--orange-dark); font-size:1.4rem; font-weight:500; }
.faq-list details[open] summary::after { content:"−"; }
.faq-list details p { max-width:600px; padding:0 2rem 1.25rem 0; margin:0; color:var(--muted); }
.service-cta { padding-block:8rem; background:var(--ink); color:var(--white); }
.service-cta .container { max-width:820px; margin-left:max(1.5rem,calc((100vw - 1140px)/2)); }
.service-cta h2 { max-width:700px; }
.service-cta p:not(.eyebrow) { max-width:590px; color:rgba(255,255,255,.7); font-size:1.13rem; }
.service-cta .button { margin-top:1rem; }

@media (max-width:800px) {
  .service-hero { grid-template-columns:1fr; min-height:0; padding-top:78px; }
  .service-hero-copy { padding-block:4rem 3.5rem; }
  .service-hero-image { min-height:360px; }
  .narrow-section { padding-block:5.5rem; }
  .curriculum-grid { grid-template-columns:1fr; margin-top:3rem; }
  .curriculum-grid article { min-height:0; }
  .curriculum-grid h3 { margin-top:2rem; }
  .requirement-layout,.legal-layout,.faq-layout { grid-template-columns:1fr; gap:2.5rem; }
  .legal-layout > div:last-child { padding-top:0; }
  .service-cta { padding-block:5.5rem; }
  .service-cta .container { margin-left:auto; }
}

/* Betriebliche Erste Hilfe */
.first-aid-curriculum { background:var(--ink); }
.recognition-section { background:var(--white); }
.recognition-layout { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:start; }
.recognition-layout > div:last-child { padding-top:3.5rem; }
.recognition-layout > div:last-child p { max-width:540px; color:var(--muted); font-size:1.08rem; }
.reimbursement-section { background:var(--paper); }
.reimbursement-card { max-width:490px; padding:2rem; border-radius:var(--radius); background:var(--white); }
.reimbursement-card > span { display:block; margin-bottom:2.5rem; color:var(--orange-dark); font-size:1.5rem; font-weight:800; }
.reimbursement-card p { margin-bottom:0; color:var(--muted); }

@media (max-width:800px) {
  .recognition-layout { grid-template-columns:1fr; gap:2.5rem; }
  .recognition-layout > div:last-child { padding-top:0; }
}

/* Individuelle Notfalltrainings */
.scenario-section { background:var(--ink); color:var(--white); }
.scenario-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; overflow:hidden; margin-top:4rem; border:1px solid rgba(255,255,255,.16); border-radius:var(--radius); background:rgba(255,255,255,.16); }
.scenario-grid article { min-height:230px; padding:1.75rem; background:var(--ink); }
.scenario-grid article > span { color:var(--orange); font-size:.8rem; font-weight:850; letter-spacing:.08em; }
.scenario-grid h3 { margin-top:2.6rem; }
.scenario-grid p { max-width:400px; color:rgba(255,255,255,.67); }
.no-pressure-section { background:var(--white); }
.no-pressure-layout { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:start; }
.no-pressure-layout > div:last-child { padding-top:3.5rem; }
.no-pressure-layout > div:last-child p { max-width:520px; color:var(--muted); font-size:1.08rem; }
.industries-section { background:var(--paper); }

@media (max-width:800px) {
  .scenario-grid { grid-template-columns:1fr; margin-top:3rem; }
  .scenario-grid article { min-height:0; }
  .scenario-grid h3 { margin-top:2rem; }
  .no-pressure-layout { grid-template-columns:1fr; gap:2.5rem; }
  .no-pressure-layout > div:last-child { padding-top:0; }
}

/* Über FirMedic */
.about-hero { padding:calc(96px + 7.5rem) 0 7.5rem; background:var(--ink); color:var(--white); }
.about-hero .container { max-width:900px; margin-left:max(1.5rem,calc((100vw - 1140px)/2)); }
.about-hero h1 { max-width:790px; margin-bottom:1.6rem; font-size:clamp(3.4rem,7vw,7rem); }
.about-hero p:not(.eyebrow) { max-width:620px; margin-bottom:0; color:rgba(255,255,255,.7); font-size:clamp(1.15rem,2vw,1.38rem); }
.about-intro { background:var(--white); }
.about-intro-layout,.promise-layout { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:start; }
.about-intro h2,.promise-layout h2 { max-width:550px; }
.about-intro-layout > div:last-child,.promise-layout > div:last-child { padding-top:3.5rem; }
.about-intro-layout > div:last-child p,.promise-layout > div:last-child p { max-width:540px; color:var(--muted); font-size:1.08rem; }
.about-credentials { padding-block:2.4rem; border-block:1px solid var(--line); background:var(--paper); }
.about-credentials p { max-width:1030px; margin:0; font-size:clamp(1.25rem,2.6vw,2.3rem); font-weight:750; letter-spacing:-.045em; line-height:1.15; }
.about-credentials span { color:var(--orange-dark); padding-inline:.14em; }
.principles-section { background:var(--paper); }
.principles-heading { max-width:790px; }
.principles-list { margin-top:4.25rem; border-top:1px solid var(--line); }
.principles-list article { display:grid; grid-template-columns:110px minmax(0,1fr); gap:1.75rem; padding:2rem 0 2.15rem; border-bottom:1px solid var(--line); }
.principles-list article > span { color:var(--orange-dark); font-size:.82rem; font-weight:850; letter-spacing:.1em; }
.principles-list h3 { margin:0 0 .65rem; font-size:clamp(1.35rem,2vw,1.75rem); }
.principles-list p { max-width:620px; margin:0; color:var(--muted); }
.promise-section { background:var(--white); }
.about-services { padding-block:8rem; background:var(--ink); color:var(--white); }
.about-services .container { max-width:920px; margin-left:max(1.5rem,calc((100vw - 1140px)/2)); }
.about-services h2 { max-width:700px; }
.about-service-links { margin-top:3.7rem; border-top:1px solid rgba(255,255,255,.2); }
.about-service-links a { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.15rem 0; border-bottom:1px solid rgba(255,255,255,.2); color:var(--white); font-size:clamp(1.15rem,2vw,1.42rem); font-weight:700; text-decoration:none; transition:color .2s ease,padding .2s ease; }
.about-service-links a span:last-child { color:var(--orange); font-size:1.5rem; }
.about-service-links a:hover { padding-inline:.4rem; color:var(--orange); }

@media (max-width:800px) {
  .about-hero { padding:calc(68px + 5rem) 0 5rem; }
  .about-hero .container,.about-services .container { margin-left:auto; }
  .about-intro-layout,.promise-layout { grid-template-columns:1fr; gap:2.5rem; }
  .about-intro-layout > div:last-child,.promise-layout > div:last-child { padding-top:0; }
  .about-credentials { padding-block:1.7rem; }
  .principles-list { margin-top:3rem; }
  .principles-list article { grid-template-columns:1fr; gap:.55rem; padding-block:1.5rem; }
  .about-services { padding-block:5.5rem; }
}

/* Kompakte Angebotsnavigation */
.offers-menu { position:relative; }
.offers-menu summary { display:flex; align-items:center; gap:.38rem; cursor:pointer; list-style:none; opacity:.9; }
.offers-menu summary::-webkit-details-marker { display:none; }
.offers-menu summary span { display:inline-block; color:var(--orange-dark); font-size:1rem; line-height:1; transition:transform .18s ease; }
.offers-menu[open] summary { opacity:1; }
.offers-menu[open] summary span { transform:rotate(180deg); }
.offers-panel { position:absolute; top:calc(100% + 1rem); left:-1.15rem; display:grid; min-width:245px; padding:.55rem; border:1px solid var(--line); border-radius:.7rem; background:var(--white); box-shadow:0 18px 42px rgba(16,22,25,.16); }
.offers-panel a { padding:.68rem .78rem; border-radius:.4rem; color:var(--ink); font-weight:650; text-decoration:none; white-space:nowrap; }
.offers-panel a:hover,.offers-panel a[aria-current=page] { background:var(--paper); color:var(--orange-dark); }

@media (max-width:800px) {
  .offers-menu { width:100%; border-bottom:1px solid var(--line); }
  .offers-menu summary { justify-content:space-between; padding:1rem 0; }
  .offers-panel { position:static; min-width:0; margin:0 0 .85rem; padding:.3rem; border:0; border-radius:.45rem; background:var(--paper); box-shadow:none; }
  .offers-panel a { padding:.8rem; white-space:normal; }
}

/* Material & Equipment */
.material-hero { padding:calc(96px + 7.5rem) 0 7.5rem; background:var(--paper); }
.material-hero .container { max-width:900px; margin-left:max(1.5rem,calc((100vw - 1140px)/2)); }
.material-hero h1 { max-width:860px; font-size:clamp(3.3rem,6.8vw,6.7rem); }
.material-hero p:not(.eyebrow) { max-width:640px; color:var(--muted); font-size:clamp(1.12rem,2vw,1.35rem); }
.material-section { background:var(--white); }
.material-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:4rem; overflow:hidden; border:1px solid var(--line); border-radius:var(--radius); background:var(--line); }
.material-grid article { min-height:315px; padding:1.8rem; background:var(--white); }
.material-grid article > span { color:var(--orange-dark); font-size:.82rem; font-weight:850; letter-spacing:.1em; }
.material-grid h3 { margin-top:4rem; font-size:1.35rem; }
.material-grid p { margin-bottom:0; color:var(--muted); }
.material-process { background:var(--paper); }
.cross-sell-section { padding-block:5.5rem; background:var(--paper); }
.cross-sell-layout { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:start; }
.cross-sell-layout h2 { max-width:530px; }
.cross-sell-layout > div:last-child { padding-top:3.5rem; }
.cross-sell-layout > div:last-child p { max-width:520px; color:var(--muted); font-size:1.08rem; }

/* Angebots-, Kontakt- und regionale Landingpages */
.overview-hero,.contact-hero { padding:calc(96px + 7.5rem) 0 7rem; background:var(--paper); }
.overview-hero .container { max-width:900px; margin-left:max(1.5rem,calc((100vw - 1140px)/2)); }
.overview-hero h1,.contact-hero h1 { max-width:820px; font-size:clamp(3.3rem,6.8vw,6.7rem); }
.overview-hero p:not(.eyebrow),.contact-hero p:not(.eyebrow) { max-width:670px; color:var(--muted); font-size:clamp(1.12rem,2vw,1.35rem); }
.offer-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1.25rem; margin-top:4rem; }
.offer-grid article { min-height:280px; padding:2rem; border:1px solid var(--line); border-radius:var(--radius); background:var(--white); }
.offer-grid .offer-featured { border-color:#d98100; background:#fff7e7; }
.offer-grid h3 { margin-top:3rem; font-size:clamp(1.45rem,2.3vw,2rem); }
.offer-grid p:not(.eyebrow) { max-width:510px; color:var(--muted); }
.contact-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:5rem; align-items:start; }
.contact-layout > div { padding-top:2rem; }
.inquiry-form select { width:100%; padding:.78rem .85rem; border:1px solid #cbd1ce; border-radius:.45rem; color:var(--ink); background:var(--white); font:inherit; }
.inquiry-form select:focus { outline:3px solid rgba(243,154,0,.35); border-color:var(--orange-dark); }
.form-trap { position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }
.form-status { display:none; margin:0; padding:.8rem 1rem; border-radius:.5rem; font-size:.88rem; font-weight:650; }
.form-status.is-success { display:block; color:#17673a; background:#e7f7ec; }
.form-status.is-error { display:block; color:#9f2d20; background:#fff0ed; }
.inquiry-form button[disabled] { cursor:wait; opacity:.72; }
.legal-content { padding:calc(96px + 6rem) 0 7rem; background:var(--paper); }
.legal-copy { max-width:760px; margin-left:max(1.5rem,calc((100vw - 1140px)/2)); }
.legal-copy h1 { margin-bottom:4rem; font-size:clamp(3.3rem,6.8vw,6.7rem); }
.legal-copy h2 { margin:3rem 0 .85rem; font-size:clamp(1.35rem,2.2vw,1.9rem); }
.legal-copy p { max-width:630px; color:var(--muted); }
.legal-copy a { color:var(--ink); font-weight:700; text-underline-offset:4px; }
.regional-hero { min-height:690px; padding:calc(96px + 6.5rem) 0 6.5rem; background:#152226; color:var(--white); }
.regional-hero .container { max-width:920px; margin-left:max(1.5rem,calc((100vw - 1140px)/2)); }
.regional-hero h1 { max-width:870px; font-size:clamp(3.1rem,6.6vw,6.5rem); }
.regional-hero p:not(.eyebrow) { max-width:650px; color:rgba(255,255,255,.73); font-size:clamp(1.1rem,2vw,1.3rem); }
.regional-hamburg { background:linear-gradient(120deg,#142126 0%,#142126 52%,#3a2d15 100%); }
.regional-luebeck { background:linear-gradient(120deg,#142126 0%,#142126 58%,#24343a 100%); }
.regional-intro { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:start; }
.regional-intro h2 { max-width:540px; }
.regional-intro > div:last-child { padding-top:3.5rem; }
.regional-intro > div:last-child p { max-width:540px; color:var(--muted); font-size:1.08rem; }
.regional-practice { background:var(--paper); }
.area-links { display:grid; gap:.65rem; margin-top:1.5rem; }
.area-links a { color:var(--ink); font-weight:750; text-decoration-thickness:1px; text-underline-offset:4px; }
.regional-links-section { background:var(--white); }
.regional-links-layout { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:start; }
.regional-links-layout h2 { max-width:600px; }
.regional-links-layout > div:last-child { padding-top:3.5rem; border-top:1px solid var(--line); }
.regional-links-layout a { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.15rem 0; border-bottom:1px solid var(--line); color:var(--ink); font-size:1.12rem; font-weight:750; text-decoration:none; }
.regional-links-layout a span:last-child { color:var(--orange-dark); font-size:1.4rem; }

@media (max-width:800px) {
  .material-hero { padding:calc(68px + 5rem) 0 5rem; }
  .material-hero .container { margin-left:auto; }
  .material-grid { grid-template-columns:1fr; margin-top:3rem; }
  .material-grid article { min-height:0; }
  .material-grid h3 { margin-top:2.2rem; }
  .cross-sell-layout { grid-template-columns:1fr; gap:2.5rem; }
  .cross-sell-layout > div:last-child { padding-top:0; }
  .overview-hero,.contact-hero { padding:calc(68px + 5rem) 0 5rem; }
  .overview-hero .container,.regional-hero .container { margin-left:auto; }
  .offer-grid,.contact-layout,.regional-intro { grid-template-columns:1fr; gap:2.5rem; }
  .offer-grid { margin-top:3rem; }
  .offer-grid article { min-height:0; }
  .offer-grid h3 { margin-top:2rem; }
  .contact-layout > div,.regional-intro > div:last-child { padding-top:0; }
  .regional-hero { min-height:0; padding:calc(68px + 5rem) 0 5rem; }
  .regional-links-layout { grid-template-columns:1fr; gap:2.5rem; }
  .regional-links-layout > div:last-child { padding-top:0; }
}

/* Angebotsseiten: lesbarer Text links, die Motive bleiben rechts sichtbar. */
.service-hero,.material-hero,.overview-hero,.regional-hero {
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  place-items:center start;
  min-height:720px;
  padding:calc(96px + 4.5rem) max(1.5rem,calc((100vw - 1140px)/2)) 5rem;
  overflow:hidden;
  background:#101619;
  color:var(--white);
  text-align:left;
}
.service-hero::before,.material-hero::before,.overview-hero::before,.regional-hero::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(8,13,16,.9) 0%,rgba(8,13,16,.76) 35%,rgba(8,13,16,.2) 72%,rgba(8,13,16,.03) 100%),linear-gradient(0deg,rgba(8,13,16,.2),transparent 55%);
  pointer-events:none;
}
.service-hero-image,.offer-hero-image {
  position:absolute;
  inset:0;
  z-index:-2;
  width:100%;
  min-height:0;
  pointer-events:none;
}
.service-hero-image picture,.offer-hero-image picture { display:block; width:100%; height:100%; }
.service-hero-image img,.offer-hero-image img { width:100%; height:100%; object-fit:cover; object-position:center; }
.service-hero-copy,.material-hero .container,.overview-hero .container,.regional-hero .container {
  position:relative;
  z-index:1;
  align-self:center;
  width:min(660px,100%);
  max-width:660px;
  margin-inline:0;
  padding:0;
  text-align:left;
}
.service-hero h1,.material-hero h1,.overview-hero h1,.regional-hero h1 {
  max-width:660px;
  margin-inline:0;
  font-size:clamp(3rem,5.5vw,5.5rem);
  text-shadow:0 2px 20px rgba(0,0,0,.16);
}
.service-hero .eyebrow-orange,.material-hero .eyebrow-orange,.overview-hero .eyebrow-orange { color:#ffb546; }
.service-hero-copy > p:not(.eyebrow),.material-hero p:not(.eyebrow),.overview-hero p:not(.eyebrow),.regional-hero p:not(.eyebrow) {
  max-width:610px;
  margin-inline:0;
  color:rgba(255,255,255,.9);
  font-size:clamp(1.08rem,1.65vw,1.28rem);
}
.service-hero .hero-actions,.regional-hero .hero-actions { justify-content:flex-start; }
.service-hero .text-link { color:var(--white); }
.material-hero .button,.overview-hero .button { margin-top:1rem; }
.fire-hero .service-hero-image { left:32%; width:68%; }
.material-hero .offer-hero-image { left:28%; width:72%; }
.overview-hero .offer-hero-image { left:22%; width:78%; }
.fire-hero .service-hero-image,.material-hero .offer-hero-image,.overview-hero .offer-hero-image { -webkit-mask-image:linear-gradient(90deg,transparent,black 22%); mask-image:linear-gradient(90deg,transparent,black 22%); }
.first-aid-hero .service-hero-image img { object-position:58% center; }
.emergency-hero .service-hero-image img { object-position:60% center; }
.material-hero .offer-hero-image img { object-position:center 52%; }
.regional-hamburg { background-image:url("/public/assets/brandschutz-flamme-hero.webp"); background-size:cover; background-position:center 48%; }
.regional-luebeck { background-image:url("/public/assets/brandschutz-praxis-original.jpg"); background-size:cover; background-position:center 52%; }

@media (max-width:800px) {
  .service-hero,.material-hero,.overview-hero,.regional-hero {
    min-height:650px;
    padding:calc(78px + 3.5rem) 1.15rem 4.5rem;
  }
  .service-hero-copy,.material-hero .container,.overview-hero .container,.regional-hero .container { width:100%; }
  .service-hero h1,.material-hero h1,.overview-hero h1,.regional-hero h1 { font-size:clamp(2.55rem,9vw,4.25rem); }
  .service-hero-copy > p:not(.eyebrow),.material-hero p:not(.eyebrow),.overview-hero p:not(.eyebrow),.regional-hero p:not(.eyebrow) { font-size:1.08rem; }
  .service-hero-image { min-height:0; }
  .fire-hero .service-hero-image,.material-hero .offer-hero-image,.overview-hero .offer-hero-image { left:0; width:100%; -webkit-mask-image:none; mask-image:none; }
  .service-hero::before,.material-hero::before,.overview-hero::before,.regional-hero::before { background:linear-gradient(90deg,rgba(8,13,16,.83),rgba(8,13,16,.57)),linear-gradient(0deg,rgba(8,13,16,.35),transparent 65%); }
  .service-hero .hero-actions,.regional-hero .hero-actions { gap:1rem; }
}

/* Kontaktseite: Einführung und Formular bilden eine klare, großzügige Abfolge. */
.contact-layout { grid-template-columns:minmax(0,1fr); gap:3.5rem; }
.contact-layout > div,.contact-layout > form { min-width:0; }
.contact-layout > div { max-width:960px; padding-top:0; }
.contact-layout > .inquiry-form { width:min(100%,920px); margin-inline:auto; padding:clamp(1.5rem,3vw,2.75rem); }
.contact-hero h1 { max-width:960px; font-size:clamp(3.3rem,6vw,5rem); overflow-wrap:normal; hyphens:manual; }
.contact-hero p:not(.eyebrow) { max-width:760px; }
.contact-layout .form-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media (max-width:800px) {
  .contact-layout { gap:2.5rem; }
  .contact-layout .form-row { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:600px) {
  .contact-hero { padding:calc(78px + 3rem) 0 4rem; }
  .contact-hero h1 { font-size:clamp(2rem,8.6vw,3rem); line-height:1.08; overflow-wrap:anywhere; }
  .contact-hero p:not(.eyebrow) { font-size:1.06rem; }
  .contact-line { display:flex; width:100%; gap:.55rem; font-size:.95rem; }
  .contact-line a[href^="tel:"] { white-space:normal; }
  .contact-layout > .inquiry-form { width:100%; min-width:0; padding:1.25rem; }
  .inquiry-form input,.inquiry-form select,.inquiry-form textarea { min-width:0; max-width:100%; }
}

/* Themenwechsel: abgestimmte Flächen statt direkt aufeinanderfolgender weißer Bereiche. */
.service-process,.regional-practice {
  background:var(--paper);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.service-process + .requirement-section { background:#fff; }
.faq-section {
  background:var(--paper);
  border-top:1px solid var(--line);
}
.principles-section { background:#fff; }
.promise-section {
  background:var(--paper);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.about-services + .service-cta { border-top:1px solid rgba(255,255,255,.18); }
@media (max-width:600px) {
  .legal-copy { overflow-wrap:anywhere; hyphens:auto; }
}



/* Einheitliche Flächen: Weiß, ein neutrales Grau und Anthrazit. */
.site-header,.site-header.is-scrolled { background:var(--white); }
.area-section,.reimbursement-section,.industries-section,.regional-page .legal-section { background:var(--white); }
.quote-band { background:var(--white); color:var(--ink); border-block:1px solid var(--line); }
.about-page .service-cta { background:var(--white); color:var(--ink); border-top:1px solid var(--line); }
.about-page .service-cta p:not(.eyebrow),.about-page .service-cta .eyebrow-light { color:var(--muted); }

