/* footer start */

    /* footer top */
    .footer-top{
      background-color: var(--oxford-red-2);
      color: var(--light-steel-red);
    }
    .footer-top .container{
      display: grid;
      gap: 30px;
    }
    .footer-brand .logo{ color: var(--white);}
    .footer-text{
      line-height: 1.6;
      margin-block: 15px;
    }
    .schedule{
      display: flex;
      align-items: center;
      gap: 15px;
    }
    .schedule-icon,
    .footer-item .item-icon{
      background-image: var(--gradient);
      color: var(--white);
      font-size: 18px;
      padding: 11px;
      border-radius: 50%;
    }
    .schedule .span {font-size: 18px;}
    .schedule .span,
    .footer-item .item-text{ line-height: 1.6;}
    .footer-list-title{
      color: var(--white);
      font-family: var(--ff-eng);
      font-size: var(--fs-4);
      font-weight: var(--fw-700);
      margin-block-end: 10px;
    }
    .footer-link{
      display: flex;
      align-items: center;
      gap: 5px;
      padding-block: 10px;
      transition: var(--transition);
    }
    /* Ensure other contact anchors in footer (e.g. contact-link) match footer-link styles */
    .contact-link,
    .footer .contact-link {
      display: flex;
      align-items: center;
      gap: 5px;
      padding-block: 10px;
      transition: var(--transition);
      color: inherit;
    }
    .contact-link:is(:hover, :focus),
    .footer .contact-link:is(:hover, :focus) {
      color: var(--white);
    }
    .footer-link ion-icon{
      color: var(--royal-red-light);
      --ionicon-stroke-width: 50px;
    }
    .footer-link:is(:hover, :focus){ color: var(--white);}
    .footer-item{
      display: flex;
      align-items: center;
      gap: 10px;
    }
    .footer-item:not(:first-child){ 
      margin-block-start: 20px;
    }

    /* footer bottom */
    .footer-bottom {
      background-color: var(--oxford-red-2);
      padding: 40px 25px;
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      flex-wrap: wrap;
      gap: 15px;
      margin-bottom: 25px;
    }

    /* left section */
    .footer-left {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 18px; /* increased gap between icons & copyright */
    }

    /* social icons row */
    .footer-bottom .social-list {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      gap: 15px;
      padding: 0;
      margin: 0;
    }
    .footer-bottom .social-link {
      padding: 11px;
      background-color: var(--flickr-red_30);
      color: var(--white);
      font-size: 15px;
      border-radius: 50%;
      transition: all 0.3s ease;
    }
    .footer-bottom .social-link:is(:hover, :focus) {
      background-image: var(--gradient);
      transform: scale(1.1);
    }

    /* copyright text */
    .footer-bottom .copyright {
      color: var(--white);
      font-size: 1.4rem;
    }
    .footer-bottom .developer a{
      background-color: var(--oxford-red-2);
      color: var(--oxford-red-2);
      font-size: 0.9rem;
      font-family: sans-serif;
      font-weight: 300;
      text-decoration: none;
      text-align: right;
      margin-left: auto; /* this pushes it as far right as possible */
      align-self: flex-end; /* aligns with bottom of icons block */
      cursor: pointer;
    }
    .footer-bottom .developer a:hover,
    .footer-bottom .developer a:focus,
    .footer-bottom .developer a:active {
      background: transparent;
      transform: none;
      text-decoration: none;
    }

    /* responsive fix */
    @media (max-width: 768px) {
      .footer-bottom {
        flex-direction: column;
        align-items: center;
        text-align: center;
      }
      .footer-left {
        align-items: center;
      }
      .footer-bottom .developer {
        text-align: right;
        margin-left: auto;
        align-self: flex-end;
      }
    }
/* footer end */
@media (min-width: 768px) {
  .footer-bottom { flex-direction: column; align-items: center; text-align: center; }
  .footer-left { align-items: center; }
  .footer-bottom .developer { text-align: right; margin-left: auto; align-self: flex-end; }
}
@media (min-width: 992px) {
  .footer-top .container { grid-template-columns: 1fr 0.5fr 0.6fr 0.75fr; }
}
