/* Layout refinement: existing DK palette and typography are preserved. */
/* 1. Consistent service symbols and category choices. */
.dk-icon { display:block;width:28px;height:28px;object-fit:contain;flex:0 0 auto; }
.service-icon { display:flex;align-items:center;justify-content:center;width:54px;height:54px;margin-bottom:.7rem;border:1px solid var(--border-mid);border-radius:12px;background:var(--accent-subtle); }
.service-icon .dk-icon { width:30px;height:30px; }
.hero-eyebrow .dk-icon { width:16px;height:16px; }
a[href^="tel:"] .dk-icon { width:17px;height:17px; }
.blog-card-thumb .dk-icon { width:46px;height:46px; }
.einsatz-icon .dk-icon { width:28px;height:28px; }
.topic-nav a,.request-choices a { gap:.6rem; }
.topic-nav .dk-icon,.request-choices .dk-icon { width:22px;height:22px; }
.os-signature { display:flex;align-items:center;margin:0 0 1.25rem; }
.os-logo { display:block;width:56px;height:56px;object-fit:contain; }
.repair-entry { border-left:1px solid var(--border-mid);padding:clamp(1.25rem,3vw,2rem); }
.repair-entry-links { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-top:1.4rem; }
.repair-choice { display:flex;align-items:center;gap:.9rem;min-width:0;min-height:88px;padding:1.1rem;border:1px solid var(--border-mid);border-radius:10px;background:var(--bg);font-weight:600;font-size:.9rem;line-height:1.45; }
.repair-choice:hover { border-color:var(--accent);background:var(--accent-subtle); }
.choice-icon { width:32px;height:32px;object-fit:contain;flex:0 0 auto; }
/* 2. Aligned spacing, type and content instead of nested frames. */
.page section { padding-top:clamp(3.5rem,6vw,5rem); }
#hero { padding-top:3rem; }
.hero { gap:2.5rem;align-items:start; }
.hero-title { max-width:19ch; }
.hero-subtitle { max-width:53ch; }
.hero-actions .btn { min-height:46px;line-height:1.25; }
.hero-actions .btn-lg { min-width:164px; }
.section-header { margin-bottom:1.75rem; }
.section-subtitle { max-width:66ch; }
.cards-grid { gap:1.25rem; }
.service-card { padding:1.5rem;gap:.6rem; }
.service-card .service-title { line-height:1.4;min-height:1.4em; }
.service-card .service-subline { min-height:3.1em;line-height:1.55; }
.service-list { gap:.35rem; }
.service-footer { padding-top:1rem;margin-top:auto; }
.legal-wrapper.repair-page { padding:0; }
.service-page-inner { padding:clamp(1.25rem,3vw,2.5rem); }
.service-hero-panel { gap:1.75rem;align-items:start; }
.service-hero-copy { border:0;box-shadow:none;background:transparent;padding:1rem 0; }
.repair-page .service-hero-copy { padding:1rem 0; }
.service-page .service-hero-copy h1 { font-size:clamp(1.9rem,3.4vw,2.8rem);line-height:1.16;letter-spacing:-.025em;max-width:24ch; }
.service-hero-copy .service-lead { max-width:60ch;line-height:1.75; }
.service-quick-card { padding:1.5rem; }
.service-content-grid { gap:1.25rem;margin-top:1.5rem;margin-bottom:2rem; }
.service-content-card { padding:1.5rem; }
.service-content-card h2 { font-size:1.15rem;line-height:1.4;margin-bottom:.8rem; }
.service-content-card .btn { margin-top:1rem; }
.service-checklist li { line-height:1.7; }
.service-contact-strip { margin-top:2rem;padding:1.5rem; }
.topic-nav { margin:1rem 0 1.75rem; }
.footer-links { flex-wrap:wrap;row-gap:.75rem; }
/* 3. Customer reviews: a usable slider, readable without JavaScript. */
.customer-slider { max-width:880px;margin:0 auto; }
.customer-slider-viewport { overflow-x:auto;scroll-snap-type:x mandatory;border-radius:var(--radius); }
.customer-slider-track { display:flex;align-items:stretch;gap:0; }
.customer-slider-track .review-card { flex:0 0 100%;width:100%;min-width:0;max-width:100%;scroll-snap-align:start;margin:0;padding:2rem 2.25rem;box-sizing:border-box; }
.customer-slider .review-text { white-space:pre-line;font-size:1.1rem;line-height:1.8;font-style:normal;margin:0; }
.customer-slider .review-author { margin-top:auto; }
.customer-slider .review-stars { color:#a45b00; }
body.dark-mode .customer-slider .review-stars { color:#fbbf24; }
.customer-slider.is-enhanced .customer-slider-viewport { overflow:hidden;scroll-snap-type:none; }
.customer-slider.is-enhanced .customer-slider-track { transition:transform .45s ease;align-items:stretch;height:100%; }
.customer-slider-controls { display:flex;align-items:center;justify-content:center;gap:.65rem;margin-top:1.1rem;flex-wrap:wrap; }
.customer-slider-controls[hidden] { display:none; }
.slider-arrow,.slider-pause { display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:.5rem .8rem;border:1px solid var(--border-mid);border-radius:8px;background:var(--bg-soft);color:var(--text);font:inherit;cursor:pointer; }
.slider-arrow { font-size:1.3rem; }
.slider-arrow:hover,.slider-pause:hover { border-color:var(--accent); }
.slider-dots { display:flex;gap:0; }
.slider-dot { position:relative;width:26px;height:44px;border:0;background:transparent;cursor:pointer; }
.slider-dot::after { content:'';display:block;position:absolute;left:9px;top:18px;width:8px;height:8px;border-radius:50%;background:var(--text-muted);opacity:.55; }
.slider-dot[aria-current="true"]::after { background:var(--accent);opacity:1;transform:scale(1.35); }
.slider-status { text-align:center;color:var(--text-muted);font-size:.8rem;min-height:1.4rem;margin-top:.4rem; }
.asset-credits { margin-top:2rem;border-top:1px solid var(--border);padding-top:1rem; }
@media(min-width:1101px){.nav-inner{max-width:1200px}.nav-links a{padding:.4rem .5rem;font-size:.83rem}.nav-cta{gap:.4rem}.nav-cta .btn{padding:.6rem .9rem}}
@media(max-width:1000px){.repair-entry-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 .page{padding-left:1rem;padding-right:1rem}#hero{padding-top:2rem}.hero{gap:1.5rem}
 .hero-title{font-size:clamp(1.95rem,7vw,2.5rem)}.hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.hero-actions .btn{width:100%;min-width:0;padding:.8rem .55rem;font-size:.88rem;white-space:normal}
 .repair-entry-links{gap:.6rem}.repair-choice{padding:.85rem;flex-direction:column;align-items:flex-start;gap:.65rem;min-height:126px;font-size:.86rem}.repair-entry{margin-top:1rem}
 .service-card{padding:1.3rem}.service-card .service-title,.service-card .service-subline{min-height:0}.service-icon{width:48px;height:48px}
 .legal-page:has(.service-page){padding-left:1rem;padding-right:1rem;padding-top:2rem}.service-page-inner{padding:1.2rem}.service-hero-panel{gap:1rem}.service-quick-card,.service-content-card{padding:1.2rem}.service-content-grid{gap:1rem}.service-contact-strip{padding:1.2rem}
 .customer-slider-track .review-card{padding:1.4rem}.customer-slider .review-text{font-size:1rem;line-height:1.75}.customer-slider-controls{gap:.3rem}.slider-dot{width:24px}.slider-dot::after{left:8px}.slider-pause{font-size:.85rem;padding:.5rem .6rem}
 .os-logo{width:46px;height:46px}.topic-nav{gap:.5rem}.topic-nav a{justify-content:flex-start;font-size:.82rem}
}
@media(prefers-reduced-motion:reduce){.customer-slider.is-enhanced .customer-slider-track{transition:none}}

.macbook-entry{margin-top:1.25rem!important;padding-top:1rem;border-top:1px solid var(--border)}.macbook-entry a{display:inline-flex;align-items:center;gap:.75rem;min-height:44px;font-weight:600;color:var(--accent);line-height:1.6}.macbook-entry img{flex:0 0 auto}
