:root{--ink:#1e2a24;--muted:#657268;--cream:#f6f1e8;--paper:#fffdf8;--gold:#b88a3b;--gold-dark:#8b6428;--wine:#7d2935;--green:#315f49;--line:#e4dccd;--shadow:0 22px 70px rgba(44,38,28,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--cream)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.alc-page{min-height:100vh}.alc-topbar{position:sticky;top:0;z-index:1000;display:flex;align-items:center;gap:28px;padding:12px clamp(18px,4vw,64px);background:rgba(255,253,248,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(184,138,59,.18)}.alc-brand{display:flex;align-items:center;gap:11px;min-width:max-content}.alc-brand img{width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid var(--line);background:#fff}.alc-brand span{display:grid;line-height:1}.alc-brand strong{font-family:"DM Serif Display",serif;font-size:22px}.alc-brand small{margin-top:5px;color:var(--gold-dark);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.alc-topbar nav{display:flex;gap:22px;margin-left:auto}.alc-topbar nav a{font-weight:800;font-size:14px;color:#425047}.alc-topbar nav a:hover{color:var(--wine)}.alc-top-cta{padding:12px 17px;border-radius:999px;background:var(--wine);color:#fff;font-weight:900;font-size:13px;white-space:nowrap}
.alc-hero{position:relative;min-height:clamp(620px,82vh,820px);display:flex;align-items:flex-end;overflow:hidden}.alc-hero-image,.alc-hero-shade{position:absolute;inset:0}.alc-hero-image{background:center/cover no-repeat;transform:scale(1.015)}.alc-hero-shade{background:linear-gradient(90deg,rgba(25,35,28,.68) 0%,rgba(25,35,28,.28) 58%,rgba(25,35,28,.08) 100%)}.alc-hero-content{position:relative;z-index:2;width:min(1180px,calc(100% - 36px));margin:0 auto;padding:100px 0 72px;color:#fff}.alc-eyebrow,.alc-kicker{text-transform:uppercase;letter-spacing:.13em;font-weight:900;font-size:12px;color:var(--gold)}.alc-hero .alc-eyebrow{color:#f2d59d}.alc-title-lockup{display:flex;align-items:center;gap:20px;max-width:850px}.alc-title-lockup img{width:112px;height:112px;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.75);box-shadow:0 18px 45px rgba(0,0,0,.24)}h1,h2{font-family:"DM Serif Display",Georgia,serif;font-weight:400;letter-spacing:-.025em}.alc-title-lockup h1{font-size:clamp(52px,8vw,96px);line-height:.93;margin:0;text-shadow:0 4px 26px rgba(0,0,0,.35)}.alc-title-lockup p{font-size:clamp(18px,2.2vw,28px);font-weight:600;max-width:720px;margin:13px 0 0;color:#fffdf6;line-height:1.35}.alc-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.alc-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:14px 22px;font-weight:900;cursor:pointer;transition:.2s transform,.2s box-shadow}.alc-btn:hover{transform:translateY(-2px)}.alc-btn-primary{background:linear-gradient(135deg,var(--wine),#a03b49);color:#fff;box-shadow:0 15px 35px rgba(125,41,53,.25)}.alc-btn-light{background:rgba(255,255,255,.93);color:var(--ink);border:1px solid rgba(255,255,255,.7)}.alc-hero-facts{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.alc-hero-facts span{padding:10px 14px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(20,28,23,.28);backdrop-filter:blur(8px);font-size:13px;font-weight:800}
.alc-intro-band,.alc-section,.alc-contact-strip{width:min(1180px,calc(100% - 36px));margin:0 auto}.alc-intro-band{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:78px 0 34px}.alc-intro-band h2,.alc-section h2,.alc-contact-strip h2{font-size:clamp(36px,5vw,58px);line-height:1.02;margin:8px 0}.alc-intro-band>p,.alc-section-head>p{font-size:17px;line-height:1.75;color:var(--muted);align-self:end}.alc-section{padding:46px 0}.alc-section-head{display:grid;grid-template-columns:1.25fr .75fr;gap:30px;align-items:end;margin-bottom:24px}.alc-section-head h2{margin-bottom:0}.alc-section-head p{margin:0}.alc-slider{position:relative;min-height:520px;border-radius:30px;overflow:hidden;background:#ddd2c1;box-shadow:var(--shadow)}.alc-slide{position:absolute;inset:0;opacity:0;transition:opacity .8s ease}.alc-slide.active{opacity:1}.alc-slide img{width:100%;height:100%;object-fit:cover}.alc-slide::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(24,32,27,.64))}.alc-slide-caption{position:absolute;z-index:2;left:24px;bottom:24px;color:#fff;font-family:"DM Serif Display",serif;font-size:28px}.alc-slider-controls{position:absolute;z-index:4;inset:auto 18px 18px auto;display:flex;align-items:center;gap:8px}.alc-slider-controls button{width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.9);color:var(--ink);font-size:22px;cursor:pointer}.alc-slider-dots{display:flex;gap:6px;padding:9px 11px;border-radius:999px;background:rgba(20,27,22,.42);backdrop-filter:blur(8px)}.alc-slider-dots button{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.55)}.alc-slider-dots button.active{width:24px;background:#fff}.alc-slider-empty{display:grid;place-items:center;height:100%;min-height:inherit;color:#6d746e;font-weight:800}
.alc-venue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.alc-venue-card{background:var(--paper);border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 14px 40px rgba(44,38,28,.08)}.alc-venue-card img{width:100%;height:220px;object-fit:cover;background:#e7dfd1}.alc-venue-card-body{padding:20px}.alc-venue-card h3{font-family:"DM Serif Display",serif;font-size:30px;margin:0 0 8px}.alc-venue-card p{color:var(--muted);line-height:1.6;margin:0}.alc-venue-capacity{display:inline-flex;margin-top:14px;padding:7px 10px;border-radius:999px;background:#edf3ee;color:var(--green);font-size:12px;font-weight:900}.alc-catering-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;align-items:stretch;padding:60px 0}.alc-catering-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:34px;border-radius:30px;background:var(--green);color:#fff}.alc-catering-copy .alc-kicker{color:#e6c685}.alc-catering-copy h2{margin:7px 0 15px}.alc-catering-copy p{line-height:1.75;color:#e7efe9;margin:0 0 24px}.alc-slider-compact{min-height:470px}
.alc-event-layout,.alc-inquiry-layout{display:grid;grid-template-columns:430px 1fr;gap:22px}.alc-calendar-card,.alc-inquiry-form,.alc-event-list{background:var(--paper);border:1px solid var(--line);border-radius:26px;padding:22px;box-shadow:0 12px 38px rgba(44,38,28,.07)}.alc-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.alc-calendar-toolbar strong{font-family:"DM Serif Display",serif;font-size:25px}.alc-calendar-toolbar button{width:42px;height:42px;border:1px solid var(--line);background:#fff;border-radius:50%;font-size:26px;cursor:pointer}.alc-weekdays,.alc-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.alc-weekdays span{text-align:center;color:var(--gold-dark);font-size:11px;font-weight:900}.alc-day{position:relative;aspect-ratio:1;border:1px solid #ece4d8;background:#fff;border-radius:13px;color:var(--ink);font-weight:900;cursor:pointer}.alc-day.muted{opacity:.22;cursor:default}.alc-day.past{opacity:.4;cursor:default}.alc-day.has-event{background:#f6e9da;border-color:#d8b778}.alc-day.has-event::after{content:"";position:absolute;bottom:7px;left:50%;width:6px;height:6px;border-radius:50%;background:var(--wine);transform:translateX(-50%)}.alc-day.busy{background:#f9e2e3;border-color:#d58d94;color:#8a2531}.alc-day.selected{background:var(--wine);border-color:var(--wine);color:#fff}.alc-day.selected::after{background:#fff}.alc-calendar-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:16px;color:var(--muted);font-size:12px;font-weight:800}.alc-calendar-legend i{display:inline-block;width:12px;height:12px;border-radius:4px;background:#f6e9da;border:1px solid #d8b778;margin-right:5px}.alc-calendar-legend i.free{background:#edf6ef;border-color:#a6c5af}.alc-calendar-legend i.busy{background:#f9e2e3;border-color:#d58d94}.alc-calendar-legend i.selected{background:var(--wine);border-color:var(--wine)}.alc-event-list{display:grid;gap:16px;align-content:start;min-height:430px}.alc-event-card{display:grid;grid-template-columns:180px 1fr;gap:18px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff}.alc-event-card img{width:100%;height:100%;min-height:220px;object-fit:cover;background:#e7dfd1}.alc-event-card-body{padding:18px 18px 18px 0}.alc-event-date{color:var(--wine);font-weight:900;font-size:13px}.alc-event-card h3{font-family:"DM Serif Display",serif;font-size:32px;margin:6px 0 9px}.alc-event-card p{color:var(--muted);line-height:1.6}.alc-event-meta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.alc-event-meta span{padding:7px 10px;border-radius:999px;background:#f2eee7;font-size:12px;font-weight:800}.alc-event-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.alc-event-empty{display:grid;place-items:center;text-align:center;color:var(--muted);min-height:330px;padding:30px}.alc-event-empty strong{font-family:"DM Serif Display",serif;font-size:30px;color:var(--ink)}
.alc-inquiry-section{padding-bottom:80px}.alc-inquiry-form{display:grid;gap:15px}.alc-inquiry-form h3{font-family:"DM Serif Display",serif;font-size:34px;margin:0}.alc-selected-info{margin:0;color:var(--wine);font-weight:800}.alc-time-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.alc-time{padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff;font-weight:900;cursor:pointer}.alc-time.busy{background:#f9e2e3;color:#9a303d;text-decoration:line-through;cursor:not-allowed}.alc-time.selected{background:var(--green);color:#fff;border-color:var(--green)}.alc-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.alc-inquiry-form label{display:grid;gap:6px;font-size:13px;font-weight:800}.alc-inquiry-form input,.alc-inquiry-form select,.alc-inquiry-form textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:13px;padding:12px;color:var(--ink)}.alc-inquiry-form fieldset{border:1px solid var(--line);border-radius:16px;padding:14px}.alc-inquiry-form legend{font-weight:900;padding:0 6px}.alc-venue-choice{display:flex;gap:9px;flex-wrap:wrap}.alc-venue-choice label,.alc-check{display:flex!important;align-items:center;gap:8px;padding:9px 11px;border-radius:12px;background:#f5f1ea}.alc-venue-choice input,.alc-check input{width:auto}.alc-form-message{min-height:20px;margin:0;color:var(--wine);font-weight:800}.alc-inquiry-form>small{color:var(--muted);line-height:1.5}.alc-contact-strip{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:45px 0 70px}.alc-contact-strip h2{margin:5px 0}.alc-contact-strip p{color:var(--muted)}
.alc-modal{position:fixed;inset:0;z-index:5000;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(24,31,27,.72);backdrop-filter:blur(8px)}.alc-modal.open{display:flex}.alc-modal-card{position:relative;width:min(720px,100%);max-height:92vh;overflow:auto;background:var(--paper);border-radius:28px;padding:26px;box-shadow:0 30px 100px rgba(0,0,0,.3)}.alc-modal-close{position:absolute;right:14px;top:14px;width:40px;height:40px;border:0;border-radius:50%;background:#eee7dc;font-size:27px;cursor:pointer}.alc-reserve-modal{display:grid;gap:14px}.alc-reserve-modal h2{font-size:42px;margin:0;padding-right:45px}.alc-reserve-modal form{display:grid;gap:12px}.alc-reserve-modal .alc-form-grid{grid-template-columns:1fr 1fr}.alc-reserve-modal input,.alc-reserve-modal select,.alc-reserve-modal textarea{width:100%;border:1px solid var(--line);border-radius:13px;padding:12px}.alc-deposit-note{padding:12px;border-radius:14px;background:#fff4df;color:#72501e;font-weight:800}.alc-price{font-size:24px;font-weight:900;color:var(--wine)}
@media(max-width:980px){.alc-topbar nav{display:none}.alc-event-layout,.alc-inquiry-layout{grid-template-columns:1fr}.alc-calendar-card{max-width:620px}.alc-catering-section{grid-template-columns:1fr}.alc-venue-grid{grid-template-columns:1fr 1fr}.alc-section-head,.alc-intro-band{grid-template-columns:1fr;gap:10px}}
@media(max-width:680px){.alc-topbar{padding:10px 14px}.alc-top-cta{display:none}.alc-brand strong{font-size:19px}.alc-hero{min-height:680px}.alc-hero-content{padding-bottom:46px}.alc-title-lockup{align-items:flex-start;gap:13px}.alc-title-lockup img{width:76px;height:76px}.alc-title-lockup h1{font-size:50px}.alc-title-lockup p{font-size:17px}.alc-hero-actions{display:grid}.alc-btn{width:100%}.alc-hero-facts{display:grid}.alc-intro-band,.alc-section,.alc-contact-strip{width:min(100% - 24px,1180px)}.alc-section{padding:36px 0}.alc-slider{min-height:360px;border-radius:22px}.alc-venue-grid{grid-template-columns:1fr}.alc-section-head h2,.alc-intro-band h2{font-size:39px}.alc-event-card{grid-template-columns:1fr}.alc-event-card img{height:240px}.alc-event-card-body{padding:0 17px 18px}.alc-form-grid,.alc-reserve-modal .alc-form-grid{grid-template-columns:1fr}.alc-time-grid{grid-template-columns:repeat(3,1fr)}.alc-calendar-card,.alc-inquiry-form,.alc-event-list{padding:15px;border-radius:20px}.alc-contact-strip{align-items:flex-start;flex-direction:column}.alc-contact-strip .alc-btn{width:auto}}

/* Phase 2: Reservierung, Online-Anzahlung und Rückmeldung */
.alc-notice{position:fixed;z-index:1200;top:88px;left:50%;transform:translate(-50%,-20px);max-width:min(720px,calc(100% - 32px));padding:14px 20px;border-radius:14px;background:#173b2c;color:#fff;font-weight:800;box-shadow:0 16px 40px rgba(0,0,0,.2);opacity:0;pointer-events:none;transition:.25s}
.alc-notice.show{opacity:1;transform:translate(-50%,0)}.alc-notice.warning{background:#8a5a11}
.alc-payment-choice{border:1px solid rgba(40,61,48,.18);border-radius:14px;padding:14px;margin:14px 0}
.alc-payment-choice legend{font-weight:800;padding:0 6px}.alc-payment-choice label{display:flex!important;align-items:center;gap:10px;border:1px solid rgba(40,61,48,.13);border-radius:12px;padding:11px;margin-top:8px;cursor:pointer}
.alc-payment-warning{border-left:4px solid #b57a22;background:#fff7e5;border-radius:10px;padding:12px;margin:14px 0;color:#664711;font-weight:700}
#eventReservationForm button[disabled]{opacity:.62;cursor:wait}
.alc-payment-page{min-height:100vh;background:#f3eee4}
.alc-payment-result-wrap{min-height:100vh;display:grid;place-items:center;padding:28px}
.alc-payment-result-card{width:min(620px,100%);background:#fff;border-radius:26px;padding:42px;text-align:center;box-shadow:0 24px 70px rgba(30,46,36,.16)}
.alc-payment-result-card>img{width:86px;height:86px;object-fit:cover;border-radius:50%;margin-bottom:14px}.alc-payment-result-card h1{font-family:"DM Serif Display",serif;font-size:clamp(2rem,6vw,3.4rem);margin:.15em 0}
.alc-payment-result-card p{font-size:1.05rem;line-height:1.65}.alc-payment-spinner{width:42px;height:42px;border:4px solid #e7dfd1;border-top-color:#8c2533;border-radius:50%;margin:24px auto;animation:alcSpin .8s linear infinite}
@keyframes alcSpin{to{transform:rotate(360deg)}}
body[data-payment-result="success"] .alc-payment-result-card{border-top:7px solid #2f7653}body[data-payment-result="cancel"] .alc-payment-result-card{border-top:7px solid #b57a22}body[data-payment-result="error"] .alc-payment-result-card{border-top:7px solid #a32231}
