.home-region{padding:70px 0;background:#f3f0ea;border-block:1px solid var(--line)}
.home-region-grid,.aachen-intro-grid,.aachen-digital-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1fr);gap:clamp(45px,8vw,120px);align-items:start}
.home-region h2,.aachen-page h2{margin-top:8px}
.home-region p:last-of-type{color:var(--muted);font-size:18px;line-height:1.75}
.aachen-hero{padding:58px 0 72px;background:var(--navy);color:#fff}
.aachen-hero .breadcrumb,.aachen-hero .lead{color:#d7e0e7}
.aachen-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:clamp(45px,7vw,100px);align-items:end;margin-top:42px}
.aachen-hero h1{color:#fff;font-size:clamp(42px,5vw,68px);line-height:1.02;letter-spacing:-1.5px;margin:8px 0 0}
.aachen-hero h1 em{color:var(--gold);font-style:normal}
.aachen-hero .lead{font-size:18px;line-height:1.7}
.aachen-intro,.aachen-services,.aachen-digital,.aachen-faq{padding:78px 0}
.aachen-intro p,.aachen-digital p{color:var(--muted)}
.aachen-services{background:#fff;border-block:1px solid var(--line)}
.aachen-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:34px}
.aachen-card{display:flex;flex-direction:column;min-height:240px;padding:30px;background:var(--paper);border-top:3px solid var(--gold);color:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s}
.aachen-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px #132e4915}
.aachen-card>span{font-size:12px;letter-spacing:.12em;color:var(--gold);font-weight:700}
.aachen-card h3{font-size:27px;margin:18px 0 10px}
.aachen-card p{color:var(--muted);font-size:15px}
.aachen-card strong{margin-top:auto;color:var(--navy)}
.aachen-digital{background:var(--navy);color:#fff}
.aachen-digital h2{color:#fff}.aachen-digital p{color:#d7e0e7}.aachen-digital .text-link{color:#fff}
.aachen-faq-grid{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1fr);gap:clamp(45px,8vw,110px)}
.aachen-faq-list details{border-top:1px solid var(--line);padding:20px 0}
.aachen-faq-list details:last-child{border-bottom:1px solid var(--line)}
.aachen-faq-list summary{cursor:pointer;font-family:Georgia,serif;font-size:21px;color:var(--navy)}
.aachen-faq-list details p{color:var(--muted);margin:14px 0 0}
.aachen-cta{padding:60px 0;background:#e8dfd1}
.aachen-cta .wrap{display:flex;justify-content:space-between;gap:40px;align-items:center}
.aachen-cta h2{margin:6px 0 8px}.aachen-cta p{margin:0;color:var(--muted)}
@media(max-width:820px){.home-region-grid,.aachen-hero-grid,.aachen-intro-grid,.aachen-digital-grid,.aachen-faq-grid{grid-template-columns:1fr;gap:28px}.aachen-card-grid{grid-template-columns:1fr}.aachen-hero{padding:42px 0 50px}.aachen-hero-grid{margin-top:28px}.aachen-hero h1{font-size:clamp(38px,10vw,53px)}.aachen-intro,.aachen-services,.aachen-digital,.aachen-faq,.home-region{padding:56px 0}.aachen-cta .wrap{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.aachen-card{transition:none}.aachen-card:hover{transform:none}}
