/* APEX Renovation Team — consent UI; fully namespaced, no changes to existing layout. */
.apex-cookie-notice, .apex-cookie-notice *, .apex-cookie-settings-button { box-sizing: border-box; }
.apex-cookie-notice {
  position: fixed; z-index: 2147483630; left: 20px; right: 20px; bottom: 20px;
  max-width: 780px; margin: 0 auto; color: #2E241D;
  font: 400 13px/1.55 Manrope, Arial, sans-serif;
}
.apex-cookie-shell {
  background: #FCFAF7; border: 1px solid #DBCBB7; border-radius: 20px;
  padding: 23px 26px 19px; box-shadow: 0 24px 75px rgba(34, 25, 18, .23);
}
.apex-cookie-eyebrow {
  font-size: 10px; letter-spacing: .19em; font-weight: 800; color: #80603F;
}
.apex-cookie-separator { color: #B89C79; margin: 0 5px; }
.apex-cookie-heading-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.apex-cookie-heading-row h2 {
  margin: 7px 0 3px; font: 500 32px/1.05 'Cormorant Garamond', Georgia, serif;
  letter-spacing: -.02em; color: #2E241D;
}
.apex-cookie-mark {
  display: grid; place-items: center; flex: 0 0 35px; width: 35px; height: 35px;
  border: 1px solid #C9AF8D; border-radius: 50%; font: 600 18px/1 Georgia, serif;
  color: #8A6943;
}
.apex-cookie-shell p { margin: 8px 0 18px; max-width: 660px; font-size: 12px; color: #67594F; line-height: 1.65; }
.apex-cookie-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.apex-cookie-btn {
  border: 1px solid #AE9270; border-radius: 9px; padding: 12px 16px;
  min-height: 44px; font: 700 11px/1.2 Manrope, Arial, sans-serif;
  letter-spacing: .02em; cursor: pointer; transition: background .2s, box-shadow .2s;
}
.apex-cookie-btn:focus-visible, .apex-cookie-option input:focus-visible, .apex-cookie-settings-button:focus-visible {
  outline: 3px solid #6C8DC2; outline-offset: 2px;
}
.apex-cookie-btn-accept { background: #80603F; color: #fff; border-color: #80603F; }
.apex-cookie-btn-accept:hover { background: #5F432C; }
.apex-cookie-btn-reject { background: #fff; color: #513D2C; }
.apex-cookie-btn-outline { background: transparent; color: #73563A; border-color: #D7C3AA; }
.apex-cookie-btn:hover { box-shadow: 0 3px 12px rgba(46,36,29,.13); }
.apex-cookie-footnote { margin-top: 13px; color: #75665A; font-size: 10px; line-height: 1.5; }
.apex-cookie-footnote a { color: #735334; text-decoration: underline; }
.apex-cookie-details { border-top: 1px solid #E4D8C9; margin: 15px 0; padding: 6px 0 0; }
.apex-cookie-details[hidden] { display: none !important; }
.apex-cookie-option { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:10px 0; border-bottom:1px solid #EDE7DE; cursor:pointer; }
.apex-cookie-option div { min-width: 0; }
.apex-cookie-option strong { display:block; color:#3B2C21; font-size:12px; font-weight:700; }
.apex-cookie-option span:not(.apex-cookie-required) { display:block; color:#74665C; font-size:11px; margin-top:2px; }
.apex-cookie-required { flex-shrink:0; color:#6A7957; font-size:10px; font-weight:700; }
.apex-cookie-option input { width:21px; height:21px; accent-color:#80603F; flex:0 0 auto; cursor:pointer; }
.apex-cookie-btn-save { background:#80603F; color:#fff; border-color:#80603F; margin-top:13px; }
.apex-cookie-settings-button {
  position:fixed; bottom:15px; left:15px; z-index:2147483620;
  padding:10px 13px; border:1px solid #BEA282; border-radius:50px;
  background:#FCFAF7; color:#473425; box-shadow:0 5px 16px rgba(30,22,14,.14);
  font:700 11px/1.2 Manrope,Arial,sans-serif; cursor:pointer;
}
.apex-cookie-settings-button[hidden] { display:none !important; }
@media (max-width: 700px) {
 .apex-cookie-notice { left:9px;right:9px;bottom:10px;max-height:calc(100vh - 20px);overflow-y:auto; }
 .apex-cookie-shell { padding:18px 17px 16px;border-radius:16px; }
 .apex-cookie-heading-row h2 { font-size:27px; }
 .apex-cookie-actions { display:grid;grid-template-columns:1fr 1fr;gap:8px; }
 .apex-cookie-btn { padding:11px 8px;font-size:10px; }
 .apex-cookie-btn-accept { grid-column:1 / -1;grid-row:1; }
 .apex-cookie-footnote { font-size:9.5px; }
}
@media (prefers-reduced-motion: reduce) { .apex-cookie-btn { transition:none; } }
