:root{--blue:#1b6cb3;--navy:#0b2742;--light:#f4f8fc;--line:#dbe6ef;--text:#14283a;--muted:#607487;--green:#18865c}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:linear-gradient(180deg,#f7fafe,#fff 38%)}header{max-width:1180px;margin:auto;padding:24px 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);color:var(--muted);font-size:14px}.logo{width:230px;height:auto;display:block}main{max-width:1120px;margin:0 auto;padding:64px 28px 90px}.hero{display:grid;grid-template-columns:1.5fr .7fr;gap:70px;align-items:end;margin-bottom:42px}.eyebrow{color:var(--blue);font-size:12px;font-weight:800;letter-spacing:1.6px;margin-bottom:14px}h1{font-size:58px;line-height:1.02;letter-spacing:-2.2px;margin:0 0 20px;color:var(--navy)}h1 span{color:var(--blue)}p{font-size:19px;line-height:1.55;color:var(--muted);max-width:760px}.trust{border-left:3px solid var(--blue);padding:8px 0 8px 24px;display:grid;gap:9px;color:var(--muted)}.trust b{color:var(--navy);font-size:18px}.card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 18px 50px rgba(20,55,85,.07);padding:34px}.steps{display:flex;gap:10px;margin-bottom:34px;flex-wrap:wrap}.steps span{font-size:13px;font-weight:700;padding:8px 13px;border-radius:999px;background:#eef4f9;color:#718395}.steps .active{background:var(--blue);color:white}label{display:block;font-size:14px;font-weight:700;margin:18px 0 9px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.service{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;text-align:left;color:var(--text);cursor:pointer}.service:hover,.service.selected,.slots button.selected{border-color:var(--blue);box-shadow:0 0 0 2px rgba(27,108,179,.12)}.service b,.service small,.service em{display:block}.service b{font-size:20px;color:var(--navy)}.service small{color:var(--blue);font-weight:700;margin:5px 0 12px}.service em{font-style:normal;color:var(--muted);line-height:1.4}input{width:100%;padding:14px 15px;border:1px solid #cddbe7;border-radius:10px;font-size:16px;background:#fff}.slots{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 24px}.slots button,form button,.actions button{border:0;border-radius:10px;background:var(--blue);color:#fff;padding:13px 18px;font-weight:700;cursor:pointer}.slots button{background:#eef5fb;color:var(--blue);border:1px solid #d5e4f1}.slots button.selected{background:var(--blue);color:white}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.check{font-weight:400;color:var(--muted);display:flex;gap:10px;align-items:flex-start}.check input{width:auto;margin-top:3px}.hidden{display:none!important}.notice{margin-top:18px;padding:12px 0;color:var(--muted)}.notice.success{color:var(--green);font-weight:700}.notice.error{color:#b3261e}.admin{max-width:900px}.admin h1{font-size:52px}.actions{display:flex;gap:10px;margin-top:14px}.actions .secondary{background:white;color:var(--blue);border:1px solid var(--line)}footer{border-top:1px solid var(--line);max-width:1180px;margin:auto;padding:32px 28px 45px;color:var(--muted);font-size:13px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.footer-logo{width:180px}.legal{margin-left:auto}a{color:var(--blue);text-decoration:none}@media(max-width:760px){header{padding:18px}.logo{width:185px}main{padding:40px 18px 60px}.hero{grid-template-columns:1fr;gap:20px}h1{font-size:42px;letter-spacing:-1.5px}p{font-size:17px}.trust{display:none}.card{padding:20px;border-radius:16px}.service-grid,.formgrid{grid-template-columns:1fr}.service{padding:18px}.legal{margin-left:0;width:100%}}

.admin-sep{border:0;border-top:1px solid var(--line);margin:28px 0 8px}.diagrow{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.diagrow label{margin:0}@media(max-width:600px){.diagrow{grid-template-columns:1fr}.diagrow button{width:100%}}

/* v1.2 – Buchungsbenachrichtigung & Spezialseiten */
.admin-note{font-size:14px;line-height:1.5;margin:4px 0 12px;color:var(--muted)}
.mailtest{border:0;border-radius:10px;background:#eef5fb;color:var(--blue);border:1px solid #d5e4f1;padding:12px 16px;font-weight:700;cursor:pointer}
.site-footer{display:block;max-width:1180px;margin:auto;padding:34px 28px 42px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}
.footer-top{display:grid;grid-template-columns:.65fr 1.35fr;gap:42px;align-items:start}
.footer-brand{display:grid;gap:7px}.footer-brand b{font-size:18px;color:var(--navy)}.footer-brand span{line-height:1.45}
.special-pages{min-width:0}.special-title{display:block;font-size:11px;font-weight:800;letter-spacing:1.35px;text-transform:uppercase;color:var(--blue);margin-bottom:12px}
.special-links{display:flex;flex-wrap:wrap;gap:8px 10px}
.special-links a{position:relative;overflow:hidden;display:inline-flex;align-items:center;min-height:36px;padding:9px 12px;border:1px solid #d9e5ef;border-radius:999px;background:#fff;color:var(--navy);font-weight:700;box-shadow:0 5px 16px rgba(20,55,85,.035);animation:specialWord 7.2s ease-in-out infinite;animation-delay:calc(var(--i) * .42s);transition:border-color .2s ease,box-shadow .2s ease,color .2s ease,transform .2s ease}
.special-links a::after{content:"";position:absolute;left:12px;right:12px;bottom:6px;height:2px;border-radius:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;opacity:.55;animation:specialUnderline 7.2s ease-in-out infinite;animation-delay:calc(var(--i) * .42s)}
.special-links a:hover{color:var(--blue);border-color:#b8d2e7;box-shadow:0 8px 20px rgba(27,108,179,.10);transform:translateY(-2px)}
.footer-bottom{display:flex;gap:16px;align-items:center;margin-top:28px;padding-top:18px;border-top:1px solid #e6eef5}.footer-bottom a{margin-left:auto}
@keyframes specialWord{0%,68%,100%{transform:translateY(0);background:#fff}7%,17%{transform:translateY(-2px);background:#f2f8fd}}
@keyframes specialUnderline{0%,68%,100%{transform:scaleX(0);opacity:0}7%,17%{transform:scaleX(1);opacity:.65}}
@media(max-width:760px){.footer-top{grid-template-columns:1fr;gap:24px}.special-links{display:grid;grid-template-columns:1fr 1fr}.special-links a{justify-content:center;text-align:center}.footer-bottom{flex-wrap:wrap}.footer-bottom a{margin-left:0}.site-footer{padding:28px 18px 34px}}
@media(max-width:460px){.special-links{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.special-links a,.special-links a::after{animation:none!important;transition:none!important}}
