/* Patch 66: Live Chat + Cookie Consent */
.siw-chat-launch{position:fixed;z-index:9997;bottom:22px;right:22px;border:0;border-radius:999px;background:#08783e;color:#fff;padding:13px 17px;font-weight:900;box-shadow:0 12px 35px rgba(0,0,0,.18);cursor:pointer}.siw-chat-launch.left{left:22px;right:auto}.siw-chat-panel{position:fixed;z-index:9998;bottom:78px;right:22px;width:min(380px,calc(100vw - 30px));height:520px;max-height:70vh;background:#fff;border:1px solid #d9e4de;border-radius:18px;box-shadow:0 20px 55px rgba(0,0,0,.22);display:none;overflow:hidden}.siw-chat-panel.left{left:22px;right:auto}.siw-chat-panel.open{display:flex;flex-direction:column}.siw-chat-head{padding:14px 16px;background:#063f2b;color:#fff;display:flex;justify-content:space-between;align-items:center}.siw-chat-head b{font-size:14px}.siw-chat-head button{border:0;background:transparent;color:#fff;font-size:20px;cursor:pointer}.siw-chat-start{padding:18px;display:grid;gap:10px}.siw-chat-start p{font-size:13px;line-height:1.5;color:#647269}.siw-chat-start input,.siw-chat-compose textarea{width:100%;box-sizing:border-box;border:1px solid #d8e3dc;border-radius:9px;padding:10px}.siw-chat-start button,.siw-chat-compose button{border:0;border-radius:9px;background:#ffb606;color:#24301f;padding:10px 12px;font-weight:900;cursor:pointer}.siw-chat-body{display:none;flex:1;min-height:0}.siw-chat-body.active{display:flex;flex-direction:column}.siw-chat-messages{flex:1;overflow:auto;padding:13px;display:flex;flex-direction:column;gap:7px}.siw-chat-msg{max-width:80%;background:#edf2ef;padding:9px 11px;border-radius:12px;font-size:12px;line-height:1.45}.siw-chat-msg.visitor{align-self:flex-end;background:#08783e;color:#fff}.siw-chat-msg small{display:block;font-size:9px;opacity:.65;margin-top:3px}.siw-chat-compose{display:flex;gap:7px;padding:10px;border-top:1px solid #e5ece8}.siw-chat-compose textarea{resize:none;height:52px}.siw-chat-compose button{align-self:stretch}.siw-chat-error{padding:7px 12px;color:#a33;font-size:11px}
.siw-cookie-banner{position:fixed;z-index:9999;left:18px;right:18px;bottom:18px;max-width:1050px;margin:auto;background:#fff;border:1px solid #d9e4de;border-radius:16px;box-shadow:0 18px 55px rgba(0,0,0,.2);padding:18px;display:none}.siw-cookie-banner.show{display:block}.siw-cookie-grid{display:flex;gap:18px;justify-content:space-between;align-items:center}.siw-cookie-copy{max-width:650px}.siw-cookie-copy b{font-size:15px}.siw-cookie-copy p{font-size:12px;line-height:1.55;color:#607067;margin:5px 0}.siw-cookie-copy a{font-size:11px;color:#08783e;font-weight:800}.siw-cookie-actions{display:flex;gap:7px;flex-wrap:wrap}.siw-cookie-actions button,.siw-cookie-settings-btn{border:1px solid #d3dfd7;background:#fff;border-radius:9px;padding:9px 11px;font-size:11px;font-weight:800;cursor:pointer}.siw-cookie-actions button.primary{background:#08783e;border-color:#08783e;color:#fff}.siw-cookie-custom{display:none;margin-top:13px;padding-top:12px;border-top:1px solid #e4ebe7}.siw-cookie-custom.open{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.siw-cookie-custom label{font-size:11px}.siw-cookie-settings-btn{position:fixed;z-index:9996;bottom:18px;left:18px;padding:7px 9px;font-size:9px;background:#fff;box-shadow:0 7px 20px rgba(0,0,0,.12);display:none}.siw-cookie-settings-btn.show{display:block}
@media(max-width:700px){.siw-cookie-grid{display:block}.siw-cookie-actions{margin-top:12px}.siw-chat-panel{bottom:70px;right:15px;left:15px!important;width:auto}.siw-chat-launch{right:15px;bottom:15px}.siw-chat-launch.left{left:15px}.siw-cookie-banner{left:10px;right:10px;bottom:10px}.siw-cookie-settings-btn{left:10px}}

/* Patch 68 UI refinement */
.siw-chat-launch{
  background:linear-gradient(135deg,#08783e,#056633)!important;
  color:#fff!important;
  border:2px solid #ffb606!important;
  box-shadow:0 14px 38px rgba(6,63,43,.30)!important;
  transition:transform .18s ease,box-shadow .18s ease;
}
.siw-chat-launch:hover{transform:translateY(-2px);box-shadow:0 17px 42px rgba(6,63,43,.38)!important}
.siw-chat-start button,.siw-chat-compose button{
  background:linear-gradient(135deg,#ffb606,#f2c94c)!important;
  color:#173221!important;
  border:1px solid #e5a900!important;
  box-shadow:0 6px 16px rgba(255,182,6,.22);
}
.siw-chat-start button:hover,.siw-chat-compose button:hover{filter:brightness(.97);transform:translateY(-1px)}
.siw-cookie-actions button{
  background:#f4f8f5!important;
  color:#173221!important;
  border:1px solid #bfd0c5!important;
}
.siw-cookie-actions button:hover{background:#e9f3ec!important;border-color:#8db79b!important}
.siw-cookie-actions button.primary{
  background:linear-gradient(135deg,#08783e,#056633)!important;
  color:#fff!important;
  border-color:#08783e!important;
  box-shadow:0 6px 18px rgba(8,120,62,.22);
}
.siw-cookie-custom button[data-cookie="save"]{
  background:#ffb606!important;
  color:#173221!important;
  border:1px solid #e1a400!important;
  border-radius:9px;
  padding:9px 12px;
  font-weight:900;
  cursor:pointer;
}
.siw-cookie-settings-btn{
  background:#063f2b!important;
  color:#fff!important;
  border:1px solid #ffb606!important;
}
.siw-cookie-banner{border-top:4px solid #08783e!important}
.siw-chat-panel{border-top:4px solid #ffb606!important}

/* Patch 70 — compact privacy/cookie card */
.siw-cookie-banner{
  left:18px!important;
  right:auto!important;
  bottom:18px!important;
  width:min(390px,calc(100vw - 28px))!important;
  max-width:none!important;
  margin:0!important;
  padding:17px!important;
  border:1px solid #d8e4dc!important;
  border-top:0!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 20px 60px rgba(6,63,43,.20)!important;
  backdrop-filter:blur(10px);
}
.siw-cookie-banner::before{
  content:"";
  position:absolute;
  left:0;top:0;right:0;
  height:4px;
  border-radius:18px 18px 0 0;
  background:linear-gradient(90deg,#08783e,#ffb606);
}
.siw-cookie-top{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}
.siw-cookie-icon{
  width:34px;height:34px;
  display:grid;place-items:center;
  flex:0 0 34px;
  border-radius:10px;
  background:#edf8f1;
  color:#08783e;
  font-size:14px;
  border:1px solid #cfe2d6;
}
.siw-cookie-heading{display:flex;flex-direction:column;line-height:1.2}
.siw-cookie-heading strong{font-size:15px;color:#183225}
.siw-cookie-heading span{font-size:9px;color:#7b8a80;margin-top:3px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.siw-cookie-short{
  margin:0 0 9px!important;
  color:#5d6c63!important;
  font-size:11.5px!important;
  line-height:1.55!important;
}
.siw-cookie-links{
  display:flex;
  gap:6px;
  align-items:center;
  margin-bottom:13px;
  font-size:10px;
}
.siw-cookie-links a{
  color:#08783e!important;
  text-decoration:none;
  font-weight:800;
}
.siw-cookie-links a:hover{text-decoration:underline}
.siw-cookie-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr 1.15fr;
  gap:7px!important;
  margin:0!important;
}
.siw-cookie-btn{
  min-height:38px;
  border-radius:10px!important;
  padding:8px 9px!important;
  font-size:10px!important;
  font-weight:900!important;
  cursor:pointer;
  transition:.16s ease;
}
.siw-cookie-btn.subtle{
  background:#f5f8f6!important;
  color:#405148!important;
  border:1px solid #d5e0d9!important;
}
.siw-cookie-btn.subtle:hover{
  background:#edf4ef!important;
  border-color:#b8cdbf!important;
}
.siw-cookie-btn.primary{
  background:linear-gradient(135deg,#08783e,#056633)!important;
  color:#fff!important;
  border:1px solid #08783e!important;
  box-shadow:0 7px 18px rgba(8,120,62,.17);
}
.siw-cookie-custom{
  display:none!important;
  margin-top:13px!important;
  padding-top:13px!important;
  border-top:1px solid #e4ebe7!important;
  gap:8px!important;
  flex-direction:column!important;
  align-items:stretch!important;
}
.siw-cookie-custom.open{display:flex!important}
.siw-cookie-pref{
  display:flex!important;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:10px 11px;
  margin:0!important;
  background:#f8faf9;
  border:1px solid #e2e9e5;
  border-radius:10px;
}
.siw-cookie-pref span:first-child{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.siw-cookie-pref b{font-size:10.5px;color:#27382f}
.siw-cookie-pref small{
  display:block;
  color:#738078;
  font-size:8.5px;
  line-height:1.4;
  margin-top:2px;
}
.siw-cookie-pref input[type=checkbox]{
  width:18px;
  height:18px;
  accent-color:#08783e;
  flex:0 0 auto;
}
.siw-cookie-always{
  background:#e7f5ec;
  color:#08783e;
  border-radius:999px;
  padding:5px 7px;
  font-size:8px;
  font-weight:900;
  white-space:nowrap;
}
.siw-cookie-save{
  width:100%;
  min-height:39px;
  border:1px solid #e1a400!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,#ffb606,#f0c33f)!important;
  color:#24321f!important;
  font-size:10px!important;
  font-weight:900!important;
  cursor:pointer;
}
.siw-cookie-settings-btn{
  bottom:12px!important;
  left:12px!important;
  border-radius:999px!important;
  padding:6px 9px!important;
  font-size:8px!important;
  background:#063f2b!important;
  color:#fff!important;
  border:1px solid #ffb606!important;
  opacity:.92;
}
@media(max-width:520px){
  .siw-cookie-banner{
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    width:auto!important;
  }
  .siw-cookie-actions{grid-template-columns:1fr 1fr!important}
  .siw-cookie-btn.primary{grid-column:1/-1}
}

/* Patch 75 — rebuilt cookie/privacy popup to match current markup */
.siw-cookie-banner{
  position:fixed!important;
  z-index:9999!important;
  left:18px!important;
  right:auto!important;
  bottom:18px!important;
  width:min(430px,calc(100vw - 36px))!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #dbe7df!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 20px 55px rgba(15,54,35,.18)!important;
  backdrop-filter:none!important;
}
.siw-cookie-banner::before{
  content:""!important;
  position:absolute!important;
  inset:0 auto auto 0!important;
  width:100%!important;
  height:4px!important;
  border-radius:0!important;
  background:linear-gradient(90deg,#08783e 0 72%,#d9a514 72% 100%)!important;
}
.siw-cookie-header{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:20px 20px 8px!important;
  margin:0!important;
}
.siw-cookie-logo{
  display:grid!important;
  place-items:center!important;
  flex:0 0 38px!important;
  width:38px!important;
  height:38px!important;
  border:1px solid #cfe2d6!important;
  border-radius:11px!important;
  background:#edf8f1!important;
  color:#08783e!important;
  font-size:15px!important;
  line-height:1!important;
}
.siw-cookie-header h3{
  margin:0!important;
  color:#183225!important;
  font-size:18px!important;
  line-height:1.2!important;
  font-weight:850!important;
  letter-spacing:-.015em!important;
}
.siw-cookie-header span{
  display:block!important;
  margin-top:3px!important;
  color:#839087!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:.04em!important;
}
.siw-cookie-message{
  margin:0!important;
  padding:4px 20px 10px!important;
  color:#5e6d64!important;
  font-size:13.5px!important;
  line-height:1.6!important;
}
.siw-cookie-policy-links{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px 14px!important;
  padding:0 20px 16px!important;
  margin:0!important;
}
.siw-cookie-policy-links a{
  color:#08783e!important;
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.siw-cookie-policy-links a:hover{text-decoration:underline!important}
.siw-cookie-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:9px!important;
  padding:0 20px 20px!important;
  margin:0!important;
}
.siw-cookie-action{
  min-height:43px!important;
  padding:10px 13px!important;
  border-radius:11px!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:850!important;
  cursor:pointer!important;
  transition:transform .15s ease,background .15s ease,border-color .15s ease!important;
}
.siw-cookie-action:hover{transform:translateY(-1px)!important}
.siw-cookie-action.secondary,
.siw-cookie-action.manage{
  border:1px solid #d3dfd7!important;
  background:#f7faf8!important;
  color:#31473b!important;
  box-shadow:none!important;
}
.siw-cookie-action.manage{background:#fff!important}
.siw-cookie-action.primary{
  grid-column:1/-1!important;
  border:1px solid #08783e!important;
  background:#08783e!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(8,120,62,.16)!important;
}
.siw-cookie-custom{
  display:none!important;
  flex-direction:column!important;
  gap:9px!important;
  margin:0!important;
  padding:16px 20px 20px!important;
  border-top:1px solid #e6ede9!important;
  background:#fbfcfb!important;
}
.siw-cookie-custom.open{display:flex!important}
.siw-cookie-pref{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:0!important;
  padding:12px 13px!important;
  border:1px solid #e1e9e4!important;
  border-radius:12px!important;
  background:#fff!important;
}
.siw-cookie-pref>div{min-width:0!important}
.siw-cookie-pref strong{
  display:block!important;
  color:#24372d!important;
  font-size:13px!important;
  line-height:1.3!important;
  font-weight:850!important;
}
.siw-cookie-pref p{
  margin:3px 0 0!important;
  color:#748178!important;
  font-size:11.5px!important;
  line-height:1.45!important;
}
.siw-cookie-pref input[type=checkbox]{
  flex:0 0 auto!important;
  width:20px!important;
  height:20px!important;
  accent-color:#08783e!important;
}
.siw-cookie-required{
  flex:0 0 auto!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  background:#e8f5ed!important;
  color:#08783e!important;
  font-size:10px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.siw-cookie-save{
  min-height:43px!important;
  width:100%!important;
  border:1px solid #d2a00e!important;
  border-radius:11px!important;
  background:#e7b62d!important;
  color:#26301f!important;
  font-size:13px!important;
  font-weight:900!important;
  cursor:pointer!important;
}
.siw-cookie-settings-btn{
  position:fixed!important;
  z-index:9996!important;
  left:14px!important;
  bottom:14px!important;
  display:none;
  padding:8px 11px!important;
  border:1px solid #d5dfd8!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#315043!important;
  box-shadow:0 8px 22px rgba(20,56,37,.12)!important;
  font-size:10.5px!important;
  font-weight:800!important;
  opacity:.96!important;
}
.siw-cookie-settings-btn.show{display:block!important}
@media(max-width:520px){
  .siw-cookie-banner{
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    width:auto!important;
  }
  .siw-cookie-header{padding:18px 16px 7px!important}
  .siw-cookie-message{padding:4px 16px 9px!important;font-size:13px!important}
  .siw-cookie-policy-links{padding:0 16px 14px!important}
  .siw-cookie-actions{padding:0 16px 16px!important}
  .siw-cookie-custom{padding:14px 16px 16px!important}
}
/* Patch 75 specificity guards against legacy !important button rules. */
.siw-cookie-actions button.siw-cookie-action.primary{
  grid-column:1/-1!important;
  border-color:#08783e!important;
  background:#08783e!important;
  color:#fff!important;
}
.siw-cookie-actions button.siw-cookie-action.secondary,
.siw-cookie-actions button.siw-cookie-action.manage{
  border-color:#d3dfd7!important;
  background:#f7faf8!important;
  color:#31473b!important;
  box-shadow:none!important;
}
.siw-cookie-actions button.siw-cookie-action.manage{background:#fff!important}
.siw-cookie-custom button.siw-cookie-save[data-cookie="save"]{
  min-height:43px!important;
  width:100%!important;
  border:1px solid #d2a00e!important;
  border-radius:11px!important;
  background:#e7b62d!important;
  color:#26301f!important;
  font-size:13px!important;
  font-weight:900!important;
  padding:10px 13px!important;
}
