@font-face{font-family:Cormorant;src:url('cormorant.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:400 700}
@font-face{font-family:Lato;src:url('lato-regular.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:400}
@font-face{font-family:Lato;src:url('lato-bold.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:700}

/* Lörrach Strafrecht — editorial refinement inspired by the Freiburg portal. */
body.crime{--accent:#a72b42;--dark:#151315;--soft:#f7f5f2;--ink:#201e20;--muted:#625e60;font-family:Lato,Arial,sans-serif;color:var(--ink);font-size:16px;line-height:1.65}
.crime h1,.crime h2,.crime h3,.crime .brand strong{font-family:Cormorant,Georgia,serif;letter-spacing:-.018em}
.crime h2{font-size:clamp(2.5rem,4.1vw,4rem);line-height:1.05;font-weight:600}
.crime p,.crime li{line-height:1.7}
.crime .wrap{width:min(100% - 64px,1180px)}
.crime .site-header .wrap,.crime .hero .wrap{width:min(100% - 64px,1340px)}
.crime .site-header{background:linear-gradient(180deg,rgba(10,8,10,.83),rgba(10,8,10,0));}
.crime .header-inner{min-height:90px}
.crime .brand strong{font-size:1.55rem;font-weight:600;line-height:1}
.crime .brand span span{font-family:Lato,Arial,sans-serif;letter-spacing:.18em;color:#e4dfe0}
.crime .nav a{font-family:Lato,Arial,sans-serif;font-size:.84rem;font-weight:700;letter-spacing:.02em}
.crime .nav .nav-cta{border:1px solid rgba(255,255,255,.6);background:transparent;color:#fff;box-shadow:none;border-radius:100px;padding:11px 19px}
.crime .nav .nav-cta:hover,.crime .nav .nav-cta:focus-visible{background:#fff;color:#271a1e;text-shadow:none;box-shadow:0 0 0 4px rgba(255,255,255,.15)}

.crime .hero{min-height:740px;background:#110e10;overflow:hidden}
.crime .hero:before{background:radial-gradient(circle at 75% 42%,rgba(130,33,52,.2),transparent 35%),linear-gradient(90deg,#110e10 0%,rgba(17,14,16,.96) 42%,rgba(17,14,16,.78) 100%)}
.crime .hero-grid{min-height:740px;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:clamp(24px,3vw,60px);padding-top:128px;padding-bottom:64px}
.crime .hero-copy{position:relative;z-index:2;max-width:700px}
.crime .hero-kicker{display:flex;align-items:center;gap:12px;color:#e8aeb8;font-family:Lato,Arial,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.17em}
.crime .hero-kicker:before{content:"";width:34px;height:1px;background:#d65d72;flex:none}
.crime .hero h1{font-family:Cormorant,Georgia,serif;font-size:clamp(4rem,5vw,5.8rem);font-weight:600;line-height:.99;letter-spacing:-.035em;max-width:12ch;margin:25px 0 20px;text-wrap:balance}
.crime .hero .metallic{background:linear-gradient(115deg,#f6d3d7 5%,#e98294 45%,#bd3952 87%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.crime .hero-intro{font-family:Cormorant,Georgia,serif;font-size:clamp(1.55rem,2vw,2rem);font-weight:600;margin:0 0 14px;color:#fff}
.crime .hero .lead{font-family:Lato,Arial,sans-serif;color:#eee7e8;font-size:1rem;line-height:1.7;max-width:58ch;text-shadow:none}
.crime .hero-actions{gap:13px;margin:29px 0 20px}
.crime .btn,.crime button.btn{font-family:Lato,Arial,sans-serif;font-size:.93rem;font-weight:700;border-radius:100px;letter-spacing:.01em;min-height:52px;padding:12px 24px}
.crime .btn-primary,.crime .hero-actions .btn-primary{background:#fff;color:#8b263a;border:1.5px solid #ae3b51}
.crime .hero-actions .btn-primary,.crime .section-dark .btn-primary,.crime .inquiry-section .btn-primary,.crime .nav .nav-cta:not(:hover){background:transparent;color:#fff;border:1.5px solid #d98191}
.crime .btn-primary:hover,.crime .btn-primary:focus-visible{background:#fff0f3;color:#7b2033;border-color:#bf4d62;box-shadow:0 0 0 4px rgba(186,59,83,.13),0 13px 28px rgba(50,22,29,.12)}
.crime .hero-actions .btn-primary:hover,.crime .hero-actions .btn-primary:focus-visible,.crime .section-dark .btn-primary:hover,.crime .section-dark .btn-primary:focus-visible,.crime .inquiry-section .btn-primary:hover,.crime .inquiry-section .btn-primary:focus-visible{background:rgba(180,57,78,.18);color:#fff;border-color:#f0a8b5;box-shadow:0 0 0 4px rgba(234,139,156,.17),0 12px 28px rgba(0,0,0,.2)}
.crime .hero-actions .btn-outline{border:1px solid rgba(255,255,255,.65);background:transparent;color:#fff}
.crime .hero-actions .btn-outline:hover,.crime .hero-actions .btn-outline:focus-visible{background:#fff;color:#1d171a;box-shadow:0 0 0 4px rgba(255,255,255,.14)}
.crime .hero .small-note{font-family:Lato,Arial,sans-serif;font-size:.76rem;color:#d9ced0;line-height:1.5}
.crime .hero-scene{position:relative;isolation:isolate;align-self:stretch;min-height:550px;margin:0;overflow:hidden;border-radius:4px;border:1px solid rgba(244,226,230,.2);box-shadow:0 30px 70px rgba(0,0,0,.4);background:#2b2426}
.crime .hero-scene:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(24,18,21,.25),transparent 65%),linear-gradient(0deg,rgba(10,7,9,.8),transparent 35%);pointer-events:none}
.crime .hero-scene .castle-photo{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:34% center;filter:brightness(.72) saturate(.74)}
.crime .hero-scene .stefan-cutout{position:absolute;z-index:2;bottom:-5%;right:-7%;height:99%;width:85%;max-width:none;object-fit:contain;object-position:bottom right;filter:drop-shadow(-22px 12px 22px rgba(0,0,0,.55));transform-origin:bottom right;transition:transform .4s ease}
.crime .hero-scene:hover .stefan-cutout{transform:scale(1.025)}
.crime .hero-scene figcaption{position:absolute;z-index:3;bottom:14px;left:16px;right:15px;color:#eee;font-family:Lato,Arial,sans-serif;font-size:.67rem;line-height:1.3;text-shadow:0 1px 6px #000}

.crime .trustbar{background:#f8f6f3;border-bottom:1px solid #e5dfde}
.crime .trust-inner{padding:23px 0}
.crime .trust-inner span{font-family:Lato,Arial,sans-serif;color:#5a5053;font-size:.77rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700}
.crime .section{padding-block:clamp(76px,7vw,112px)}
.crime .eyebrow{font-family:Lato,Arial,sans-serif;font-size:.72rem;letter-spacing:.18em;color:#a02b41}
.crime .section-intro{max-width:800px}
.crime .section-intro p{font-size:1rem;max-width:66ch}
.crime .section-dark{background:#171416;color:#fff}
.crime .section-dark .eyebrow{color:#e79aa8}
.crime .service-grid{gap:13px;margin-top:38px}
.crime .service-card{min-height:245px;background:#211b1e;border:1px solid #514147;border-radius:3px;padding:29px;box-shadow:none}
.crime .service-card:hover,.crime .service-card:focus-visible{background:#30242a;border-color:#ca6a7b;transform:translateY(-5px);box-shadow:0 14px 35px rgba(0,0,0,.25)}
.crime .service-card .card-number{font-family:Lato,Arial,sans-serif;color:#e8a5af;font-size:.76rem}
.crime .service-card h3{font-family:Cormorant,Georgia,serif;font-weight:600;font-size:2rem;margin:10px 0 7px}
.crime .service-card p{font-size:.91rem;min-height:74px;line-height:1.55}
.crime .service-card .card-link{color:#f1b8c2;font-size:.82rem;letter-spacing:.01em}
.crime .portrait-section{background:#fff}
.crime .portrait-frame{border:0;border-radius:3px;background:#e4dcd8;box-shadow:24px 24px 0 #f0e7e8}
.crime .portrait-frame img{height:clamp(430px,42vw,590px)}
.crime .portrait-grid p,.crime .city-grid p,.crime .inquiry-grid p{font-size:1rem;max-width:58ch}
.crime .process-section,.crime .section-soft{background:#f7f5f2}
.crime .process-grid{gap:16px}
.crime .process-grid article{border-top:2px solid #aa3047;box-shadow:0 14px 35px rgba(40,26,30,.055)}
.crime .process-grid h3,.crime .article-grid h3{font-family:Cormorant,Georgia,serif;font-size:1.75rem;font-weight:600;line-height:1.15}
.crime .inquiry-section{background:#181417}
.crime .guided-entry{border:1px solid #e8d7db;border-top:3px solid #ae3047;border-radius:4px;box-shadow:0 25px 60px rgba(0,0,0,.2)}
.crime .guided-entry h3{font-family:Cormorant,Georgia,serif;font-size:2.1rem!important;font-weight:600}
.crime .guided-entry-label{color:#a72b42}
.crime .guided-entry li{font-size:.9rem}
.crime .guided-entry li span{background:#f7e8eb;color:#8d2639}
.crime .city-grid figure{overflow:visible}
.crime .city-grid img{border-radius:3px;height:clamp(330px,36vw,465px)}
.crime .article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.crime .article-grid a{border-radius:3px;min-height:240px;padding:29px}
.crime .article-grid span{font-family:Lato,Arial,sans-serif;font-size:.71rem;letter-spacing:.15em}
.crime .faq-list{max-width:950px}
.crime .faq-list summary{font-family:Lato,Arial,sans-serif;font-size:1rem;font-weight:700}
.crime .contact-card{border-top:3px solid #b23e54}
.crime .site-footer{background:#100e10}
.crime .footer-bottom{line-height:1.65}

/* The five-step dialogue keeps its tested behavior while gaining the calmer visual system. */
.crime .guided-dialog{font-family:Lato,Arial,sans-serif;color:#241d20;border:1px solid #e8d8dc;border-radius:9px;background:#fff;box-shadow:0 35px 90px rgba(0,0,0,.42)}
.crime .guided-dialog::backdrop{background:rgba(13,9,11,.79);backdrop-filter:blur(5px)}
.crime .guided-shell{padding:clamp(22px,4vw,42px)}
.crime .guided-head{border-bottom:1px solid #e9e0e2}
.crime .guided-kicker{font-family:Lato,Arial,sans-serif;color:#a53249;font-size:.68rem;letter-spacing:.15em}
.crime .guided-head h2{font-family:Cormorant,Georgia,serif;font-size:clamp(2rem,3.5vw,3rem);font-weight:600;letter-spacing:-.02em}
.crime .guided-pane h3,.crime .guided-done h3{font-family:Cormorant,Georgia,serif;font-size:clamp(2rem,3vw,2.6rem);font-weight:600;letter-spacing:-.02em}
.crime .guided-pane>p{font-size:.94rem;color:#625b5d}
.crime .guided-progress li{border-top:2px solid #e9dfe1}
.crime .guided-progress li.active,.crime .guided-progress li.done{border-top-color:#aa3047}
.crime .guided-progress li span{background:#f7eaed;color:#9c2940}
.crime .guided-progress li.active span{background:#aa3047;color:#fff}
.crime .guided-topics{gap:11px}
.crime .guided-topics span{font-family:Lato,Arial,sans-serif;min-height:62px;background:#fbf9f9;border:1px solid #e4d5d9;border-radius:5px;font-size:.91rem}
.crime .guided-topics input:checked+span{background:#fff1f4;border-color:#b7465d;box-shadow:inset 3px 0 #b7465d}
.crime .guided-field{font-family:Lato,Arial,sans-serif;font-size:.86rem}
.crime .guided-field input,.crime .guided-field select,.crime .guided-field textarea{font-family:Lato,Arial,sans-serif;border:1px solid #dfd2d5;border-radius:5px}
.crime .guided-field input:focus,.crime .guided-field select:focus,.crime .guided-field textarea:focus{border-color:#a72b42;box-shadow:0 0 0 3px rgba(167,43,66,.15)}
.crime .guided-actions{border-top:1px solid #e9e0e2}
.crime .guided-actions button,.crime .guided-finish{font-family:Lato,Arial,sans-serif;border-radius:100px;min-height:49px}
.crime .guided-next,.crime .guided-finish{background:#fff;color:#8b263a;border-color:#ae3b51}
.crime .guided-back{color:#4d3b40;border-color:#d5c5c9}
.crime .guided-actions button:hover,.crime .guided-actions button:focus-visible,.crime .guided-finish:hover{background:#fff0f3;color:#7b2033;border-color:#bf4d62;box-shadow:0 0 0 4px rgba(186,59,83,.12)}
.crime .guided-file{border-radius:5px}
.crime .guided-summary{border-radius:5px}
.crime .topic-dialog{font-family:Lato,Arial,sans-serif;border-radius:7px}
.crime .topic-dialog h2{font-family:Cormorant,Georgia,serif}
.crime .topic-dialog .btn-primary{background:#fff;color:#8b263a;border:1.5px solid #ae3b51}
.crime .topic-dialog .btn-primary:hover,.crime .topic-dialog .btn-primary:focus-visible{background:#fff0f3;color:#7b2033}
.crime .cookie-notice button{background:#fff;color:#8b263a;border:1.5px solid #ae3b51;border-radius:100px}
.crime .cookie-notice button:hover,.crime .cookie-notice button:focus-visible{background:#fff0f3;color:#7b2033;border-color:#bf4d62;box-shadow:0 0 0 3px rgba(186,59,83,.12)}

@media(max-width:1180px){.crime .hero h1{font-size:clamp(3.7rem,5.1vw,5.3rem)}.crime .hero-scene{min-height:500px}.crime .service-card{padding:24px}}
@media(max-width:1024px){.crime .hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:22px}.crime .hero h1{font-size:clamp(3.25rem,5.3vw,4.7rem)}.crime .hero-scene{min-height:460px}.crime .hero-scene .stefan-cutout{width:100%;right:-10%}.crime .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){.crime .wrap,.crime .site-header .wrap,.crime .hero .wrap{width:min(100% - 40px,680px)}.crime .hero-grid{grid-template-columns:1fr;gap:30px;padding-top:132px;padding-bottom:56px}.crime .hero-copy{max-width:680px}.crime .hero h1{max-width:15ch;font-size:clamp(3.5rem,8vw,5rem)}.crime .hero-scene{min-height:460px;max-height:520px}.crime .hero-scene .stefan-cutout{width:65%;right:2%;height:110%}.crime .portrait-grid,.crime .city-grid,.crime .inquiry-grid{grid-template-columns:1fr}.crime .process-grid,.crime .article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.crime .wrap,.crime .site-header .wrap,.crime .hero .wrap{width:min(100% - 34px,440px)}.crime .header-inner{min-height:0;padding-top:20px}.crime .brand strong{font-size:1.35rem}.crime .nav{gap:8px 13px}.crime .nav a{font-size:.75rem}.crime .nav .nav-cta{padding:7px 12px}.crime .hero-grid{padding-top:165px;gap:22px}.crime .hero-copy{text-align:center}.crime .hero-kicker{justify-content:center;font-size:.63rem}.crime .hero h1{font-size:clamp(3.25rem,13vw,4.1rem);margin:17px auto 13px;max-width:15ch}.crime .hero-intro{font-size:1.65rem}.crime .hero .lead{font-size:.93rem;line-height:1.62}.crime .hero-actions{justify-content:center;margin:23px 0 17px}.crime .hero-actions .btn{width:100%;min-height:49px}.crime .hero .small-note{max-width:33ch;margin:auto;font-size:.7rem}.crime .hero-scene{width:100%;min-height:360px;max-height:390px}.crime .hero-scene .castle-photo{object-position:32% center}.crime .hero-scene .stefan-cutout{width:93%;height:106%;right:-10%}.crime .hero-scene figcaption{font-size:.58rem}.crime .trust-inner{grid-template-columns:repeat(2,1fr)}.crime .trust-inner span{font-size:.64rem}.crime .section{padding-block:68px}.crime .section h2{font-size:2.65rem}.crime .section-intro,.crime .portrait-grid>div:last-child,.crime .city-grid>div:first-child,.crime .inquiry-grid>div:first-child{text-align:center}.crime .service-grid,.crime .process-grid,.crime .article-grid{grid-template-columns:1fr}.crime .service-card{min-height:auto}.crime .service-card p{min-height:auto}.crime .portrait-frame{box-shadow:12px 12px 0 #f0e7e8}.crime .portrait-frame img{height:410px}.crime .portrait-actions{justify-content:center}.crime .city-grid img{height:285px}.crime .guided-entry{text-align:center}.crime .guided-entry li{justify-content:center}.crime .guided-dialog{width:calc(100vw - 14px);max-height:calc(100dvh - 14px);border-radius:8px}.crime .guided-shell{padding:20px 16px}.crime .guided-progress li small{font-size:.59rem}.crime .guided-topics{grid-template-columns:1fr 1fr}.crime .guided-topics span{min-height:60px;padding:9px;font-size:.79rem}.crime .guided-two{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.crime *,.crime *::before,.crime *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media(max-width:560px){
  .crime .service-card,.crime .process-grid article,.crime .article-grid a{text-align:center}
  .crime .service-card .card-link{justify-content:center;gap:10px}
  .crime .portrait-actions,.crime .city-grid .btn,.crime .contact-grid{text-align:center;justify-content:center}
  .crime .contact-card{text-align:center}
  .crime .article-grid{grid-template-columns:1fr}
  .crime .article-grid a{min-height:auto}
  .crime .faq-list{max-width:100%}
  .crime .guided-head h2{font-size:2.2rem}
  .crime .guided-actions{gap:10px}
  .crime .guided-next{flex:1;max-width:190px}
}
.crime .site-network{background:#f7f4f4}
.crime .site-network-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.crime .site-network-grid>div{min-width:0;padding:26px;background:#fff;border:1px solid #e0cdd0;border-radius:10px}
.crime .site-network-grid h3{margin:0 0 12px;color:#35232a;font-size:1.15rem}
.crime .site-network-grid a{display:block;width:fit-content;max-width:100%;margin:8px 0;padding:5px 0;color:#8b263a;line-height:1.45;text-decoration-thickness:1px;text-underline-offset:4px}
.crime .site-network-grid a:hover,.crime .site-network-grid a:focus-visible{color:#5c1828;text-decoration-thickness:2px}
@media(max-width:768px){.crime .site-network-grid{grid-template-columns:1fr;max-width:560px;margin-inline:auto}.crime .site-network-grid>div{text-align:center}.crime .site-network-grid a{margin-inline:auto}}
