/* WOC 2026 — Authors are individual contributors, not a fabricated newsroom.
   Quiet editorial portraits, typography and bylines in the existing WOC palette. */
.authors-page-heading{
  max-width:1320px;margin:0 auto 0;padding:46px 0 29px;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:18px 40px;
  border-bottom:2px solid var(--ink);
  align-items:end;
}
.authors-page-heading>.eyebrow{grid-column:1/-1}
.authors-page-heading h1{
  font:690 clamp(44px,5.9vw,82px)/.95 var(--serif);
  letter-spacing:-.045em;margin:0;color:var(--ink)
}
.authors-page-heading p{
  max-width:500px;font:480 17px/1.45 var(--serif);color:#68605d;
  margin:0 0 5px
}
.authors-landing-grid{
  display:grid;grid-template-columns:repeat(6,minmax(0,1fr));
  column-gap:19px;row-gap:17px;padding:26px 0 50px;
  max-width:1320px;margin:0 auto
}
.authors-profile-card{
  grid-column:span 2;
  background:#f5f2ec;
  padding:19px 20px 17px;
  min-width:0;min-height:320px;
  display:flex;flex-direction:column;
  border:1px solid #e3ddd2;border-top:3px solid #a82338;
}
.authors-profile-card:nth-child(n+4){grid-column:span 3;min-height:286px}
.authors-profile-portrait{
  display:block;align-self:flex-start;width:92px;height:92px;flex:0 0 92px;
  border-radius:50%;overflow:hidden;background:#ded5c7;
  margin-bottom:18px
}
.authors-profile-portrait img,
.authors-avatar{
  display:block;width:100%;height:100%;object-fit:cover;object-position:center;
  border-radius:50%;
}
.authors-profile-portrait .authors-initials,
.authors-home-strip .authors-initials{
  background:#e7ded1;display:grid;place-items:center;
  font:700 31px/1 var(--serif);color:#8e3545;
  letter-spacing:-.04em;border:1px solid #d1bfb4;
}
.authors-profile-copy{display:flex;flex:1;flex-direction:column;min-width:0}
.authors-profile-role{
  font:800 10px/1.3 var(--sans);text-transform:uppercase;
  letter-spacing:.075em;color:#ad2940;
  margin-bottom:6px
}
.authors-profile-card h2{font:680 28px/1.04 var(--serif);letter-spacing:-.025em;margin:0 0 11px}
.authors-profile-card h2 a:hover{
 text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px
}
.authors-profile-card p{
  color:#645c58;font:480 14px/1.5 var(--sans);
  margin:0 0 19px;display:-webkit-box;-webkit-box-orient:vertical;
  -webkit-line-clamp:3;overflow:hidden
}
.authors-profile-bottom{
  margin-top:auto;padding-top:13px;border-top:1px solid #d7cfc4;
  display:flex;align-items:center;justify-content:space-between;gap:14px;
}
.authors-profile-bottom>span{
  color:#857b75;font:650 11px/1.3 var(--sans);white-space:nowrap;
}
.authors-profile-bottom a{
  color:#9f2036;font:800 12px/1.25 var(--sans);
  text-decoration:none;white-space:nowrap;
}
.authors-profile-bottom a:hover{text-decoration:underline;text-underline-offset:3px}
.authors-home-strip .authors-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.authors-home-strip .author-card{border-top:2px solid var(--ink);background:#f5f2ec}
.authors-home-strip .author-card:hover{border-color:var(--red);background:#f0e9df}
.authors-home-strip .authors-initials{font-size:22px}
/* Earlier generic directory elements may appear on old author routes; 
   the current authors path does not render old dark newsroom-intro at all. */
@media(max-width:1050px){
  .authors-landing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .authors-profile-card,.authors-profile-card:nth-child(n+4){
    grid-column:span 1;min-height:320px
  }
  .authors-profile-card:last-child:nth-child(odd){
    grid-column:1/-1;min-height:245px;
  }
}
@media(max-width:700px){
  .authors-page-heading{padding:30px 0 23px;display:block}
  .authors-page-heading>.eyebrow{display:block;margin-bottom:9px}
  .authors-page-heading h1{font-size:54px}
  .authors-page-heading p{font-size:16px;max-width:100%;margin-top:10px}
  .authors-landing-grid{grid-template-columns:1fr;gap:12px;padding:18px 0 26px}
  .authors-profile-card,.authors-profile-card:nth-child(n+4),
  .authors-profile-card:last-child:nth-child(odd){
    grid-column:1;min-height:0;padding:16px;
    display:grid;grid-template-columns:72px minmax(0,1fr);
    column-gap:14px
  }
  .authors-profile-portrait{width:72px;height:72px;min-height:72px;margin:0}
  .authors-profile-copy{min-width:0}
  .authors-profile-card h2{font-size:25px;margin-bottom:8px}
  .authors-profile-role{font-size:9px}
  .authors-profile-card p{-webkit-line-clamp:2;font-size:12px;margin-bottom:11px}
  .authors-profile-bottom{flex-wrap:wrap;gap:7px}
  .authors-profile-bottom a{font-size:11px}
  .authors-home-strip .authors-grid{grid-template-columns:1fr}
}
@media(max-width:370px){
  .authors-profile-card,.authors-profile-card:nth-child(n+4){
    grid-template-columns:62px minmax(0,1fr);gap:10px
  }
  .authors-profile-portrait{width:62px;height:62px;min-height:62px}
  .authors-profile-card h2{font-size:23px}
  .authors-profile-bottom>span{white-space:normal}
}

/* Generic author avatars are never presented as fabricated photos. */
.author-hero-img.authors-initials{display:grid;place-items:center;
 background:#e7ded1;color:#8e3545;border:1px solid #d1bfb4;
 font:700 46px/1 var(--serif);letter-spacing:-.04em}


/* WOC MOBILE FIX 2026-10-08 — dedicated brand strip + disciplined footer.
   Override previous conflicting footer breakpoints; staging only. */
.woc-mobile-brandbar{display:none}
@media screen and (max-width:767px){
  .woc-mobile-brandbar{
    display:flex;align-items:center;justify-content:center;
    position:fixed;top:0;left:0;right:0;
    height:70px;width:100%;padding:4px 56px;
    padding-top:max(5px,env(safe-area-inset-top,0px));
    min-height:calc(70px + env(safe-area-inset-top,0px));
    background:rgba(250,248,244,.98);
    border-bottom:2px solid #c61930;
    box-shadow:0 3px 14px rgba(15,19,27,.10);
    z-index:900;opacity:0;visibility:hidden;pointer-events:none;
    transform:translateY(-110%);
    transition:transform .2s ease,opacity .2s ease,visibility .2s ease
  }
  .woc-mobile-brandbar.is-visible{
    visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0)
  }
  .woc-mobile-brandbar a{
    display:flex;align-items:center;justify-content:center;
    width:190px;max-width:100%;height:62px;min-width:0
  }
  .woc-mobile-brandbar a:focus-visible{outline:2px solid #c61930;outline-offset:2px}
  .woc-mobile-brandbar img{width:100%;height:62px;object-fit:contain;object-position:center}
  .site-footer .footer-top{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:18px!important;row-gap:28px!important;
    align-items:start!important;
    padding:34px 20px 30px!important;
    max-width:100%!important;min-height:0!important
  }
  .site-footer .footer-top > .footer-about{
    grid-column:1/-1!important;min-width:0!important;
    padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.18)
  }
  .site-footer .footer-lockup{margin-bottom:16px!important;gap:13px!important}
  .site-footer .footer-lockup img{flex:0 0 58px;width:58px!important;height:58px!important}
  .site-footer .footer-lockup .footer-brand-name{
    font-size:clamp(20px,5.5vw,23px)!important;
    letter-spacing:-.025em!important
  }
  .site-footer .footer-about p{font-size:13px!important;max-width:42ch!important;line-height:1.65!important}
  .site-footer .footer-top > div:nth-child(2),
  .site-footer .footer-top > div:nth-child(3){grid-column:auto!important;min-width:0!important}
  .site-footer .footer-top h4{
    font-size:11px!important;line-height:1.4!important;
    min-height:31px;margin:0 0 12px!important;
    display:flex;align-items:flex-start;
    letter-spacing:.07em!important
  }
  .site-footer .footer-top > div:not(.footer-about) > a{
    display:block!important;font-size:12px!important;line-height:1.45!important;
    margin:0!important;padding:7px 0!important;overflow-wrap:normal
  }
  .site-footer .footer-top > div:last-child{
    grid-column:1/-1!important;display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 18px!important;
    padding-top:24px!important;border-top:1px solid rgba(255,255,255,.18)
  }
  .site-footer .footer-top > div:last-child h4{
    grid-column:1/-1!important;min-height:0!important;margin:0 0 9px!important
  }
  .site-footer .footer-bottom{
    width:100%!important;max-width:100%!important;
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    gap:9px!important;padding:19px 20px 27px!important;
    align-items:start!important;text-align:left!important
  }
  .site-footer .footer-bottom > span{display:block!important;min-width:0}
  .site-footer .footer-bottom .privacy-reopen{
    display:block!important;width:max-content;max-width:100%;
    margin:9px 0 0!important
  }
}
@media screen and (max-width:349px){
  .site-footer .footer-top{grid-template-columns:minmax(0,1fr)!important}
  .site-footer .footer-top > div:not(.footer-about){grid-column:1/-1!important}
  .site-footer .footer-top > div:last-child{grid-template-columns:minmax(0,1fr)!important}
}
@media (prefers-reduced-motion:reduce){
  .woc-mobile-brandbar{transition:none!important}
}
@media print{
  .woc-mobile-brandbar{display:none!important}
}

/* WOC MOBILE FINAL MENU 2026-10-08 */
.woc-mobile-menu-backdrop[hidden],.woc-mobile-menu-panel[hidden]{display:none!important}
.woc-mobile-menu-backdrop{display:none}
@media screen and (max-width:767px){
  .woc-mobile-brandbar .woc-brand-home{
    display:flex;align-items:center;justify-content:center;
    width:190px;max-width:100%;height:62px;min-width:0
  }
  .woc-mobile-menu-toggle{
    position:absolute;right:14px;top:50%;transform:translateY(-50%);
    display:flex;align-items:center;justify-content:center;
    padding:0;width:44px;height:44px;border:1px solid transparent;
    border-radius:9px;background:transparent;color:#26292c;
    cursor:pointer;touch-action:manipulation
  }
  .woc-mobile-menu-toggle:hover,.woc-mobile-menu-toggle.is-open{
    border-color:#ddd4c7;background:#efe9df
  }
  .woc-mobile-menu-toggle:focus-visible{outline:2px solid #bc1c34;outline-offset:1px}
  .woc-mobile-menu-glyph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:22px;height:24px}
  .woc-mobile-menu-glyph span{
    display:block;width:21px;height:2px;border-radius:2px;background:currentColor;
    transition:transform .18s ease,opacity .18s ease
  }
  .woc-mobile-menu-toggle.is-open .woc-mobile-menu-glyph span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .woc-mobile-menu-toggle.is-open .woc-mobile-menu-glyph span:nth-child(2){opacity:0}
  .woc-mobile-menu-toggle.is-open .woc-mobile-menu-glyph span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .woc-mobile-menu-backdrop:not([hidden]){
    display:block;position:fixed;inset:0;z-index:899;
    background:rgba(22,24,28,.38)
  }
  .woc-mobile-menu-panel:not([hidden]){
    display:block;position:absolute;
    right:12px;top:calc(100% - 1px);
    width:min(344px,calc(100vw - 24px));max-width:calc(100vw - 24px);
    max-height:calc(100vh - 90px);
    max-height:calc(100dvh - 90px);
    overflow-y:auto;overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    border:1px solid #d9d1c7;border-top:3px solid #be1d36;
    border-radius:0 0 12px 12px;
    background:#fdfaf5;box-shadow:0 12px 40px rgba(12,16,22,.20);
    padding:7px 15px 14px;text-align:left
  }
  .woc-mobile-menu-group{padding:11px 0 13px;border-bottom:1px solid #e2dcd4}
  .woc-mobile-menu-group:last-child{border-bottom:0;padding-bottom:2px}
  .woc-mobile-menu-caption{
    margin:0 0 5px;font:800 10px/1.3 var(--sans);
    letter-spacing:.10em;text-transform:uppercase;color:#a11b32
  }
  .woc-mobile-menu-links{display:grid;grid-template-columns:minmax(0,1fr);gap:1px}
  .woc-mobile-menu-sections .woc-mobile-menu-links,
  .woc-mobile-menu-tools .woc-mobile-menu-links{
    grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px
  }
  .woc-mobile-menu-panel .woc-mobile-menu-links a{
    display:flex;align-items:center;justify-content:flex-start;
    width:100%;height:auto;min-height:40px;
    padding:8px 9px;margin:0;border-radius:6px;
    font:700 13px/1.35 var(--sans);
    color:#26272a;text-decoration:none;
    overflow-wrap:anywhere
  }
  .woc-mobile-menu-panel .woc-mobile-menu-links a:hover,
  .woc-mobile-menu-panel .woc-mobile-menu-links a:focus-visible{
    background:#eee7dd;color:#a7162e;outline:none
  }
}
@media screen and (max-width:349px){
  .woc-mobile-brandbar .woc-brand-home{width:164px}
  .woc-mobile-menu-toggle{right:8px}
}
@media(prefers-reduced-motion:reduce){
  .woc-mobile-menu-glyph span{transition:none!important}
}
@media print{
  .woc-mobile-menu-panel,.woc-mobile-menu-backdrop{display:none!important}
}
