/* AGF Videos: shared landing page and homepage feature. */
.nav-with-videos .nav-links{gap:24px}
.nav-with-videos .nav-links a[aria-current="page"]{color:var(--terracotta)}
.video-wrap{width:calc(100% - 80px);max-width:1280px;margin-inline:auto}
.video-eyebrow{display:block;color:var(--terracotta);margin-bottom:22px}
.video-head{padding-top:158px;padding-bottom:54px}
.video-head h1{font-size:clamp(54px,6.8vw,94px);margin-bottom:26px}
.video-head em,.video-launch h2 em,.video-section-intro em,.video-invite em,.video-promo h2 em{color:var(--terracotta);font-weight:400}
.video-lede{max-width:650px;font-size:19px;color:#585149;line-height:1.7}
.video-launch{display:grid;grid-template-columns:1.3fr 1fr;gap:54px;align-items:center;padding-bottom:80px}
.video-stage{position:relative;min-width:0;aspect-ratio:16/10;background:#182a25;color:var(--paper);padding:28px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}
.video-stage-top,.video-stage-bottom{position:relative;z-index:1;font-size:10px;letter-spacing:.1em;color:#d3cebd}
.video-stage-top{display:flex;justify-content:space-between;gap:20px}
.video-stage-top span:last-child{white-space:nowrap}
.video-stage-art{position:absolute;inset:0;pointer-events:none}
.video-stage-art span{position:absolute;width:65%;aspect-ratio:1;border-radius:50%;right:-5%;top:-14%;background:#bd522f}
.video-stage-art span+span{right:24%;top:5%;background:transparent;border:1px solid #b9ba9d;opacity:.7}
.video-stage-title{font-family:'Fraunces',serif;font-size:clamp(30px,3.3vw,48px);line-height:1.08;letter-spacing:-.025em;position:relative;z-index:1;padding-top:40px;text-shadow:0 1px 8px #182a2540}
.video-stage-title em{font-weight:400;color:#e9c58b}
.video-status{display:inline-block;color:var(--forest);border:1px solid #aab5a4;border-radius:30px;padding:7px 12px;font-size:10px;margin-bottom:20px}
.video-launch h2,.video-section-intro h2,.video-invite h2,.video-promo h2{font-family:'Fraunces',serif;font-weight:400;font-size:clamp(34px,3.5vw,48px);letter-spacing:-.025em;line-height:1.08}
.video-launch-copy p{font-size:15px;color:#585149;line-height:1.8;margin-top:18px;max-width:490px}
.video-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:28px}
.video-text-link{color:var(--ink);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#9d9385;line-height:1.7}
.video-text-link:hover{color:var(--terracotta)}
.video-text-link span{display:inline-block;margin-left:4px}
.video-themes{padding:54px 0 72px;border-top:1px solid var(--line)}
.video-section-intro{display:flex;gap:36px;justify-content:space-between;align-items:end;margin-bottom:36px}
.video-section-intro h2{font-size:clamp(30px,3vw,40px)}
.video-section-intro p{max-width:285px;font-size:14px;color:#585149;line-height:1.75}
.video-theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.video-theme{border-top:2px solid var(--terracotta);padding-top:22px;display:flex;flex-direction:column;align-items:flex-start}
.video-theme:nth-child(2){border-color:var(--ochre)}
.video-theme:nth-child(3){border-color:var(--forest)}
.video-theme-number{font-size:10px;color:#655c51}
.video-theme h3{font-family:'Fraunces',serif;font-weight:400;font-size:30px;line-height:1.15;margin:22px 0 15px}
.video-theme p{font-size:14px;color:#585149;line-height:1.8;margin-bottom:22px;max-width:330px}
.video-theme a{margin-top:auto}
.video-invite{padding:62px 0;background:var(--paper-warm)}
.video-invite-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.video-invite p{font-size:16px;line-height:1.8;margin-bottom:22px;max-width:500px}
.videos-page footer .logo,.videos-page footer .logo-text,.videos-page .footer-bottom a{color:var(--paper)}
.videos-page footer .logo-mark{background:var(--paper)}
.videos-page footer .logo-text small{color:#c8c0b4}
.video-skip{position:fixed;top:-100px;left:20px;z-index:2000;background:var(--ink);color:var(--paper);padding:14px 20px}
.video-skip:focus{top:10px}
.videos-page :focus-visible,.video-promo :focus-visible,.nav-with-videos :focus-visible{outline:3px solid var(--terracotta);outline-offset:5px}
.video-promo{padding:72px 40px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.video-promo-inner{max-width:1200px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.video-promo h2{font-size:clamp(38px,4.4vw,60px)}
.video-promo-copy>p{font-size:16px;line-height:1.8;max-width:460px;color:#585149;margin:22px 0 28px}
.video-promo .video-stage{aspect-ratio:16/9}
.video-promo .video-stage-title{font-size:clamp(30px,3vw,42px)}
@media(max-width:1160px){
  .nav-with-videos{padding:16px 20px}
  .nav-with-videos .nav-links{position:fixed;top:70px;left:0;right:0;flex-direction:column;background:var(--paper);padding:26px 20px;gap:20px;border-bottom:1px solid var(--line);transform:translateY(-150%);visibility:hidden;max-height:calc(100dvh - 70px);overflow:auto;transition:transform .25s,visibility .25s}
  .nav-with-videos .nav-links.open{transform:translateY(0);visibility:visible}
  .nav-with-videos .menu-toggle{display:block}
  .video-launch{gap:32px}
}
@media(max-width:820px){
  .video-wrap{width:calc(100% - 40px)}
  .video-head{padding-top:124px;padding-bottom:36px}
  .video-head h1{font-size:clamp(48px,9vw,72px)}
  .video-launch{grid-template-columns:1fr;gap:30px;padding-bottom:48px}
  .video-stage-title{font-size:clamp(32px,6vw,48px)}
  .video-stage{aspect-ratio:16/9}
  .video-launch-copy p{max-width:650px}
  .video-theme-grid{gap:20px}
  .video-theme h3{font-size:25px}
  .video-section-intro{align-items:start;flex-direction:column;gap:18px}
  .video-section-intro p{max-width:none}
  .video-invite-inner{gap:30px}
  .video-promo{padding:48px 20px}
  .video-promo-inner{gap:28px;grid-template-columns:1fr}
  .video-promo .video-stage-title{font-size:clamp(30px,6vw,46px)}
}
@media(max-width:540px){
  .video-stage{padding:20px;aspect-ratio:4/3}
  .video-promo .video-stage{aspect-ratio:4/3}
  .video-stage-top{font-size:9px;letter-spacing:.04em;gap:10px}
  .video-stage-bottom{font-size:9px;letter-spacing:.05em}
  .video-lede{font-size:17px}
  .video-theme-grid,.video-invite-inner{grid-template-columns:1fr}
  .video-theme{padding-bottom:16px}
  .video-theme h3{font-size:30px;margin-top:16px}
  .video-themes{padding-block:36px}
  .video-invite{padding-block:42px}
  .video-actions{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .nav-with-videos .nav-links{transition:none}
}
