/* =========================================================
   Arctore v4: Elementor layer. Styles the classes set on Elementor
   containers and widgets (Advanced > CSS Classes). Works with or
   without Elementor's own CSS, so the page looks the same either way.
   ========================================================= */
.ac-site { --pad: clamp(4.5rem, 9vw, 8rem); --g: 1rem; background: #fff; }
.ac-site .ac-skip{ position: absolute; left: -9999px; top: 0; z-index: 9999; background: var(--gold); color: var(--night); padding: .75rem 1rem; border-radius: 0 0 10px 0; font-weight: 600; }
.ac-site .ac-skip:focus{ left: 0; }
.ac-site .ac-main{ display: block; }

/* ---------- Elementor resets (scoped) ---------- */
.ac-site .elementor-heading-title { font: inherit; color: inherit; letter-spacing: inherit; line-height: inherit; margin: 0; padding: 0; text-transform: inherit; text-wrap: inherit; }
.ac-site .elementor-heading-title a { color: inherit; }
.ac-site .elementor-widget-container > p:last-child, .ac-site .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.ac-site .elementor-widget-text-editor p { margin: 0 0 1em; }
:where(.ac-site) .e-con { --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; --padding-block-start: 0px; --padding-block-end: 0px; --padding-inline-start: 0px; --padding-inline-end: 0px; --gap: 0px; --row-gap: 0px; --column-gap: 0px; --widgets-spacing: 0px; --kit-widget-spacing: 0px; padding: 0; min-width: 0; position: relative; box-sizing: border-box; }
.ac-site .e-con > .elementor-widget, .ac-site .e-con-inner > .elementor-widget { margin: 0 !important; max-width: 100%; min-width: 0; }
:where(.ac-site) .e-con.e-child { display: flex; flex-direction: column; gap: var(--g); width: auto; max-width: 100%; }
.ac-site a.e-con, .ac-site a.e-con:hover { color: inherit; text-decoration: none; }
.ac-site .elementor-widget-image img { display: block; width: 100%; height: auto; max-width: 100%; }
.ac-site .elementor-widget-video .elementor-wrapper { aspect-ratio: auto; height: 100%; }
.ac-site .elementor-widget-video video { display: block; width: 100%; height: 100%; object-fit: cover; }
.ac-site .elementor-icon-list-items { list-style: none; margin: 0; padding: 0; }
.ac-site .elementor-icon-list-item { display: flex; align-items: flex-start; }
.ac-site .elementor-icon-list-icon { display: none; }
.ac-site .elementor-shortcode{ width: 100%; }

/* ---------- sections ---------- */
.ac-site .e-con.ac-sec, .ac-site .ac-sec{ display: block; padding-block: var(--pad); background: transparent; }
.ac-site .ac-sec > .e-con-inner, .ac-site .ac-wrap{ max-width: var(--max); margin-inline: auto; padding-inline: var(--gutter); width: 100%; box-sizing: border-box; display: flex; flex-direction: column; gap: clamp(2rem, 4vw, 3.5rem); }
.ac-site .ac-sec.ac-tone-mist { background: var(--mist); }
.ac-site .ac-sec.ac-tone-night { background: radial-gradient(120% 120% at 85% 0%, #0E3A72 0%, var(--navy) 45%, var(--night) 100%); color: rgba(255, 255, 255, .78); }
.ac-site .ac-tone-night .ac-h1, .ac-site .ac-tone-night .ac-h2, .ac-site .ac-tone-night h1, .ac-site .ac-tone-night h2, .ac-site .ac-tone-night h3, .ac-site .ac-tone-night .ac-card__title, .ac-site .ac-tone-night .ac-point h3{ color: #fff; }
.ac-site .ac-tone-night .ac-eyebrow{ color: var(--gold); }
.ac-site .ac-tone-night .ac-sub, .ac-site .ac-tone-night .ac-lead, .ac-site .ac-tone-night .ac-card__text{ color: rgba(255, 255, 255, .72); }

/* ---------- type ---------- */
.ac-site .ac-eyebrow{ font-size: .78rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--gold-ink); display: inline-flex; align-items: center; gap: .6rem; }
.ac-site .ac-eyebrow .elementor-heading-title::before, .ac-site p.ac-eyebrow::before{ content: ""; display: inline-block; width: 12px; height: 12px; margin-right: .55rem; vertical-align: -1px; background: var(--star) center/contain no-repeat; }
.ac-site .ac-crumb a{ color: inherit; text-decoration: none; border-bottom: 1px solid currentColor; }
.ac-site .ac-h1{ font-size: clamp(2.3rem, 4.3vw, 3.7rem); font-weight: 700; line-height: 1.04; letter-spacing: -.04em; color: var(--ink); text-wrap: balance; margin: 0; }
.ac-site .ac-h2{ font-size: clamp(1.95rem, 3.5vw, 3.1rem); font-weight: 700; line-height: 1.08; letter-spacing: -.035em; color: var(--ink); text-wrap: balance; margin: 0; }
.ac-site .ac-lead{ font-size: clamp(1.1rem, 1.5vw, 1.3rem); line-height: 1.6; color: var(--text); max-width: 38rem; }
.ac-site .ac-sub{ font-size: 1.0625rem; line-height: 1.65; color: var(--text); max-width: 42rem; }
.ac-site .ac-body{ font-size: 1.0625rem; line-height: 1.75; color: var(--text); }
.ac-site .ac-note{ color: var(--muted); font-size: 1rem; }
.ac-site .ac-head{ gap: .9rem !important; max-width: 50rem; }
.ac-site .ac-head--center{ align-items: center; text-align: center; margin-inline: auto; }
.ac-site .ac-head--center .ac-sub{ margin-inline: auto; }

/* ---------- buttons ---------- */
.ac-site .e-con.ac-btns, .ac-site .ac-btns{ display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: .75rem 1.25rem; }
.ac-site .ac-btns > .elementor-widget { width: auto !important; flex: 0 0 auto; }
.ac-site .ac-btn-w .elementor-button{ display: inline-flex; align-items: center; justify-content: center; gap: .5rem; font-family: var(--sans); font-weight: 600; font-size: .9375rem; line-height: 1.2; padding: 1rem 1.6rem; border-radius: 999px; border: 1px solid transparent; background: var(--navy); color: #fff; text-decoration: none; transition: background .25s, color .25s, border-color .25s, transform .25s var(--ease), box-shadow .25s; }
.ac-site .ac-btn-w .elementor-button:hover{ transform: translateY(-1px); }
.ac-site .ac-btn-gold .elementor-button, .ac-site .ac-btn--gold{ background: var(--gold); color: var(--night); }
.ac-site .ac-btn-gold .elementor-button:hover, .ac-site .ac-btn--gold:hover{ background: var(--gold-2); color: var(--night); box-shadow: 0 12px 28px -12px rgba(230, 171, 43, .8); }
.ac-site .ac-btn-ghost .elementor-button, .ac-site .ac-btn--ghost{ background: #fff; color: var(--navy); border-color: #D5DEEA; }
.ac-site .ac-btn-ghost .elementor-button:hover, .ac-site .ac-btn--ghost:hover{ background: var(--navy); color: #fff; border-color: var(--navy); }
.ac-site .ac-btn-ghost-light .elementor-button, .ac-site .ac-btn--ghost-light{ background: rgba(255, 255, 255, .06); color: #fff; border-color: rgba(255, 255, 255, .28); }
.ac-site .ac-btn-ghost-light .elementor-button:hover, .ac-site .ac-btn--ghost-light:hover{ background: #fff; color: var(--navy); }
.ac-site .ac-btn-text .elementor-button, .ac-site .ac-btn-text-light .elementor-button{ background: none; padding: .4rem 0; border-radius: 0; color: var(--navy); border-bottom: 1px solid currentColor; }
.ac-site .ac-btn-text-light .elementor-button{ color: #fff; }
.ac-site .ac-btn-text .elementor-button::after, .ac-site .ac-btn-text-light .elementor-button::after{ content: "→"; transition: transform .25s var(--ease); }
.ac-site .ac-btn-text .elementor-button:hover::after, .ac-site .ac-btn-text-light .elementor-button:hover::after{ transform: translateX(4px); }
.ac-site .ac-btn--ghost-light{ display: inline-flex; }

/* ---------- media frames ---------- */
.ac-site .ac-img img, .ac-site .ac-vid video{ border-radius: var(--r-lg); }
.ac-site .ac-img--frame img, .ac-site .ac-hero__media .ac-vid video, .ac-site .ac-hero__media .ac-img img{ box-shadow: var(--shadow-lg); }
.ac-site .ac-img--wide img{ border-radius: 28px; box-shadow: var(--shadow-lg); }
.ac-site .ac-img--phone img{ max-width: 360px; margin-inline: auto; box-shadow: none; border-radius: 0; }
.ac-site .ac-img--float img{ box-shadow: 0 50px 90px -40px rgba(0, 0, 0, .6); }
.ac-site .ac-vid{ overflow: hidden; border-radius: var(--r-lg); }
.ac-site .ac-vid video{ aspect-ratio: 6 / 5; background: var(--night); }

/* ---------- hero ---------- */
.ac-site .ac-hero { padding-top: clamp(2.5rem, 5vw, 4.5rem); padding-bottom: clamp(3rem, 6vw, 5.5rem); }
.ac-site .ac-hero > .e-con-inner { display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr); align-items: center; gap: clamp(2rem, 5vw, 5rem); }
.ac-site .ac-hero__copy{ gap: 1.4rem !important; }
.ac-site .ac-hero__copy .ac-btns{ margin-top: .6rem; }
.ac-site .ac-hero__media{ position: relative; }
.ac-site .ac-hero__media::before{ content: ""; position: absolute; inset: 8% -6% -6% 8%; border-radius: 36px; background: var(--gold-soft); z-index: -1; }
.ac-site .ac-hero--dark .ac-hero__media::before, .ac-site .ac-tone-night .ac-hero__media::before{ background: rgba(230, 171, 43, .1); }
.ac-site .ac-hero__media .ac-vid video, .ac-site .ac-hero__media .ac-img img{ max-height: min(62vh, 600px); object-fit: cover; }
.ac-site .ac-hero--center > .e-con-inner { grid-template-columns: 1fr; text-align: center; justify-items: center; }
.ac-site .ac-hero--center .ac-hero__copy{ align-items: center; max-width: 54rem; }
.ac-site .ac-hero--center .ac-lead{ margin-inline: auto; }
.ac-site .ac-hero--center .ac-btns{ justify-content: center; }
.ac-site .ac-hero--center .ac-hero__media{ width: 100%; }
.ac-site .ac-hero--center .ac-hero__media::before{ inset: 12% 4% -5% 4%; }
.ac-site .ac-hero--center .ac-hero__media .ac-img img, .ac-site .ac-hero--center .ac-hero__media .ac-vid video{ max-height: 520px; aspect-ratio: 2 / 1; object-fit: cover; }
.ac-site .ac-hero--dark { padding-bottom: clamp(4rem, 7vw, 6.5rem); }
.ac-site .ac-hero--blog .ac-wrap{ gap: 1rem; }

/* ---------- split ---------- */
.ac-site .ac-split > .e-con-inner, .ac-site .ac-markets > .e-con-inner, .ac-site .ac-name > .e-con-inner, .ac-site .ac-report > .e-con-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 6rem); align-items: center; }
.ac-site .ac-split__copy, .ac-site .ac-markets__copy, .ac-site .ac-name__copy{ gap: 1.2rem !important; }
.ac-site .ac-split__media img{ aspect-ratio: 6 / 5; object-fit: cover; }

/* ---------- why / gaps (night) ---------- */
.ac-site .ac-gaps > .e-con-inner { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(2rem, 5vw, 5rem); align-items: center; }
.ac-site .ac-gaps__intro{ gap: 1.2rem !important; }
.ac-site .ac-gaps__img img{ border-radius: 22px; margin-top: 1rem; opacity: .95; }
.ac-site .ac-gaps__list{ gap: 1rem !important; }
.ac-site .ac-point{ padding: 1.4rem 1.5rem; border-radius: var(--r); background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .1); display: grid !important; grid-template-columns: auto 1fr; gap: .25rem 1rem !important; align-items: start; }
.ac-site .ac-point .ac-ico-w{ grid-row: span 2; }
.ac-site .ac-point .ac-card__title{ font-size: 1.1rem; font-weight: 600; color: #fff; }
.ac-site .ac-point .ac-card__text{ font-size: .975rem; }
.ac-site .ac-sec:not(.ac-tone-night) .ac-point{ background: #fff; border-color: var(--line); }
.ac-site .ac-sec:not(.ac-tone-night) .ac-point .ac-card__title{ color: var(--ink); }
.ac-site .ac-ico{ display: inline-grid; place-items: center; width: 46px; height: 46px; border-radius: 14px; background: rgba(230, 171, 43, .14); color: var(--gold); }
.ac-site .ac-sec:not(.ac-tone-night) .ac-ico{ background: var(--gold-soft); color: var(--gold-ink); }

/* ---------- cards (generic) ---------- */
.ac-site .ac-card{ padding: 1.75rem; border-radius: var(--r); background: #fff; border: 1px solid var(--line); gap: .8rem !important; transition: transform .35s var(--ease), box-shadow .35s, border-color .35s; }
.ac-site .ac-card.is-link:hover, .ac-site .ac-pillar:hover, .ac-site .ac-svc:hover, .ac-site .ac-pcard:hover, .ac-site .ac-sector:hover{ transform: translateY(-4px); box-shadow: var(--shadow); border-color: transparent; }
.ac-site .ac-card__meta{ font-size: .78rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-ink); }
.ac-site .ac-card__title{ font-size: 1.25rem; font-weight: 700; color: var(--ink); line-height: 1.25; letter-spacing: -.015em; }
.ac-site .ac-card__text{ font-size: 1rem; line-height: 1.6; color: var(--text); }
.ac-site .ac-card__more{ margin-top: auto; font-weight: 600; font-size: .925rem; color: var(--navy); }
.ac-site .ac-card__more span{ display: inline-block; transition: transform .25s var(--ease); }
.ac-site a:hover .ac-card__more span, .ac-site .is-link:hover .ac-card__more span, .ac-site .ac-pcard:hover .ac-card__more span{ transform: translateX(4px); }
.ac-site .ac-tone-night .ac-card__more{ color: var(--gold); }

/* ---------- pillars (home) ---------- */
.ac-site .ac-pillars__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; }
.ac-site .ac-pillar{ padding: 0 0 1.5rem; overflow: hidden; }
.ac-site .ac-pillar .ac-card__img img{ border-radius: 0; aspect-ratio: 4 / 3; object-fit: cover; }
.ac-site .ac-pillar > .elementor-widget:not(.ac-card__img){ padding-inline: 1.5rem; }
.ac-site .ac-pillar .ac-ico-w{ margin-top: -2.4rem; position: relative; }
.ac-site .ac-pillar .ac-ico{ background: var(--gold); color: var(--night); box-shadow: 0 10px 20px -8px rgba(230, 171, 43, .7); }
.ac-site .ac-pillar .ac-card__title{ font-size: 1.6rem; }
.ac-site .ac-pillars__foot{ flex-direction: row !important; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1rem !important; padding: 1.4rem 1.6rem; border-radius: var(--r); background: var(--gold-soft); }

/* ---------- project cards ---------- */
.ac-site .ac-featured__grid, .ac-site .ac-related__grid, .ac-site .ac-pgrid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.ac-site .ac-featured__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ac-site .ac-featured__grid > .ac-pcard--big { grid-column: span 3; display: grid !important; grid-template-columns: 1.2fr 1fr; }
.ac-site .ac-pcard{ border-radius: var(--r-lg); background: #fff; border: 1px solid var(--line); overflow: hidden; display: flex; flex-direction: column; gap: 0 !important; transition: transform .35s var(--ease), box-shadow .35s, border-color .35s; }
.ac-site .ac-pcard__img img, .ac-site .ac-pcard__img{ display: block; border-radius: 0 !important; aspect-ratio: 3 / 2; object-fit: cover; width: 100%; }
.ac-site .ac-pcard--big .ac-pcard__img img{ aspect-ratio: auto; height: 100%; min-height: 360px; }
.ac-site .ac-pcard__body{ padding: 1.5rem 1.6rem 1.7rem; gap: .65rem !important; display: flex; flex-direction: column; flex: 1; }
.ac-site .ac-pcard--big .ac-pcard__body{ padding: clamp(1.75rem, 4vw, 3rem); justify-content: center; }
.ac-site .ac-pcard__tag{ font-size: .75rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-ink); margin: 0; }
.ac-site .ac-pcard__title{ font-size: 1.3rem; font-weight: 700; line-height: 1.25; letter-spacing: -.015em; color: var(--ink); margin: 0; }
.ac-site .ac-pcard__title a{ color: inherit; text-decoration: none; }
.ac-site .ac-pcard--big .ac-pcard__title{ font-size: clamp(1.6rem, 2.6vw, 2.2rem); }
.ac-site .ac-pcard__text{ color: var(--text); font-size: .975rem; line-height: 1.6; margin: 0; }
.ac-site .ac-pcard__tags{ list-style: none; margin: .3rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .35rem; }
.ac-site .ac-pcard__tags li{ font-size: .74rem; font-weight: 600; color: var(--navy); background: var(--mist); border-radius: 999px; padding: .3rem .65rem; }
.ac-site .ac-pgrid .ac-card__more{ margin: auto 0 0; padding-top: .4rem; }
.ac-site .ac-tone-mist .ac-pcard{ border-color: transparent; }

/* ---------- steps (home) ---------- */
.ac-site .ac-steps > .e-con-inner { gap: 2.5rem; }
.ac-site .ac-steps__head{ flex-direction: row !important; justify-content: space-between; align-items: flex-end; gap: 1.5rem !important; flex-wrap: wrap; }
.ac-site .ac-steps__row { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0; border-top: 1px solid var(--line); }
.ac-site .ac-step{ padding: 1.75rem 1.25rem 0 0; gap: .45rem !important; position: relative; }
.ac-site .ac-step::before{ content: ""; position: absolute; top: -6px; left: 0; width: 11px; height: 11px; border-radius: 50%; background: #fff; border: 2px solid var(--gold); }
.ac-site .ac-step:last-child::before{ background: var(--gold); }
.ac-site .ac-step__n{ font-size: .8rem; font-weight: 700; color: var(--gold-ink); letter-spacing: .1em; }
.ac-site .ac-step__t{ font-size: 1.3rem; font-weight: 700; color: var(--ink); }
.ac-site .ac-step__d{ color: var(--muted); font-size: .95rem; }

/* ---------- chips ---------- */
.ac-site .ac-chips, .ac-site .ac-chips{ display: flex !important; flex-direction: row !important; flex-wrap: wrap; gap: .6rem !important; }
.ac-site .ac-chips--center{ justify-content: center; }
.ac-site .ac-sectors .ac-chips{ justify-content: center; max-width: 64rem; margin-inline: auto; }
.ac-site .ac-chip{ flex-direction: row !important; align-items: center; gap: .55rem !important; padding: .7rem 1.1rem; border-radius: 999px; background: #fff; border: 1px solid var(--line); color: var(--navy); transition: background .25s, color .25s, border-color .25s, transform .25s var(--ease); }
.ac-site a.ac-chip:hover{ background: var(--navy); color: #fff; border-color: var(--navy); transform: translateY(-2px); }
.ac-site .ac-chip__t{ font-size: .95rem; font-weight: 600; }
.ac-site .ac-chip__i svg{ display: block; color: var(--gold-ink); }
.ac-site a.ac-chip:hover .ac-chip__i svg{ color: var(--gold); }
.ac-site .ac-chip--lg{ padding: 1rem 1.5rem; }
.ac-site .ac-chip--lg .ac-chip__t{ font-size: 1.05rem; }
.ac-site .ac-chip--plain{ background: var(--mist); border-color: transparent; }
.ac-site .ac-sectors > .e-con-inner{ align-items: center; }

/* ---------- logos ---------- */
.ac-site .ac-logos__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 1rem; }
.ac-site .ac-logo{ align-items: center; justify-content: center; height: 118px; padding: 1.1rem 1.4rem; border-radius: var(--r); background: #fff; border: 1px solid var(--line); transition: border-color .3s, box-shadow .3s; }
.ac-site .ac-tone-mist .ac-logo{ border-color: transparent; }
.ac-site .ac-logo img{ max-height: 64px; max-width: 150px; width: auto !important; margin: auto; object-fit: contain; filter: grayscale(1); opacity: .78; transition: filter .3s, opacity .3s; border-radius: 0 !important; box-shadow: none !important; }
.ac-site .ac-logo:hover img{ filter: none; opacity: 1; }
.ac-site .ac-logo:hover{ box-shadow: var(--shadow); }
.ac-site .ac-logo__name{ font-size: .95rem; font-weight: 700; color: var(--navy); text-align: center; line-height: 1.3; letter-spacing: -.01em; }
.ac-site .ac-logo--text .ac-logo__name{ font-size: 1rem; }
.ac-site .ac-logo--more{ background: var(--navy) !important; }
.ac-site .ac-logo--more .ac-logo__name{ color: #fff; }
.ac-site .ac-logos > .e-con-inner{ gap: 2.5rem; }

/* ---------- growth check teaser, insights ---------- */
.ac-site .ac-gc { padding-block: calc(var(--pad) * .6); }
.ac-site .ac-insights__title{ display: none; }

/* ---------- FAQ ---------- */
.ac-site .ac-faq__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(2rem, 6vw, 6rem); align-items: start; }
.ac-site .ac-head--sticky{ position: sticky; top: 110px; }
.ac-site .ac-faq__list{ gap: 0 !important; border-top: 1px solid var(--line); }
.ac-site .ac-faq-item{ padding: 1.5rem 0; border-bottom: 1px solid var(--line); gap: .5rem !important; }
.ac-site .ac-faq-q{ font-size: 1.15rem; font-weight: 600; color: var(--ink); }
.ac-site .ac-faq-a{ color: var(--text); line-height: 1.65; }

/* ---------- CTA ---------- */
.ac-site .ac-cta { padding-block: calc(var(--pad) * .55) var(--pad); }
.ac-site .ac-cta__in{ border-radius: 36px; padding: clamp(2.5rem, 6vw, 5rem); background: radial-gradient(90% 140% at 100% 0%, #1b4f8c 0%, var(--navy) 45%, var(--night) 100%); color: rgba(255, 255, 255, .78); overflow: hidden; position: relative; gap: 1.1rem !important; }
.ac-site .ac-cta__in::before{ content: ""; position: absolute; right: -90px; top: -90px; width: 420px; height: 420px; border-radius: 50%; background: repeating-radial-gradient(circle, transparent 0 28px, rgba(255, 255, 255, .06) 28px 29px); pointer-events: none; }
.ac-site .ac-cta__in::after{ content: ""; position: absolute; right: 100px; top: 100px; width: 58px; height: 58px; background: var(--star) center/contain no-repeat; filter: drop-shadow(0 0 22px rgba(230, 171, 43, .8)); pointer-events: none; }
.ac-site .ac-cta__in > *{ position: relative; max-width: 40rem; }
.ac-site .ac-cta .ac-h2{ color: #fff; }
.ac-site .ac-cta .ac-sub{ color: rgba(255, 255, 255, .75); }
.ac-site .ac-cta .ac-eyebrow{ color: var(--gold); }
.ac-site .ac-cta .ac-btns{ margin-top: .6rem; }

/* ---------- services hub ---------- */
.ac-site .ac-svcgrid__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; }
.ac-site .ac-svc{ border-radius: var(--r-lg); overflow: hidden; background: #fff; border: 1px solid var(--line); gap: 0 !important; transition: transform .35s var(--ease), box-shadow .35s; }
.ac-site .ac-svc:nth-child(1), .ac-site .ac-svc:nth-child(6){ grid-column: span 2; }
.ac-site .ac-svc__img img{ border-radius: 0 !important; aspect-ratio: 4 / 3; object-fit: cover; }
.ac-site .ac-svc:nth-child(1) .ac-svc__img img, .ac-site .ac-svc:nth-child(6) .ac-svc__img img{ aspect-ratio: 16 / 7.5; }
.ac-site .ac-svc__body{ padding: 1.4rem 1.5rem 1.6rem; gap: .45rem !important; flex: 1; }
.ac-site .ac-svc__col{ font-size: .74rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-ink); }
.ac-site .ac-svc__t{ font-size: 1.2rem; font-weight: 700; color: var(--ink); line-height: 1.25; }
.ac-site .ac-svc__d{ color: var(--text); font-size: .95rem; }
.ac-site .ac-band { position: relative; overflow: hidden; padding-block: clamp(6rem, 12vw, 10rem); }
.ac-site .ac-band__bg{ position: absolute !important; inset: 0; z-index: 0; }
.ac-site .ac-band__bg .ac-vid, .ac-site .ac-band__bg .elementor-widget-video{ height: 100%; border-radius: 0; }
.ac-site .ac-band__bg video{ border-radius: 0 !important; aspect-ratio: auto !important; height: 100% !important; opacity: .9; }
.ac-site .ac-band__copy{ position: relative; z-index: 1; max-width: 40rem; gap: 1.2rem !important; }
.ac-site .ac-band > .e-con-inner{ position: static; }
.ac-site .ac-models__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.ac-site .ac-model{ padding: 2rem; }
.ac-site .ac-model--accent{ background: var(--navy); border-color: var(--navy); }
.ac-site .ac-model--accent .ac-card__title{ color: #fff; }
.ac-site .ac-model--accent .ac-card__text{ color: rgba(255, 255, 255, .75); }
.ac-site .ac-model--accent .ac-ico{ background: rgba(230, 171, 43, .18); color: var(--gold); }
.ac-site .ac-model--accent .ac-card__meta{ color: var(--gold); }
.ac-site .ac-tone-night .ac-model:not(.ac-model--accent){ background: rgba(255, 255, 255, .05); border-color: rgba(255, 255, 255, .12); }
.ac-site .ac-checks__in{ display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2rem !important; align-items: center; }
.ac-site .ac-list .elementor-icon-list-item{ padding: .85rem 0; border-bottom: 1px solid var(--line); font-size: 1.02rem; color: var(--ink); font-weight: 500; gap: .8rem; }
.ac-site .ac-list .elementor-icon-list-item::before{ content: ""; flex: 0 0 22px; height: 22px; margin-top: 1px; border-radius: 50%; background: var(--gold-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239A6B0A' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/12px no-repeat; }
.ac-site .ac-list--dots .elementor-icon-list-item{ border: 0; padding: .45rem 0; font-size: .98rem; font-weight: 400; color: var(--text); }
.ac-site .ac-list--dots .elementor-icon-list-item::before{ flex-basis: 8px; height: 8px; margin-top: .55em; background: var(--gold); }
.ac-site .ac-tone-night .ac-list .elementor-icon-list-item{ color: #fff; border-color: rgba(255, 255, 255, .12); }
.ac-site .ac-list--inline .elementor-icon-list-items{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 2rem; }

/* ---------- service pages ---------- */
.ac-site .ac-value { padding-block: calc(var(--pad) * .8); }
.ac-site .ac-value__in{ flex-direction: row !important; gap: clamp(2rem, 6vw, 6rem) !important; align-items: baseline; border-top: 1px solid var(--line); padding-top: 2.5rem; }
.ac-site .ac-value__t{ flex: 1 1 50%; }
.ac-site .ac-value__t .elementor-heading-title, .ac-site .ac-value__t{ color: var(--ink); }
.ac-site .ac-value__d{ flex: 1 1 50%; font-size: 1.2rem; }
.ac-site .ac-do > .e-con-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 6rem); align-items: center; }
.ac-site .ac-do__copy{ gap: 1.5rem !important; }
.ac-site .ac-do__media img{ aspect-ratio: 4 / 3; object-fit: cover; box-shadow: var(--shadow-lg); }
.ac-site .ac-do__media .ac-img--phone img{ aspect-ratio: auto; box-shadow: none; }
.ac-site .ac-get__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.ac-site .ac-get__card{ padding: 2rem; background: var(--mist); border: 0; }
.ac-site .ac-get__card .ac-card__meta{ font-size: 2.2rem; letter-spacing: -.02em; color: var(--gold); font-weight: 700; }
.ac-site .ac-measure { padding-block: calc(var(--pad) * .7); }
.ac-site .ac-measure__in{ gap: 1rem !important; max-width: 56rem; }
.ac-site .ac-measure__t{ font-size: clamp(1.5rem, 2.8vw, 2.3rem); font-weight: 600; line-height: 1.3; letter-spacing: -.02em; color: #fff; }
.ac-site .ac-works { padding-block: 0 calc(var(--pad) * .4); }
.ac-site .ac-works__in{ flex-direction: row !important; align-items: center; gap: 1.25rem !important; flex-wrap: wrap; padding: 1.4rem 1.6rem; border: 1px solid var(--line); border-radius: var(--r); }
.ac-site .ac-works__label{ font-size: .78rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.ac-site .ac-qgrid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; }
.ac-site .ac-q{ padding: 1.6rem 1.3rem; border-radius: var(--r); background: var(--navy); gap: .9rem !important; }
.ac-site .ac-q__n{ color: var(--gold); font-weight: 700; font-size: .9rem; }
.ac-site .ac-q__t{ color: #fff; font-size: 1.1rem; font-weight: 600; line-height: 1.35; }
.ac-site .ac-deliv__grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .75rem; }
.ac-site .ac-deliv__i{ flex-direction: row !important; align-items: center; gap: .75rem !important; padding: 1.1rem 1.2rem; border-radius: var(--r-sm); background: #fff; border: 1px solid var(--line); }
.ac-site .ac-deliv__ic{ color: var(--gold-ink); }
.ac-site .ac-deliv__ic svg{ display: block; }
.ac-site .ac-deliv__t{ font-weight: 600; color: var(--ink); font-size: .95rem; }
.ac-site .ac-tl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; counter-reset: tl; }
.ac-site .ac-tl__i{ padding: 2rem; border-radius: var(--r-lg); background: #fff; gap: .6rem !important; border-top: 4px solid var(--gold); }
.ac-site .ac-tl__k{ font-size: .78rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-ink); }
.ac-site .ac-tl__t{ font-size: 1.35rem; font-weight: 700; color: var(--ink); }
.ac-site .ac-apps__grid { display: flex; flex-direction: row; justify-content: center; gap: 1.5rem; flex-wrap: wrap; }
.ac-site .ac-app{ align-items: center; text-align: center; gap: .35rem !important; width: 190px; padding: 1.5rem; border-radius: var(--r-lg); background: #fff; }
.ac-site .ac-app img{ width: 96px !important; height: 96px; object-fit: contain; padding: 14px; border-radius: 26px !important; background: var(--mist); box-shadow: 0 10px 24px -14px rgba(4, 38, 76, .5) !important; margin-inline: auto; }
.ac-site .ac-app__t{ font-weight: 700; color: var(--ink); margin-top: .5rem; }
.ac-site .ac-app__d{ font-size: .85rem; color: var(--muted); }

/* ---------- industries ---------- */
.ac-site .ac-sectors-grid__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.ac-site .ac-sector{ padding: 1.75rem; border-radius: var(--r-lg); background: #fff; border: 1px solid var(--line); gap: .9rem !important; scroll-margin-top: 110px; transition: transform .35s var(--ease), box-shadow .35s, border-color .35s; }
.ac-site .ac-sector:target{ border-color: var(--gold); box-shadow: 0 0 0 3px var(--gold-soft); }
.ac-site .ac-sector__t{ font-size: 1.3rem; font-weight: 700; color: var(--ink); }
.ac-site .ac-sector__rows{ gap: .8rem !important; }
.ac-site .ac-sector__k{ font-size: .72rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.ac-site .ac-sector__v{ font-size: .98rem; color: var(--text); line-height: 1.55; }
.ac-site .ac-sector .ac-card__more a, .ac-site .ac-sector .ac-card__more{ color: var(--navy); }
.ac-site .ac-markets__media .ac-vid video, .ac-site .ac-markets__media img{ aspect-ratio: 4 / 3; }

/* ---------- projects ---------- */
.ac-site .ac-role__grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(2rem, 6vw, 5rem); align-items: start; }
.ac-site .ac-role__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.ac-site .ac-role__list .ac-point{ grid-template-columns: 1fr; }
.ac-site .ac-role__list .ac-point .ac-ico-w{ grid-row: auto; margin-bottom: .4rem; }
.ac-site .ac-library .elementor-shortcode{ display: flex; flex-direction: column; gap: 2rem; }

/* project page */
.ac-site .ac-phero > .e-con-inner { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(2rem, 5vw, 4.5rem); align-items: center; }
.ac-site .ac-phero { padding-top: clamp(2.5rem, 5vw, 4rem); }
.ac-site .ac-phero__copy{ gap: 1.2rem !important; }
.ac-site .ac-phero__media img{ aspect-ratio: 3 / 2; object-fit: cover; }
.ac-site .ac-facts { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 0; border-top: 1px solid var(--line); margin-top: .8rem; }
.ac-site .ac-fact{ padding: 1.1rem 1rem 0 0; gap: .3rem !important; }
.ac-site .ac-fact__k{ font-size: .72rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-ink); }
.ac-site .ac-fact__v{ font-size: .92rem; line-height: 1.5; color: var(--ink); }
.ac-site .ac-brief__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.ac-site .ac-brief__card{ padding: clamp(1.8rem, 4vw, 2.8rem); border-radius: var(--r-lg); background: #fff; gap: 1rem !important; }
.ac-site .ac-brief__card--alt{ background: var(--navy); }
.ac-site .ac-brief__card--alt .ac-brief__t{ color: #fff; }
.ac-site .ac-brief__card--alt .ac-eyebrow{ color: var(--gold); }
.ac-site .ac-brief__t{ font-size: clamp(1.15rem, 1.8vw, 1.45rem); line-height: 1.5; color: var(--ink); font-weight: 500; letter-spacing: -.01em; }
.ac-site .ac-what__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.ac-site .ac-what__grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ac-site .ac-what__grid--1 { grid-template-columns: minmax(0, 1fr); max-width: 44rem; }
.ac-site .ac-ws{ padding: 2rem; border-radius: var(--r-lg); border: 1px solid var(--line); gap: .7rem !important; }
.ac-site .ac-ws__n{ font-size: 2.4rem; font-weight: 700; color: var(--gold); line-height: 1; letter-spacing: -.03em; }
.ac-site .ac-ws__t{ font-size: 1.25rem; font-weight: 700; color: var(--ink); }
.ac-site .ac-outcomes__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.ac-site .ac-out{ padding: 2rem; border-radius: var(--r-lg); background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .12); gap: .6rem !important; }
.ac-site .ac-out__star{ display: block; width: 26px; height: 26px; background: var(--star) center/contain no-repeat; filter: drop-shadow(0 0 10px rgba(230, 171, 43, .6)); }
.ac-site .ac-out__t{ font-size: 1.3rem; font-weight: 700; color: #fff; }
.ac-site .ac-out__d{ color: rgba(255, 255, 255, .72); }
.ac-site .ac-caps { padding-block: calc(var(--pad) * .6); }
.ac-site .ac-caps__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.ac-site .ac-caps__col{ gap: 1rem !important; }

/* ---------- how we work ---------- */
.ac-site .ac-stages__list{ gap: 0 !important; border-top: 1px solid var(--line); }
.ac-site .ac-stage{ display: grid !important; grid-template-columns: 90px minmax(0, 1fr) 260px; gap: 1.5rem !important; align-items: center; padding: 1.8rem 0; border-bottom: 1px solid var(--line); }
.ac-site .ac-stage__n{ font-size: 2.6rem; font-weight: 700; color: var(--gold); letter-spacing: -.03em; line-height: 1; }
.ac-site .ac-stage__body{ gap: .35rem !important; }
.ac-site .ac-stage__t{ font-size: 1.45rem; font-weight: 700; color: var(--ink); }
.ac-site .ac-stage__d{ color: var(--text); }
.ac-site .ac-stage__sign{ padding: 1rem 1.2rem; border-radius: var(--r-sm); background: var(--gold-soft); gap: .2rem !important; }
.ac-site .ac-stage__k{ font-size: .7rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-ink); }
.ac-site .ac-stage__v{ font-weight: 600; color: var(--ink); }
.ac-site .ac-report__copy{ gap: 2rem !important; }
.ac-site .ac-report__list { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.ac-site .ac-metric{ padding: 1.4rem; border-radius: var(--r); background: #fff; gap: .4rem !important; border-left: 3px solid var(--gold); }
.ac-site .ac-metric__t{ font-size: 1.1rem; font-weight: 700; color: var(--ink); }
.ac-site .ac-metric__d{ font-size: .93rem; color: var(--text); }
.ac-site .ac-90__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.ac-site .ac-90__m{ padding: 2rem; border-radius: var(--r-lg); background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .12); gap: .5rem !important; }
.ac-site .ac-90__k{ color: var(--gold); font-weight: 700; font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; }
.ac-site .ac-90__t{ color: #fff; font-size: 1.5rem; font-weight: 700; }
.ac-site .ac-90__d{ color: rgba(255, 255, 255, .72); }
.ac-site .ac-90 .ac-checks__in{ display: flex !important; flex-direction: column !important; gap: .6rem !important; align-items: stretch; padding-top: 1rem; }
.ac-site .ac-90 .ac-works__label{ color: rgba(255, 255, 255, .6); }

/* ---------- about ---------- */
.ac-site .ac-story__grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(2rem, 6vw, 6rem); }
.ac-site .ac-story__head{ gap: 1rem !important; }
.ac-site .ac-name__media .ac-vid video{ aspect-ratio: 16 / 10; }
.ac-site .ac-vm__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.ac-site .ac-vm__card{ padding: clamp(2rem, 4vw, 3rem); }
.ac-site .ac-vm__card .ac-card__title{ font-size: clamp(1.35rem, 2.2vw, 1.8rem); line-height: 1.35; font-weight: 600; }
.ac-site .ac-vm__card:last-child{ background: var(--navy); border-color: var(--navy); }
.ac-site .ac-vm__card:last-child .ac-card__title{ color: #fff; }
.ac-site .ac-vm__card:last-child .ac-card__meta{ color: var(--gold); }
.ac-site .ac-vm__card:last-child .ac-ico{ background: rgba(230, 171, 43, .18); color: var(--gold); }
.ac-site .ac-values__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; }
.ac-site .ac-value-card{ border: 0; }

/* ---------- contact ---------- */
.ac-site .ac-contact > .e-con-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); align-items: start; }
.ac-site .ac-contact { padding-top: clamp(2.5rem, 5vw, 4rem); }
.ac-site .ac-contact__copy{ gap: 1.4rem !important; }
.ac-site .ac-direct{ gap: .75rem !important; }
.ac-site .ac-direct__i{ display: grid !important; grid-template-columns: auto 1fr; column-gap: 1rem !important; row-gap: .1rem !important; align-items: center; padding: 1rem 1.2rem; border-radius: var(--r); background: var(--mist); }
.ac-site .ac-direct__i .ac-ico-w{ grid-row: span 2; }
.ac-site .ac-direct__k{ font-size: .72rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.ac-site .ac-direct__v{ font-weight: 600; color: var(--ink); }
.ac-site .ac-direct__v a{ color: inherit; text-decoration: none; }
.ac-site .ac-contact__img img{ aspect-ratio: 3 / 2; object-fit: cover; margin-top: .5rem; }
.ac-site .ac-contact__form{ padding: clamp(1.75rem, 4vw, 2.75rem); border-radius: 28px; background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow-lg); gap: .6rem !important; position: sticky; top: 100px; }
.ac-site .ac-form__title{ font-size: 1.6rem; font-weight: 700; color: var(--ink); }
.ac-site .ac-form__note{ color: var(--muted); font-size: .95rem; }
.ac-site .ac-thanks__in{ align-items: center; text-align: center; gap: 1.2rem !important; max-width: 60rem; margin-inline: auto; display: flex; flex-direction: column; }
.ac-site .ac-thanks__star, .ac-site .ac-thanks__in > .ac-thanks__star{ display: block; width: 56px; height: 56px; background: var(--star) center/contain no-repeat; filter: drop-shadow(0 0 18px rgba(230, 171, 43, .7)); margin-inline: auto; }
.ac-site .ac-thanks__next { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 2rem; text-align: left; width: 100%; }
.ac-site .ac-legal__in{ max-width: 48rem; margin-inline: auto; gap: 1.2rem !important; display: flex; flex-direction: column; padding-inline: var(--gutter); }
.ac-site .ac-prose{ font-size: 1.0625rem; line-height: 1.75; color: var(--text); }
.ac-site .ac-prose h2{ font-size: 1.5rem; margin: 2.2rem 0 .8rem; color: var(--ink); }
.ac-site .ac-prose h3{ font-size: 1.2rem; margin: 1.6rem 0 .6rem; color: var(--ink); }
.ac-site .ac-prose a{ color: var(--navy); }

/* ---------- motion ---------- */
@media (prefers-reduced-motion: reduce) {
	.ac-site video { display: none; }
	.ac-site .elementor-widget-video .elementor-wrapper { background: var(--night) center/cover no-repeat; }
}
.elementor-editor-active .ac-reveal { opacity: 1 !important; transform: none !important; }

/* ---------- tablet ---------- */
@media (max-width: 1100px) {
	.ac-site .ac-svcgrid__grid, .ac-site .ac-pillars__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ac-site .ac-svc:nth-child(1), .ac-site .ac-svc:nth-child(6){ grid-column: span 2; }
	.ac-site .ac-qgrid, .ac-site .ac-deliv__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.ac-site .ac-values__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ac-site .ac-steps__row { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 2rem; }
	.ac-site .ac-stage{ grid-template-columns: 70px minmax(0, 1fr); }
	.ac-site .ac-stage__sign{ grid-column: 2; }
}
@media (max-width: 900px) {
	.ac-site .ac-hero > .e-con-inner, .ac-site .ac-split > .e-con-inner, .ac-site .ac-markets > .e-con-inner, .ac-site .ac-name > .e-con-inner, .ac-site .ac-report > .e-con-inner,
	.ac-site .ac-gaps > .e-con-inner, .ac-site .ac-do > .e-con-inner, .ac-site .ac-phero > .e-con-inner, .ac-site .ac-contact > .e-con-inner, .ac-site .ac-faq__grid,
	.ac-site .ac-role__grid, .ac-site .ac-story__grid, .ac-site .ac-checks__in, .ac-site .ac-caps__grid { grid-template-columns: minmax(0, 1fr) !important; }
	.ac-site .ac-featured__grid, .ac-site .ac-related__grid, .ac-site .ac-pgrid, .ac-site .ac-get__grid, .ac-site .ac-models__grid, .ac-site .ac-sectors-grid__grid,
	.ac-site .ac-what__grid, .ac-site .ac-outcomes__grid, .ac-site .ac-tl, .ac-site .ac-90__grid, .ac-site .ac-thanks__next { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ac-site .ac-featured__grid > .ac-pcard--big { grid-column: span 2; grid-template-columns: 1fr; }
	.ac-site .ac-pcard--big .ac-pcard__img img{ min-height: 0; aspect-ratio: 3 / 2; }
	.ac-site .ac-head--sticky, .ac-site .ac-contact__form{ position: static; }
	.ac-site .ac-hero__media{ order: 2; }
	.ac-site .ac-value__in{ flex-direction: column !important; gap: 1rem !important; }
	.ac-site .ac-brief__grid, .ac-site .ac-vm__grid { grid-template-columns: 1fr; }
}
/* ---------- phone ---------- */
@media (max-width: 640px) {
	.ac-site { --pad: 4rem; }
	.ac-site .ac-featured__grid, .ac-site .ac-related__grid, .ac-site .ac-pgrid, .ac-site .ac-get__grid, .ac-site .ac-models__grid, .ac-site .ac-sectors-grid__grid,
	.ac-site .ac-what__grid, .ac-site .ac-outcomes__grid, .ac-site .ac-tl, .ac-site .ac-90__grid, .ac-site .ac-thanks__next, .ac-site .ac-svcgrid__grid,
	.ac-site .ac-pillars__grid, .ac-site .ac-role__list, .ac-site .ac-report__list, .ac-site .ac-values__grid, .ac-site .ac-qgrid, .ac-site .ac-facts { grid-template-columns: minmax(0, 1fr); }
	.ac-site .ac-svc:nth-child(1), .ac-site .ac-svc:nth-child(6), .ac-site .ac-featured__grid > .ac-pcard--big { grid-column: auto; }
	.ac-site .ac-svc:nth-child(1) .ac-svc__img img, .ac-site .ac-svc:nth-child(6) .ac-svc__img img{ aspect-ratio: 4 / 3; }
	.ac-site .ac-deliv__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ac-site .ac-steps__row { grid-template-columns: minmax(0, 1fr); border-top: 0; border-left: 1px solid var(--line); padding-left: 1.4rem; row-gap: 1.4rem; }
	.ac-site .ac-step{ padding: 0; }
	.ac-site .ac-step::before{ top: 6px; left: -1.4rem; transform: translateX(-6px); }
	.ac-site .ac-logos__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; }
	.ac-site .ac-logo{ height: 92px; padding: .8rem; }
	.ac-site .ac-logo img{ max-height: 48px; max-width: 120px; }
	.ac-site .ac-stage{ grid-template-columns: minmax(0, 1fr); gap: .6rem !important; }
	.ac-site .ac-stage__sign{ grid-column: auto; }
	.ac-site .ac-list--inline .elementor-icon-list-items{ grid-template-columns: 1fr; }
	.ac-site .ac-hero__media::before{ inset: 6% -3% -4% 6%; }
	.ac-site .ac-hero--center .ac-hero__media .ac-img img{ aspect-ratio: 4 / 3; }
	.ac-site .ac-fact{ padding-right: 0; }
	.ac-site .ac-pillars__foot, .ac-site .ac-steps__head{ flex-direction: column !important; align-items: flex-start; }
	.ac-site .ac-cta__in::after{ right: 30px; top: 30px; width: 40px; height: 40px; }
	.ac-site .ac-btn-w .elementor-button{ padding: .95rem 1.35rem; }
}

/* ---------- v4 fixes ---------- */
.ac-site .ac-sec.ac-cta { background: none; border-radius: 0; padding-inline: 0; color: inherit; overflow: visible; }
.ac-site .ac-sec.ac-cta::before, .ac-site .ac-sec.ac-cta::after { content: none; display: none; }
.ac-site .ac-logos__grid { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.ac-site .ac-facts { grid-template-columns: minmax(0, 1fr); border-top: 0; margin-top: .4rem; }
.ac-site .ac-fact { display: grid !important; grid-template-columns: 110px minmax(0, 1fr); gap: 1rem !important; padding: .85rem 0; border-top: 1px solid var(--line); align-items: baseline; }
.ac-site .ac-fact:last-child { border-bottom: 1px solid var(--line); }
.ac-site .ac-works__chips { display: flex !important; flex-direction: row !important; flex-wrap: wrap; gap: .5rem !important; }
@media (max-width: 640px) { .ac-site .ac-fact { grid-template-columns: minmax(0, 1fr); gap: .2rem !important; } .ac-site .ac-logos__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* =========================================================
   v4.1: contact shortcuts, Clients page, tighter fit on every screen
   ========================================================= */
/* header call + WhatsApp shortcuts */
.ac-hd__quick { display: flex; align-items: center; gap: .5rem; flex: none; }
.ac-hd__icon { width: 42px; height: 42px; border-radius: 50%; display: inline-grid; place-items: center; border: 1px solid var(--line); background: #fff; color: var(--navy); transition: background .2s, color .2s, border-color .2s, transform .2s; }
.ac-hd__icon:hover { transform: translateY(-1px); }
.ac-hd__icon--call:hover { background: var(--navy); color: #fff; border-color: var(--navy); }
.ac-hd__icon--wa { color: #128C4A; }
.ac-hd__icon--wa:hover { background: #25D366; color: #fff; border-color: #25D366; }
.ac-hd__in { gap: 1.5rem; }
@media (min-width: 1081px) and (max-width: 1280px) { .ac-hd__in { gap: 1rem; } .ac-hd__link { padding-inline: .6rem !important; } .ac-hd__quick { display: none; } }
@media (max-width: 1080px) { .ac-hd__quick { margin-left: auto; } .ac-hd__burger { margin-left: .25rem !important; } .ac-hd__icon { width: 40px; height: 40px; } }
.ac-drawer__quick { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; margin-top: .75rem; }
.ac-drawer__qbtn { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; padding: .85rem 1rem; border-radius: 999px; border: 1px solid var(--line); color: var(--navy); font-weight: 600; text-decoration: none; }
.ac-drawer__qbtn--wa { background: #25D366; border-color: #25D366; color: #fff; }

/* floating call + WhatsApp, every page and screen */
.ac-wa { display: none !important; }
.ac-float { position: fixed; right: max(1rem, env(safe-area-inset-right)); bottom: max(1rem, env(safe-area-inset-bottom)); z-index: 80; display: flex; flex-direction: column; gap: .6rem; }
.ac-float__btn { position: relative; width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; color: #fff; box-shadow: 0 14px 30px -10px rgba(2, 27, 56, .55); transition: transform .2s; }
.ac-float__btn:hover { transform: scale(1.06); }
.ac-float__btn--wa { background: #25D366; }
.ac-float__btn--call { background: var(--navy); }
.ac-float__tip { position: absolute; right: calc(100% + .6rem); top: 50%; transform: translateY(-50%); white-space: nowrap; background: var(--night); color: #fff; font-size: .8125rem; font-weight: 600; padding: .4rem .7rem; border-radius: 8px; opacity: 0; pointer-events: none; transition: opacity .2s; }
.ac-float__btn:hover .ac-float__tip, .ac-float__btn:focus-visible .ac-float__tip { opacity: 1; }
@media (max-width: 640px) { .ac-float { right: .75rem; bottom: .75rem; gap: .5rem; } .ac-float__btn { width: 50px; height: 50px; } .ac-float__tip { display: none; } }
body .ac-cookie { z-index: 90; }

/* Clients page */
.ac-site .ac-hero--textonly { padding-bottom: clamp(1rem, 3vw, 2rem); }
.ac-site .ac-logos--all .ac-logos__grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; }
.ac-site .ac-logos--all .ac-logo { height: 132px; }
.ac-site .ac-logos--all .ac-logo img { max-height: 72px; max-width: 160px; filter: none; opacity: 1; }
@media (max-width: 1100px) { .ac-site .ac-logos--all .ac-logos__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 820px) { .ac-site .ac-logos--all .ac-logos__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px) { .ac-site .ac-logos--all .ac-logos__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; } .ac-site .ac-logos--all .ac-logo { height: 100px; } .ac-site .ac-logos--all .ac-logo img { max-height: 54px; max-width: 120px; } }

/* fit: tablet (641 to 1100) */
@media (max-width: 1100px) and (min-width: 641px) {
	.ac-site { --pad: clamp(3.75rem, 8vw, 5.5rem); }
	.ac-site .ac-logos__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 900px) and (min-width: 641px) {
	/* stacked media stays a comfortable size instead of filling the whole width */
	.ac-site .ac-hero__media, .ac-site .ac-split .ac-img, .ac-site .ac-split .ac-vid, .ac-site .ac-name .ac-img, .ac-site .ac-markets .ac-img, .ac-site .ac-gaps .ac-img { max-width: 620px; width: 100%; margin-inline: auto; }
	.ac-site .ac-hero__copy { max-width: 640px; }
	.ac-site .ac-hero__media::before { inset: 6% -3% -4% 6%; }
}
/* fit: phone (640 and below) */
@media (max-width: 640px) {
	.ac-site { --pad: 3.25rem; }
	.ac-site .ac-hero { padding-top: 1.75rem; padding-bottom: 2.75rem; }
	.ac-site .ac-hero > .e-con-inner { gap: 2rem; }
	.ac-site .ac-sec > .e-con-inner, .ac-site .ac-wrap { gap: 1.75rem; }
	.ac-site .ac-hero__media::before { inset: 5% 0 -4% 5%; border-radius: 24px; }
	.ac-site .ac-hero__media .ac-vid video, .ac-site .ac-hero__media .ac-img img { max-height: 46vh; }
	.ac-site .ac-hero .ac-btns { width: 100%; }
	.ac-site .ac-hero .ac-btn-gold, .ac-site .ac-hero .ac-btn-gold .elementor-button { width: 100%; justify-content: center; text-align: center; }
	.ac-site .ac-btn-text .elementor-button { width: auto !important; }
	.ac-site .ac-cta__in { padding: 2.5rem 1.4rem !important; }
	.ac-site .ac-h1 { overflow-wrap: anywhere; }
	.ac-site img, .ac-site video { max-width: 100%; }
	.ac-site .ac-logo { height: 88px; }
}
@media (max-width: 380px) {
	.ac-site .ac-logos__grid { gap: .5rem; }
	.ac-hd__icon { width: 36px; height: 36px; }
	.ac-hd__quick { gap: .35rem; }
}
/* v4.1.1: logo tiles always centre their image */
.ac-site .ac-logo{ display: flex; flex-direction: column; }
.ac-site .ac-logo .elementor-widget-image, .ac-site .ac-logo .elementor-widget-container{ width: 100%; display: flex; justify-content: center; align-items: center; }
/* v4.1.1: hero headline sized for laptop and desktop folds (beats legacy main.css) */
.ac-site .ac-h1, .ac-site .ac-h1 .elementor-heading-title { font-size: clamp(2.3rem, 3.9vw, 3.6rem) !important; line-height: 1.05 !important; }
.ac-site .ac-hero--center .ac-h1, .ac-site .ac-hero--center .ac-h1 .elementor-heading-title { font-size: clamp(2.3rem, 4.4vw, 3.9rem) !important; }
@media (min-width: 1081px) {
	.ac-site .ac-hero { padding-top: clamp(2.5rem, 4vw, 4rem); }
	.ac-site .ac-hero__media::before { inset: 7% -3% -4% 7%; }
	.ac-site .ac-hero__media .ac-vid video, .ac-site .ac-hero__media .ac-img img { max-height: min(58vh, 560px); }
}
@media (min-width: 901px) and (max-width: 1080px) { .ac-site .ac-hero__media::before { inset: 6% -2% -4% 6%; } }
@media (max-width: 640px) { .ac-site .ac-h1, .ac-site .ac-h1 .elementor-heading-title { font-size: clamp(2rem, 9vw, 2.4rem) !important; } }
.ac-site .ac-logo img{ max-width: min(150px, 100%) !important; }
.ac-site .ac-logos--all .ac-logo img{ max-width: min(160px, 100%) !important; }
@media (max-width: 640px) { .ac-site .ac-logos--all .ac-logo img{ max-width: min(120px, 100%) !important; } }

/* =====================================================================
   v4.2 — review of 8 Nov 2026: white first, one font, less space, simpler menu.
   Colors: white 70% · navy 25% · gold 5%.
   ===================================================================== */
:root, .ac-site {
	--gold: #E3A72F; --gold-2: #EDB847; --gold-ink: #8A5F08;
	--gold-soft: #F5F7FB;              /* the cream color is gone: anything that used it is now blue-tinted white */
	--text: #4A5568; --muted: #66758A; --blue: #1E4F8C; --line: #E6EAF0; --mist: #F5F7FB;
	--shadow: 0 1px 2px rgba(4, 38, 76, .04); --shadow-lg: 0 18px 40px -24px rgba(4, 38, 76, .22);
}
.ac-site { --pad: 80px; }
@media (max-width: 900px) { .ac-site { --pad: 64px; } }
@media (max-width: 640px) { .ac-site { --pad: 56px; } }

/* One font everywhere */
body, button, input, select, textarea,
.ac-site .elementor-widget-container, .ac-site .elementor-heading-title, .ac-site .elementor-button,
.ac-hd, .ac-footer, .ac-drawer { font-family: var(--sans) !important; }

/* Type: lighter, more refined headings */
.ac-site .ac-h1, .ac-site .ac-h1 .elementor-heading-title { font-weight: 600 !important; letter-spacing: -.03em !important; font-size: clamp(2.3rem, 4.2vw, 3.75rem) !important; line-height: 1.06 !important; }
.ac-site .ac-hero--center .ac-h1, .ac-site .ac-hero--center .ac-h1 .elementor-heading-title { font-size: clamp(2.3rem, 4.4vw, 3.75rem) !important; }
.ac-site .ac-h2, .ac-site .ac-h2 .elementor-heading-title { font-size: clamp(1.75rem, 2.7vw, 2.45rem) !important; font-weight: 600 !important; letter-spacing: -.025em; line-height: 1.12; }
.ac-site .ac-h3 .elementor-heading-title { font-size: clamp(1.3rem, 1.8vw, 1.6rem); font-weight: 600; color: var(--ink); letter-spacing: -.015em; line-height: 1.2; margin: 0; }
.ac-site .ac-card__title .elementor-heading-title, .ac-site .ac-svc__t .elementor-heading-title, .ac-site .ac-pcard__title, .ac-site .ac-step__t .elementor-heading-title { font-weight: 600 !important; }
.ac-site .ac-eyebrow .elementor-heading-title { color: var(--gold-ink); }
@media (max-width: 640px) {
	.ac-site .ac-h1, .ac-site .ac-h1 .elementor-heading-title, .ac-site .ac-hero--center .ac-h1 .elementor-heading-title { font-size: clamp(2rem, 9vw, 2.3rem) !important; }
	.ac-site .ac-h2, .ac-site .ac-h2 .elementor-heading-title { font-size: clamp(1.55rem, 7vw, 1.85rem) !important; }
}

/* Tones: white or blue-tinted white. The only navy areas are the final CTA and the footer. */
.ac-site .ac-sec.ac-tone-mist { background: var(--mist); }
.ac-site .ac-hero__media::before { display: none !important; content: none !important; }
.ac-site .ac-hero { padding-top: clamp(2rem, 4vw, 3.5rem); padding-bottom: clamp(2.5rem, 5vw, 4rem); }
.ac-site .ac-hero--tight { padding-bottom: clamp(1.25rem, 2.5vw, 2rem); }
.ac-site .ac-hero--textonly > .e-con-inner { display: block !important; max-width: 52rem; margin-inline: auto; text-align: center; }
.ac-site .ac-hero--textonly .ac-btns { justify-content: center; }
.ac-site .ac-hero__media .ac-vid video, .ac-site .ac-hero__media img { border-radius: 16px !important; box-shadow: none !important; }
.ac-site .ac-img img, .ac-site .ac-vid video { border-radius: 16px; }

/* Cards: thin lines, very light or no shadow */
.ac-site .ac-pcard, .ac-site .ac-svc, .ac-site .ac-pillar, .ac-site .ac-get__card, .ac-site .ac-model, .ac-site .ac-sector, .ac-site .ac-point, .ac-site .ac-value-card, .ac-site .ac-ws { box-shadow: none !important; border: 1px solid var(--line); }
.ac-site .ac-pcard:hover, .ac-site .ac-svc:hover, .ac-site .ac-pillar:hover, .ac-site .ac-sector:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg) !important; }
.ac-site .ac-ico, .ac-site .ac-sec:not(.ac-tone-night) .ac-ico, .ac-site .ac-pillar .ac-ico { background: transparent !important; box-shadow: none !important; color: var(--navy) !important; width: auto; height: auto; border-radius: 0; }
.ac-site .ac-ico svg { stroke-width: 1.5; }

/* Buttons: one gold button per screen; second buttons are navy outline or text links */
.ac-site .ac-btn-ghost .elementor-button { background: transparent; border-color: var(--navy); color: var(--navy); }
.ac-site .ac-btn-text .elementor-button:hover { color: var(--blue); }

/* Reveal: images only, 0.4s */
.ac-js .ac-reveal { opacity: 0; transform: translateY(8px); transition: opacity .4s ease, transform .4s ease !important; transition-delay: 0s !important; }
.ac-js .ac-reveal.is-in { opacity: 1; transform: none; }
.ac-js .ac-hero2__copy > * { opacity: 1 !important; transform: none !important; animation: none !important; }

/* ---------- Header: 72px, white, five links + one button ---------- */
.ac-hd { background: rgba(255, 255, 255, 0); -webkit-backdrop-filter: none; backdrop-filter: none; border-bottom: 1px solid transparent; transition: background .25s, box-shadow .25s, border-color .25s; }
.ac-hd.is-scrolled, .ac-hd.is-drawer-open, .ac-hd:has(.is-open) { background: #fff; box-shadow: 0 6px 20px -16px rgba(4, 38, 76, .35); border-bottom-color: var(--line); }
.ac-hd__in { height: 72px !important; gap: 2rem; }
.ac-hd__list { gap: .25rem; }
.ac-hd__link { position: relative; background: transparent !important; font-weight: 500; color: var(--navy); }
.ac-hd__link::after { content: ""; position: absolute; left: .9rem; right: .9rem; bottom: .35rem; height: 2px; background: var(--gold); transform: scaleX(0); transform-origin: left; transition: transform .25s ease; }
.ac-hd__link:hover::after, .ac-hd__item.is-current > .ac-hd__link::after, .ac-hd__item.is-open > .ac-hd__link::after { transform: scaleX(1); }
.ac-hd__quick { display: none !important; }
/* Services drop-down: white, two columns, no icons */
.ac-hd__item.is-small .ac-mega { width: 580px; }
.ac-hd__item.is-small .ac-mega__in { padding: 0; }
.ac-hd__item.is-small .ac-mega__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-auto-flow: column; grid-template-rows: repeat(5, auto); gap: 0 1rem; padding: 1rem 1.1rem; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow-lg); background: #fff; margin-top: .4rem; }
.ac-mega__ico { display: none !important; }
.ac-mega__link { padding: .7rem .6rem; border-radius: 8px; gap: 0; }
.ac-mega__link:hover { background: transparent !important; }
.ac-mega__link strong { position: relative; display: inline-block; font-size: .9375rem; }
.ac-mega__link strong::after { content: ""; position: absolute; left: 0; right: 0; bottom: -3px; height: 2px; background: var(--gold); transform: scaleX(0); transform-origin: left; transition: transform .25s ease; }
.ac-mega__link:hover strong::after, .ac-mega__link:focus-visible strong::after { transform: scaleX(1); }
.ac-mega__link small { font-size: .8125rem; color: var(--muted); }
.ac-mega__link[href$="/services/"] strong { color: var(--blue); }
/* Mobile: logo, a small Book a discovery call button, the menu icon; full-screen white menu */
@media (max-width: 1080px) {
	.ac-hd__in { gap: .75rem; height: 64px !important; }
	.ac-hd__cta { display: inline-flex !important; margin-left: auto; padding: .55rem .9rem !important; font-size: .8125rem !important; }
	.ac-drawer { position: fixed; inset: 64px 0 0 0; background: #fff; overflow-y: auto; z-index: 90; }
	.ac-drawer__in { padding: 1rem var(--gutter) 2.5rem; }
	.ac-drawer__group summary, .ac-drawer__top { font-size: 1.15rem; font-weight: 600; color: var(--navy); padding: 1rem 0; border-bottom: 1px solid var(--line); display: block; text-decoration: none; }
	.ac-drawer__kids a { display: block; padding: .7rem 0 .7rem .25rem; color: var(--navy); text-decoration: none; font-size: 1rem; border-bottom: 1px solid var(--line); }
	.ac-drawer__kids .ac-mega__ico { display: none; }
	.ac-drawer__foot { margin-top: 1.5rem; display: grid; gap: .9rem; }
	.ac-drawer__foot .ac-btn { width: 100%; justify-content: center; }
}
@media (max-width: 420px) { .ac-hd__cta { font-size: .75rem !important; padding: .5rem .7rem !important; } .ac-hd__logo img { width: 116px; height: auto; } }

/* Floating: one WhatsApp button */
.ac-float__btn--call { display: none !important; }

/* ---------- Logo carousel and logo walls (one navy color, full color on hover) ---------- */
.ac-site .ac-marquee { -webkit-mask: none; mask: none; overflow: visible; padding-block: calc(var(--pad) * .75); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.ac-site .ac-marquee .ac-head { margin-bottom: 2rem !important; gap: .4rem !important; }
.ac-site .ac-marquee__t .elementor-heading-title { font-size: clamp(1.15rem, 1.6vw, 1.35rem) !important; font-weight: 500 !important; color: var(--text) !important; letter-spacing: 0; }
.ac-marquee__viewport { overflow: hidden; -webkit-mask: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.ac-marquee__track { list-style: none; margin: 0; padding: .5rem 0; display: flex; width: max-content; gap: 0; align-items: center; animation: ac-marquee 70s linear infinite; }
.ac-marquee__viewport:hover .ac-marquee__track { animation-play-state: paused; }
.ac-marquee__track .ac-lg { flex: none; padding: 0 clamp(1.5rem, 3vw, 2.75rem); }
.ac-lg { list-style: none; margin: 0; }
.ac-lg__box { position: relative; display: grid; place-items: center; height: 48px; }
.ac-lg__box img { grid-area: 1 / 1; height: 48px; width: auto; max-width: 150px; object-fit: contain; transition: opacity .3s ease; }
.ac-lg__color { opacity: 0; }
.ac-lg:hover .ac-lg__color { opacity: 1; }
.ac-lg:hover .ac-lg__mono { opacity: 0; }
.ac-site .ac-marquee .ac-btns { margin-top: 1.5rem; justify-content: center; }
@media (max-width: 640px) {
	.ac-marquee__track { animation-duration: 55s; }
	.ac-marquee__track .ac-lg { padding: 0 1rem; width: 33.333vw; box-sizing: border-box; }
	.ac-lg__box img { height: 40px; max-width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .ac-marquee__track { animation: none; flex-wrap: wrap; justify-content: center; width: auto; } .ac-marquee__track .ac-lg[aria-hidden] { display: none; } }
.ac-lgwall { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; }
.ac-lgwall .ac-lg { border: 1px solid var(--line); border-radius: 14px; background: #fff; padding: 1.1rem 1rem; }
.ac-lgwall .ac-lg__box { height: 64px; }
.ac-lgwall .ac-lg__box img { height: auto; max-height: 56px; max-width: 100%; }
@media (max-width: 1100px) { .ac-lgwall { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 820px) { .ac-lgwall { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 520px) { .ac-lgwall { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; } }
.ac-site .ac-logos--markets > .e-con-inner { display: flex !important; flex-direction: column; gap: 2.5rem; }
.ac-site .ac-logos__group { gap: 1rem !important; }
.ac-site .ac-logos__market .elementor-heading-title { font-size: 1.05rem !important; font-weight: 600; color: var(--navy); padding-bottom: .75rem; border-bottom: 1px solid var(--line); margin: 0; }
/* Any remaining Elementor logo tiles look the same */
.ac-site .ac-logo img { filter: grayscale(1) brightness(.35) sepia(.6) hue-rotate(185deg) saturate(2.4); transition: filter .3s; }
.ac-site .ac-logo:hover img { filter: none; }

/* ---------- Home ---------- */
.ac-site .ac-pillars__foot--links { background: transparent !important; padding: 1.25rem 0 0 !important; border-top: 1px solid var(--line); border-radius: 0; margin-top: .5rem; }
.ac-site .ac-svcline p { margin: 0; line-height: 2; color: var(--text); }
.ac-site .ac-svcline a { color: var(--navy); text-decoration: none; border-bottom: 1px solid var(--line); white-space: nowrap; }
.ac-site .ac-svcline a:hover { border-bottom-color: var(--gold); }
.ac-site .ac-featured__grid--3 { grid-template-columns: 1.35fr 1fr !important; grid-template-rows: auto auto; }
.ac-site .ac-featured__grid--3 > .ac-pcard--big { grid-column: 1 !important; grid-row: span 2; grid-template-columns: 1fr !important; }
.ac-site .ac-whyhow > .e-con-inner { display: grid !important; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(2rem, 6vw, 5rem); align-items: start; }
.ac-site .ac-whyhow__why, .ac-site .ac-whyhow__how { gap: 1.5rem !important; }
.ac-site .ac-whyhow__points { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.ac-site .ac-whyhow .ac-point { padding: 1.25rem; border-radius: 14px; background: #fff; gap: .5rem !important; }
.ac-site .ac-whyhow__how { padding: clamp(1.5rem, 3vw, 2.25rem); border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.ac-site .ac-steps__row--v { grid-template-columns: minmax(0, 1fr) !important; border-top: 0 !important; border-left: 2px solid var(--line); padding-left: 1.4rem; row-gap: 1.1rem; }
.ac-site .ac-steps__row--v .ac-step { padding: 0 !important; display: grid !important; grid-template-columns: 2.5rem 1fr; column-gap: .5rem; row-gap: .1rem; }
.ac-site .ac-steps__row--v .ac-step__n { grid-row: span 2; color: var(--gold-ink); font-weight: 600; }
.ac-site .ac-steps__row--v .ac-step::before { content: ""; position: absolute; left: calc(-1.4rem - 6px); top: .35rem; width: 10px; height: 10px; border-radius: 50%; background: #fff; border: 2px solid var(--gold); }
@media (max-width: 900px) {
	.ac-site .ac-whyhow > .e-con-inner, .ac-site .ac-featured__grid--3 { grid-template-columns: minmax(0, 1fr) !important; }
	.ac-site .ac-featured__grid--3 > .ac-pcard--big { grid-row: auto; }
}
@media (max-width: 560px) { .ac-site .ac-whyhow__points { grid-template-columns: minmax(0, 1fr); } }

/* ---------- Services: a regular 3 x 3 grid ---------- */
.ac-site .ac-svcgrid__grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.ac-site .ac-svcgrid__grid--3 > .ac-svc { grid-column: auto !important; grid-row: auto !important; }
.ac-site .ac-svcgrid__grid--3 .ac-svc__img img { aspect-ratio: 16 / 10; object-fit: cover; }
@media (max-width: 900px) { .ac-site .ac-svcgrid__grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 600px) { .ac-site .ac-svcgrid__grid--3 { grid-template-columns: minmax(0, 1fr) !important; } }

/* Service pages: "How we measure it" is a white strip with a gold line */
.ac-site .ac-measure { background: #fff !important; padding-block: calc(var(--pad) * .6); }
.ac-site .ac-measure__in { border-left: 3px solid var(--gold); padding-left: clamp(1.25rem, 3vw, 2rem); }
.ac-site .ac-measure__t, .ac-site .ac-measure__t .elementor-heading-title { color: var(--navy) !important; font-size: clamp(1.2rem, 2vw, 1.6rem) !important; font-weight: 500 !important; line-height: 1.4; }
.ac-site .ac-value { padding-block: calc(var(--pad) * .7); }
.ac-site .ac-chip--logo { gap: .6rem !important; }
.ac-site .ac-chip__logo { color: #7A8699; display: inline-flex; }
.ac-site .ac-chip--logo:hover .ac-chip__logo { color: var(--navy); }
.ac-site .ac-lead strong { color: var(--navy); font-weight: 600; }
.ac-site .ac-for .ac-get__grid, .ac-site .ac-get__grid { gap: 1rem; }

/* FAQ: questions only, answers open on click */
.ac-js .ac-site .ac-faq-q { cursor: pointer; position: relative; padding-right: 2.5rem; }
.ac-js .ac-site .ac-faq-q::after { content: ""; position: absolute; right: .25rem; top: 50%; width: 22px; height: 22px; margin-top: -11px; border-radius: 50%; border: 1px solid var(--line); background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2304264C' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/12px no-repeat; transition: transform .25s ease; }
.ac-js .ac-site .ac-faq-item.is-open .ac-faq-q::after { transform: rotate(45deg); }
.ac-js .ac-site .ac-faq-a { display: none; }
.ac-js .ac-site .ac-faq-item.is-open .ac-faq-a { display: block; }
.ac-site .ac-faq-item { padding: 1.15rem 0 !important; }
.ac-site .ac-faq-q .elementor-heading-title { font-size: 1.05rem !important; font-weight: 600 !important; }
.ac-site .ac-faq-q:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; border-radius: 4px; }

/* ---------- Projects: sector chips right under the hero, then the grid ---------- */
.ac-site .ac-library--top { padding-top: 0 !important; }
.ac-filters--sector { margin-bottom: 1.75rem; }
.ac-filters--sector .ac-filters__row { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: center; }
.ac-filters--sector button { border: 1px solid var(--line); background: #fff; color: var(--navy); border-radius: 999px; padding: .55rem 1rem; font: 500 .875rem/1.2 var(--sans); cursor: pointer; }
.ac-filters--sector button.is-on, .ac-filters--sector button:hover { border-color: var(--navy); background: var(--navy); color: #fff; }
.ac-site .ac-pcard__tags { display: none; }

/* Project pages: Objective and Challenge as two white cards, the second with a thin gold border */
.ac-site .ac-brief__card, .ac-site .ac-brief__card--alt { background: #fff !important; border: 1px solid var(--line); }
.ac-site .ac-brief__card--alt { border-color: var(--gold) !important; }
.ac-site .ac-brief__card--alt .ac-brief__t, .ac-site .ac-brief__card--alt .ac-brief__t .elementor-heading-title { color: var(--ink) !important; }
.ac-site .ac-brief__card--alt .ac-eyebrow .elementor-heading-title { color: var(--gold-ink) !important; }
.ac-site .ac-out { background: #fff !important; border: 1px solid var(--line) !important; }
.ac-site .ac-out .elementor-heading-title, .ac-site .ac-out h3 { color: var(--ink) !important; }
.ac-site .ac-out .elementor-widget-text-editor, .ac-site .ac-out p { color: var(--text) !important; }

/* How we work: white "You sign off" cards with a gold line; first 90 days on white cards */
.ac-site .ac-stage__sign { background: #fff !important; border-left: 3px solid var(--gold); border-radius: 0 10px 10px 0; }
.ac-site .ac-90__m { background: #fff !important; border: 1px solid var(--line) !important; }
.ac-site .ac-90__t, .ac-site .ac-90__t .elementor-heading-title { color: var(--ink) !important; }
.ac-site .ac-90__d, .ac-site .ac-90__d p { color: var(--text) !important; }
.ac-site .ac-90__k .elementor-heading-title { color: var(--gold-ink) !important; }
.ac-site .ac-90 .ac-works__label .elementor-heading-title { color: var(--muted) !important; }

/* About: Vision and Mission as two matching white cards */
.ac-site .ac-vm__card, .ac-site .ac-vm__card:last-child { background: #fff !important; border: 1px solid var(--line) !important; }
.ac-site .ac-vm__card:last-child .ac-card__title, .ac-site .ac-vm__card:last-child .ac-card__title .elementor-heading-title { color: var(--ink) !important; }
.ac-site .ac-vm__card:last-child .ac-card__meta .elementor-heading-title { color: var(--gold-ink) !important; }

/* Industries: icon, title and one line */
.ac-site .ac-sector .ac-sector__row { border: 0 !important; padding: 0 !important; }
.ac-site .ac-sector { gap: .6rem !important; }

/* Contact: shorter form */
.ac-field__opt { font-weight: 400; color: var(--muted); }
.ac-form select { width: 100%; }

/* ---------- Footer: three columns ---------- */
.ac-footer__grid--3 { grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(0, 1fr)) !important; }
.ac-footer__cta { margin-top: 1.25rem; }
@media (max-width: 900px) { .ac-footer__grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 560px) { .ac-footer__grid--3 { grid-template-columns: minmax(0, 1fr) !important; } }
/* v4.2 fine-tuning */
.ac-marquee__track img, .ac-marquee__track img.ac-lg__mono { filter: none !important; opacity: 1; }
.ac-marquee__track img.ac-lg__color { opacity: 0; }
.ac-marquee__track .ac-lg:hover img.ac-lg__color { opacity: 1; }
.ac-marquee__track .ac-lg:hover img.ac-lg__mono { opacity: 0; }
.ac-site .ac-marquee .ac-head { margin-bottom: 1.25rem !important; }
.ac-site .ac-marquee .ac-btns { margin-top: 1rem; }
@media (min-width: 1081px) {
	.ac-site .ac-hero--split > .e-con-inner { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr) !important; }
	.ac-site .ac-hero--split .ac-h1 .elementor-heading-title { font-size: clamp(2.6rem, 3.7vw, 3.5rem) !important; }
}
.ac-site .ac-svcgrid__grid--3 .ac-svc__img img { width: 100%; height: 200px !important; aspect-ratio: auto; object-fit: cover; object-position: center top; }
@media (max-width: 640px) { .ac-site .ac-cta__in::after { right: 18px; top: 18px; width: 28px; height: 28px; } .ac-site .ac-cta__in { padding-top: 3.25rem; } }
.ac-hd__item.is-small .ac-mega { width: 580px !important; }
.ac-mega--small .ac-mega__in, .ac-hd__item.is-small .ac-mega__in { max-width: 580px !important; }

/* =====================================================================
   v5 — new visuals, Home redesign, client logos in their own colors.
   ===================================================================== */
.ac-site { --pad: 72px; }
@media (max-width: 900px) { .ac-site { --pad: 56px; } }
@media (max-width: 640px) { .ac-site { --pad: 44px; } }
.ac-site .ac-head { gap: .7rem !important; margin-bottom: clamp(1.75rem, 3vw, 2.5rem) !important; }
.ac-site .ac-head .ac-sub p, .ac-site .ac-sub p { margin: 0; }
.ac-site .ac-head--split { display: grid !important; grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); gap: 1.25rem 3rem !important; align-items: end; }
.ac-site .ac-head__l, .ac-site .ac-head__r { gap: .7rem !important; }
.ac-site .ac-head__r .ac-btns { margin-top: .4rem; }
@media (max-width: 820px) { .ac-site .ac-head--split { grid-template-columns: minmax(0, 1fr); } }

/* New visuals: framed, white, no heavy shadow */
.ac-site .ac-img--m5 img, .ac-site .ac-vid--m5 video { width: 100%; height: auto; border-radius: 18px !important; border: 1px solid var(--line); background: #fff; box-shadow: 0 30px 60px -40px rgba(4, 38, 76, .35) !important; display: block; }
.ac-site .ac-vid--m5 video { aspect-ratio: 16 / 10 !important; object-fit: cover; }
.ac-site .ac-hero__media .ac-img--m5 img { aspect-ratio: 16 / 10; object-fit: cover; }

/* Logo carousel */
.ac-site .ac-marquee--slim { padding-block: 2.25rem !important; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.ac-site .ac-marquee--slim .ac-head { margin-bottom: 1.25rem !important; }
.ac-site .ac-marquee--slim .ac-btns { margin-top: 1rem !important; }
.ac-marquee__track { align-items: center; gap: 0; padding: .75rem 0; }
.ac-marquee__track .ac-lg { flex: none; padding: 0 clamp(1.4rem, 2.6vw, 2.4rem); display: flex; align-items: center; height: 64px; width: auto !important; }
.ac-marquee__track .ac-lg img { display: block; max-width: none; object-fit: contain; filter: none !important; opacity: 1 !important; }
@media (max-width: 640px) { .ac-marquee__track .ac-lg { padding: 0 1.1rem; height: 52px; } .ac-marquee__track .ac-lg img { transform: scale(.82); } }
/* Client wall */
.ac-lgwall { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; }
.ac-lgwall .ac-lg { display: grid; place-items: center; height: 132px; padding: 1rem; border: 1px solid var(--line); border-radius: 16px; background: #fff; transition: border-color .25s, box-shadow .25s, transform .25s; }
.ac-lgwall .ac-lg:hover { border-color: #CBD6E4; transform: translateY(-3px); box-shadow: 0 18px 40px -28px rgba(4, 38, 76, .35); }
.ac-lgwall .ac-lg img { max-width: 100%; height: auto; object-fit: contain; }
@media (max-width: 1100px) { .ac-lgwall { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 820px) { .ac-lgwall { grid-template-columns: repeat(3, minmax(0, 1fr)); } .ac-lgwall .ac-lg { height: 112px; } }
@media (max-width: 520px) { .ac-lgwall { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; } .ac-lgwall .ac-lg { height: 100px; } .ac-lgwall .ac-lg img { transform: scale(.85); } }
.ac-site .ac-logo img { filter: none !important; }

/* What we do: four areas, each with its services */
.ac-site .ac-pillars5__grid { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; }
.ac-site .ac-pillar5 { border: 1px solid var(--line); border-radius: 18px; background: #fff; overflow: hidden; gap: 0 !important; transition: transform .25s, box-shadow .25s; }
.ac-site .ac-pillar5:hover { transform: translateY(-4px); box-shadow: 0 24px 48px -32px rgba(4, 38, 76, .35); }
.ac-site .ac-pillar5__img img { width: 100%; aspect-ratio: 16 / 11; object-fit: cover; object-position: left top; border-radius: 0 !important; border-bottom: 1px solid var(--line); display: block; }
.ac-site .ac-pillar5__body { padding: 1.4rem 1.4rem 1.5rem; gap: .5rem !important; flex: 1; }
.ac-site .ac-pillar5__k .elementor-heading-title { font-size: .75rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-ink); }
.ac-site .ac-pillar5__t .elementor-heading-title { font-size: 1.2rem; font-weight: 600; color: var(--ink); letter-spacing: -.015em; }
.ac-site .ac-pillar5__d { color: var(--text); font-size: .95rem; line-height: 1.55; }
.ac-site .ac-pillar5__d p, .ac-site .ac-pillar5__list p { margin: 0; }
.ac-pillar5__links { list-style: none; margin: .6rem 0 0; padding: .8rem 0 0; border-top: 1px solid var(--line); display: grid; gap: .45rem; }
.ac-pillar5__links a { color: var(--navy); font-weight: 600; font-size: .925rem; text-decoration: none; display: flex; justify-content: space-between; align-items: center; gap: .5rem; }
.ac-pillar5__links a::after { content: "→"; color: var(--gold-ink); transition: transform .2s; }
.ac-pillar5__links a:hover::after { transform: translateX(3px); }
.ac-site .ac-pillars5 > .e-con-inner > .ac-btns { margin-top: 2rem; }
@media (max-width: 1100px) { .ac-site .ac-pillars5__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .ac-site .ac-pillars5__grid { grid-template-columns: minmax(0, 1fr); } }

/* Results: numbers + three equal projects */
.ac-site .ac-stats5 { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; border: 1px solid var(--line); border-radius: 18px; background: #fff; margin-bottom: 1.5rem; overflow: hidden; }
.ac-site .ac-stat5 { padding: 1.5rem 1.6rem; gap: .25rem !important; border-left: 1px solid var(--line); }
.ac-site .ac-stat5:first-child { border-left: 0; }
.ac-site .ac-stat5__n .elementor-heading-title { font-size: clamp(1.75rem, 2.6vw, 2.35rem); font-weight: 600; color: var(--navy); letter-spacing: -.03em; line-height: 1.1; }
.ac-site .ac-stat5:first-child .ac-stat5__n .elementor-heading-title { color: var(--gold-ink); }
.ac-site .ac-stat5__l { color: var(--text); font-size: .9rem; line-height: 1.45; }
.ac-site .ac-stat5__l p { margin: 0; }
.ac-site .ac-pgrid5 { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.ac-site .ac-pcard5 { background: #fff; border: 1px solid var(--line); border-radius: 18px; overflow: hidden; gap: 0 !important; transition: transform .25s, box-shadow .25s; }
.ac-site .ac-pcard5:hover { transform: translateY(-4px); box-shadow: 0 24px 48px -32px rgba(4, 38, 76, .35); }
.ac-site .ac-pcard5__img img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 0 !important; border-bottom: 1px solid var(--line); display: block; }
.ac-site .ac-pcard5__body { padding: 1.3rem 1.4rem 1.5rem; gap: .5rem !important; flex: 1; }
.ac-site .ac-pcard5__tag .elementor-heading-title { font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--gold-ink); }
.ac-site .ac-pcard5__t .elementor-heading-title, .ac-site .ac-pcard5__t a { font-size: 1.15rem; font-weight: 600; color: var(--ink); text-decoration: none; line-height: 1.3; letter-spacing: -.01em; }
.ac-site .ac-pcard5__d { color: var(--text); font-size: .95rem; }
.ac-site .ac-pcard5__d p { margin: 0; }
.ac-site .ac-pcard5__more { margin-top: auto; padding-top: .4rem; }
.ac-site .ac-pcard5__more a { color: var(--navy); font-weight: 600; font-size: .9rem; text-decoration: none; }
.ac-site .ac-pcard5__more a::after { content: " →"; color: var(--gold-ink); }
@media (max-width: 1000px) { .ac-site .ac-stats5 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .ac-site .ac-stat5:nth-child(3) { border-left: 0; } .ac-site .ac-stat5:nth-child(n+3) { border-top: 1px solid var(--line); } }
@media (max-width: 900px) { .ac-site .ac-pgrid5 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .ac-site .ac-pgrid5 > :last-child { grid-column: span 2; } }
@media (max-width: 600px) { .ac-site .ac-pgrid5 { grid-template-columns: minmax(0, 1fr); } .ac-site .ac-pgrid5 > :last-child { grid-column: auto; } .ac-site .ac-stat5 { padding: 1.1rem 1.1rem; } }

/* Why Arctore: diagram + reasons as a clear list */
.ac-site .ac-why5 > .e-con-inner { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2rem, 5vw, 4.5rem); align-items: center; }
.ac-site .ac-why5__copy { gap: 0 !important; }
.ac-site .ac-why5__copy .ac-head { margin-bottom: 1.5rem !important; }
.ac-site .ac-why5__list { gap: 0 !important; border-top: 1px solid var(--line); }
.ac-site .ac-why5__pt { display: grid !important; grid-template-columns: 44px 1fr; column-gap: 1rem; row-gap: .15rem; padding: 1.05rem 0; border-bottom: 1px solid var(--line); background: transparent !important; border-radius: 0 !important; border-left: 0 !important; border-right: 0 !important; border-top: 0 !important; }
.ac-site .ac-why5__pt > .elementor-widget-html { grid-row: span 2; }
.ac-site .ac-why5__pt .ac-ico { width: 44px !important; height: 44px !important; border-radius: 12px !important; background: var(--mist) !important; display: grid !important; place-items: center; }
.ac-site .ac-why5__pt .ac-ico svg { width: 22px; height: 22px; }
.ac-site .ac-why5__pt .ac-card__title .elementor-heading-title { font-size: 1.05rem; font-weight: 600; color: var(--ink); margin: 0; }
.ac-site .ac-why5__pt .ac-card__text { color: var(--text); font-size: .95rem; }
.ac-site .ac-why5__pt .ac-card__text p { margin: 0; }
@media (max-width: 900px) { .ac-site .ac-why5 > .e-con-inner { grid-template-columns: minmax(0, 1fr); } .ac-site .ac-why5__media { order: 2; } }

/* How we work: five stages on one line */
.ac-site .ac-how5__row { display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; position: relative; }
.ac-site .ac-how5__row::before { content: ""; position: absolute; left: 22px; right: 22px; top: 22px; height: 2px; background: linear-gradient(90deg, var(--navy), var(--gold)); opacity: .35; }
.ac-site .ac-how5__s { position: relative; gap: .55rem !important; padding: 0 .25rem 0 0; }
.ac-site .ac-how5__n .elementor-heading-title { width: 46px; height: 46px; border-radius: 50%; background: #fff; border: 2px solid var(--navy); display: grid; place-items: center; font-weight: 700; color: var(--navy); font-size: .9rem; position: relative; z-index: 1; }
.ac-site .ac-how5__s:last-child .ac-how5__n .elementor-heading-title { background: var(--navy); color: #fff; border-color: var(--navy); box-shadow: 0 0 0 6px rgba(227, 167, 47, .18); }
.ac-site .ac-how5__t .elementor-heading-title { font-size: 1.15rem; font-weight: 600; color: var(--ink); margin-top: .5rem; }
.ac-site .ac-how5__d { color: var(--text); font-size: .93rem; line-height: 1.5; }
.ac-site .ac-how5__d p, .ac-site .ac-how5__o p { margin: 0; }
.ac-site .ac-how5__o { margin-top: auto; }
.ac-site .ac-how5__o p { display: block; padding: .7rem .85rem; border-radius: 12px; background: #fff; border: 1px solid var(--line); border-left: 3px solid var(--gold); font-weight: 600; color: var(--navy); font-size: .9rem; line-height: 1.35; }
.ac-site .ac-how5__o span { display: block; font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--gold-ink); margin-bottom: .2rem; }
.ac-site .ac-how5 > .e-con-inner > .ac-btns { margin-top: 2rem; }
@media (max-width: 1000px) {
	.ac-site .ac-how5__row { grid-template-columns: minmax(0, 1fr); gap: 1.4rem; padding-left: 0; }
	.ac-site .ac-how5__row::before { left: 22px; right: auto; top: 22px; bottom: 22px; width: 2px; height: auto; background: linear-gradient(180deg, var(--navy), var(--gold)); }
	.ac-site .ac-how5__s { display: grid !important; grid-template-columns: 46px 1fr; column-gap: 1rem; row-gap: .35rem; }
	.ac-site .ac-how5__s > .ac-how5__n { grid-row: span 3; }
	.ac-site .ac-how5__t .elementor-heading-title { margin-top: .6rem; }
}

/* Featured project grid on Projects and elsewhere: equal cards, real covers */
.ac-site .ac-pcard__img img { aspect-ratio: 16 / 10; object-fit: cover; }
/* v5 fine-tuning */
.ac-site .ac-btns--center { justify-content: center !important; display: flex !important; }
.ac-site .ac-list .elementor-icon-list-item { display: flex !important; gap: .75rem; align-items: flex-start; }
.ac-site .ac-list .elementor-icon-list-item::before { position: static !important; flex: 0 0 22px; margin-top: 2px; }
@media (min-width: 1081px) {
	.ac-site .ac-hero--split:has(.ac-vid--m5) > .e-con-inner, .ac-site .ac-hero--split:has(.ac-img--m5) > .e-con-inner { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr) !important; }
	.ac-site .ac-hero--split:has(.ac-vid--m5) .ac-h1 .elementor-heading-title { font-size: clamp(2.5rem, 3.4vw, 3.3rem) !important; }
}
.ac-site .ac-hero__media:has(.ac-vid--m5), .ac-site .ac-hero__media:has(.ac-img--m5) { max-width: none !important; width: 100%; }
.ac-site .ac-hero__media .ac-vid--m5, .ac-site .ac-hero__media .ac-img--m5 { width: 100%; }
.ac-site .ac-split__media .ac-img--m5 img { aspect-ratio: 16 / 10; object-fit: cover; }
@media (min-width: 601px) and (max-width: 900px) {
	.ac-site .ac-pgrid5 > :last-child { grid-column: span 2; display: grid !important; grid-template-columns: 1fr 1fr; }
	.ac-site .ac-pgrid5 > :last-child .ac-pcard5__img img { height: 100%; border-bottom: 0; border-right: 1px solid var(--line); }
}
@media (max-width: 640px) { .ac-site .ac-cta__in::after { display: none; } .ac-site .ac-hero .ac-btn-text { align-self: flex-start; } }
