/* A shared architectural motif, with a composition for each primary page. */
: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:radial-gradient(ellipse at 100% 48%,#dce7dd 0%,transparent 62%),var(--banner-paper);
  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; }
/* The original logo bracket is a quiet watermark behind the page content. */
.ac-banner::after {
  content:'';
  position:absolute;
  z-index:0;
  pointer-events:none;
  inset:auto;
  width:clamp(10rem,20vw,22rem);
  aspect-ratio:46.8 / 150.7;
  right:clamp(1.5rem,5vw,6rem);
  top:50%;
  transform:translateY(-50%);
  background:#557f69;
  opacity:.085;
  mask:url('/assets/arden-clark-bracket.svg') center / contain no-repeat;
}
.enterprise-page .ac-banner::after,.cases-intro.ac-banner::after { transform:translateY(-50%) scaleX(-1); }
.ac-banner--dark::after { background:#b8cfbd; opacity:.085; }
.ac-banner-art {
  position:absolute;
  z-index:0;
  width:min(65vw,62rem);
  aspect-ratio:8/7;
  right:-4rem;
  top:50%;
  transform:translateY(-50%);
  pointer-events:none;
  mask-image:linear-gradient(90deg,transparent 3%,#0004 26%,#000 57%);
}
.ac-banner-art svg { width:100%; height:100%; display:block; overflow:visible; }
.ac-banner-stop-light { stop-color:#c5d6c7; }
.ac-banner-stop-mid { stop-color:#a1bba8; }
.ac-banner-stop-deep { stop-color:#789c89; }
.ac-banner-sculpture { transform-origin:center; }
.ac-banner-band { stroke-width:70; opacity:.3; }
.ac-banner-band--2 { opacity:.24; }
.ac-banner-band--3 { stroke-width:38; opacity:.19; }
.ac-banner-edge { stroke:#6c9281; stroke-width:1.15; opacity:.48; }
.ac-banner-seam { stroke:#b79449; stroke-width:1.5; opacity:.6; }
.ac-banner-glint { stroke:#f8e3ae; stroke-width:2.5; stroke-linecap:round; stroke-dasharray:.15 .85; stroke-dashoffset:-.85; opacity:0; }
.ac-banner-art--about { right:-6rem; }
.ac-banner-art--growth { right:-5rem; }
.ac-banner-art--growth .ac-banner-band { stroke-width:76; }
.ac-banner-art--enterprise .ac-banner-band { opacity:.31; }
.cases-intro.ac-banner.ac-banner--dark {
  --banner-paper:#0b3029;
  background:radial-gradient(ellipse at 100% 40%,#245343 0%,transparent 68%),var(--banner-paper);
  border-color:#587462;
  padding-bottom:0;
}
.ac-banner--dark .ac-banner-art { mask-image:linear-gradient(90deg,transparent 0%,#0008 28%,#000 58%); }
.ac-banner--dark .ac-banner-stop-light { stop-color:#6f9480; }
.ac-banner--dark .ac-banner-stop-mid { stop-color:#aec2a6; }
.ac-banner--dark .ac-banner-stop-deep { stop-color:#507562; }
.ac-banner--dark .ac-banner-band { opacity:.21; }
.ac-banner--dark .ac-banner-band--2 { opacity:.29; }
.ac-banner--dark .ac-banner-edge { stroke:#b2c6b5; opacity:.38; }
.ac-banner--dark .ac-banner-seam { stroke:#dec17f; opacity:.8; }
.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; }
@media(prefers-reduced-motion:no-preference) {
  .ac-banner-sculpture { animation:ac-banner-settle 2.6s cubic-bezier(.2,.7,.2,1) both; }
  .ac-banner-glint { animation:ac-banner-light 3.8s .25s cubic-bezier(.3,0,.25,1) both; }
}
@keyframes ac-banner-settle { from { transform:translate(10px,12px); opacity:.3; } to { transform:translate(0,0); opacity:1; } }
@keyframes ac-banner-light { 0% { stroke-dashoffset:.15; opacity:0; } 20%,75% { opacity:.9; } 100% { stroke-dashoffset:-.85; opacity:0; } }
@media(min-width:1600px) { .ac-banner-art { right:calc((100vw - 1600px)/2 - 6rem); } }
@media(min-width:1600px) { .ac-banner::after { right:calc((100vw - 1600px)/2 + 6rem); } }
@media(max-width:1000px) { .ac-banner-art { width:48rem; right:-14rem; 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:40rem; right:-16rem; opacity:.65; mask-image:linear-gradient(90deg,transparent 0%,#0004 44%,#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) {
  .ac-banner::after { width:9rem; right:-3rem; opacity:.065; }
  .ac-banner--dark::after { opacity:.07; }
  :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:34rem; right:-14rem; top:3rem; transform:none; opacity:.6; mask-image:linear-gradient(90deg,transparent 8%,#0006 45%,#000 85%); }
  .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; }
}
