/* A quiet, paper-like transition from the photograph to the reading surface. */
.site-header .brand-mark{position:relative;width:35px;height:39px;flex-shrink:0}
.site-header .brand-mark img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.brand-logo-light{filter:brightness(0) invert(1);opacity:0}
.header-overlay{position:fixed;inset:0 0 auto;background:transparent;border:0;color:white;isolation:isolate}
.header-overlay:before{content:"";position:absolute;inset:0;background:#fff;border-bottom:1px solid var(--border);box-shadow:0 4px 20px #17241f08;opacity:0;z-index:-1;pointer-events:none}
.header-overlay:after{content:"";position:absolute;inset:auto 0 0;height:1px;background:#ffffff36;opacity:1;pointer-events:none}
.header-overlay .brand{color:white;transform:translateY(3px) scale(1.045);transform-origin:left center}
.header-overlay .brand-logo-color{opacity:0}
.header-overlay .brand-logo-light{opacity:1}
.header-overlay .nav-parent>a,.header-overlay .nav-expand{color:white}
.header-overlay .nav-parent>a:hover{text-decoration:underline;text-underline-offset:7px}
.header-overlay .nav-panel{color:var(--text)}
.header-overlay .menu-toggle,.header-overlay .brief-button{background:transparent;color:white;border-color:#ffffff80}
.header-overlay .nav-quote{background:white;color:var(--brand);border-color:white}
.header-overlay :focus-visible{outline-color:white}
.header-overlay .nav-panel :focus-visible{outline-color:var(--info)}
.header-overlay.is-solid{color:var(--brand)}
.header-overlay.is-solid:before{opacity:1}
.header-overlay.is-solid:after{opacity:0}
.header-overlay.is-solid .brand{color:var(--text);transform:none}
.header-overlay.is-solid .brand-logo-color{opacity:1}
.header-overlay.is-solid .brand-logo-light{opacity:0}
.header-overlay.is-solid .nav-parent>a,.header-overlay.is-solid .nav-expand{color:var(--brand)}
.header-overlay.is-solid .menu-toggle,.header-overlay.is-solid .brief-button{color:var(--brand);border-color:var(--border)}
.header-overlay.is-solid .nav-quote{background:var(--brand);border-color:var(--brand);color:white}
.header-overlay.is-solid :focus-visible{outline-color:var(--info)}
.header-ready:before,.header-ready:after,.header-ready .brand-mark img{transition:opacity 240ms cubic-bezier(.22,1,.36,1)}
.header-ready .brand{transition:transform 240ms cubic-bezier(.22,1,.36,1),color 180ms ease}
.hero{margin:0;min-height:max(680px,100svh);height:auto;max-height:none;display:flex;align-items:center;background:#a8431d;color:white}
.hero-photo{position:absolute;inset:0;height:auto;z-index:-1}
.hero-photo img{object-position:70% center}
.hero-photo:after{content:"";display:block;position:absolute;inset:0;background:linear-gradient(180deg,#23180ee0 0, #23180e60 94px,transparent 220px),linear-gradient(90deg,#59260e70 0%,#59260e33 35%,transparent 65%)}
.hero-copy{width:min(1360px,calc(100% - 96px));max-width:none;padding:160px 0 110px;margin-inline:auto;position:relative}
.hero h1{max-width:650px;color:white;font-size:clamp(58px,5.1vw,82px);letter-spacing:var(--tracking-heading);line-height:1.06}
.hero .eyebrow{color:white;max-width:none;font-size:12px}
.hero p:not(.eyebrow){max-width:390px;font-size:17px}
.hero .btn{background:white;color:var(--brand);border-color:white}
.hero .btn:hover,.header-overlay:not(.is-solid) .nav-quote:hover{background:#e9eee9;border-color:#e9eee9}
.hero a:not(.btn):hover{color:white}
.hero :focus-visible{outline-color:white}
.hero .photo-caption{z-index:1;background:#23180e90;color:white;inset:auto 32px 24px auto}
@media(min-width:1600px){.hero-copy{padding-block:180px 130px}}
@media(max-width:1200px){.hero-copy{width:calc(100% - 64px)}.site-header .brand-mark{width:30px}}
@media(max-width:1050px){.hero{min-height:max(650px,100svh)}.hero-copy{padding-block:145px 105px}.hero h1{font-size:clamp(52px,6.3vw,66px)}.hero p:not(.eyebrow){max-width:360px}.header-overlay #main-nav{color:var(--text)}}
@media(max-width:768px){.hero-copy{width:calc(100% - 48px)}.hero h1{max-width:470px;font-size:55px}.hero-photo img{object-position:55% center}.hero-photo:after{background:linear-gradient(180deg,#23180ed9 0,#23180e40 120px,transparent 260px),linear-gradient(90deg,#57250ebf,#57250e70 45%,#57250e15)}.hero .eyebrow{font-size:11px}}
@media(max-width:600px){
  .site-header .brand-mark{width:29px;height:34px}
  .header-overlay{position:fixed}
  .header-overlay .brand{transform:translateY(2px) scale(1.025)}
  .header-overlay.is-solid .brand{transform:none}
  .header-overlay #main-nav{max-height:calc(100svh - 73px);padding-bottom:calc(30px + env(safe-area-inset-bottom))}
  .hero{display:flex;flex-direction:row;align-items:flex-end;min-height:max(740px,100svh);height:auto}
  .hero-copy{width:calc(100% - 44px);padding:140px 0 132px;order:initial}
  .hero h1{font-size:clamp(42px,11.5vw,62px);letter-spacing:var(--tracking-heading);line-height:1.08;margin-bottom:24px}
  .hero .eyebrow{max-width:300px;font-size:10px;letter-spacing:.9px;margin-bottom:22px}
  .hero p:not(.eyebrow){max-width:340px;font-size:16px;line-height:1.7}
  .hero-photo{position:absolute;inset:0;height:auto;order:initial;z-index:-1}
  .hero-photo img{object-position:63% center}
  .hero-photo:after{display:block;background:linear-gradient(180deg,#201911bf 0%,#20191130 25%,#20191180 53%,#201911e6 100%),linear-gradient(90deg,#57250e40,transparent)}
  .hero .photo-caption{inset:auto 22px 88px auto;font-size:10px;background:none;padding:0;color:#ffffffc9}
  .hero-actions{gap:19px}
}
@media(prefers-reduced-motion:reduce){.header-ready:before,.header-ready:after,.header-ready .brand-mark img,.header-ready .brand{transition:none}}
