/*
 * Universal Plywood — Footer Figma alignment v2
 * Theme v1.1.56
 *
 * Desktop geometry is matched to the designer reference:
 * - compact ~748px desktop footer composition
 * - 160px brand mark
 * - contact/menu block pushed to the designer's right-hand column
 * - newsletter input + submit share one row
 * - divider and bottom legal/social row use the wider Figma span
 *
 * Existing tablet/mobile footer layouts remain independent below 1201px.
 */

@media (min-width:1201px){
  html body .up-site-footer--figma{
    padding:112px 0 0!important;
    min-height:748px!important;
  }

  html body .up-site-footer--figma .up-footer-figma{
    position:relative!important;
    min-height:636px!important;
  }

  html body .up-site-footer--figma .up-footer-brand-mark{
    position:absolute!important;
    left:0!important;
    top:0!important;
    width:160px!important;
    max-width:160px!important;
  }

  html body .up-site-footer--figma .up-footer-brand-mark .up-logo,
  html body .up-site-footer--figma .up-footer-brand-mark .up-logo img,
  html body.home .up-site-footer--figma .up-footer-brand .up-logo{
    width:160px!important;
    max-width:160px!important;
    margin:0!important;
  }

  /* Designer right column: phone + email aligned above the footer menu. */
  html body .up-site-footer--figma .up-footer-contact{
    position:absolute!important;
    inset:0 0 auto auto!important;
    width:100%!important;
    display:block!important;
    padding:0!important;
    margin:0!important;
  }

  html body .up-site-footer--figma .up-footer-contact-row{
    display:block!important;
    position:absolute!important;
    right:-62px!important;
    left:auto!important;
    top:0!important;
    width:438px!important;
    height:20px!important;
    margin:0!important;
  }

  html body .up-site-footer--figma .up-footer-contact-row p:first-child{
    position:absolute!important;
    left:0!important;
    top:0!important;
    width:150px!important;
  }

  html body .up-site-footer--figma .up-footer-contact-row p:last-child{
    position:absolute!important;
    left:195px!important;
    top:0!important;
    width:190px!important;
  }

  html body .up-site-footer--figma .up-footer-contact-row,
  html body .up-site-footer--figma .up-footer-contact-row a,
  html body .up-site-footer--figma .up-footer-menu a{
    font-size:16px!important;
    line-height:20px!important;
    font-weight:400!important;
  }

  html body .up-site-footer--figma .up-footer-nav{
    position:absolute!important;
    right:-62px!important;
    left:auto!important;
    top:100px!important;
    width:243px!important;
    max-width:243px!important;
    justify-self:auto!important;
  }

  html body .up-site-footer--figma .up-footer-menu{
    width:243px!important;
    max-width:243px!important;
    display:grid!important;
    gap:0!important;
  }

  html body .up-site-footer--figma .up-footer-menu a{
    min-height:48px!important;
    height:48px!important;
    display:grid!important;
    grid-template-columns:1fr 48px!important;
    align-items:center!important;
    gap:0!important;
  }

  html body .up-site-footer--figma .up-footer-menu a::after{
    justify-self:center!important;
  }

  /* Newsletter: heading + one-line input/submit exactly as the designer shows. */
  html body .up-site-footer--figma .up-footer-subscribe-block{
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:350px!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  html body .up-site-footer--figma .up-footer-subscribe-block h2{
    font-size:40px!important;
    line-height:48px!important;
    font-weight:400!important;
    letter-spacing:-.04em!important;
    max-width:540px!important;
    margin:0 0 36px!important;
  }

  html body .up-site-footer--figma .up-subscribe-form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:60px!important;
    align-items:center!important;
    column-gap:30px!important;
    row-gap:0!important;
    width:calc(100% + 70px)!important;
    min-height:60px!important;
    height:60px!important;
    margin:0 0 0 13px!important;
    padding:0!important;
    border-bottom:1px solid rgba(255,255,255,.74)!important;
  }

  html body .up-site-footer--figma .up-subscribe-form input{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
    width:100%!important;
    height:60px!important;
    min-height:60px!important;
    padding:0!important;
    margin:0!important;
    font-size:14px!important;
    line-height:18px!important;
    align-self:center!important;
  }

  html body .up-site-footer--figma .up-subscribe-form button{
    grid-column:2!important;
    grid-row:1!important;
    width:auto!important;
    min-width:0!important;
    height:60px!important;
    margin:0!important;
    padding:0 20px 0 0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:30px!important;
    align-self:center!important;
    white-space:nowrap!important;
    font-size:14px!important;
    line-height:18px!important;
  }

  /* Bottom strip follows the same wider divider span used in the designer file. */
  html body .up-site-footer--figma .up-footer-bottom{
    position:absolute!important;
    left:0!important;
    right:-83px!important;
    top:560px!important;
    height:34px!important;
    margin:0!important;
    display:block!important;
    font-size:13px!important;
    line-height:16px!important;
    color:rgba(255,255,255,.20)!important;
  }

  html body .up-site-footer--figma .up-footer-bottom>span:first-child{
    position:absolute!important;
    left:0!important;
    top:0!important;
  }

  html body .up-site-footer--figma .up-footer-bottom .up-socials{
    position:absolute!important;
    left:50%!important;
    top:-5px!important;
    transform:translateX(-50%)!important;
    justify-content:center!important;
  }

  html body .up-site-footer--figma .up-footer-bottom .up-footer-legal{
    position:absolute!important;
    right:0!important;
    top:0!important;
    display:flex!important;
    justify-content:flex-end!important;
    gap:40px!important;
    white-space:nowrap!important;
  }

  html body .up-site-footer--figma .up-footer-bottom,
  html body .up-site-footer--figma .up-footer-bottom a{
    font-size:13px!important;
    line-height:16px!important;
    color:rgba(255,255,255,.20)!important;
  }
}

/* Tablet: keep the newsletter action on the same line until the true mobile layout. */
@media (min-width:768px) and (max-width:1200px){
  html body .up-site-footer--figma .up-subscribe-form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    row-gap:0!important;
  }
  html body .up-site-footer--figma .up-subscribe-form button{
    width:auto!important;
    justify-content:flex-end!important;
  }
}
