/* /build-your-team — AISHTMLNEWDESIGN-582
   Page-owned styles. EVERY selector is scoped to #page-build-your-team or a
   byt- prefixed class: this sheet must never style body, a bare
   element, #ais-header or #ais-footer. The document reset
   (html,body{margin:0}) is owned by the shared layout sheet.
   Font is Inter; no body/UI text below 16px. */

/* ============================================================
   BENCH DEPTH — /build-your-team
   Cool paper ground, bench-green depth bands, copper signal.
   Every selector is scoped to #page-build-your-team or .byt-*.
   ============================================================ */

#page-build-your-team{
  --byt-ink:#14211d;
  --byt-deep:#1d3b34;
  --byt-deep-2:#0f2a24;
  --byt-paper:#f4f7f6;
  --byt-card:#ffffff;
  --byt-signal:#b25a24;
  --byt-signal-lite:#d98a4f;
  --byt-line:#d3dcd9;
  --byt-text:#1b2622;
  --byt-text-2:#374151;
  font-family:"Inter",system-ui,sans-serif;
  font-size:16px;
  line-height:1.6;
  color:var(--byt-text);
  background:var(--byt-paper);
}

/* Page content is content-box by default, so any side padding on a
   width:100% band is ADDED to the width and the band overflows the
   viewport. The namespaced layout and page sheets both decline to own
   the document, so the page owns this reset for its own subtree. */
#page-build-your-team,
#page-build-your-team *,
#page-build-your-team *::before,
#page-build-your-team *::after{box-sizing:border-box;}

#page-build-your-team .byt-wrap{max-width:1140px;margin-inline:auto;padding-inline:24px;}
#page-build-your-team :is(ul,ol){list-style:none;margin:0;padding:0;}
#page-build-your-team p{margin:0;}

#page-build-your-team :is(a,button):focus-visible{
  outline:3px solid var(--byt-signal);
  outline-offset:3px;
  border-radius:4px;
}

/* ---------- HERO : full-bleed, static gradient, no image ---------- */
#page-build-your-team .byt-hero{
  width:100%;
  padding:clamp(64px,8vw,120px) 24px;
  background:linear-gradient(158deg,var(--byt-deep) 0%,var(--byt-ink) 58%,var(--byt-deep-2) 100%);
}
#page-build-your-team .byt-hero__inner{max-width:900px;margin-inline:auto;text-align:center;}

#page-build-your-team p.byt-hero__eyebrow{
  margin:0 0 22px;
  font-size:16px;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--byt-signal-lite);
}
#page-build-your-team .byt-hero__h1{
  margin:0;
  font-size:clamp(40px,5.2vw,68px);
  line-height:1.05;
  letter-spacing:-.02em;
  font-weight:800;
  color:#ffffff;
}
#page-build-your-team p.byt-hero__lede{
  margin:18px 0 0;
  font-size:clamp(20px,2.3vw,28px);
  line-height:1.3;
  font-weight:600;
  color:#e4ece9;
}
#page-build-your-team p.byt-hero__para{
  margin:22px auto 0;
  max-width:680px;
  font-size:18px;
  line-height:1.65;
  color:#c3d2ce;
}

#page-build-your-team .byt-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:36px;
  min-height:52px;
  padding:0 34px;
  border:0;
  border-radius:3px;
  background:var(--byt-signal);
  color:#ffffff;
  font-family:inherit;
  font-size:17px;
  font-weight:700;
  letter-spacing:.01em;
  cursor:pointer;
  transition:background .18s ease,transform .18s ease;
}
#page-build-your-team .byt-cta:hover{background:#9c4c1c;transform:translateY(-2px);}
#page-build-your-team .byt-cta:active{transform:translateY(0);}

/* ---------- BREADCRUMB ---------- */
#page-build-your-team .byt-crumb{background:var(--byt-card);border-bottom:1px solid var(--byt-line);}
#page-build-your-team .byt-crumb__nav{
  display:flex;align-items:center;gap:8px;
  /* the link itself carries a 44px tap target, so the bar needs only a
     little padding on top of it — 16px here made a 76px breadcrumb bar */
  padding-block:6px;
  font-size:16px;color:var(--byt-text-2);
}
#page-build-your-team .byt-crumb__nav img{display:block;flex:none;}
#page-build-your-team .byt-crumb__nav a{
  display:inline-flex;align-items:center;min-height:44px;
  color:var(--byt-text-2);
}
#page-build-your-team .byt-crumb__nav a:hover{color:var(--byt-signal);}
/* NOT --byt-line: that is a BORDER token and renders at 1.4:1 as text.
   Same trap as the 01-04 numerals. Decorative still means visible. */
#page-build-your-team .byt-crumb__slash{color:#5f6e68;}
#page-build-your-team .byt-crumb__nav [aria-current]{color:var(--byt-text);font-weight:600;}

/* ---------- BENCH FIGURE ---------- */
#page-build-your-team .byt-figure{background:var(--byt-card);padding:clamp(44px,6vw,76px) 0;}
#page-build-your-team .byt-figure__wrap{display:flex;justify-content:center;}
#page-build-your-team .byt-figure__img{
  width:100%;max-width:420px;height:auto;display:block;
}

/* ---------- TRUSTED BY ---------- */
#page-build-your-team .byt-trust{
  background:var(--byt-paper);
  padding:clamp(48px,6vw,80px) 0;
  border-top:1px solid var(--byt-line);
}
#page-build-your-team .byt-trust__h2{
  margin:0 0 6px;
  font-size:clamp(15px,1.6vw,17px);
  font-weight:700;
  letter-spacing:.24em;
  text-transform:uppercase;
  text-align:center;
  color:var(--byt-text-2);
}
#page-build-your-team .byt-trust__row{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;
  gap:clamp(28px,5vw,64px);
  margin-top:34px;
}
#page-build-your-team .byt-trust__row img{
  display:block;height:auto;width:auto;
  max-height:46px;max-width:150px;
  filter:grayscale(1);opacity:.72;
  transition:filter .18s ease,opacity .18s ease;
}
#page-build-your-team .byt-trust__row li:hover img{filter:grayscale(0);opacity:1;}

/* ---------- THE BENCH ---------- */
#page-build-your-team .byt-bench{
  background:var(--byt-card);
  padding:clamp(56px,7vw,104px) 0;
  border-top:1px solid var(--byt-line);
}
#page-build-your-team .byt-bench__h2{
  margin:0;
  font-size:clamp(34px,4.2vw,50px);
  line-height:1.1;
  letter-spacing:-.02em;
  font-weight:800;
  color:var(--byt-ink);
}
#page-build-your-team p.byt-bench__intro{
  margin:18px 0 0;
  max-width:760px;
  font-size:18px;
  line-height:1.7;
  color:var(--byt-text-2);
}

#page-build-your-team .byt-row{
  display:grid;
  grid-template-columns:96px 1fr;
  gap:clamp(16px,3vw,36px);
  padding-block:clamp(34px,4vw,48px);
  border-top:1px solid var(--byt-line);
  margin-top:clamp(30px,4vw,48px);
}
#page-build-your-team .byt-row:first-of-type{margin-top:clamp(38px,5vw,60px);}

#page-build-your-team p.byt-row__no{
  margin:0;
  font-size:clamp(34px,4vw,52px);
  font-weight:800;
  line-height:1;
  letter-spacing:-.03em;
  /* Decorative, but still must clear 3:1 as large bold text. The first
     draft used --byt-line (#d3dcd9) and rendered at 1.4:1 — invisible.
     Section 39A: under 2:1 is always a defect, decoration or not. */
  color:#7d8c87;
}
#page-build-your-team .byt-row__h3{
  margin:0;
  font-size:clamp(26px,2.9vw,34px);
  line-height:1.2;
  letter-spacing:-.01em;
  font-weight:700;
  color:var(--byt-ink);
}
#page-build-your-team p.byt-row__para{
  margin:14px 0 0;
  max-width:760px;
  font-size:17px;
  line-height:1.7;
  color:var(--byt-text-2);
}
#page-build-your-team .byt-inline{
  color:var(--byt-signal);
  font-weight:600;
  border-bottom:1px solid rgba(178,90,36,.4);
}
#page-build-your-team .byt-inline:hover{border-bottom-color:var(--byt-signal);}

/* stack chips — the units available on this bench row */
#page-build-your-team .byt-stack{
  display:flex;flex-wrap:wrap;gap:12px;
  margin-top:26px;
}
#page-build-your-team .byt-chip{display:block;}
#page-build-your-team .byt-chip :is(a,.byt-chip__inner){display:flex;}
#page-build-your-team .byt-chip > a,
#page-build-your-team .byt-chip--flat{
  display:flex;align-items:center;gap:10px;
  min-height:52px;
  padding:8px 16px 8px 10px;
  border:1px solid var(--byt-line);
  border-radius:3px;
  background:var(--byt-paper);
  transition:border-color .18s ease,background .18s ease,transform .18s ease;
}
#page-build-your-team .byt-chip > a:hover{
  border-color:var(--byt-deep);
  background:#ffffff;
  transform:translateY(-2px);
}
#page-build-your-team .byt-chip img{
  display:block;width:30px;height:30px;object-fit:contain;flex:none;
}
#page-build-your-team .byt-chip span{
  font-size:16px;font-weight:600;color:var(--byt-text);
}
/* ROR carries no link in the record — shown as a plain, non-interactive unit */
#page-build-your-team .byt-chip--flat{background:transparent;border-style:dashed;}
#page-build-your-team .byt-chip--flat span{color:var(--byt-text-2);}

/* ---------- CUSTOMER SUCCESS STORIES ---------- */
#page-build-your-team .byt-stories{
  background:var(--byt-ink);
  padding:clamp(56px,7vw,100px) 0;
}
#page-build-your-team .byt-stories__h4{
  margin:0 0 38px;
  font-size:clamp(26px,3vw,36px);
  line-height:1.2;
  font-weight:700;
  letter-spacing:-.01em;
  color:#ffffff;
}
#page-build-your-team .byt-stories__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:clamp(20px,3vw,32px);
}
#page-build-your-team .byt-story{
  background:#1c2e28;
  border:1px solid #2a413a;
  border-radius:4px;
  overflow:hidden;
  display:flex;flex-direction:column;
}
#page-build-your-team .byt-vid{
  position:relative;display:block;width:100%;
  padding:0;border:0;background:#000;cursor:pointer;
  line-height:0;
}
#page-build-your-team .byt-vid img{display:block;width:100%;height:auto;opacity:.82;transition:opacity .18s ease;}
#page-build-your-team .byt-vid:hover img{opacity:1;}
#page-build-your-team .byt-vid__play{
  position:absolute;top:50%;left:50%;
  width:62px;height:62px;margin:-31px 0 0 -31px;
  border-radius:50%;
  background:rgba(178,90,36,.94);
  transition:transform .18s ease;
}
#page-build-your-team .byt-vid__play::after{
  content:"";position:absolute;top:50%;left:54%;
  transform:translate(-50%,-50%);
  border-style:solid;
  border-width:11px 0 11px 18px;
  border-color:transparent transparent transparent #ffffff;
}
#page-build-your-team .byt-vid:hover .byt-vid__play{transform:scale(1.08);}
#page-build-your-team .byt-story__frame{
  display:block;width:100%;aspect-ratio:4/3;border:0;
}
#page-build-your-team p.byt-story__quote{
  padding:22px 22px 26px;
  font-size:16px;line-height:1.7;color:#cbd8d4;
}
#page-build-your-team p.byt-stories__more{margin:34px 0 0;}
#page-build-your-team .byt-stories__more a{
  display:inline-flex;align-items:center;
  min-height:44px;                 /* standalone tap target */
  font-size:17px;font-weight:700;color:var(--byt-signal-lite);
  border-bottom:1px solid rgba(217,138,79,.45);
}
#page-build-your-team .byt-stories__more a:hover{border-bottom-color:var(--byt-signal-lite);}

/* ---------- AREA WE SERVE ---------- */
#page-build-your-team .byt-area{
  background:var(--byt-paper);
  padding:clamp(56px,7vw,100px) 0;
  border-top:1px solid var(--byt-line);
}
#page-build-your-team .byt-area__h2{
  margin:0 0 38px;
  font-size:clamp(30px,3.6vw,44px);
  line-height:1.15;
  letter-spacing:-.02em;
  font-weight:800;
  color:var(--byt-ink);
}
#page-build-your-team .byt-area__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:clamp(20px,3vw,28px);
}
#page-build-your-team .byt-place{
  background:var(--byt-card);
  border:1px solid var(--byt-line);
  border-top:3px solid var(--byt-deep);
  border-radius:3px;
  padding:26px 24px 28px;
}
#page-build-your-team .byt-place__h3{
  margin:0 0 14px;
  font-size:16px;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--byt-deep);
}
#page-build-your-team p.byt-place__tel{margin:0 0 12px;}
#page-build-your-team .byt-place__tel a{
  display:inline-flex;align-items:center;
  min-height:44px;                 /* standalone tap target, not inline prose */
  font-size:18px;font-weight:700;color:var(--byt-ink);
}
#page-build-your-team .byt-place__tel a:hover{color:var(--byt-signal);}
#page-build-your-team p.byt-place__addr{
  font-size:16px;line-height:1.65;color:var(--byt-text-2);
}

/* ---------- CTA MODAL ---------- */
#page-build-your-team .byt-modal{
  display:none;position:fixed;inset:0;z-index:9999;
  background:rgba(12,22,19,.72);
  padding:20px;
  overflow-y:auto;
}
#page-build-your-team .byt-modal.is-open{display:flex;align-items:flex-start;justify-content:center;}
#page-build-your-team .byt-modal__box{
  position:relative;
  width:100%;max-width:620px;
  margin:auto;
  background:#ffffff;
  border-radius:5px;
  overflow:hidden;
}
#page-build-your-team .byt-modal__x{
  position:absolute;top:12px;right:12px;z-index:2;
  width:38px;height:38px;
  display:flex;align-items:center;justify-content:center;
  border:0;border-radius:50%;
  background:#eef2f1;color:var(--byt-ink);
  cursor:pointer;
  transition:background .18s ease;
}
#page-build-your-team .byt-modal__x:hover{background:#dde5e3;}
#page-build-your-team .byt-modal iframe{
  display:block;width:100%;
  min-height:860px;border:0;
}

/* ---------- RESPONSIVE ---------- */
@media (max-width:860px){
  #page-build-your-team .byt-row{grid-template-columns:1fr;gap:10px;}
  #page-build-your-team p.byt-row__no{font-size:30px;}
}
@media (max-width:560px){
  #page-build-your-team .byt-trust__row{gap:26px 30px;}
  #page-build-your-team .byt-trust__row img{max-height:36px;max-width:118px;}
  #page-build-your-team .byt-cta{width:100%;}
  #page-build-your-team .byt-modal{padding:0;}
  #page-build-your-team .byt-modal__box{max-width:none;border-radius:0;min-height:100%;}
}

@media (prefers-reduced-motion:reduce){
  #page-build-your-team *,
  #page-build-your-team *::before,
  #page-build-your-team *::after{
    animation:none !important;
    transition-duration:.01ms !important;
  }
}
