/* Arden brackets form a forward chevron in the space between them. */
:is(.ac-about-hero,.simple-hero,.enterprise-page .service-hero,.cases-intro).ac-banner {
  --banner-paper:#f7f5ee;
  position:relative;
  isolation:isolate;
  display:grid;
  align-items:center;
  min-height:36rem;
  padding-block:clamp(3.5rem,6vw,5rem);
  overflow:hidden;
  background:linear-gradient(90deg,var(--banner-paper) 42%,#edf1e8);
  border-bottom:1px solid #d9e1d6;
}
.ac-banner>.shell { position:relative; z-index:1; }
:is(.ac-about-page,.blueprint-simple,.enterprise-page,.case-studies-page) .ac-banner h1 {
  max-width:none;
  font-family:var(--font);
  font-size:clamp(2.5rem,5.3vw,4.75rem);
  font-style:normal;
  font-weight:750;
  line-height:1.08;
  letter-spacing:-.055em;
}
.ac-banner h1>.ac-banner-accent {
  display:block;
  font-family:Georgia,'Times New Roman',serif;
  font-style:italic;
  font-weight:400;
  line-height:1.15;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.ac-banner-ending { white-space:nowrap; }
.ac-banner .simple-lead,.enterprise-page .service-hero.ac-banner p.service-lead,.ac-banner .ac-about-intro>p:not(.eyebrow) { color:#4b6259; }
/* Decorative artwork never covers links or contributes accessibility noise. */
.ac-banner::after { content:none; }
.ac-banner-art {
  position:absolute;
  z-index:0;
  width:min(48vw,44rem);
  aspect-ratio:560/600;
  right:-1rem;
  top:50%;
  transform:translateY(-50%);
  pointer-events:none;
  mask-image:linear-gradient(90deg,transparent 0%,#0006 30%,#000 62%);
}
.ac-banner-art svg { width:100%; height:100%; display:block; }
.ac-banner-bracket { fill:#749985; stroke:#648c76; stroke-width:.25; }
.ac-banner-bracket--open { opacity:.13; }
.ac-banner-bracket--first { opacity:.2; }
.ac-banner-bracket--second { opacity:.28; }
.ac-banner-gap { stroke:#b79449; stroke-width:1; opacity:.42; }
.ac-banner-glint { stroke:#b79449; stroke-width:2; stroke-dasharray:.12 .88; stroke-dashoffset:-1; opacity:0; }
.ac-banner-art--about .ac-banner-opening { transform:translateX(-22px); }
.ac-banner-art--about .ac-banner-bracket--second { opacity:.23; }
.ac-banner-art--growth .ac-banner-bracket--second { opacity:.31; }
.ac-banner-art--enterprise .ac-banner-opening { transform:translateX(24px); }
.cases-intro.ac-banner.ac-banner--dark {
  --banner-paper:#0b3029;
  background:linear-gradient(90deg,var(--banner-paper) 42%,#123d31);
  border-color:#587462;
  padding-bottom:0;
}
.ac-banner--dark .ac-banner-art { mask-image:linear-gradient(90deg,transparent 0%,#0009 30%,#000 62%); }
.ac-banner--dark .ac-banner-bracket { fill:#aac1ae; stroke:#b7ccb8; }
.ac-banner--dark .ac-banner-bracket--open { opacity:.1; }
.ac-banner--dark .ac-banner-bracket--first { opacity:.17; }
.ac-banner--dark .ac-banner-bracket--second { opacity:.28; }
.ac-banner--dark .ac-banner-gap { stroke:#dabb72; opacity:.65; }
.ac-banner--dark .ac-banner-glint { stroke:#f0d899; }
.case-studies-page .ac-banner h1 { color:#fffdf4; }
.cases-intro.ac-banner>.shell { align-self:stretch; display:flex; flex-direction:column; justify-content:center; padding-top:1rem; }
.cases-intro.ac-banner .cases-jump { margin-top:auto; background:#0b302977; }
.cases-intro.ac-banner h1 { margin-bottom:3rem; }
.enterprise-flow-band { background:#f4f4ed; border-bottom:1px solid #d9e1d6; }
.enterprise-flow-band .enterprise-hero-flow { margin:0; border:0; background:none; }
.enterprise-flow-band .enterprise-hero-flow>li { padding-block:1.25rem; }
.enterprise-flow-band .enterprise-hero-flow p { margin:.375rem 0 0 1.8125rem; color:var(--muted); font-size:.875rem; line-height:1.5; }
/* One brief reveal, then still. Reduced motion starts in the final state. */
@media(prefers-reduced-motion:no-preference) {
  .ac-banner-follow { animation:ac-banner-align 1.8s cubic-bezier(.2,.7,.2,1) both; }
  .ac-banner-glint { animation:ac-banner-light 2.8s .35s cubic-bezier(.3,0,.25,1) both; }
}
@keyframes ac-banner-align { from { transform:translateX(8px); } to { transform:translateX(0); } }
@keyframes ac-banner-light { 0% { stroke-dashoffset:.12; opacity:0; } 18%,68% { opacity:.8; } 100% { stroke-dashoffset:-1; opacity:0; } }
@media(min-width:1600px) { .ac-banner-art { right:calc((100vw - 1600px)/2 - 1rem); } }
@media(max-width:1000px) { .ac-banner-art { width:34rem; right:-5rem; opacity:.85; } }
@media(max-width:800px) {
  :is(.ac-about-hero,.simple-hero,.enterprise-page .service-hero,.cases-intro).ac-banner { min-height:0; padding-block:3.25rem; }
  .ac-banner-art { width:30rem; right:-4rem; opacity:.7; mask-image:linear-gradient(90deg,transparent 8%,#0004 46%,#000 75%); }
  .cases-intro.ac-banner>.shell { padding-top:0; }
  .cases-intro.ac-banner.ac-banner--dark { padding-bottom:0; }
  .cases-intro.ac-banner .cases-jump { margin-top:1rem; }
  .enterprise-flow-band .enterprise-hero-flow p { margin-left:0; font-size:.8125rem; }
}
@media(max-width:560px) {
  :is(.ac-about-page,.blueprint-simple,.enterprise-page,.case-studies-page) .ac-banner h1 { font-size:clamp(2.25rem,10vw,3rem); }
  .ac-banner-art { width:26rem; right:-4rem; top:50%; opacity:.6; mask-image:linear-gradient(90deg,transparent 12%,#0003 48%,#000 82%); }
  .ac-banner--dark .ac-banner-art { opacity:.7; }
  .cases-intro.ac-banner h1 { margin-bottom:2rem; }
  .enterprise-flow-band .enterprise-hero-flow>li { padding-block:.875rem; }
  .enterprise-flow-band .enterprise-hero-flow p { margin:0; line-height:1.45; }
}
