/* Testshop 1.0.6: Softwaregarten identity, layout API 1. */
body.dk-testshop {
 --cream:#f3f8f5; --paper:#ffffff; --ink:#243c35; --muted:#536a62;
 --red:#426c65; --red-dark:#31554e; --olive:#294b42;
 --olive-light:#e3f3ec; --line:#d6e6dd;
 --shadow-sm:0 8px 24px #294b4210; --shadow-lg:0 24px 64px #294b421c;
 --customer-mint:#8dd7bf; --customer-hover:#62acff;
 background:var(--cream);
}
.dk-testshop .site-header { background:#fffffff5; border-bottom:1px solid var(--line); }
body.dk-testshop .brand-logo { width:184px !important; max-width:184px !important; height:86px !important; object-fit:contain; filter:none; }
.dk-testshop .hero { background:#fbfdfb; }
.dk-testshop .hero::before { background:#e7f3ed; }
.dk-testshop .hero-pattern { opacity:.45; }
.dk-testshop .hero h1 { max-width:690px; }
.dk-testshop .hero-visual { box-shadow:var(--shadow-lg); }
.dk-testshop .primary-action,
.dk-testshop .header-call { background:#426c65; color:#fff !important; box-shadow:0 10px 24px #426c6526; }
.dk-testshop .primary-action:hover,
.dk-testshop .header-call:hover { background:#31554e; }
.dk-testshop .site-navigation .active > a,
.dk-testshop .site-navigation a:hover { background:#e3f3ec; color:#31554e !important; }
.dk-testshop .review-proof-icon { background:#8dd7bf; color:#243c35; }
.dk-testshop .service-strip { background:#294b42; }
.dk-testshop .site-footer { background:#294b42; }
.dk-testshop .header-info-links button { min-height:44px; }
.dk-testshop ul.KategorieNav { background:#ffffffed !important; }
.dk-testshop ul.KategorieNav a:hover,
.dk-testshop ul.KategorieNav a:focus-visible { background:#8dd7bf !important; color:#243c35 !important; }
.dk-testshop #Speisekarten_Div .gericht:hover { border-color:#8dd7bf; box-shadow:0 9px 26px #426c6512; }
.dk-testshop .dk-test-notice { display:flex; justify-content:center; align-items:center; gap:12px; padding:8px 20px; background:#e3f3ec; color:#294b42; font-size:12px; line-height:1.5; text-align:center; }
.dk-testshop .dk-test-notice strong { font-size:10px; letter-spacing:.08em; flex-shrink:0; }
.dk-testshop :focus-visible { outline:3px solid #426c65; outline-offset:4px; }
.dk-testshop .sg-garden-hero { position:relative; isolation:isolate; padding:84px 24px 64px; background:#243c35; }
.dk-testshop .sg-garden-hero::before { display:none; }
.dk-testshop .sg-garden-hero::after { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg,rgba(13,39,30,.94) 0%,rgba(13,39,30,.83) 30%,rgba(13,39,30,.22) 70%),linear-gradient(0deg,rgba(13,39,30,.7),transparent 65%); }
.dk-testshop .sg-garden-inner { max-width:1240px; min-height:610px; margin:auto; display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:68px; }
.dk-testshop .sg-garden-copy { min-width:0; position:relative; z-index:2; }
.dk-testshop .sg-garden-copy .eyebrow { color:#b7ead7; font-size:11px; letter-spacing:.1em; }
.dk-testshop .sg-garden-copy .eyebrow > span { background:#8dd7bf; }
.dk-testshop .sg-garden-copy h1 { color:#fff; font-size:clamp(48px,5.6vw,82px); line-height:1.04; margin:25px 0; text-shadow:0 3px 24px #10271d30; }
.dk-testshop .sg-garden-copy h1 em { color:#8dd7bf; font-style:normal; }
.dk-testshop .sg-garden-copy .hero-text { max-width:500px; color:#edf7f2; font-size:17px; line-height:1.8; margin-bottom:30px; }
.dk-testshop .sg-garden-hero .primary-action { background:#8dd7bf; color:#173e30 !important; box-shadow:0 10px 30px #061d1a30; }
.dk-testshop .sg-garden-hero .primary-action:hover { background:#b7ead7; }
.dk-testshop .sg-company-link { display:block; width:fit-content; margin-top:20px; color:#e7f7ef !important; font-size:13px; font-weight:700; text-decoration:underline; }
.dk-testshop .sg-garden-note { margin:24px 0 0; max-width:420px; color:#d4e7de; font-size:12px; line-height:1.6; }
.dk-testshop .sg-garden-world { display:contents; }
.dk-testshop .sg-garden-landscape { position:absolute; inset:0; z-index:0; overflow:hidden; }
body.dk-testshop .sg-garden-image { width:100%; height:100%; max-width:none; display:block; object-fit:cover; object-position:center 57%; }
.dk-testshop .sg-garden-label { position:absolute; right:max(24px,calc((100% - 1240px)/2)); top:32px; padding:8px 14px; background:#173e30eb; color:#eefbf5; font-size:11px; font-weight:750; border:1px solid #b7ead755; border-radius:20px; }
body.dk-testshop .sg-garden-bee { position:absolute; right:12%; top:34%; width:130px; height:130px; object-fit:contain; filter:drop-shadow(0 8px 8px #123a2b44); animation:sg-bee-float 4s ease-in-out 1; }
.dk-testshop .sg-garden-quest { position:relative; z-index:2; align-self:end; justify-self:end; width:100%; max-width:440px; padding:24px; border-radius:20px; border:1px solid #c5e9d866; background:#173c30f5; color:#fff; box-shadow:0 16px 48px #061d1a30; }
.dk-testshop .sg-garden-quest[hidden] { display:none; }
.dk-testshop .sg-quest-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:15px; }
.dk-testshop .sg-quest-heading > span { color:#c6e3d5; font-size:11px; white-space:nowrap; }
.dk-testshop .sg-quest-track { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin:18px 0 14px; }
.dk-testshop .sg-quest-track button { display:flex; align-items:center; justify-content:center; gap:7px; min-height:48px; padding:9px 6px; border:1px solid #a4d6bf66; border-radius:10px; background:#31594a; color:#fff; font-size:11px; font-weight:700; cursor:pointer; }
.dk-testshop .sg-quest-track button > span { font-size:10px; }
.dk-testshop .sg-quest-track button:hover { background:#426c65; border-color:#8dd7bf; }
.dk-testshop .sg-quest-track button[aria-pressed="true"] { background:#8dd7bf; color:#173e30; border-color:#8dd7bf; }
.dk-testshop .sg-quest-message { min-height:62px; margin:0; color:#e0f0e8; font-size:12px; line-height:1.7; }
.dk-testshop .sg-garden-hero :focus-visible { outline-color:#b7ead7; }
@keyframes sg-bee-float { 50% { transform:translateY(-9px) rotate(3deg); } }
@media(max-width:1100px) {
 .dk-testshop .sg-garden-inner { gap:30px; grid-template-columns:1.1fr .9fr; min-height:610px; }
 .dk-testshop .sg-garden-copy h1 { font-size:64px; }
 .dk-testshop .sg-quest-track button { flex-direction:column; gap:2px; }
 .dk-testshop .sg-garden-quest { padding:20px; }
}
@media(max-width:760px) {
 body.dk-testshop .brand-logo { width:148px !important; max-width:148px !important; height:68px !important; }
 .dk-testshop .dk-test-notice { font-size:11px; text-align:left; align-items:flex-start; padding:8px 16px; gap:9px; }
 .dk-testshop .sg-garden-hero { padding:48px 18px 30px; }
 .dk-testshop .sg-garden-hero::after { background:linear-gradient(180deg,rgba(13,39,30,.94),rgba(13,39,30,.8) 50%,rgba(13,39,30,.38)); }
 .dk-testshop .sg-garden-inner { grid-template-columns:1fr; gap:78px; min-height:0; }
 .dk-testshop .sg-garden-copy h1 { font-size:48px; }
 .dk-testshop .sg-garden-copy .hero-text { font-size:16px; }
 body.dk-testshop .sg-garden-image { object-position:62% center; }
 .dk-testshop .sg-garden-label { display:none; }
 body.dk-testshop .sg-garden-bee { right:10px; top:auto; bottom:275px; width:92px; height:92px; }
 .dk-testshop .sg-garden-quest { padding:20px 14px; max-width:none; }
 .dk-testshop .sg-quest-heading { font-size:14px; }
 .dk-testshop .sg-quest-track button { flex-direction:row; gap:5px; font-size:10px; }
}
@media(prefers-reduced-motion:reduce) {
 .dk-testshop *, .dk-testshop *::before, .dk-testshop *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
