/* Footer — measured from the Release demo (1920px, root 10px). */
.relw-footer{width:100%;font-family:var(--relw-font);font-size:14px;line-height:1.6;color:#fff;background:#111}
.relw-footer a{color:inherit;text-decoration:none}
.relw-footer ul{list-style:none;margin:0;padding:0}
.relw-footer p{margin:0}
.relw-footer__top{padding:32px var(--relw-gutter) 32px}
.relw-footer__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:32px}
.relw-footer__newsletter{grid-column:span 3;align-self:start}
.relw-footer__col{grid-column:span 1;align-self:start}
.relw-footer__brand{grid-column:span 3;align-self:start}
.relw-footer__social{grid-column:span 3;align-self:end;display:flex;gap:16px}

.relw-footer__heading{margin:0 0 11px;padding:6.25px 0;font-size:10px;line-height:10px;font-weight:400;letter-spacing:1.6px;text-transform:uppercase;color:rgba(255,255,255,.75)}
.relw-footer__nl-text{margin-bottom:17px;font-size:14px;line-height:22.4px}

/* newsletter form (static fallback + Noptin shortcode output) */
.relw-footer__form{max-width:420px}
.relw-footer__form--static,.relw-footer__form .noptin-form-fields,.relw-footer__form form{display:flex;align-items:stretch;background:#fff;border:1px solid #fff;border-radius:8px;overflow:hidden;height:50px}
.relw-footer__form input[type=email],.relw-footer__form input[type=text],.relw-footer__form input.noptin-form-field{flex:1;min-width:0;height:48px;padding:0 16px;font:400 12px/18px var(--relw-font);color:#111;background:#fff;border:0;border-radius:0;outline:0;box-shadow:none;margin:0}
.relw-footer__form input::placeholder{color:rgba(17,17,17,.6)}
.relw-footer__form button,.relw-footer__form input[type=submit]{flex:none;height:48px;padding:0 16px;font:400 12px/12px var(--relw-font);letter-spacing:2px;text-transform:uppercase;color:#111;background:#fff;border:0;border-radius:0;cursor:pointer;margin:0;width:auto;min-width:113px}
.relw-footer__form .noptin-form-fields > *,.relw-footer__form form > *{margin:0}

/* link lists */
.relw-footer__col ul{display:flex;flex-direction:column;row-gap:4.6px}
.relw-footer__col ul li{padding:1px 0;margin:0;font-size:14px;line-height:22.4px}
.relw-footer__col a{transition:opacity .2s}
.relw-footer__col a:hover,.relw-footer__social a:hover{opacity:.7}
.relw-footer__col-mobile{display:none}

/* brand */
.relw-footer__logo{display:inline-block;margin-bottom:24px;font-size:0;line-height:0}
.relw-footer__logo img{display:block;width:240px;height:auto}
.relw-footer__logo span{display:block;font-size:40px;line-height:56px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.relw-footer__brand p{max-width:452px;font-size:14px;line-height:22.4px}
.relw-footer__social svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}

/* bottom bar */
.relw-footer__bottom{padding:16px var(--relw-gutter);border-top:1px solid rgba(255,255,255,.1)}
.relw-footer__bottom .relw-footer__grid{align-items:center}
.relw-footer__copy{grid-column:span 3;font-size:12px;line-height:19.2px;letter-spacing:.48px}
.relw-footer__right{grid-column:span 3;justify-self:end;font-size:12px;line-height:19.2px;letter-spacing:.48px;text-align:end}

.relw-footer__pm{display:flex;width:16px;height:16px;flex:none}
.relw-footer__pm svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1;stroke-linecap:round}
.relw-pm-minus{display:none!important}
details[open] .relw-pm-plus{display:none!important}
details[open] .relw-pm-minus{display:block!important}

/* Mobile / tablet — values measured from the Release demo at 390px */
@media (max-width:989px){
  .relw-footer__top{padding:24px 16px 24px}
  .relw-footer__grid{grid-template-columns:1fr;gap:32px 24px}
  .relw-footer__newsletter,.relw-footer__col,.relw-footer__brand,.relw-footer__social,.relw-footer__copy,.relw-footer__right{grid-column:1/-1}
  .relw-footer__newsletter{text-align:center}
  .relw-footer__newsletter .relw-footer__form{margin-inline:auto;max-width:none}
  .relw-footer__col-desktop{display:none}
  .relw-footer__top .relw-footer__grid{row-gap:0}
  .relw-footer__newsletter{margin-bottom:32px}
  .relw-footer__col-mobile{display:block;border-bottom:1px solid rgba(255,255,255,.1)}
  .relw-footer__col:first-of-type .relw-footer__col-mobile,.relw-footer__newsletter+.relw-footer__col .relw-footer__col-mobile{border-top:1px solid rgba(255,255,255,.1)}
  .relw-footer__col-mobile summary{display:flex;justify-content:space-between;align-items:center;padding:24px 0;font-size:16px;line-height:24px;letter-spacing:-.64px;cursor:pointer;list-style:none}
  .relw-footer__col-mobile summary::-webkit-details-marker{display:none}
  .relw-footer__col-mobile ul{display:flex;flex-direction:column;row-gap:12px;padding-bottom:24px}
  .relw-footer__col-mobile li{padding:1px 0;font-size:14px;line-height:22.4px}
  .relw-footer__brand{margin-top:32px;text-align:start}
  .relw-footer__social{margin-top:32px;justify-content:flex-start}
  .relw-footer__bottom{padding:16px}
  .relw-footer__bottom .relw-footer__grid{gap:12px}
  .relw-footer__copy,.relw-footer__right{text-align:center;justify-self:center}
}

/* Newsletter spacing (measured): heading 23px + 11px, text 22px + 17px, form 50px. Mobile: 8px / 16px. */
.relw-footer .relw-footer__nl-text{margin:0 0 17px}
@media (max-width:989px){
  .relw-footer .relw-footer__newsletter .relw-footer__heading{margin-bottom:8px}
  .relw-footer .relw-footer__nl-text{margin-bottom:16px}
}

@media (max-width:989px){.relw-footer__logo span{font-size:26px;line-height:36px}}

/* Noptin form inside the footer: reduce it to the demo's single pill row (email + subscribe). */
.relw-footer .relw-footer__form{max-width:420px;width:100%}
.relw-footer .relw-footer__form .noptin-optin-main-wrapper,
.relw-footer .relw-footer__form .noptin-optin-form-wrapper,
.relw-footer .relw-footer__form .noptin-optin-form,
.relw-footer .relw-footer__form .noptin-form-footer{display:block!important;width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important}
.relw-footer .relw-footer__form .noptin-form-header,
.relw-footer .relw-footer__form .noptin-form-note,
.relw-footer .relw-footer__form .noptin-form-description,
.relw-footer .relw-footer__form .noptin-form-heading,
.relw-footer .relw-footer__form .noptin-form-image{display:none!important}
.relw-footer .relw-footer__form .noptin-form-fields{display:flex!important;align-items:stretch!important;gap:0!important;width:100%!important;height:50px!important;margin:0!important;padding:0!important;background:#fff!important;border:1px solid #fff!important;border-radius:8px!important;overflow:hidden!important}
.relw-footer .relw-footer__form .noptin-form-field-wrapper{margin:0!important;padding:0!important;border:0!important;width:auto!important;min-width:0}
.relw-footer .relw-footer__form .noptin-form-field-wrapper:first-child{flex:1 1 auto}
.relw-footer .relw-footer__form .noptin-field-email,.relw-footer .relw-footer__form .noptin-form-field-wrapper > *{margin:0!important;height:48px!important}
.relw-footer .relw-footer__form .noptin-label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.relw-footer .relw-footer__form input.noptin-form-field,.relw-footer .relw-footer__form input[type=email]{width:100%!important;height:48px!important;padding:0 16px!important;font:400 12px/18px var(--relw-font)!important;color:#111!important;background:#fff!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:0!important}
.relw-footer .relw-footer__form .noptin-form-submit,.relw-footer .relw-footer__form input[type=submit],.relw-footer .relw-footer__form button{height:48px!important;padding:0 16px!important;min-width:113px;font:400 12px/12px var(--relw-font)!important;letter-spacing:2px!important;text-transform:uppercase!important;color:#111!important;background:#fff!important;border:0!important;border-radius:0!important;box-shadow:none!important;cursor:pointer}
@media (max-width:989px){.relw-footer .relw-footer__form{max-width:none}}

/* Subscribe button: fixed 113px pill segment at the right edge, like the demo */
.relw-footer .relw-footer__form .noptin-form-field-wrapper:last-child{flex:0 0 113px!important;width:113px!important}
.relw-footer .relw-footer__form .noptin-form-submit,.relw-footer .relw-footer__form input[type=submit],.relw-footer .relw-footer__form button{width:113px!important;min-width:113px!important;padding:0 8px!important;white-space:nowrap}

/* Noptin sets its own max-widths on the field wrappers; make the email field take all remaining room. */
.relw-footer .relw-footer__form .noptin-form-fields > .noptin-form-field-wrapper{max-width:none!important;height:48px!important;aspect-ratio:auto!important}
.relw-footer .relw-footer__form .noptin-form-fields > .noptin-form-field-email{flex:1 1 0!important;width:auto!important}
.relw-footer .relw-footer__form .noptin-form-fields > .noptin-form-field-submit{flex:0 0 113px!important;width:113px!important}
.relw-footer .relw-footer__form .noptin-form-fields::before,.relw-footer .relw-footer__form .noptin-form-fields::after{content:none!important;display:none!important}
/* Grid instead of flex for the pill: email field fills, subscribe is a fixed 113px segment. */
.relw-footer .relw-footer__form .noptin-form-fields{display:grid!important;grid-template-columns:minmax(0,1fr) 113px!important;grid-auto-flow:column!important;align-items:stretch!important}
.relw-footer .relw-footer__form .noptin-form-fields > .noptin-form-field-wrapper{width:100%!important;min-width:0!important;flex:none!important}
