
:root{
  --mcc-primary:#203027;
  --mcc-accent:#B8A36F;
  --mcc-bg:#F8F5EF;
  --mcc-text:#272727;
}

.mcc-root,
.mcc-root *{box-sizing:border-box}

.mcc-banner{
  position:fixed;
  z-index:999999;
  width:min(1180px,calc(100% - 32px));
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  background:var(--mcc-bg);
  color:var(--mcc-text);
  border:1px solid rgba(32,48,39,.12);
  border-radius:18px;
  box-shadow:0 18px 60px rgba(0,0,0,.18);
  overflow:hidden;
  font-family:inherit;
}

.mcc-root[data-position="bottom-left"] .mcc-banner{
  left:18px;transform:none;width:min(760px,calc(100% - 36px));
}
.mcc-root[data-position="bottom-right"] .mcc-banner{
  left:auto;right:18px;transform:none;width:min(760px,calc(100% - 36px));
}

.mcc-brandline{
  height:5px;
  background:linear-gradient(90deg,var(--mcc-accent),#d8c99e,var(--mcc-accent));
}

.mcc-content{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:32px;
  padding:26px 28px 24px;
}

.mcc-kicker{
  display:block;
  margin-bottom:8px;
  color:var(--mcc-accent);
  font-size:11px;
  font-weight:700;
  letter-spacing:1.8px;
}

.mcc-copy h2,
.mcc-modal-panel h2{
  margin:0 0 8px;
  color:var(--mcc-primary);
  font-family:Georgia,"Times New Roman",serif;
  font-size:28px;
  line-height:1.15;
  font-weight:400;
}

.mcc-copy p,
.mcc-modal-intro,
.mcc-category p{
  margin:0;
  color:#5f625f;
  font-size:14px;
  line-height:1.6;
}

.mcc-privacy{
  display:inline-block;
  margin-top:9px;
  color:var(--mcc-primary)!important;
  font-size:12px;
  text-decoration:underline;
  text-underline-offset:3px;
}

.mcc-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(130px,1fr));
  gap:9px;
  min-width:320px;
}

.mcc-btn{
  appearance:none;
  border:1px solid transparent;
  border-radius:8px;
  padding:12px 16px;
  min-height:44px;
  font:inherit;
  font-size:12px;
  font-weight:700;
  letter-spacing:.25px;
  cursor:pointer;
  transition:.2s ease;
}

.mcc-btn-primary{
  color:#fff!important;
  background:var(--mcc-primary);
  border-color:var(--mcc-primary);
}
.mcc-btn-primary:hover{background:#17241d;border-color:#17241d}

.mcc-btn-secondary{
  color:var(--mcc-primary)!important;
  background:transparent;
  border-color:var(--mcc-primary);
}
.mcc-btn-secondary:hover{background:rgba(32,48,39,.06)}

.mcc-btn-link{
  grid-column:1/-1;
  background:transparent;
  border:none;
  min-height:auto;
  padding:6px 10px 0;
  color:var(--mcc-primary)!important;
  text-decoration:underline;
  text-underline-offset:3px;
}

.mcc-modal[hidden],
.mcc-banner[hidden],
.mcc-floating[hidden]{display:none!important}

.mcc-modal{
  position:fixed;
  inset:0;
  z-index:1000000;
  display:grid;
  place-items:center;
  padding:20px;
}

.mcc-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(15,25,20,.68);
  backdrop-filter:blur(4px);
}

.mcc-modal-panel{
  position:relative;
  width:min(700px,100%);
  max-height:calc(100vh - 40px);
  overflow:auto;
  background:var(--mcc-bg);
  border-radius:18px;
  padding:32px;
  box-shadow:0 30px 90px rgba(0,0,0,.32);
}

.mcc-close{
  position:absolute;
  top:14px;
  right:16px;
  width:38px;
  height:38px;
  border:0;
  background:transparent;
  color:var(--mcc-primary);
  font-size:30px;
  line-height:1;
  cursor:pointer;
}

.mcc-modal-intro{margin:0 0 22px}

.mcc-category{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:20px 0;
  border-top:1px solid rgba(32,48,39,.12);
}

.mcc-category h3{
  margin:0 0 5px;
  color:var(--mcc-primary);
  font-size:16px;
}

.mcc-category p{font-size:13px}

.mcc-switch-wrap{text-align:right}
.mcc-always{
  display:block;
  white-space:nowrap;
  color:var(--mcc-accent);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.6px;
}
.mcc-switch-wrap input{display:none}

.mcc-switch{
  position:relative;
  flex:0 0 auto;
  width:48px;
  height:28px;
}
.mcc-switch input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.mcc-slider{
  position:absolute;
  inset:0;
  background:#c9cbc8;
  border-radius:999px;
  cursor:pointer;
  transition:.2s ease;
}
.mcc-slider:before{
  content:"";
  position:absolute;
  width:22px;
  height:22px;
  left:3px;
  top:3px;
  background:#fff;
  border-radius:50%;
  box-shadow:0 1px 5px rgba(0,0,0,.18);
  transition:.2s ease;
}
.mcc-switch input:checked + .mcc-slider{background:var(--mcc-primary)}
.mcc-switch input:checked + .mcc-slider:before{transform:translateX(20px)}

.mcc-modal-actions{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin-top:22px;
}

.mcc-floating{
  position:fixed;
  left:18px;
  bottom:18px;
  z-index:999998;
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:50%;
  background:var(--mcc-primary);
  color:var(--mcc-accent);
  box-shadow:0 7px 22px rgba(0,0,0,.2);
  font-size:24px;
  line-height:1;
  cursor:pointer;
}

.mcc-shortcode-button{
  border:0;
  padding:0;
  background:transparent;
  color:inherit;
  text-decoration:underline;
  cursor:pointer;
}

body.mcc-modal-open{overflow:hidden}

@media(max-width:780px){
  .mcc-banner,
  .mcc-root[data-position="bottom-left"] .mcc-banner,
  .mcc-root[data-position="bottom-right"] .mcc-banner{
    width:calc(100% - 20px);
    left:10px;
    right:auto;
    bottom:10px;
    transform:none;
    border-radius:14px;
  }
  .mcc-content{
    grid-template-columns:1fr;
    gap:18px;
    padding:20px;
  }
  .mcc-copy h2,.mcc-modal-panel h2{font-size:24px}
  .mcc-actions{min-width:0;width:100%}
  .mcc-modal-panel{padding:26px 20px 20px}
  .mcc-category{align-items:flex-start}
  .mcc-modal-actions{grid-template-columns:1fr}
  .mcc-accept-modal{order:-1}
  .mcc-floating{left:12px;bottom:12px}
}

@media(max-width:420px){
  .mcc-actions{grid-template-columns:1fr}
  .mcc-btn-link{grid-column:auto}
}
