/* Zentrale Mobile-Korrekturen für Landingpage, Themenseiten und Ratgeber. */
html,body{max-width:100%;overflow-x:clip}
.wrap,.hero-grid,.hero-grid>*,.grid2>*,.benefits>*,.steps>*,footer .wrap>*,.card,.prose,.cta-box,.sticky,.sticky>*{min-width:0}
.btn svg{width:20px;height:20px;flex:0 0 20px}
h1,h2,h3,p,a{overflow-wrap:break-word}
:root{--contact-gold:linear-gradient(135deg,#6d5923 0%,#88712f 58%,#776125 100%);--contact-gold-glow:rgba(185,164,95,.42)}

/* Dauerhaft sichtbarer WhatsApp-Erstkontakt. Auf Mobilgeräten sitzt er über
   der bestehenden Schnellkontaktleiste, damit sich die Bedienelemente nicht
   gegenseitig verdecken. */
.whatsapp-float{
  position:fixed;right:22px;bottom:22px;z-index:80;
  display:inline-flex;align-items:center;gap:11px;min-height:56px;overflow:hidden;
  padding:9px 18px 9px 9px;border:1px solid rgba(222,213,182,.75);
  border-radius:999px;background:var(--contact-gold);color:#fff;text-decoration:none;
  font-family:var(--sans,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
  box-shadow:0 16px 36px -14px rgba(71,57,20,.65),0 0 22px var(--contact-gold-glow),inset 0 1px 0 rgba(255,255,255,.2);
  isolation:isolate;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease
}
.whatsapp-float::before{
  content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;
  background:radial-gradient(circle at 18% 0%,rgba(222,213,182,.14),transparent 42%);
  pointer-events:none
}
.whatsapp-float::after{
  content:"";position:absolute;top:-45%;bottom:-45%;left:-42%;width:28%;z-index:-1;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
  transform:skewX(-18deg);transition:left .55s ease;pointer-events:none
}
.whatsapp-float:hover,.whatsapp-float:focus-visible{
  color:#fff;transform:translateY(-3px);border-color:#ded5b6;
  box-shadow:0 20px 42px -14px rgba(71,57,20,.75),0 0 30px rgba(185,164,95,.6),inset 0 1px 0 rgba(255,255,255,.28)
}
.whatsapp-float:hover::after,.whatsapp-float:focus-visible::after{left:116%}
.whatsapp-float:focus-visible{outline:3px solid #b9a45f;outline-offset:3px}
.whatsapp-float__icon{
  display:grid!important;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:50%;
  color:#fff;background:linear-gradient(145deg,rgba(71,57,20,.28),rgba(255,255,255,.08));
  border:1px solid rgba(244,237,215,.58);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 0 14px rgba(185,164,95,.32)
}
.whatsapp-float svg{display:block;width:25px;height:25px;flex:0 0 25px}
.whatsapp-float span{display:grid;line-height:1.08}
.whatsapp-float strong{font-size:.96rem;letter-spacing:.01em}
.whatsapp-float small{margin-top:4px;font-size:.72rem;color:#fff}

.whatsapp-form-option{
  display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:11px;
  margin:2px 0 16px;padding:12px 14px;border:1px solid #b9a45f;
  border-radius:12px;background:var(--contact-gold);color:#fff;text-decoration:none;
  box-shadow:0 10px 24px -20px rgba(71,57,20,.8),inset 0 1px 0 rgba(255,255,255,.18);transition:border-color .2s ease,background-color .2s ease,transform .2s ease,box-shadow .2s ease
}
.whatsapp-form-option:hover,.whatsapp-form-option:focus-visible{
  border-color:#ded5b6;color:#fff;transform:translateY(-1px);box-shadow:0 13px 28px -20px rgba(71,57,20,.9),0 0 20px var(--contact-gold-glow)
}
.whatsapp-form-option:focus-visible{outline:3px solid #b9a45f;outline-offset:2px}
.whatsapp-form-option svg{display:block;width:30px;height:30px;color:#fff}
.whatsapp-form-option span{display:grid;line-height:1.2}
.whatsapp-form-option strong{font-size:.94rem}
.whatsapp-form-option small{margin-top:3px;color:#fff;font-size:.8rem}
.whatsapp-form-option__arrow{display:block!important;font-size:1.2rem;font-weight:700;color:#fff}

/* Assistent für allgemeine Ablauf- und Organisationsfragen. */
.legal-bot-trigger{
  position:fixed;right:22px;bottom:92px;z-index:82;display:inline-flex;align-items:center;gap:10px;
  min-height:48px;padding:7px 15px 7px 8px;border:1px solid rgba(222,213,182,.75);border-radius:999px;
  background:var(--contact-gold);color:#fff;font-family:var(--sans,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
  text-align:left;cursor:pointer;box-shadow:0 14px 32px -16px rgba(71,57,20,.7),0 0 18px var(--contact-gold-glow),inset 0 1px 0 rgba(255,255,255,.2);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease
}
.legal-bot-trigger:hover,.legal-bot-trigger:focus-visible{
  transform:translateY(-2px);border-color:#ded5b6;box-shadow:0 18px 36px -16px rgba(71,57,20,.8),0 0 25px rgba(185,164,95,.6)
}
.legal-bot-trigger:focus-visible,.legal-bot-close:focus-visible,.legal-bot-quick button:focus-visible,.legal-bot-actions a:focus-visible{outline:3px solid #b9a45f;outline-offset:2px}
.legal-bot-trigger__icon{display:grid!important;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:rgba(71,57,20,.14);border:1px solid rgba(244,237,215,.58)}
.legal-bot-trigger__icon svg{width:20px;height:20px}
.legal-bot-trigger>span:last-child{display:grid;line-height:1.08}
.legal-bot-trigger strong{font-size:.84rem;letter-spacing:.01em}
.legal-bot-trigger small{margin-top:4px;color:#fff;font-size:.67rem}

.legal-bot-panel[hidden]{display:none!important}
.legal-bot-panel{
  position:fixed;right:22px;bottom:150px;z-index:90;display:flex;flex-direction:column;width:min(390px,calc(100vw - 28px));
  max-height:min(560px,calc(100vh - 175px));overflow:hidden;border:1px solid #b9a45f;border-radius:22px;
  background:#fafafa;color:#1b1b1b;font-family:var(--sans,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
  box-shadow:0 30px 70px -22px rgba(12,12,12,.75),0 0 28px var(--contact-gold-glow);transform-origin:bottom right;
  animation:legalBotIn .22s ease-out
}
@keyframes legalBotIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
.legal-bot-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 20px 18px;background:var(--contact-gold);color:#fff}
.legal-bot-header,.legal-bot-actions,.legal-bot-note{flex-shrink:0}
.legal-bot-header>div{display:grid;gap:5px}
.legal-bot-kicker{color:#fff;font-size:.64rem;font-weight:800;letter-spacing:.16em}
.legal-bot-header strong{font-family:var(--serif,Georgia,serif);font-size:1.22rem;line-height:1.15}
.legal-bot-close{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;margin:-4px -5px 0 0;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font:300 1.5rem/1 var(--sans,sans-serif);cursor:pointer}
.legal-bot-body{display:flex;flex:1 1 auto;flex-direction:column;gap:10px;min-height:0;padding:16px 16px 8px;overflow-y:auto;overscroll-behavior:contain}
.legal-bot-message{max-width:92%;padding:11px 13px;border-radius:15px;font-size:.84rem;line-height:1.46;box-shadow:0 7px 18px -16px rgba(20,20,20,.8)}
.legal-bot-message--assistant{align-self:flex-start;border:1px solid #e6e6e6;border-top-left-radius:5px;background:#fff;color:#2d2d2d}
.legal-bot-message--user{align-self:flex-end;border:1px solid rgba(42,42,42,.25);border-top-right-radius:5px;background:#f0f0f0;color:#232323}
.legal-bot-quick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:2px}
.legal-bot-quick button{display:flex;align-items:center;justify-content:flex-start;min-height:42px;padding:9px 11px;border:1px solid #d9d9d9;border-radius:10px;background:#fff;color:#2a2a2a;font:700 .73rem/1.18 var(--sans,sans-serif);text-align:left;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}
.legal-bot-quick button:hover{transform:translateY(-1px);border-color:#88712f;background:#f5f1e5;box-shadow:0 7px 16px -13px rgba(136,113,47,.9)}
.legal-bot-quick button.is-active{border-color:#88712f;background:var(--contact-gold);color:#fff;box-shadow:0 9px 20px -14px rgba(136,113,47,.9)}
.legal-bot-response{padding:12px 13px;border:1px solid #dbdbdb;border-left:3px solid #88712f;border-radius:11px;background:linear-gradient(135deg,#fff,#f7f7f7);box-shadow:0 9px 22px -20px rgba(22,22,22,.82)}
.legal-bot-response__label{display:block;margin-bottom:5px;color:#776125;font-size:.63rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.legal-bot-response p{margin:0;color:#2d2d2d;font-size:.82rem;line-height:1.48}
.legal-bot-actions{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:8px;padding:0 16px 10px}
.legal-bot-actions a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:8px 10px;border-radius:10px;text-decoration:none;font-size:.72rem;font-weight:800;text-align:center}
.legal-bot-whatsapp{border:1px solid #88712f;background:var(--contact-gold);color:#fff!important}
.legal-bot-whatsapp svg{width:20px;height:20px;flex:0 0 20px}
.legal-bot-contact{border:1px solid #b9a45f;background:#fff;color:#6d5923!important}
.legal-bot-actions a:hover,.legal-bot-actions a:focus-visible{box-shadow:0 0 18px var(--contact-gold-glow)}
.legal-bot-note{margin:0;padding:0 17px 15px;color:#7e7e7e;font-size:.64rem;line-height:1.4}
.legal-bot-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

@media(max-width:819px){
  .wrap{width:100%;padding-left:18px;padding-right:18px}
  .hero .wrap{padding-left:18px;padding-right:18px}
  .cta-row>.btn{width:100%;min-height:58px;padding:15px 18px;text-align:center;white-space:normal;line-height:1.25}
  .card{padding:22px 18px}
  .cta-box{padding:28px 20px}
  .cta-box .btns{display:grid;grid-template-columns:minmax(0,1fr);width:100%;gap:10px}
  .cta-box .btns>.btn{width:100%;min-height:56px;padding:13px 16px;white-space:normal;line-height:1.2}
  .sticky{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:8px;width:100%;max-width:100vw;padding:9px 10px calc(9px + env(safe-area-inset-bottom));
    overflow:hidden;align-items:stretch
  }
  .sticky .btn{
    --pad:10px 7px;min-width:0;width:100%;min-height:58px;padding:10px 7px;
    border-radius:11px;font-size:.88rem;line-height:1.12;text-align:center;white-space:normal
  }
  .sticky .btn svg{width:20px;height:20px;flex:0 0 20px}
  .sticky .btn-call{gap:7px}
  .focus-item{grid-template-columns:37px minmax(0,1fr);gap:12px;padding-left:18px;padding-right:18px}
  .focus-index{width:35px;height:35px}
  .focus-arrow{position:absolute;top:20px;right:16px}
  .focus-copy h3{padding-right:36px}
  .whatsapp-float{right:12px;bottom:calc(86px + env(safe-area-inset-bottom));min-height:52px;padding:7px 14px 7px 7px}
  .whatsapp-float__icon{width:34px;height:34px;flex-basis:34px}
  .whatsapp-float svg{width:23px;height:23px;flex-basis:23px}
  .whatsapp-float strong{font-size:.9rem}
  .whatsapp-float small{font-size:.68rem}
  .legal-bot-trigger{right:12px;bottom:calc(146px + env(safe-area-inset-bottom));min-height:46px;padding:6px 13px 6px 7px}
  .legal-bot-trigger__icon{width:32px;height:32px;flex-basis:32px}
  .legal-bot-trigger strong{font-size:.79rem}
  .legal-bot-trigger small{font-size:.63rem}
  .legal-bot-panel{right:12px;bottom:calc(202px + env(safe-area-inset-bottom));width:calc(100vw - 24px);max-height:calc(100vh - 216px);border-radius:18px}
  .legal-bot-header{padding:17px 17px 15px}
  .legal-bot-body{padding:14px 14px 7px}
  .legal-bot-actions{padding:0 14px 9px}
  .legal-bot-note{padding:0 15px 13px}
}

@media(max-width:374px){
  .wrap,.hero .wrap{padding-left:15px;padding-right:15px}
  .sticky{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;padding-left:7px;padding-right:7px}
  .sticky .btn{font-size:.81rem;padding-left:5px;padding-right:5px}
  .sticky .btn svg{width:18px;height:18px;flex-basis:18px}
  .whatsapp-float small{display:none}
  .whatsapp-float{min-height:46px;padding:8px 12px 8px 9px}
  .legal-bot-trigger small{display:none}
  .legal-bot-trigger{min-height:42px;padding-right:12px}
  .legal-bot-trigger>span:last-child{display:block}
  .legal-bot-actions{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  .whatsapp-float,.whatsapp-form-option,.legal-bot-trigger,.legal-bot-quick button{transition:none}
  .legal-bot-panel{animation:none}
}

/* Existing article callouts keep a separate heading after the template transfer. */
.tldr>strong{display:block;margin-bottom:.55rem}
.article-sources{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--line,#ddd);font-size:.9rem}
.article-sources>strong{display:block;margin-bottom:.5rem}
