/*
Theme Name: Kfz-Sachverständigenbüro West
Theme URI: https://www.kfz-sv-west.de
Author: Kfz-Sachverständigenbüro West
Author URI: https://www.kfz-sv-west.de
Description: Maßgeschneidertes WordPress-Theme für das Kfz-Sachverständigenbüro West in Duisburg.
Version: 2.5.5
Requires at least: 6.4
Requires PHP: 8.1
Text Domain: ksvw
*/

:root { --ink:#111315; --ink-soft:#202326; --paper:#f5f3ef; --white:#fff; --muted:#62676c; --line:rgba(17,19,21,.14); --red:#ff1500; --red-dark:#d61200; --green:#24a866; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Inter,"Helvetica Neue",Arial,sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
.shell { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
.section { padding-block:116px; }
.icon,.button-arrow,.check-icon { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; flex:0 0 auto; }
.brand-icon { width:20px; height:20px; fill:currentColor; stroke:none; flex:0 0 auto; }
.instagram-mark { fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.button-arrow { width:18px; height:18px; }
.check-icon { width:22px; height:22px; }
.eyebrow { margin:0 0 20px; display:flex; align-items:center; gap:10px; text-transform:uppercase; letter-spacing:.18em; font-size:12px; font-weight:800; color:rgba(255,255,255,.63); }
.eyebrow span { width:28px; height:2px; background:var(--red); }
.eyebrow-dark { color:var(--muted); }
.section-heading h2,.rights-intro h2,.expert-copy h2,.area-grid h2,.faq-intro h2,.contact-copy h2 { margin:0; font-size:clamp(38px,4.2vw,58px); line-height:1.04; letter-spacing:-.05em; }

.topbar { background:#090a0b; color:rgba(255,255,255,.68); font-size:12px; letter-spacing:.04em; }
.topbar-inner { min-height:36px; display:flex; align-items:center; gap:14px; }
.topbar-inner a { color:#fff; }
.topbar-email { margin-left:auto; }
.topbar-divider { width:1px; height:12px; background:rgba(255,255,255,.2); }
.topbar-socials { margin-left:2px; padding-left:14px; display:flex; align-items:center; gap:5px; border-left:1px solid rgba(255,255,255,.2); }
.topbar-socials a { width:26px; height:26px; display:grid; place-items:center; color:rgba(255,255,255,.72); transition:color .2s ease,background .2s ease; }
.topbar-socials a:hover,.topbar-socials a:focus-visible { color:#fff; background:var(--red); }
.topbar-socials .icon,.topbar-socials .brand-icon { width:15px; height:15px; }
.site-header { position:relative; z-index:10; background:rgba(255,255,255,.97); border-bottom:1px solid rgba(17,19,21,.08); }
.header-inner { min-height:86px; display:flex; align-items:center; justify-content:space-between; gap:36px; }
.brand { display:inline-flex; align-items:center; gap:12px; }
.site-logo { display:block; width:315px; max-width:32vw; height:auto; }
.footer-logo { width:290px; max-width:100%; padding:8px 10px; background:#fff; }
.brand-mark { width:46px; height:46px; display:grid; place-items:center; color:#fff; background:var(--ink); font-weight:900; font-size:25px; letter-spacing:-.08em; border-bottom:4px solid var(--red); }
.brand-copy { display:flex; flex-direction:column; line-height:1; text-transform:uppercase; }
.brand-copy strong { font-size:11px; letter-spacing:.04em; font-weight:700; }
.brand-copy span { color:var(--red); font-size:26px; font-weight:900; letter-spacing:.14em; margin-top:5px; }
.desktop-nav { display:flex; align-items:center; gap:28px; margin-left:auto; }
.desktop-nav a { font-size:14px; font-weight:650; position:relative; }
.desktop-nav a::after { content:""; position:absolute; left:0; bottom:-9px; width:0; height:2px; background:var(--red); transition:width .2s ease; }
.desktop-nav a:hover::after,.desktop-nav a:focus-visible::after { width:100%; }
.header-call { display:flex; align-items:center; gap:10px; border-left:1px solid var(--line); padding-left:24px; font-weight:800; }
.header-call .icon { color:var(--red); }
.header-call span { display:flex; flex-direction:column; }
.header-call small { color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.12em; font-weight:700; margin-bottom:3px; }

.hero { position:relative; overflow:hidden; color:#fff; background:#141618; }
.hero-backdrop { position:absolute; inset:0; background-image:linear-gradient(90deg,rgba(10,11,12,.97) 0%,rgba(10,11,12,.9) 38%,rgba(10,11,12,.42) 67%,rgba(10,11,12,.2) 100%),url("assets/hero-gutachter.webp"); background-size:cover; background-position:center; }
.hero-backdrop::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.3)); }
.hero-grid { position:relative; min-height:690px; padding-block:88px; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(360px,.72fr); align-items:center; gap:88px; }
.hero-copy { max-width:720px; }
.hero h1 { margin:0; font-size:clamp(46px,5.7vw,78px); line-height:.98; letter-spacing:-.055em; max-width:800px; font-weight:850; }
.hero h1 em { color:#fff; font-style:normal; text-decoration:underline; text-decoration-color:var(--red); text-decoration-thickness:5px; text-underline-offset:10px; }
.hero-intro { margin:32px 0 0; max-width:650px; color:rgba(255,255,255,.74); font-size:18px; line-height:1.65; }
.hero-actions { margin-top:34px; display:flex; flex-wrap:wrap; gap:12px; }
.button { min-height:56px; padding:0 22px; display:inline-flex; align-items:center; justify-content:center; gap:10px; font-size:14px; font-weight:800; transition:transform .2s ease,background .2s ease,border-color .2s ease; }
.button:hover { transform:translateY(-2px); }
.button-primary { color:#fff; background:var(--red); }
.button-primary:hover { background:var(--red-dark); }
.button-primary .button-arrow { margin-left:6px; }
.button-secondary { color:#fff; border:1px solid rgba(255,255,255,.35); background:rgba(255,255,255,.07); backdrop-filter:blur(8px); }
.button-secondary:hover { border-color:rgba(255,255,255,.75); background:rgba(255,255,255,.12); }
.button-dark { color:#fff; background:var(--ink); }
.button-dark:hover { background:var(--red); }
.button-light { color:var(--ink); background:#fff; white-space:nowrap; }
.response-note { margin:18px 0 0; display:flex; align-items:center; gap:9px; color:rgba(255,255,255,.68); font-size:13px; }
.status-dot { width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 4px rgba(36,168,102,.14); }
.hero-card { padding:36px; background:rgba(255,255,255,.96); color:var(--ink); border-top:5px solid var(--red); box-shadow:0 28px 80px rgba(0,0,0,.35); }
.hero-card-kicker { color:var(--red); text-transform:uppercase; font-size:10px; letter-spacing:.15em; font-weight:850; }
.hero-card h2 { margin:10px 0 24px; font-size:28px; line-height:1.15; letter-spacing:-.035em; }
.hero-card ul { list-style:none; margin:0; padding:0; }
.hero-card li { display:flex; gap:15px; padding:17px 0; border-top:1px solid var(--line); }
.hero-card li>span { color:var(--red); font-size:11px; font-weight:900; padding-top:3px; }
.hero-card li div { display:flex; flex-direction:column; gap:5px; }
.hero-card li strong { font-size:15px; }
.hero-card li small { color:var(--muted); line-height:1.45; }
.hero-card>a { margin-top:20px; min-height:48px; display:flex; align-items:center; justify-content:space-between; padding:0 16px; color:#fff; background:var(--ink); font-size:14px; font-weight:800; }

.proof-band { color:#fff; background:var(--red); }
.proof-grid { min-height:108px; display:grid; grid-template-columns:repeat(4,1fr); align-items:center; }
.proof-item { padding:0 32px; display:flex; flex-direction:column; border-left:1px solid rgba(255,255,255,.24); }
.proof-item:first-child { padding-left:0; border-left:0; }
.proof-item strong { font-size:24px; line-height:1.1; }
.proof-item span { margin-top:6px; color:rgba(255,255,255,.72); font-size:11px; text-transform:uppercase; letter-spacing:.12em; }

.services-section { background:var(--paper); }
.split-heading { display:grid; grid-template-columns:1.25fr .75fr; gap:100px; align-items:end; margin-bottom:58px; }
.split-heading>p { margin:0 0 4px; color:var(--muted); line-height:1.75; }
.service-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.service-card { min-height:350px; display:flex; flex-direction:column; padding:34px 28px; background:rgba(255,255,255,.42); border-right:1px solid var(--line); border-bottom:1px solid var(--line); transition:background .2s ease,transform .2s ease; }
.service-card:hover { background:#fff; transform:translateY(-4px); }
.service-card>span { color:var(--red); font-size:11px; font-weight:900; letter-spacing:.1em; }
.service-card h3 { min-height:2.4em; margin:70px 0 16px; font-size:22px; line-height:1.2; letter-spacing:-.035em; }
.service-card p { margin:0; color:var(--muted); font-size:15px; line-height:1.72; }
.service-card a { margin-top:auto; padding-top:28px; display:flex; align-items:center; justify-content:space-between; font-size:13px; font-weight:850; border-top:1px solid var(--line); }

.rights-section { padding-block:105px; color:#fff; background:var(--ink); }
.rights-grid { display:grid; grid-template-columns:1fr 1fr; gap:110px; align-items:start; }
.rights-intro>p:last-child { margin:30px 0 0; color:rgba(255,255,255,.62); font-size:16px; line-height:1.75; }
.rights-list { border-top:1px solid rgba(255,255,255,.16); }
.rights-list>div { display:flex; gap:18px; padding:24px 0; border-bottom:1px solid rgba(255,255,255,.16); }
.rights-list .check-icon { color:var(--red); }
.rights-list span { display:flex; flex-direction:column; gap:7px; }
.rights-list strong { font-size:16px; }
.rights-list small { color:rgba(255,255,255,.55); line-height:1.5; }

.process-section { background:#fff; }
.centered-heading { max-width:720px; margin:0 auto 64px; text-align:center; }
.centered-heading .eyebrow { justify-content:center; }
.centered-heading>p:last-child { margin:24px auto 0; max-width:580px; color:var(--muted); line-height:1.7; }
.process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:0; }
.process-card { position:relative; padding:0 28px; text-align:center; }
.process-number { position:relative; z-index:2; width:64px; height:64px; margin:0 auto 30px; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--ink); border:7px solid #fff; box-shadow:0 0 0 1px var(--line); font-size:12px; font-weight:900; }
.process-card:nth-child(2) .process-number,.process-card:nth-child(4) .process-number { background:var(--red); }
.process-line { position:absolute; z-index:1; top:32px; left:0; right:0; height:1px; background:var(--line); }
.process-card:first-child .process-line { left:50%; }
.process-card:last-child .process-line { right:50%; }
.process-card h3 { margin:0 0 12px; font-size:18px; letter-spacing:-.02em; }
.process-card p { margin:0; color:var(--muted); font-size:15px; line-height:1.72; }
.center-actions { margin-top:50px; display:flex; justify-content:center; }

.video-section { padding-block:100px; overflow:hidden; background:#f5f3ef; }
.video-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,430px); gap:100px; align-items:center; }
.video-copy h2 { margin:0; font-size:clamp(40px,4.6vw,62px); line-height:1.02; letter-spacing:-.05em; }
.video-copy>p:not(.eyebrow) { max-width:650px; margin:24px 0 0; color:var(--muted); line-height:1.75; }
.video-points { display:grid; gap:14px; margin:30px 0; padding:0; list-style:none; }
.video-points li { display:flex; align-items:center; gap:12px; font-weight:750; }
.video-points .check-icon { color:var(--red); }
.video-stage { position:relative; width:min(100%,390px); justify-self:end; }
.video-stage::before { position:absolute; inset:24px -22px -22px 24px; content:""; background:var(--red); }
.accident-video { position:relative; z-index:1; display:block; width:100%; aspect-ratio:9/16; object-fit:contain; background:#101214; box-shadow:0 28px 70px rgba(17,19,21,.24); }
.accident-video:fullscreen,.accident-video:-webkit-full-screen { width:100vw!important; height:100vh!important; max-width:none!important; max-height:none!important; aspect-ratio:auto; object-fit:contain!important; background:#000; box-shadow:none; }

.expert-section { padding-block:116px; background:var(--paper); }
.expert-grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:center; }
.expert-visual { position:relative; min-height:590px; background-image:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.82)),url("assets/bilal-erol-begutachtung.webp"); background-size:cover; background-position:center 48%; box-shadow:22px 22px 0 var(--red); }
.visual-label { position:absolute; left:30px; right:30px; bottom:28px; display:flex; flex-direction:column; color:#fff; }
.visual-label strong { font-size:18px; }
.visual-label small { margin-top:5px; color:rgba(255,255,255,.65); }
.expert-copy h2 { font-size:clamp(48px,5.2vw,72px); }
.expert-title { margin:10px 0 30px!important; color:var(--red)!important; font-size:15px!important; font-weight:800; }
.expert-copy>p { margin:0 0 18px; color:var(--muted); line-height:1.78; }
.expert-facts { margin:30px 0; padding:24px 0; list-style:none; border-block:1px solid var(--line); display:grid; gap:13px; }
.expert-facts li { display:flex; align-items:center; gap:11px; font-size:15px; font-weight:700; }
.expert-facts .check-icon { width:18px; height:18px; color:var(--red); }
.text-link { display:inline-flex; align-items:center; gap:12px; color:var(--ink); font-size:14px; font-weight:850; border-bottom:2px solid var(--red); padding-bottom:7px; }

.area-section { padding-block:70px; color:#fff; background:var(--red); }
.area-grid { display:grid; grid-template-columns:1.05fr 1fr auto; gap:60px; align-items:center; }
.area-grid .eyebrow { color:rgba(255,255,255,.7); }
.area-grid .eyebrow span { background:#fff; }
.area-grid h2 { font-size:44px; }
.area-grid>p { margin:0; color:rgba(255,255,255,.78); line-height:1.7; }

.social-section { padding-block:82px; color:#fff; background:#0b0d0e; }
.social-panel { display:grid; grid-template-columns:1.05fr .95fr; gap:80px; align-items:center; }
.social-copy h2 { max-width:600px; margin:0; font-size:clamp(36px,4vw,54px); line-height:1.05; letter-spacing:-.045em; }
.social-copy>p:last-child { max-width:610px; margin:24px 0 0; color:rgba(255,255,255,.64); line-height:1.75; }
.social-buttons { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.social-card { min-height:108px; padding:20px; display:grid; grid-template-columns:38px 1fr 18px; align-items:center; gap:14px; color:var(--ink); background:#fff; border-top:4px solid var(--red); transition:transform .2s ease,background .2s ease; }
.social-card:hover,.social-card:focus-visible { transform:translateY(-4px); background:#fff5f3; }
.social-card>.icon,.social-card>.brand-icon { width:28px; height:28px; color:var(--red); }
.social-card>span { display:flex; flex-direction:column; gap:5px; }
.social-card small { color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.social-card strong { font-size:17px; }
.social-card .button-arrow { width:18px; height:18px; }

.faq-section { background:#fff; }
.faq-grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:110px; align-items:start; }
.faq-intro { position:sticky; top:40px; }
.faq-intro>p { color:var(--muted); line-height:1.75; }
.faq-intro .text-link { margin-top:20px; }
.faq-list { border-top:1px solid var(--line); }
.faq-list details { border-bottom:1px solid var(--line); }
.faq-list summary { min-height:86px; display:flex; align-items:center; justify-content:space-between; gap:22px; cursor:pointer; list-style:none; font-size:17px; font-weight:800; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary i { width:32px; height:32px; display:grid; place-items:center; flex:0 0 auto; border:1px solid var(--line); font-size:20px; font-style:normal; font-weight:400; transition:transform .2s ease,background .2s ease,color .2s ease; }
.faq-list details[open] summary i { transform:rotate(45deg); color:#fff; background:var(--red); border-color:var(--red); }
.faq-list details p { margin:0; padding:0 55px 28px 0; color:var(--muted); line-height:1.75; }

.contact-section { padding-block:110px; color:#fff; background:#111315; }
.contact-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; align-items:start; }
.contact-copy>p { color:rgba(255,255,255,.62); line-height:1.75; }
.direct-contacts { margin-top:38px; border-top:1px solid rgba(255,255,255,.16); }
.direct-contacts a { padding:20px 0; display:flex; align-items:center; gap:16px; border-bottom:1px solid rgba(255,255,255,.16); }
.direct-contacts .icon { color:var(--red); }
.direct-contacts a:last-child .brand-icon { color:#25d366; }
.direct-contacts span { display:flex; flex-direction:column; gap:4px; font-weight:800; }
.direct-contacts small { color:rgba(255,255,255,.58); text-transform:uppercase; font-size:10px; letter-spacing:.14em; font-weight:700; }
.contact-mail { margin-top:22px!important; font-size:14px; }
.contact-mail a { color:#fff; text-decoration:underline; text-decoration-color:var(--red); text-underline-offset:5px; }
.contact-form { display:grid; grid-template-columns:1fr 1fr; gap:18px; padding:38px; color:var(--ink); background:#fff; }
.field { display:flex; flex-direction:column; gap:8px; }
.field-wide { grid-column:1/-1; }
.field label { font-size:12px; text-transform:uppercase; letter-spacing:.1em; font-weight:800; }
.field input,.field select,.field textarea { width:100%; border:1px solid #d7d7d7; border-radius:0; background:#f8f8f7; padding:14px; color:var(--ink); outline:none; }
.field textarea { resize:vertical; }
.field input:focus,.field select:focus,.field textarea:focus { border-color:var(--red); box-shadow:0 0 0 2px rgba(255,21,0,.08); }
.consent { display:flex; flex-direction:row; align-items:flex-start; gap:10px; color:var(--muted); font-size:14px; line-height:1.6; text-transform:none; letter-spacing:0; font-weight:400; }
.consent input { width:16px; height:16px; margin:1px 0 0; accent-color:var(--red); }
.consent a { color:var(--ink); font-weight:750; text-decoration:underline; text-decoration-color:var(--red); text-underline-offset:3px; }
.form-submit { display:grid; grid-template-columns:auto 1fr; gap:18px; align-items:center; }
.form-submit button { min-height:54px; border:0; padding:0 22px; display:flex; align-items:center; gap:20px; justify-content:space-between; color:#fff; background:var(--red); font-weight:850; cursor:pointer; }
.form-submit button:hover { background:var(--red-dark); }
.form-submit small { color:var(--muted); line-height:1.5; }
.form-status { margin:0; padding:12px; color:#17653f; background:#edf8f2; font-size:12px; font-weight:700; }
.form-error { color:#8a171f; background:#fff0f1; }
.honeypot { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.custom-logo-wrap,.custom-logo-link { display:flex; align-items:center; }
.custom-logo { display:block; width:auto; max-width:300px; max-height:64px; }
.content-page { min-height:60vh; padding-block:90px; }
.content-page article { max-width:840px; margin-inline:auto; }
.content-page h1 { margin:0 0 36px; font-size:clamp(42px,5vw,68px); line-height:1; letter-spacing:-.05em; }
.entry-content { color:#4f5458; font-size:16px; line-height:1.8; }
.entry-content h2,.entry-content h3 { margin-top:2em; color:var(--ink); }
.entry-content a { color:var(--red); text-decoration:underline; }

.case-section { padding-block:108px; background:#ece9e3; }
.case-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.case-card { min-height:640px; display:flex; flex-direction:column; background:rgba(255,255,255,.48); border-right:1px solid var(--line); border-bottom:1px solid var(--line); overflow:hidden; }
.case-gallery { display:grid; grid-template-columns:repeat(2,1fr); gap:2px; background:#d7d3cc; }
.case-gallery img { width:100%; height:112px; display:block; object-fit:cover; }
.case-gallery img:first-child { grid-column:1/-1; height:220px; }
.case-gallery img:nth-child(2):last-child { grid-column:1/-1; height:160px; }
.case-card-body { flex:1; display:flex; flex-direction:column; padding:28px 32px 32px; }
.case-card-top { display:flex; justify-content:space-between; align-items:center; gap:18px; }
.case-card-top>span { width:42px; height:42px; display:grid; place-items:center; color:#fff; background:var(--red); font-size:11px; font-weight:900; }
.case-card-top small { color:var(--muted); text-transform:uppercase; letter-spacing:.11em; font-size:10px; font-weight:800; text-align:right; }
.case-card h3 { margin:34px 0 18px; font-size:25px; line-height:1.2; letter-spacing:-.035em; }
.case-card p { margin:0; color:var(--muted); font-size:15px; line-height:1.75; }
.case-card ul { margin:auto 0 0; padding:28px 0 0; display:flex; flex-wrap:wrap; gap:7px; list-style:none; }
.case-card li { padding:7px 9px; color:#4d5358; background:#fff; border:1px solid var(--line); font-size:11px; font-weight:750; }
.case-note { margin-top:24px; padding:22px 24px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px; color:var(--muted); background:#fff; border-left:4px solid var(--red); }
.case-note>span { color:var(--red); text-transform:uppercase; letter-spacing:.12em; font-size:10px; font-weight:900; }
.case-note p { margin:0; font-size:14px; line-height:1.6; }

.service-hero { position:relative; overflow:hidden; color:#fff; background:#111315; }
.service-hero-backdrop { position:absolute; inset:0; background-image:linear-gradient(90deg,rgba(10,11,12,.98) 0%,rgba(10,11,12,.9) 48%,rgba(10,11,12,.45) 100%),url("assets/hero-gutachter.webp"); background-size:cover; background-position:68% center; }
.service-hero-grid { position:relative; min-height:600px; padding-block:82px; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(340px,.68fr); gap:90px; align-items:center; }
.breadcrumb { display:flex; flex-wrap:wrap; gap:9px; margin-bottom:32px; color:rgba(255,255,255,.52); font-size:11px; }
.breadcrumb a { color:#fff; }
.service-hero h1 { max-width:760px; margin:0; font-size:clamp(50px,5.7vw,78px); line-height:.98; letter-spacing:-.055em; }
.service-hero-intro { max-width:700px; margin:28px 0 0; color:rgba(255,255,255,.72); font-size:18px; line-height:1.7; }
.service-summary { padding:34px; color:var(--ink); background:rgba(255,255,255,.96); border-top:5px solid var(--red); box-shadow:0 28px 80px rgba(0,0,0,.35); }
.service-summary>small { color:var(--red); text-transform:uppercase; letter-spacing:.15em; font-size:10px; font-weight:850; }
.service-summary h2 { margin:11px 0 24px; font-size:28px; line-height:1.15; letter-spacing:-.035em; }
.service-summary ul { margin:0; padding:0; list-style:none; border-top:1px solid var(--line); }
.service-summary li { display:flex; gap:13px; padding:17px 0; border-bottom:1px solid var(--line); font-size:14px; font-weight:700; line-height:1.55; }
.service-summary .check-icon { width:19px; height:19px; color:var(--red); }
.service-link-band { color:#fff; background:var(--red); }
.service-link-band .shell { min-height:78px; display:grid; grid-template-columns:repeat(4,1fr); }
.service-link-band a { display:flex; align-items:center; justify-content:center; padding:16px; text-align:center; border-left:1px solid rgba(255,255,255,.25); font-size:13px; font-weight:800; }
.service-link-band a:last-child { border-right:1px solid rgba(255,255,255,.25); }
.service-link-band a:hover,.service-link-band a:focus-visible,.service-link-band a.active { background:rgba(0,0,0,.14); }
.service-content-section { padding-block:110px; background:var(--paper); }
.service-content-grid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(300px,.6fr); gap:100px; align-items:start; }
.service-article>section+section { margin-top:68px; padding-top:68px; border-top:1px solid var(--line); }
.service-article h2 { margin:0 0 24px; font-size:clamp(32px,3.6vw,48px); line-height:1.08; letter-spacing:-.045em; }
.service-article p { margin:0 0 18px; color:var(--muted); font-size:16px; line-height:1.82; }
.service-article ul { margin:28px 0 0; padding:0; display:grid; gap:13px; list-style:none; }
.service-article li { display:flex; align-items:flex-start; gap:12px; font-weight:700; line-height:1.55; }
.service-article li .check-icon { width:19px; height:19px; margin-top:2px; color:var(--red); }
.service-contact-card { position:sticky; top:28px; padding:34px; color:#fff; background:var(--ink); border-bottom:5px solid var(--red); }
.service-contact-card .card-number { display:block; color:var(--red); font-size:38px; font-weight:900; letter-spacing:-.04em; }
.service-contact-card h2 { margin:22px 0 14px; font-size:30px; line-height:1.08; letter-spacing:-.04em; }
.service-contact-card p { margin:0 0 26px; color:rgba(255,255,255,.62); line-height:1.7; }
.service-contact-card .button { width:100%; }
.service-phone-link { margin-top:18px; padding-top:18px; display:flex; align-items:center; gap:10px; border-top:1px solid rgba(255,255,255,.17); font-weight:800; }
.service-phone-link .icon { color:var(--red); }
.service-faq-section { background:#fff; }
.service-cta { padding-block:74px; color:#fff; background:var(--red); }
.service-cta>.shell { display:grid; grid-template-columns:1fr auto; gap:70px; align-items:center; }
.service-cta h2 { margin:0; font-size:clamp(36px,4vw,54px); line-height:1.05; letter-spacing:-.045em; }
.service-cta p:not(.eyebrow) { margin:18px 0 0; color:rgba(255,255,255,.75); }
.service-cta .hero-actions { margin:0; flex-wrap:nowrap; }
.service-cta .button-light .brand-icon { color:#168d4f; }

.site-footer { color:rgba(255,255,255,.66); background:#08090a; font-size:13px; }
.footer-main { padding-block:70px; display:grid; grid-template-columns:1.5fr repeat(3,1fr); gap:60px; }
.footer-main>div { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.footer-main>div:first-child p { margin:10px 0 0; line-height:1.7; }
.footer-main strong { color:#fff; font-size:12px; text-transform:uppercase; letter-spacing:.12em; margin-bottom:8px; }
.footer-main a:hover { color:#fff; }
.footer-main small { max-width:180px; line-height:1.5; color:rgba(255,255,255,.35); }
.footer-socials { display:flex; flex-wrap:wrap; gap:8px; margin-top:7px; }
.footer-socials a { min-height:38px; padding:8px 11px; display:inline-flex; align-items:center; gap:7px; color:rgba(255,255,255,.78); border:1px solid rgba(255,255,255,.18); }
.footer-socials a:hover,.footer-socials a:focus-visible { color:#fff; border-color:var(--red); background:rgba(255,21,0,.12); }
.footer-socials .icon,.footer-socials .brand-icon { width:17px; height:17px; }
.brand-footer .brand-copy strong { color:#fff; }
.footer-line { min-height:74px; display:flex; justify-content:space-between; align-items:center; gap:20px; border-top:1px solid rgba(255,255,255,.12); }
.quick-actions { position:fixed; z-index:60; right:18px; bottom:28px; display:grid; gap:8px; }
.quick-action { width:52px; height:52px; display:grid; place-items:center; color:#fff; border:2px solid rgba(255,255,255,.92); border-radius:13px; box-shadow:0 10px 28px rgba(0,0,0,.24); transition:transform .2s ease,filter .2s ease,box-shadow .2s ease; }
.quick-action:hover,.quick-action:focus-visible { transform:translateX(-4px) scale(1.04); filter:brightness(1.06); box-shadow:0 14px 34px rgba(0,0,0,.3); outline:none; }
.quick-action .icon,.quick-action .brand-icon { width:25px; height:25px; }
.quick-phone { background:#e31b13; }
.quick-whatsapp { background:#20a65a; }
.quick-instagram { background:linear-gradient(145deg,#5b32b4 4%,#c52a8b 46%,#f04a3d 72%,#f5a43a 100%); }
.quick-facebook { background:#1877f2; }
.mobile-actions { display:none; }

@media (max-width:1050px) {
  .desktop-nav{display:none}.hero-grid{grid-template-columns:1fr;gap:44px}.hero-card{max-width:650px}.service-grid{grid-template-columns:repeat(2,1fr)}
  .rights-grid,.expert-grid,.faq-grid,.contact-grid{gap:60px}.video-grid{gap:60px}.area-grid{grid-template-columns:1fr 1fr}.area-grid .button{grid-column:1/-1;justify-self:start}.social-panel{gap:50px}.footer-main{grid-template-columns:1.3fr repeat(3,1fr);gap:30px}
  .service-hero-grid{grid-template-columns:minmax(0,1fr);gap:42px}.service-hero-grid>*,.service-content-grid>*{min-width:0}.service-summary{max-width:650px}.service-content-grid{gap:60px}.service-cta>.shell{grid-template-columns:1fr}.service-cta .hero-actions{margin-top:0}
}

@media (max-width:760px) {
  .shell{width:min(100% - 32px,1180px)}.section{padding-block:80px}.topbar-inner{min-height:38px;justify-content:center;gap:10px}.topbar-inner>span:nth-child(1),.topbar-divider,.topbar-email{display:none}.topbar-socials{margin-left:4px;padding-left:10px}.topbar-socials a{display:grid}
  .header-inner{min-height:70px}.site-logo{width:240px;max-width:70vw}.brand-mark{width:40px;height:40px;font-size:22px}.brand-copy strong{font-size:9px}.brand-copy span{font-size:21px}.header-call{display:none}
  .hero-backdrop{background-image:linear-gradient(90deg,rgba(10,11,12,.97),rgba(10,11,12,.78)),url("assets/hero-gutachter.webp");background-position:68% center}
  .hero-grid{min-height:auto;padding-block:64px 58px}.hero h1{font-size:clamp(43px,13vw,62px)}.hero h1 em{text-decoration-thickness:4px;text-underline-offset:7px}.hero-intro{font-size:16px}.hero-actions{flex-direction:column}.button{width:100%}
  .hero-card{padding:28px 22px}.proof-grid{grid-template-columns:repeat(2,1fr);padding-block:20px}.proof-item{min-height:76px;justify-content:center;padding:0 16px}.proof-item:nth-child(3){border-left:0}.proof-item:first-child,.proof-item:nth-child(3){padding-left:0}.proof-item strong{font-size:20px}
  .split-heading,.rights-grid,.expert-grid,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:42px}.split-heading{margin-bottom:42px}.service-grid{grid-template-columns:1fr}.service-card{min-height:290px}.service-card h3{min-height:0;margin-top:42px}
  .rights-section{padding-block:78px}.process-grid{grid-template-columns:1fr;gap:0}.process-card{padding:0 0 34px 78px;text-align:left}.process-number{position:absolute;left:0;top:0;margin:0}.process-line{top:0;bottom:0;left:31px!important;right:auto!important;width:1px;height:auto}.process-card:last-child .process-line{bottom:50%}.process-card h3{padding-top:11px}.center-actions{margin-top:12px}
  .video-section{padding-block:78px}.video-grid{grid-template-columns:1fr;gap:48px}.video-stage{width:min(100%,360px);justify-self:center}.expert-section{padding-block:80px}.expert-visual{min-height:420px;box-shadow:12px 12px 0 var(--red)}.area-grid{grid-template-columns:1fr;gap:28px}.area-grid .button{grid-column:auto}.social-section{padding-block:68px}.social-panel{grid-template-columns:1fr;gap:36px}.faq-intro{position:static}.contact-form{grid-template-columns:1fr;padding:26px 20px}.field-wide{grid-column:1}.form-submit{grid-template-columns:1fr}.form-submit button{width:100%}
  .case-section{padding-block:78px}.case-grid{grid-template-columns:1fr}.case-card{min-height:0}.case-gallery img:first-child{height:230px}.case-gallery img:nth-child(2):last-child{height:175px}.case-card h3{margin-top:32px}.case-card p,.service-card p,.process-card p{font-size:16px}.case-note{grid-template-columns:1fr}.case-note p{font-size:15px}.service-hero-grid{min-height:auto;padding-block:64px;grid-template-columns:minmax(0,1fr)}.service-hero-grid>*{min-width:0;max-width:100%}.service-hero h1{font-size:clamp(36px,10.5vw,48px);line-height:1.02;letter-spacing:-.045em;hyphens:auto;overflow-wrap:break-word}.service-hero-intro{max-width:100%;font-size:16px;overflow-wrap:break-word}.service-hero .hero-actions{min-width:0;max-width:100%}.service-hero .button{min-width:0;max-width:100%;white-space:normal;text-align:center}.service-summary{width:100%}.breadcrumb>*{min-width:0}.breadcrumb span:last-child{overflow-wrap:anywhere}.service-link-band .shell{grid-template-columns:1fr 1fr;padding-block:10px}.service-link-band a{min-height:54px;border:1px solid rgba(255,255,255,.2)}.service-content-section{padding-block:78px}.service-content-grid{grid-template-columns:minmax(0,1fr);gap:48px}.service-contact-card{position:static}.service-article>section+section{margin-top:48px;padding-top:48px}.service-cta{padding-block:60px}.service-cta>.shell{grid-template-columns:1fr;gap:34px}.service-cta .hero-actions{flex-direction:column}.service-cta .button{width:100%}
  .footer-main{grid-template-columns:1fr 1fr;padding-block:55px;gap:38px}.footer-main>div:first-child{grid-column:1/-1}.footer-line{padding-block:24px 90px;flex-direction:column;justify-content:center;text-align:center}.quick-actions{display:none}
  .mobile-actions{position:fixed;z-index:50;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1fr;background:#fff;box-shadow:0 -12px 35px rgba(0,0,0,.18);padding-bottom:env(safe-area-inset-bottom)}.mobile-actions a{min-height:62px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:14px;font-weight:850}.mobile-actions a:last-child{color:#fff;background:#148c4f}
}

@media (max-width:480px) { .social-buttons{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr}.footer-main>div:first-child{grid-column:auto}.section-heading h2,.rights-intro h2,.expert-copy h2,.area-grid h2,.faq-intro h2,.contact-copy h2{font-size:38px}.contact-copy h2{font-size:40px} }
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto} *,*::before,*::after{transition-duration:.01ms!important} }
