.cp-footer{
  background:var(--color-surface-secondary);
  padding:var(--space-6) 0;
  margin-top:var(--space-6);
}

.cp-footer-inner{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-5);
}

@media (min-width:768px){
  .cp-footer-inner{
    grid-template-columns:2fr 1.5fr 1fr;
    align-items:start;
  }
}

.cp-footer-brand{
  max-width:380px;
}

.cp-footer-brand p{
  margin-top:var(--space-2);
}

.cp-footer-nav ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:1fr;
  gap:var(--space-2) var(--space-4);
}

@media (min-width:600px){
  .cp-footer-nav ul{
    grid-template-columns:repeat(2, 1fr);
  }
}

.cp-footer-contact{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--space-1);
}

.cp-footer-contact p{
  margin:var(--space-1) 0 0 0;
}

.cp-footer-contact button{
  margin-top:var(--space-2);
  text-decoration:none;
}

.cp-footer-bottom{
  grid-column:1 / -1;
  width:100%;
  margin-top:var(--space-3);
  padding-top:var(--space-4);
  border-top:1px solid var(--color-border-delicate);
}

.cp-consent{
  position:fixed;
  bottom:0;
  left:0;
  right:0;
  background:var(--color-surface-bg);
  border-top:1px solid var(--color-border-delicate);
  padding:var(--space-4);
  z-index:70;
}

.cp-consent-inner{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3);
  justify-content:space-between;
  align-items:center;
}

.cp-age-modal{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.4);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:100;
}

.cp-age-modal[hidden]{display:none !important;}

.cp-age-content{
  background:var(--color-surface-bg);
  padding:var(--space-5);
  border-radius:var(--radius-md);
  max-width:420px;
  width:100%;
  text-align:center;
}

.cp-age-actions{
  display:flex;
  gap:var(--space-3);
  justify-content:center;
  margin-top:var(--space-4);
}
