.rc-banner{position:fixed;bottom:40px;left:60px;right:60px;max-width:680px;margin:0 auto;background:var(--forest);color:var(--cream);padding:26px 28px 22px;border-radius:20px;box-shadow:0 30px 70px rgba(28,49,37,0.35),0 0 0 1px rgba(201,173,119,0.18);z-index:9001;display:flex;flex-direction:column;gap:14px;font-size:14px;line-height:1.55;transform:translateY(calc(100% + 80px));opacity:0;transition:transform 0.8s cubic-bezier(0.22,1,0.36,1),opacity 0.6s ease,box-shadow 0.5s ease}
.rc-banner.visible{transform:translateY(0);opacity:1}
.rc-banner:hover{box-shadow:0 35px 85px rgba(28,49,37,0.45),0 0 0 1px rgba(201,173,119,0.4),0 0 40px rgba(201,173,119,0.12);transform:translateY(-2px)}
.rc-banner-head{display:flex;align-items:flex-start;gap:14px;position:relative;padding-right:32px}
.rc-banner-icon{width:40px;height:40px;border-radius:50%;background:rgba(201,173,119,0.18);color:var(--gold-soft);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all 0.5s var(--ease)}
.rc-banner:hover .rc-banner-icon{background:rgba(201,173,119,0.28);color:var(--gold);transform:scale(1.05)}
.rc-banner-body{flex:1;min-width:0}
.rc-banner-title{font-family:'Fraunces',Georgia,serif;color:var(--gold-soft);font-size:17px;font-weight:500;margin:0 0 4px;letter-spacing:0.01em}
.rc-banner-text{font-size:13.5px;line-height:1.6;margin:0;color:var(--cream);opacity:0.95}
.rc-banner-text a{color:var(--gold-soft);text-decoration:none;border-bottom:1px solid rgba(201,173,119,0.5);padding-bottom:1px;transition:border-color 0.3s ease}
.rc-banner-text a:hover{border-bottom-color:var(--gold)}
.rc-banner-close{position:absolute;top:-6px;right:-6px;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,0.08);border:0;color:rgba(248,245,238,0.7);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.3s var(--ease)}
.rc-banner-close:hover{background:rgba(201,173,119,0.2);color:var(--gold);transform:rotate(90deg)}
.rc-banner-actions{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:6px}
.rc-btn{border:0;padding:11px 28px;border-radius:100px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;letter-spacing:0.03em;transition:all 0.4s var(--ease);position:relative;overflow:hidden}
.rc-btn::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,0.18);transform:translate(-50%,-50%);transition:width 0.5s ease,height 0.5s ease}
.rc-btn:hover::before{width:320px;height:320px}
.rc-btn-primary{background:var(--gold);color:var(--forest-ink);box-shadow:0 4px 14px rgba(168,137,72,0.28)}
.rc-btn-primary:hover{background:var(--gold-soft);transform:translateY(-2px);box-shadow:0 10px 24px rgba(168,137,72,0.45)}
.rc-blur-active main,.rc-blur-active footer,.rc-blur-active header,.rc-blur-active .topbar,.rc-blur-active nav{filter:blur(6px) brightness(0.92);transition:filter 0.5s ease;pointer-events:none}
.privacy-banner{display:none !important}
body.rc-blur-active{overflow:hidden}
.standort-map{box-shadow:0 12px 40px rgba(26,31,27,0.18),0 4px 12px rgba(26,31,27,0.10) !important;border:1px solid rgba(168,137,72,0.18) !important}
.standort-map .leaflet-container{border-radius:15px}
@media (max-width:600px){
.rc-banner{left:16px;right:16px;bottom:16px;padding:20px 22px 18px;border-radius:16px}
.rc-banner-head{padding-right:28px}
.rc-banner-icon{width:34px;height:34px}
.rc-banner-title{font-size:15px}
.rc-banner-text{font-size:12.5px}
.rc-btn{padding:11px 22px;font-size:12.5px}
}
