/* Shared Rae & Riel site header: used by index.html and every case study so the logo, nav and mobile menu stay identical. */
header.site-header{font-family:'Work Sans',Arial,Helvetica,sans-serif;width:min(1440px,calc(100% - 8vw));margin-inline:auto;min-height:92px;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:22px;position:relative;z-index:20}
header.site-header .brand{display:flex;align-items:center;min-height:44px;text-decoration:none;color:inherit;font-size:inherit;letter-spacing:normal;font-style:normal}
header.site-header .brand img{display:block;height:38px;width:auto;aspect-ratio:2000/667;object-fit:contain}
header.site-header .brand-note{display:block;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:#8C7F72}
header.site-header .desktop-nav{justify-self:end;display:flex;align-items:center;gap:36px;font-size:14px;font-weight:500}
header.site-header .desktop-nav a{text-decoration:none;color:var(--ink,#2B2723)}
header.site-header .desktop-nav>a:not(.nav-cta)::after{content:"";display:block;width:0;height:1px;background:var(--terracotta,#D97757);margin-top:5px;transition:width .25s ease}
header.site-header .desktop-nav>a:not(.nav-cta):hover::after,header.site-header .desktop-nav>a[aria-current]::after{width:100%}
header.site-header .nav-cta{display:inline-flex;align-items:center;gap:10px;background:var(--terra-dark,#B9583E);color:#fff!important;border-radius:999px;padding:12px 19px;min-height:44px;font-weight:600;font-size:14px;box-shadow:0 10px 24px rgba(185,88,62,.18);transition:transform .22s ease,background .22s ease}
header.site-header .desktop-nav>a.nav-cta::after{content:none;display:none}
header.site-header .nav-cta:hover{transform:translateY(-2px);background:#A9472F}
header.site-header .menu-button{display:none;min-width:44px;min-height:44px;padding:10px 8px;border:0;background:transparent;color:var(--ink,#2B2723);font:500 13px 'Work Sans',Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;justify-self:end}
.mobile-menu{display:none}
/* Shared filled CTA accessibility: white on #B9583E is ~4.64:1. */
a.button{background:var(--terra-dark,#B9583E)!important;color:#fff!important}
a.button:hover{background:#A9472F!important}
.pill-link{background:var(--terra-dark,#B9583E)!important;color:#fff!important}
.pill-link:hover{background:#A9472F!important}
a:focus-visible,button:focus-visible,[role="button"]:focus-visible{outline:2px solid var(--terracotta,#D97757);outline-offset:3px}
@media(max-width:760px){
  header.site-header{width:calc(100% - 32px);min-height:70px;grid-template-columns:1fr auto;gap:12px}
  header.site-header .brand img{height:32px}
  header.site-header .brand-note,header.site-header .desktop-nav{display:none}
  header.site-header .menu-button{display:block}
  .mobile-menu{display:block;position:fixed;top:76px;left:16px;right:16px;z-index:215;padding:10px;border:1px solid rgba(86,70,57,.10);border-radius:16px;background:rgba(251,248,240,.97);box-shadow:0 22px 55px rgba(55,38,28,.20);backdrop-filter:blur(14px);opacity:0;transform:translateY(-8px) scale(.985);transform-origin:top center;pointer-events:none;visibility:hidden;transition:opacity .22s ease,transform .28s cubic-bezier(.22,1,.36,1),visibility 0s linear .28s}
  .mobile-menu.is-open{opacity:1;transform:none;pointer-events:auto;visibility:visible;transition-delay:0s}
  .mobile-menu a{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 14px;text-decoration:none;color:var(--ink,#2B2723);border-bottom:1px solid var(--line,rgba(74,61,49,.15));font:500 15px 'Work Sans',Arial,Helvetica,sans-serif}
  .mobile-menu a::after{content:'→';color:var(--terracotta,#D97757)}
  .mobile-menu a:last-child{margin-top:8px;border-bottom:0;border-radius:12px;background:var(--terra-dark,#B9583E);color:#fff}
  .mobile-menu a:last-child::after{color:#fff}

  /* Keep editorial text links visually light while giving them a comfortable 44px mobile tap target. */
  main .text-link,
  main .work-copy a,
  main .case-links a,
  main .stream-full-link{
    display:inline-flex;
    align-items:center;
    min-height:44px;
  }
}
@media(prefers-reduced-motion:reduce){.mobile-menu,header.site-header .nav-cta,header.site-header .desktop-nav>a:not(.nav-cta)::after{transition:none}}
