:root{
  --cream:#fbf6ee;--paper:#fffdf9;--sand:#f2e5d5;--oak:#dfc29b;--amber:#c98016;
  --amber2:#e3a13d;--gold:#ad741d;--mahogany:#5b331c;--ink:#342218;--muted:#7a6759;
  --green:#2f7a3f;--line:#dfc9ad;--shadow:0 14px 38px rgba(82,47,22,.12);
  --radius:18px;--serif:Georgia,'Times New Roman',serif;--sans:Inter,Segoe UI,Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
.container{width:min(1180px,calc(100% - 36px));margin:auto}.narrow{width:min(820px,calc(100% - 36px));margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(173,116,29,.18)}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:62px;height:62px;object-fit:contain;border-radius:50%;background:#111}.brand strong{display:block;font-family:var(--serif);font-size:1.35rem;letter-spacing:.04em}.brand span{display:block;color:var(--gold);font-family:var(--serif);letter-spacing:.08em;font-size:.84rem}.nav-links{display:flex;align-items:center;gap:22px;font-size:.91rem;text-transform:uppercase;letter-spacing:.04em}.nav-links a{padding:29px 0 24px;border-bottom:3px solid transparent}.nav-links a:hover,.nav-links a.active{color:var(--amber);border-color:var(--amber)}.menu-toggle{display:none;border:0;background:none;font-size:1.6rem}.login-btn{background:var(--amber);color:#fff;padding:11px 16px;border-radius:6px;font-weight:700}
.hero{min-height:650px;position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(90deg,rgba(255,247,232,.94) 0%,rgba(255,247,232,.76) 42%,rgba(77,39,15,.18) 68%),radial-gradient(circle at 72% 50%,rgba(239,173,67,.45),transparent 22%),linear-gradient(135deg,#ead5b6,#f8ead6 45%,#b3752e 130%)}
.hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 48px,rgba(110,67,24,.025) 49px 50px),radial-gradient(circle at 83% 50%,transparent 0 120px,rgba(85,43,17,.12) 121px 126px,transparent 127px 180px);opacity:.75}
.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:42px;padding:64px 0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--gold);font-weight:700;font-size:.78rem}.hero h1,.page-hero h1,h2,h3{font-family:var(--serif);font-weight:500}.hero h1{font-size:clamp(3.4rem,7vw,6.3rem);line-height:.94;margin:12px 0 16px;letter-spacing:.03em}.hero h1 span{display:block;font-size:.56em;color:var(--gold);margin-top:12px}.lead{font-family:var(--serif);font-size:1.28rem;color:#5f422d;max-width:670px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 22px;border-radius:5px;border:1px solid var(--amber);background:var(--amber);color:white;font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:.84rem;cursor:pointer;transition:.25s}.btn:hover{transform:translateY(-2px);background:var(--amber2);box-shadow:0 8px 18px rgba(167,105,16,.2)}.btn-outline{background:transparent;color:var(--mahogany)}
.hero-art{display:grid;place-items:center;position:relative}.hero-logo{width:min(430px,86%);border-radius:50%;box-shadow:0 20px 70px rgba(67,35,14,.28);animation:float 5s ease-in-out infinite}.countdown{background:rgba(63,35,18,.88);color:#fff;padding:18px 22px;border:1px solid rgba(255,214,149,.45);border-radius:8px;text-align:center}.hero-countdown{width:max-content;max-width:100%;margin-top:22px;text-align:left}.countdown small{letter-spacing:.12em}.count-grid{display:flex;gap:18px;margin-top:8px}.count-grid b{display:block;font-family:var(--serif);font-size:1.7rem}.count-grid span{font-size:.67rem;text-transform:uppercase;color:#eadbc8}
.section{padding:78px 0}.section-alt{background:var(--paper)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.section h2{font-size:clamp(2rem,4vw,3.1rem);margin:6px 0}.section-intro{max-width:690px;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cards-two{grid-template-columns:repeat(2,1fr)}.card{background:rgba(255,253,249,.94);border:1px solid var(--line);box-shadow:var(--shadow);padding:28px;border-radius:var(--radius);transition:.3s}.card:hover{transform:translateY(-6px);box-shadow:0 18px 48px rgba(82,47,22,.17)}.card-icon{width:54px;height:54px;display:grid;place-items:center;border:1px solid #d9b77e;border-radius:50%;color:var(--amber);font-size:1.6rem}.card h3{font-size:1.55rem;margin:14px 0 8px}.meta{display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:.9rem}.places{color:var(--green);font-weight:700}
.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.photo-panel{min-height:420px;border-radius:var(--radius);background:linear-gradient(145deg,rgba(97,52,23,.1),rgba(218,155,60,.12)),url('gallery/foto-04.svg') center/cover;box-shadow:var(--shadow)}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gallery-item{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:#eee;cursor:pointer}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.45s}.gallery-item:hover img{transform:scale(1.08)}.gallery-item span{position:absolute;left:0;right:0;bottom:0;padding:28px 14px 12px;color:#fff;font-weight:700;background:linear-gradient(transparent,rgba(47,25,11,.88))}
.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.quick{background:var(--paper);padding:24px}.quick strong{font-family:var(--serif);font-size:1.25rem}.quick a{color:var(--amber);font-weight:700;font-size:.85rem}
.page-hero{padding:98px 0 72px;background:linear-gradient(135deg,#fff9f0,#ecd5b2);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(3rem,6vw,5rem);margin:8px 0}.breadcrumbs{color:var(--muted);font-size:.9rem}.content-grid{display:grid;grid-template-columns:2fr 1fr;gap:34px}.panel{background:var(--paper);border:1px solid var(--line);padding:30px;border-radius:var(--radius);box-shadow:var(--shadow)}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.product-image{height:300px;background:linear-gradient(135deg,#fbf3e7,#ead1aa);display:grid;place-items:center;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain;transition:transform .45s ease}.product-card:hover .product-image img{transform:scale(1.045)}.product-body{padding:24px}.tag{display:inline-block;background:#f7e6c9;color:#8c560d;padding:4px 9px;border-radius:999px;font-size:.75rem;font-weight:700}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-weight:700}.field input,.field select,.field textarea{padding:13px 14px;border:1px solid #d8c4a7;background:#fff;border-radius:7px}.field textarea{min-height:130px}.notice{background:#fff4dd;border-left:4px solid var(--amber);padding:16px 18px;border-radius:6px}.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.payment{background:var(--paper);border:1px solid var(--line);padding:24px;border-radius:var(--radius)}.payment img{width:150px;margin:16px auto}.data-list{display:grid;grid-template-columns:160px 1fr;gap:8px 16px}.data-list dt{font-weight:700}.data-list dd{margin:0}
.timeline{border-left:3px solid var(--oak);padding-left:28px}.timeline article{position:relative;margin-bottom:30px}.timeline article:before{content:"";position:absolute;left:-37px;top:8px;width:15px;height:15px;background:var(--amber);border-radius:50%;border:3px solid var(--cream)}
.site-footer{background:linear-gradient(rgba(51,28,14,.97),rgba(51,28,14,.97)),repeating-linear-gradient(0deg,#4b2a17 0 6px,#452615 6px 12px);color:#f5e8d6;padding:52px 0 20px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1.2fr 1fr;gap:30px}.footer-brand img{width:76px;border-radius:50%}.site-footer h3{font-family:var(--sans);font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;color:#e5b86f}.site-footer a{display:block;color:#e8d8c4;margin:6px 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.18);margin-top:34px;padding-top:18px;display:flex;justify-content:space-between;gap:16px;font-size:.82rem;color:#d4c0a7}
.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}@keyframes float{50%{transform:translateY(-10px)}}
.lightbox{position:fixed;inset:0;background:rgba(27,16,10,.9);z-index:100;display:none;place-items:center;padding:28px}.lightbox.open{display:grid}.lightbox img{max-height:86vh;border-radius:10px}.lightbox button{position:absolute;right:24px;top:18px;background:none;border:0;color:#fff;font-size:2rem}
@media(max-width:980px){.nav-links{position:fixed;left:0;right:0;top:82px;background:var(--paper);display:none;flex-direction:column;align-items:stretch;padding:18px 28px;border-bottom:1px solid var(--line)}.nav-links.open{display:flex}.nav-links a{padding:10px 0}.menu-toggle{display:block}.login-btn{display:none}.hero-inner,.split,.content-grid{grid-template-columns:1fr}.hero-art{order:-1}.hero-logo{width:260px}.hero-countdown{margin-top:18px}.cards,.cards-two,.product-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid,.quick-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.brand strong{font-size:1rem}.brand img{width:50px;height:50px}.nav{height:68px}.nav-links{top:68px}.hero{min-height:auto}.hero-inner{padding:42px 0}.hero h1{font-size:3.2rem}.cards,.cards-two,.product-grid,.gallery-grid,.quick-grid,.payment-grid,.form-grid,.footer-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.section{padding:56px 0}.section-head{align-items:start;flex-direction:column}.footer-bottom{flex-direction:column}.data-list{grid-template-columns:1fr}.hero-logo{width:220px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

.section-intro{max-width:520px;color:var(--muted);margin:0}.product-link{font-weight:700;color:var(--amber);display:inline-block;margin-top:8px}.product-card{transition:transform .3s ease,box-shadow .3s ease}.product-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(82,47,22,.18)}

/* Marken-Intro auf der Startseite */
.brand-intro{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 42%,#f7dfb6 0,#dca457 27%,#6f3b1c 70%,#2f180d 100%);color:#fff;transition:opacity .9s ease,visibility .9s ease}
.brand-intro.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.intro-content{position:relative;z-index:3;text-align:center;width:min(720px,90vw);padding:30px}.intro-logo-wrap{position:relative;width:min(300px,58vw);margin:0 auto 20px;opacity:0;transform:translateY(28px) scale(.92);animation:intro-logo-in 1.25s .25s cubic-bezier(.2,.8,.2,1) forwards}.intro-logo{width:100%;border-radius:50%;box-shadow:0 24px 80px rgba(0,0,0,.4),0 0 70px rgba(240,180,77,.35)}.intro-shine{position:absolute;inset:4%;border-radius:50%;overflow:hidden;pointer-events:none}.intro-shine:after{content:"";position:absolute;top:-25%;bottom:-25%;width:28%;left:-45%;transform:rotate(14deg);background:linear-gradient(90deg,transparent,rgba(255,247,217,.7),transparent);filter:blur(2px);animation:intro-sweep 1.35s 1.35s ease-in-out forwards}.intro-name{font-family:var(--serif);text-shadow:0 3px 20px rgba(0,0,0,.35);opacity:0;transform:translateY(15px);animation:intro-text-in .85s 1.05s ease forwards}.intro-name strong{display:block;font-size:clamp(2.1rem,6vw,4.25rem);font-weight:500;letter-spacing:.055em}.intro-name span{display:block;margin-top:4px;color:#f6c975;font-size:clamp(.9rem,2.4vw,1.35rem);letter-spacing:.34em}.intro-content p{font-family:var(--serif);font-size:clamp(1.05rem,2.5vw,1.45rem);opacity:0;transform:translateY(12px);animation:intro-text-in .85s 1.45s ease forwards}.intro-button{opacity:0;transform:translateY(12px);animation:intro-text-in .85s 1.8s ease forwards;border:1px solid rgba(255,228,176,.8);background:rgba(74,36,15,.55);color:#fff;padding:14px 24px;border-radius:4px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;cursor:pointer;backdrop-filter:blur(8px);transition:.25s}.intro-button:hover{background:#d28b24;transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.25)}.intro-mist{position:absolute;width:75vw;height:36vh;border-radius:50%;background:rgba(255,239,210,.18);filter:blur(55px);animation:mist-drift 7s ease-in-out infinite alternate}.intro-mist-one{left:-20vw;bottom:10vh}.intro-mist-two{right:-24vw;top:9vh;animation-delay:-3s}.intro-skipped{display:none!important}
@keyframes intro-logo-in{to{opacity:1;transform:none}}@keyframes intro-text-in{to{opacity:1;transform:none}}@keyframes intro-sweep{to{left:120%}}@keyframes mist-drift{to{transform:translate(14vw,-5vh) scale(1.15)}}
@media(max-width:620px){.intro-logo-wrap{width:min(230px,62vw)}.intro-name span{letter-spacing:.22em}.intro-content{padding:20px}.intro-button{width:100%;max-width:330px}}
@media(prefers-reduced-motion:reduce){.brand-intro *{animation:none!important}.intro-logo-wrap,.intro-name,.intro-content p,.intro-button{opacity:1;transform:none}}

/* Unsere Spezialitäten */
.specialty-stack{display:grid;gap:42px}.specialty-card{display:grid;grid-template-columns:minmax(300px,.9fr) 1.1fr;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:.35s}.specialty-card:hover{transform:translateY(-5px);box-shadow:0 22px 52px rgba(82,47,22,.18)}.specialty-reverse{grid-template-columns:1.1fr minmax(300px,.9fr)}.specialty-reverse .specialty-image{order:2}.specialty-image{min-height:430px;background:linear-gradient(135deg,#fffaf1,#ead1aa);display:grid;place-items:center;padding:34px}.specialty-image img{width:100%;height:360px;object-fit:contain;transition:.45s}.specialty-card:hover .specialty-image img{transform:scale(1.035)}.specialty-content{padding:46px}.specialty-content h2{font-size:clamp(2.2rem,4vw,3.5rem);margin:14px 0 10px}.specialty-lead{font-family:var(--serif);font-size:1.25rem;color:var(--mahogany)}.product-modal{position:fixed;inset:0;z-index:200;background:rgba(39,22,12,.84);display:none;place-items:center;padding:24px;backdrop-filter:blur(7px)}.product-modal.open{display:grid}.product-modal-dialog{position:relative;width:min(900px,96vw);max-height:90vh;overflow:auto;background:var(--paper);border-radius:var(--radius);box-shadow:0 30px 100px rgba(0,0,0,.35);display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;padding:34px}.product-modal-dialog>img{width:100%;height:360px;object-fit:contain;background:var(--sand);border-radius:12px}.product-modal-close{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:2.2rem;color:var(--mahogany);cursor:pointer}.product-modal .btn{margin-top:22px}@media(max-width:820px){.specialty-card,.specialty-reverse,.product-modal-dialog{grid-template-columns:1fr}.specialty-reverse .specialty-image{order:0}.specialty-image{min-height:320px}.specialty-image img,.product-modal-dialog>img{height:280px}.specialty-content{padding:30px}}


/* Vergrößerbare Produktbilder */
.product-image-zoom{position:relative;width:100%;height:100%;min-height:360px;padding:0;border:0;background:transparent;display:grid;place-items:center;cursor:zoom-in;overflow:hidden;border-radius:12px}
.product-image-zoom img{width:100%;height:360px;object-fit:contain;transition:transform .45s ease,filter .45s ease}
.product-image-zoom:hover img,.product-image-zoom:focus-visible img{transform:scale(1.06);filter:drop-shadow(0 18px 20px rgba(75,42,20,.18))}
.product-image-zoom:focus-visible{outline:3px solid var(--amber);outline-offset:4px}
.zoom-hint{position:absolute;right:16px;bottom:16px;background:rgba(51,29,16,.86);color:#fff;padding:8px 12px;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.03em;opacity:0;transform:translateY(7px);transition:.25s;pointer-events:none}
.product-image-zoom:hover .zoom-hint,.product-image-zoom:focus-visible .zoom-hint{opacity:1;transform:none}
body.lightbox-active{overflow:hidden}
.product-lightbox{cursor:zoom-out;background:rgba(24,13,7,.94);backdrop-filter:blur(8px)}
.product-lightbox.open{display:grid;animation:product-lightbox-in .22s ease-out}
.product-lightbox figure{margin:0;max-width:min(1100px,94vw);max-height:92vh;display:grid;gap:12px;place-items:center;cursor:default}
.product-lightbox img{max-width:100%;max-height:82vh;width:auto;height:auto;object-fit:contain;border-radius:12px;background:rgba(255,253,249,.97);padding:18px;box-shadow:0 28px 90px rgba(0,0,0,.48)}
.product-lightbox figcaption{color:#f4dfc3;font-family:var(--serif);font-size:1.1rem;text-align:center}
.product-lightbox .lightbox-close{z-index:2;width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(35,19,10,.7);font-size:2rem;line-height:1;cursor:pointer}
.product-lightbox .lightbox-close:hover{background:var(--amber)}
@keyframes product-lightbox-in{from{opacity:0}to{opacity:1}}
@media(max-width:820px){.product-image-zoom{min-height:280px}.product-image-zoom img{height:280px}.zoom-hint{opacity:1;transform:none}.product-lightbox img{padding:10px}}
