/* Tanglewood site footer ([tanglewood_footer]): everything scoped under .twft. Dark charcoal (option A). */
.twft{
  --twft-red:#8e2323; --twft-bg:#1d1b1a; --twft-bot:#151312; --twft-ink:#e9e4df; --twft-muted:#b3aca5; --twft-line:rgba(255,255,255,.12);
  background:var(--twft-bg); color:var(--twft-ink); font-size:16px; line-height:1.5; margin:0; width:100%;
  text-align:left;
}
.twft *{box-sizing:border-box}
.twft a{color:inherit;text-decoration:none;box-shadow:none}
.twft p{margin:0}

.twft-in{max-width:1240px;margin:0 auto;padding:52px 24px 40px;display:grid;gap:32px 40px;
  grid-template-columns:1.2fr .8fr .95fr 1.5fr;grid-template-areas:"brand c1 c2 news"}
.twft-in.twft-nonews{grid-template-columns:1.4fr 1fr 1fr;grid-template-areas:"brand c1 c2"}
.twft-brand{grid-area:brand}.twft-c1{grid-area:c1}.twft-c2{grid-area:c2}.twft-news{grid-area:news}

.twft-logo{display:inline-block;line-height:0}
.twft-logo img{display:block;max-width:220px;max-height:64px;width:auto;height:auto}
.twft-logo img.twft-white{filter:brightness(0) invert(1)}
.twft-word{display:block;font-size:30px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.1}
.twft .twft-est{font-size:14px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--twft-muted);margin-top:8px}
.twft .twft-tag{color:var(--twft-muted);margin:12px 0 16px}

.twft-soc{display:flex;gap:10px;flex-wrap:wrap}
.twft .twft-soc a{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--twft-line);color:var(--twft-ink);transition:background .15s,border-color .15s}
.twft .twft-soc a:hover,.twft .twft-soc a:focus-visible{background:var(--twft-red);border-color:var(--twft-red);color:#fff}
.twft-soc svg{width:19px;height:19px}

.twft .twft-h,.twft .twnl-infooter .twnl-title{font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin:0 0 14px;color:var(--twft-ink);opacity:1;line-height:1.3}
.twft-col a{display:block;padding:4px 0;color:var(--twft-muted)}
.twft-col a:hover,.twft-col a:focus-visible{color:var(--twft-ink);text-decoration:underline}

.twft .twnl-infooter{max-width:none}
.twft .twnl-infooter .twnl-text{color:var(--twft-muted);opacity:1;margin:-6px 0 12px}
.twft .twnl-infooter .twnl-small{color:var(--twft-muted);opacity:1}

.twft-bottom{background:var(--twft-bot);border-top:1px solid var(--twft-line)}
.twft-in2{max-width:1240px;margin:0 auto;padding:18px 24px 22px}
.twft-legal{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:15px}
.twft-legal a{color:var(--twft-muted)}
.twft-legal a:hover{color:var(--twft-ink);text-decoration:underline}
.twft .twft-disc{font-size:12.5px;line-height:1.5;color:var(--twft-muted);margin-top:8px;max-width:900px}

@media (max-width:900px){
  .twft-in{grid-template-columns:1fr 1fr;grid-template-areas:"news news" "c1 c2" "brand brand"}
  .twft-in.twft-nonews{grid-template-areas:"c1 c2" "brand brand"}
}
@media (max-width:520px){
  .twft-in{padding:36px 20px 28px;gap:28px 20px}
  .twft-brand{text-align:center}
  .twft-soc{justify-content:center}
  .twft-logo img{margin:0 auto}
}
