/* Mabel HR cookie consent — compact, brand-matched consent UI. */
.mabel-cookie-banner,
.mabel-cookie-modal {
  font-family: var(--sans, 'Geist', -apple-system, BlinkMacSystemFont, sans-serif);
  color: #29231D;
}

.mabel-cookie-banner {
  position: fixed;
  z-index: 99990;
  left: 22px;
  bottom: 22px;
  width: min(500px, calc(100vw - 44px));
  background: #FCF6EF;
  border: 1px solid rgba(41,35,29,.14);
  border-radius: 20px;
  box-shadow: 0 18px 55px rgba(34,30,26,.16);
  padding: 24px 26px 22px;
  opacity: 0;
  transform: translateY(12px);
  transition: opacity .75s ease, transform .75s cubic-bezier(.22,1,.36,1);
}

.mabel-cookie-banner.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.mabel-cookie-banner[hidden],
.mabel-cookie-modal[hidden] { display: none !important; }

.mabel-cookie-banner__inner { display:block; }
.mabel-cookie-banner__eyebrow { display:none; }

.mabel-cookie-banner h2 {
  font-family: var(--display, 'Instrument Serif', Georgia, serif);
  font-size: 32px;
  line-height: 1;
  font-weight: 400;
  letter-spacing: -.025em;
  color: #29231D;
  margin: 0 0 12px;
}

.mabel-cookie-banner p {
  margin: 0;
  max-width: 440px;
  font-size: 14px;
  line-height: 1.55;
  color: #565148;
}

.mabel-cookie-banner a {
  display:inline-block;
  margin-top: 8px;
  color: #565148;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.mabel-cookie-actions {
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:20px;
}

.mabel-cookie-btn {
  appearance:none;
  border:1px solid #29231D;
  border-radius:999px;
  min-height:42px;
  padding:10px 15px;
  font:500 12.5px/1 var(--sans, 'Geist', sans-serif);
  cursor:pointer;
  transition:opacity .2s ease, transform .15s ease, background-color .2s ease;
  white-space:nowrap;
}

.mabel-cookie-btn:hover { opacity:.82; transform:translateY(-1px); }
.mabel-cookie-btn--primary { background:#565148; border-color:#565148; color:#FCF6EC; }
.mabel-cookie-btn--secondary { background:transparent; color:#29231D; }

/* Settings modal */
.mabel-cookie-overlay {
  position:fixed;
  inset:0;
  z-index:99994;
  background:rgba(34,30,26,.42);
  backdrop-filter:blur(4px);
}

.mabel-cookie-modal {
  position:fixed;
  z-index:99995;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:min(620px,calc(100vw - 40px));
  max-height:calc(100vh - 40px);
  overflow:auto;
  background:#FCF6EF;
  border-radius:20px;
  box-shadow:0 24px 80px rgba(34,30,26,.28);
  padding:30px;
}

.mabel-cookie-modal__eyebrow {
  font-family:var(--mono, 'Geist Mono', monospace);
  font-size:10.5px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#928C84;
  font-weight:600;
  margin-bottom:9px;
}

.mabel-cookie-modal h2 {
  font-family:var(--display, 'Instrument Serif', Georgia, serif);
  font-size:36px;
  line-height:1.04;
  letter-spacing:-.03em;
  font-weight:400;
  color:#565148;
  margin:0 0 12px;
}

.mabel-cookie-modal > p { color:#69635C; font-size:14px; line-height:1.6; margin:0 0 24px; }
.mabel-cookie-choice { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:20px; padding:19px 0; border-top:1px solid rgba(41,35,29,.14); align-items:start; }
.mabel-cookie-choice:last-of-type { border-bottom:1px solid rgba(41,35,29,.14); }
.mabel-cookie-choice h3 { font-family:var(--sans, 'Geist', sans-serif); font-size:15px; line-height:1.3; color:#29231D; margin:0 0 5px; font-weight:600; }
.mabel-cookie-choice p { font-size:13px; line-height:1.5; color:#69635C; margin:0; }
.mabel-cookie-always { font-family:var(--mono, 'Geist Mono', monospace); font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:#928C84; padding-top:3px; }
.mabel-cookie-switch { position:relative; display:inline-block; width:46px; height:26px; margin-top:1px; }
.mabel-cookie-switch input { opacity:0; width:0; height:0; }
.mabel-cookie-slider { position:absolute; cursor:pointer; inset:0; border-radius:999px; background:#C1BCB3; transition:.2s ease; }
.mabel-cookie-slider:before { content:""; position:absolute; width:20px; height:20px; left:3px; top:3px; border-radius:50%; background:#FCF6EC; box-shadow:0 1px 4px rgba(0,0,0,.14); transition:.2s ease; }
.mabel-cookie-switch input:checked + .mabel-cookie-slider { background:#000; }
.mabel-cookie-switch input:checked + .mabel-cookie-slider:before { transform:translateX(20px); }
.mabel-cookie-modal__actions { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:9px; margin-top:24px; }
.mabel-cookie-footer-button { appearance:none; background:none; border:0; padding:0; margin:0; color:inherit; opacity:.9; font:inherit; cursor:pointer; text-decoration:none; }
.mabel-cookie-footer-button:hover { opacity:.72; }

@media(max-width:760px){
  .mabel-cookie-banner {
    left:14px;
    bottom:14px;
    width:calc(100vw - 28px);
    padding:20px;
  }
  .mabel-cookie-banner h2 { font-size:29px; }
  .mabel-cookie-actions { flex-wrap:wrap; gap:8px; margin-top:18px; }
  .mabel-cookie-btn { flex:1 1 calc(50% - 4px); }
  .mabel-cookie-btn--primary { flex-basis:100%; }
  .mabel-cookie-modal { width:calc(100vw - 28px); padding:24px 20px; }
  .mabel-cookie-modal h2 { font-size:31px; }
}

@media(max-width:420px){
  .mabel-cookie-banner p { font-size:13.5px; }
  .mabel-cookie-btn { flex-basis:100%; }
}

@media(prefers-reduced-motion:reduce){
  .mabel-cookie-banner,.mabel-cookie-btn,.mabel-cookie-slider,.mabel-cookie-slider:before{transition:none}
}
