/* --- Footer --- */
footer{
  color:var(--off-white);
  background:var(--brown-dark);
}


.footer-wrap{
  margin-inline:auto;
  padding: clamp(28px, 4vw, 48px) clamp(16px, 4vw, 28px);
  display:grid;
  grid-template-columns: 1fr auto; /* left content + right column */
  gap: clamp(24px, 4vw, 64px);
  align-items:end;
}


/* Left column */
.left{
  display:grid;
  grid-template-rows: auto 1fr auto; /* nav, spacer, brand row */
  min-height: 120px;
}


nav ul{
  list-style:none;
  padding:0; margin:0;
  display:flex; 
  gap: clamp(18px, 4vw, 48px);
}

nav a{ 
  color:var(--off-white); 
  text-decoration:none; 
  font-size: 1.2rem;  
  opacity:.95; 
}

.separator {
  height: 30px;
}

.brand-row{
  display:flex;
  align-items:flex-end;
  gap: clamp(10px, 3vw, 20px);
}

.year{ 
  font-size: clamp(12px, 1.4vw, 16px);
}

.brand{
  font-size: clamp(42px, 7vw, 72px);
  font-weight:700;
  margin-bottom: -15px;
  letter-spacing:.02em;
}


.rights{ 
  font-size: 1.2rem;  
}


/* Right column */
.right{
  display:grid;
  grid-auto-rows:min-content;
  row-gap: clamp(12px, 2.2vw, 20px);
  justify-items:end;
  text-align:right;
  align-content:start;
}

.policy-row{
  display:flex; gap: clamp(18px, 3vw, 48px);
  flex-wrap:wrap;
}

.right a {
  color: var(--off-white); 
  text-decoration:none; 
  font-size: 1.2rem; 
  opacity:.9;
  transition: color 0.2s ease;
}

.right a:hover {
  color: var(--blush);
}

.location{ 
  font-size: 1.2rem; 
}



@media (max-width: 952px) {
  .right a{
    font-size: 1rem;
  }
  .left a{
    font-size: 1rem;
  }
  .brand{
    font-size: 3rem;
  }
  .rights {
    font-size: .8rem;
  }
}