/* Cowbell — essentials.css: cookie notice, quick-contact buttons, back-to-top, skip link */
.cb-skip{ position:fixed; left:12px; top:-60px; z-index:100000; background:#0b212d; color:#fff; padding:10px 16px; border-radius:10px; font:600 .9rem system-ui,sans-serif; transition:top .2s; }
.cb-skip:focus{ top:12px; }
:focus-visible{ outline:3px solid #d9a648; outline-offset:2px; }

.cb-quick{ position:fixed; right:14px; bottom:18px; z-index:900; display:flex; flex-direction:column; gap:10px; align-items:flex-end; }
.cb-quick a, .cb-top{
  width:48px; height:48px; border-radius:50%; display:flex; align-items:center; justify-content:center; border:0; cursor:pointer;
  color:#fff; box-shadow:0 10px 24px -8px rgba(0,0,0,.45); transition:transform .2s, opacity .25s;
}
.cb-quick a:hover, .cb-top:hover{ transform:translateY(-3px) scale(1.05); }
.cb-wa{ background:#25d366; }
.cb-call{ background:#a8681a; }
.cb-top{ background:#0b212d; opacity:0; pointer-events:none; width:40px; height:40px; }
.cb-top.show{ opacity:1; pointer-events:auto; }
.cb-quick svg{ width:24px; height:24px; }

.cb-cookie{
  position:fixed; left:14px; right:14px; bottom:14px; z-index:99990; max-width:640px; margin:0 auto;
  background:#fff; color:#0b212d; border:1px solid rgba(11,33,45,.12); border-radius:18px; padding:16px 18px;
  box-shadow:0 20px 50px -14px rgba(0,0,0,.4); display:none; gap:12px; flex-wrap:wrap; align-items:center;
  font:400 .86rem/1.5 system-ui,-apple-system,sans-serif;
}
.cb-cookie.show{ display:flex; animation:cbUp .4s ease; }
@keyframes cbUp{ from{ transform:translateY(20px); opacity:0; } to{ transform:none; opacity:1; } }
.cb-cookie p{ margin:0; flex:1 1 260px; color:#2f4a55; font-size:.84rem; }
.cb-cookie a{ color:#a8681a; text-decoration:underline; }
.cb-cookie .cb-btns{ display:flex; gap:8px; }
.cb-cookie button{ border-radius:100px; padding:10px 18px; font:600 .82rem system-ui,sans-serif; cursor:pointer; min-height:40px; }
.cb-accept{ background:#a8681a; color:#fff; border:0; }
.cb-decline{ background:transparent; color:#0b212d; border:1px solid rgba(11,33,45,.25); }

@media (max-width:900px){
  .cb-quick{ right:10px; bottom:14px; }
  .cb-quick a{ width:44px; height:44px; }
  body.cb-cookie-open .cb-quick{ bottom:150px; }
}
@media print{ .cb-quick, .cb-cookie, .cb-skip{ display:none !important; } }
