/* Agency: the October 2026 redesign layer. Loaded after refine.css on every page.
   Direction: the old site's personality (the sky-blue band, "every marketing success starts with a Bright Idea",
   real social posts and food photography up front) on the modern build. More colour and real work, fewer boxes.
   Home page sections use .ag-* classes; the consultation request (#consultation) is restyled on every page. */

site-root {
  --ag-navy: #0d244b;
  --ag-blue: #105cb4;
  --ag-bright: #259de9;
  --ag-sky: #d4e9fb;
  --ag-sky-soft: #eef6fd;
  --ag-idea: #ffe27a;
  --ag-ink: #1c2635;
  --ag-muted: #4b5868;
  --ag-radius: 1.25rem;
  --ag-shadow: 0 2px 6px rgb(13 36 75 / 0.06), 0 24px 48px -24px rgb(13 36 75 / 0.28);
}

site-root .ag-wrap { max-width: var(--content-width); margin-inline: auto; padding-inline: var(--gutter); }
site-root .ag-kicker {
  display: inline-flex; align-items: center; gap: 0.5rem; margin: 0 0 var(--space-2);
  font-family: var(--font-heading); font-weight: 700; font-size: 0.8125rem; letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--ag-blue);
}
site-root .ag-kicker::before { content: ""; width: 1.75rem; height: 3px; border-radius: 3px; background: var(--ag-bright); }
site-root .ag-on-dark .ag-kicker { color: #9fd3fb; }
site-root .ag-section { padding-block: clamp(4rem, 3rem + 4vw, 7rem); }
site-root .ag-section h2 { font-size: clamp(2rem, 1.4rem + 2.2vw, 3.1rem); line-height: 1.08; margin: 0 0 var(--space-3); max-width: 22ch; }
site-root .ag-lead { font-size: clamp(1.0625rem, 1rem + 0.3vw, 1.25rem); color: var(--ag-muted); max-width: 46ch; margin: 0; }
site-root .ag-head { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: var(--space-3); margin-bottom: clamp(2rem, 1.5rem + 2vw, 3.5rem); }
site-root .ag-head > div { max-width: 44rem; }
site-root .ag-more { font-family: var(--font-heading); font-weight: 700; color: var(--ag-blue); text-decoration: none; white-space: nowrap; border-bottom: 2px solid var(--ag-bright); padding-bottom: 2px; }
site-root .ag-more:hover { color: var(--ag-navy); }
site-root .ag-more::after { content: " →"; }
site-root .hl { background: linear-gradient(transparent 58%, var(--ag-idea) 58%, var(--ag-idea) 92%, transparent 92%); padding-inline: 0.06em; border-radius: 2px; }

/* ---------------------------------------------------------------- hero */
site-root .ag-hero {
  position: relative; overflow: hidden;
  background: radial-gradient(60rem 30rem at 85% 10%, rgb(37 157 233 / 0.18), transparent 60%),
              radial-gradient(40rem 26rem at 0% 100%, rgb(37 157 233 / 0.10), transparent 60%),
              linear-gradient(180deg, #fff 0%, var(--ag-sky-soft) 100%);
  padding-block: clamp(3rem, 2rem + 4vw, 6rem) clamp(3.5rem, 2.5rem + 4vw, 6.5rem);
}
site-root .ag-hero-grid { display: grid; gap: clamp(2.5rem, 1.5rem + 3vw, 4rem); align-items: center; grid-template-columns: 1fr; }
@media (min-width: 60rem) { site-root .ag-hero-grid { grid-template-columns: 1.1fr 1fr; } }
site-root .ag-hero h1 { margin: 0 0 var(--space-3); line-height: 1.04; }
site-root .ag-h1-top { display: block; font-size: clamp(2.35rem, 1.6rem + 2.6vw, 3.7rem); letter-spacing: -0.02em; color: var(--ag-navy); }
site-root .ag-h1-sub { display: block; margin-top: var(--space-3); font-size: clamp(1.15rem, 1rem + 0.6vw, 1.5rem); line-height: 1.35; font-weight: 700; color: var(--ag-blue); max-width: 30ch; }
site-root .ag-hero .ag-lead { margin-bottom: var(--space-4); }
site-root .ag-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
site-root .ag-btn {
  display: inline-flex; align-items: center; gap: 0.5rem; min-height: 3.25rem; padding: 0 1.5rem; border-radius: 999px;
  font-family: var(--font-heading); font-weight: 700; text-decoration: none; border: 2px solid var(--ag-blue);
  background: var(--ag-blue); color: #fff; transition: background 0.15s, color 0.15s, transform 0.15s;
}
site-root .ag-btn:hover { background: var(--ag-navy); border-color: var(--ag-navy); color: #fff; }
site-root .ag-btn.ghost { background: transparent; color: var(--ag-navy); border-color: rgb(13 36 75 / 0.25); }
site-root .ag-btn.ghost:hover { border-color: var(--ag-navy); background: #fff; color: var(--ag-navy); }
site-root .ag-btn svg { width: 1.1rem; height: 1.1rem; fill: currentColor; }
site-root .ag-btn:focus-visible, site-root .ag-more:focus-visible, site-root .ag-tile a:focus-visible { outline: 3px solid var(--ag-bright); outline-offset: 3px; }

/* the collage: real client content, slightly tilted, with the 2002 review floating over it */
site-root .ag-collage { position: relative; min-height: clamp(22rem, 16rem + 18vw, 33rem); }
site-root .ag-collage figure { margin: 0; position: absolute; border-radius: 1rem; overflow: hidden; background: #fff; box-shadow: var(--ag-shadow); border: 6px solid #fff; }
site-root .ag-collage img { display: block; width: 100%; height: auto; }
site-root .ag-c1 { width: 70%; top: 4%; right: 0; transform: rotate(2.5deg); }
site-root .ag-c2 { width: 40%; bottom: 0; left: 2%; transform: rotate(-4deg); z-index: 2; }
site-root .ag-review {
  position: absolute; z-index: 3; right: 3%; bottom: 6%; width: min(19rem, 62%);
  margin: 0; padding: 1rem 1.15rem; border-radius: 1rem; background: #fff; box-shadow: var(--ag-shadow);
  transform: rotate(-1.5deg); font-size: 0.9375rem; line-height: 1.45; color: var(--ag-ink);
}
site-root .ag-review p { margin: 0; }
site-root .ag-stars { display: block; color: #e2a100; letter-spacing: 0.12em; font-size: 1.05rem; margin-bottom: 0.35rem; }
site-root .ag-review footer { margin-top: 0.4rem; font-size: 0.8125rem; color: var(--ag-muted); }
@media (prefers-reduced-motion: no-preference) {
  site-root .ag-c1 { animation: ag-float 9s ease-in-out infinite; }
  site-root .ag-c2 { animation: ag-float 11s ease-in-out -3s infinite reverse; }
  @keyframes ag-float { 50% { translate: 0 -8px; } }
}
@media (max-width: 40rem) {
  site-root .ag-collage { min-height: 0; display: grid; grid-template-columns: 1.4fr 1fr; gap: 0.75rem; align-items: start; }
  site-root .ag-collage figure { position: static; width: auto; transform: none; border-width: 4px; animation: none; }
  site-root .ag-c2 { margin-top: 1.5rem; }
  site-root .ag-review { position: static; grid-column: 1 / -1; width: auto; transform: none; }
}

/* ---------------------------------------------------------------- the sky band (from the old site) */
site-root .ag-band { background: var(--ag-sky); padding-block: clamp(2.75rem, 2rem + 2.5vw, 4rem); }
site-root .ag-band h2 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
site-root .ag-stats { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-4) var(--space-3); grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 56rem) { site-root .ag-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
site-root .ag-stats li { display: grid; grid-template-columns: auto 1fr; gap: 0.25rem 0.9rem; align-items: center; }
site-root .ag-stats img { grid-row: span 2; width: 2.75rem; height: 2.75rem; object-fit: contain; }
site-root .ag-stats strong { font-family: var(--font-heading); font-weight: 800; font-size: clamp(1.5rem, 1.2rem + 1vw, 2.1rem); line-height: 1.05; color: var(--ag-navy); }
site-root .ag-stats span { color: #2d3b4f; line-height: 1.35; }
@media (max-width: 24rem) { site-root .ag-stats { grid-template-columns: 1fr; } }
@media (max-width: 36rem) { site-root .ag-stats li { grid-template-columns: 1fr; } site-root .ag-stats img { grid-row: auto; width: 2.25rem; height: 2.25rem; margin-bottom: 0.25rem; } }

/* ---------------------------------------------------------------- services */
site-root .ag-services { list-style: none; margin: 0; padding: 0; display: grid; gap: clamp(2.5rem, 2rem + 2vw, 3.5rem) clamp(1.5rem, 1rem + 2vw, 3rem); grid-template-columns: repeat(auto-fit, minmax(min(19rem, 100%), 1fr)); }
site-root .ag-svc-media { position: relative; margin: 0 0 var(--space-3); aspect-ratio: 16 / 10; border-radius: var(--ag-radius); overflow: hidden; background: var(--ag-sky-soft); }
site-root .ag-svc-media img { width: 100%; height: 100%; object-fit: cover; object-position: top center; display: block; transition: transform 0.5s ease; }
site-root .ag-svc-media.pos-mid img { object-position: center 32%; }
/* Search: the nonprofit's Google Ads totals as real text, with the chart under them */
site-root .ag-ads { display: grid; grid-template-rows: auto 1fr; height: 100%; padding: 1rem; gap: 0.75rem; background: #fff; border: 1px solid #e1e7ee; border-radius: var(--ag-radius); }
site-root .ag-ads dl { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; margin: 0; }
site-root .ag-ads dl div { border-radius: 0.6rem; padding: 0.6rem 0.8rem; color: #fff; }
site-root .ag-ads dl div:first-child { background: #1967d2; }
site-root .ag-ads dl div:last-child { background: #c5221f; }
site-root .ag-ads dt { font-size: 0.8125rem; font-weight: 600; }
site-root .ag-ads dd { margin: 0; font-family: var(--font-heading); font-weight: 800; font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); line-height: 1.1; }
site-root .ag-ads img { width: 100%; height: 100%; object-fit: cover; object-position: center 78%; border-radius: 0.4rem; transform: none !important; }
site-root .ag-services li:hover .ag-svc-media img { transform: scale(1.04); }
site-root .ag-num { font-family: var(--font-heading); font-weight: 800; font-size: 0.875rem; color: var(--ag-blue); letter-spacing: 0.08em; }
site-root .ag-services h3 { font-size: clamp(1.6rem, 1.3rem + 1vw, 2rem); margin: 0.15rem 0 var(--space-1); }
site-root .ag-services p { margin: 0 0 var(--space-2); }
site-root .ag-ticks { list-style: none; margin: 0 0 var(--space-3); padding: 0; display: grid; gap: 0.4rem; }
site-root .ag-ticks li { position: relative; padding-left: 1.6rem; color: var(--ag-ink); }
site-root .ag-ticks li::before { content: ""; position: absolute; left: 0.1rem; top: 0.55em; width: 0.7rem; height: 0.38rem; border-left: 2.5px solid var(--ag-bright); border-bottom: 2.5px solid var(--ag-bright); transform: rotate(-45deg); }
site-root .ag-proof { display: inline-flex; flex-direction: column; gap: 0.1rem; text-decoration: none; padding: 0.7rem 1rem; border-radius: 0.875rem; background: var(--ag-sky-soft); color: var(--ag-ink); transition: background 0.15s; }
site-root .ag-proof strong { font-family: var(--font-heading); font-size: 1.25rem; color: var(--ag-navy); }
site-root .ag-proof span { color: var(--ag-blue); font-weight: 600; font-size: 0.9375rem; }
site-root .ag-proof span::after { content: " →"; }
site-root .ag-proof:hover { background: var(--ag-sky); }

/* ---------------------------------------------------------------- work: website tiles in browser frames */
site-root .ag-work { background: var(--ag-sky-soft); }
site-root .ag-tiles { list-style: none; margin: 0; padding: 0; display: grid; gap: clamp(1.25rem, 1rem + 1.5vw, 2.25rem); grid-template-columns: repeat(auto-fill, minmax(min(20rem, 100%), 1fr)); }
site-root .ag-tile a { display: block; text-decoration: none; color: inherit; border-radius: 1rem; }
site-root .ag-frame { border-radius: 0.875rem; overflow: hidden; background: #fff; box-shadow: var(--ag-shadow); transition: transform 0.25s ease, box-shadow 0.25s ease; }
site-root .ag-frame::before { content: ""; display: block; height: 1.6rem; background: radial-gradient(circle at 0.9rem 50%, #ff6159 0.28rem, transparent 0.3rem), radial-gradient(circle at 1.75rem 50%, #ffbd2e 0.28rem, transparent 0.3rem), radial-gradient(circle at 2.6rem 50%, #28c941 0.28rem, transparent 0.3rem), #eef2f6; border-bottom: 1px solid #e1e7ee; }
site-root .ag-frame img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; object-position: top; }
site-root .ag-tile a:hover .ag-frame { transform: translateY(-6px) rotate(-0.6deg); box-shadow: 0 4px 10px rgb(13 36 75 / 0.08), 0 32px 60px -28px rgb(13 36 75 / 0.38); }
site-root .ag-tile h3 { font-size: 1.15rem; margin: var(--space-2) 0 0.1rem; }
site-root .ag-tile p { margin: 0; color: var(--ag-muted); font-size: 0.9375rem; }

/* ---------------------------------------------------------------- social on navy */
site-root .ag-social { background: radial-gradient(50rem 28rem at 100% 0%, rgb(37 157 233 / 0.28), transparent 60%), var(--ag-navy); color: #dbe6f2; }
site-root .ag-social h2 { color: #fff; }
site-root .ag-social .ag-lead { color: #c9d7e6; }
site-root .ag-posts { list-style: none; margin: 0; padding: 0; display: grid; gap: clamp(1.5rem, 1rem + 2vw, 2.5rem); grid-template-columns: repeat(auto-fit, minmax(min(17rem, 100%), 1fr)); align-items: start; }
site-root .ag-post figure { aspect-ratio: 1 / 1; margin: 0 0 var(--space-2); border-radius: 1.25rem; overflow: hidden; border: 6px solid #fff; background: #fff; box-shadow: 0 30px 60px -30px rgb(0 0 0 / 0.6); }
site-root .ag-post img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top center; }
site-root .ag-post.wide img { object-position: left center; }
site-root .ag-posts li:nth-child(2) { margin-top: clamp(0rem, -1rem + 4vw, 3rem); }
site-root .ag-post a { color: #fff; text-decoration: none; display: inline-flex; flex-direction: column; }
site-root .ag-post strong { font-family: var(--font-heading); font-size: clamp(1.4rem, 1.2rem + 0.8vw, 1.8rem); color: #fff; }
site-root .ag-post span { color: #9fd3fb; font-weight: 600; }
site-root .ag-post a span::after { content: " →"; }
site-root .ag-post a:hover span { color: #fff; text-decoration: underline; }
site-root .ag-post a:focus-visible { outline: 3px solid #9fd3fb; outline-offset: 4px; border-radius: 4px; }

/* ---------------------------------------------------------------- why clients stay */
site-root .ag-love-grid { display: grid; gap: clamp(2rem, 1.5rem + 2vw, 3.5rem); grid-template-columns: 1fr; align-items: start; }
@media (min-width: 60rem) { site-root .ag-love-grid { grid-template-columns: 1.15fr 1fr; } }
site-root .ag-bigquote { margin: 0; position: relative; padding: clamp(1.75rem, 1.25rem + 2vw, 2.75rem); border-radius: 1.5rem; background: var(--ag-sky); }
site-root .ag-bigquote::before { content: "“"; position: absolute; top: -0.35em; left: 0.3em; font-family: var(--font-heading); font-weight: 800; font-size: 7rem; line-height: 1; color: var(--ag-bright); }
site-root .ag-bigquote p { font-family: var(--font-heading); font-weight: 700; font-size: clamp(1.3rem, 1.1rem + 0.9vw, 1.75rem); line-height: 1.35; color: var(--ag-navy); margin: 0; }
site-root .ag-bigquote footer { margin-top: var(--space-2); color: #2d3b4f; }
site-root .ag-quotes { list-style: none; margin: var(--space-3) 0 0; padding: 0; display: grid; gap: var(--space-3); grid-template-columns: repeat(auto-fit, minmax(min(16rem, 100%), 1fr)); }
site-root .ag-quotes blockquote { margin: 0; }
site-root .ag-quotes p { margin: 0; }
site-root .ag-quotes footer { margin-top: 0.4rem; color: var(--ag-muted); font-size: 0.9375rem; }
site-root .ag-principles { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-3); }
site-root .ag-principles li { padding-left: 1.25rem; border-left: 3px solid var(--ag-bright); }
site-root .ag-principles h3 { font-size: 1.3rem; margin: 0 0 0.25rem; }
site-root .ag-principles p { margin: 0; color: var(--ag-muted); }

/* ---------------------------------------------------------------- Google Ad Grants: one bold blue panel */
site-root .ag-grants { padding-block: 0 clamp(4rem, 3rem + 4vw, 7rem); }
site-root .ag-grants-panel { position: relative; overflow: hidden; display: grid; gap: var(--space-3) var(--space-5); align-items: center; grid-template-columns: 1fr; padding: clamp(2rem, 1.5rem + 3vw, 3.5rem); border-radius: 1.75rem; color: #fff; background: radial-gradient(30rem 20rem at 100% 0%, rgb(255 255 255 / 0.16), transparent 60%), var(--ag-blue); }
@media (min-width: 56rem) { site-root .ag-grants-panel { grid-template-columns: 1.2fr 1fr; } }
site-root .ag-grants-panel .ag-kicker { color: #dff0ff; }
site-root .ag-grants-panel .ag-kicker::before { background: var(--ag-idea); }
site-root .ag-grants-panel h2 { color: #fff; margin: 0; max-width: 20ch; }
site-root .ag-grants-panel p { margin: 0 0 var(--space-2); color: #fff; }
site-root .ag-grants-panel a { color: #fff; font-family: var(--font-heading); font-weight: 700; text-underline-offset: 4px; }
site-root .ag-grants-panel a:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }

/* ---------------------------------------------------------------- the consultation request (every page) */
site-root #consultation.section {
  background: radial-gradient(46rem 26rem at 0% 0%, rgb(37 157 233 / 0.30), transparent 60%), var(--ag-navy) !important;
  color: #dbe6f2;
}
site-root #consultation.section::before { display: none; }
site-root #consultation .consult-grid { display: grid; gap: clamp(2rem, 1.5rem + 3vw, 4rem); grid-template-columns: 1fr; align-items: start; }
@media (min-width: 60rem) { site-root #consultation .consult-grid { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); } }
site-root #consultation .consult-side { position: sticky; top: 6.5rem; }
site-root site-footer { border-top: 1px solid rgb(255 255 255 / 0.12); }
@media (max-width: 59.99rem) { site-root #consultation .consult-side { position: static; } }
site-root #consultation .kicker { color: #9fd3fb; }
site-root #consultation h2 { color: #fff; font-size: clamp(2rem, 1.4rem + 2.2vw, 3rem); line-height: 1.08; }
site-root #consultation .lead { color: #c9d7e6; }
site-root #consultation .reach { list-style: none; padding: 0; margin: var(--space-3) 0 var(--space-4); display: grid; gap: 0.5rem; }
site-root #consultation .reach a { color: #fff; font-family: var(--font-heading); font-weight: 700; text-decoration: none; border-bottom: 2px solid var(--ag-bright); }
site-root #consultation .reach li:first-child a { font-size: clamp(1.4rem, 1.2rem + 0.8vw, 1.8rem); }
site-root #consultation .reach a:hover { color: #9fd3fb; }
site-root #consultation .consult-side h3 { color: #fff; font-size: 1.1rem; margin: 0 0 var(--space-2); }
site-root #consultation .steps-next { list-style: none; counter-reset: step; padding: 0; margin: 0; display: grid; gap: 0.75rem; }
site-root #consultation .steps-next li { counter-increment: step; position: relative; padding-left: 2.6rem; color: #dbe6f2; line-height: 1.45; }
site-root #consultation .steps-next li::before { content: counter(step); position: absolute; left: 0; top: -0.1rem; width: 1.8rem; height: 1.8rem; border-radius: 50%; display: grid; place-items: center; background: var(--ag-bright); color: var(--ag-navy); font-family: var(--font-heading); font-weight: 800; font-size: 0.9rem; }

site-root #consultation consult-form { background: #fff; color: var(--ag-ink); border-radius: 1.5rem; padding: clamp(1.25rem, 0.75rem + 2.5vw, 2.5rem); box-shadow: 0 40px 80px -40px rgb(0 0 0 / 0.55); }
site-root #consultation consult-form form { gap: 1.15rem; }
site-root #consultation consult-form .row { grid-template-columns: repeat(auto-fit, minmax(min(13rem, 100%), 1fr)); gap: 1.15rem; align-items: end; }
site-root #consultation consult-form label,
site-root #consultation consult-form legend { font-family: var(--font-heading); font-size: 0.9375rem; font-weight: 700; color: var(--ag-navy); margin-bottom: 0.4rem; }
site-root #consultation consult-form .opt { font-family: var(--font-body); font-weight: 400; font-size: 0.875rem; color: var(--ag-muted); }
site-root #consultation consult-form input[type="text"],
site-root #consultation consult-form input[type="email"],
site-root #consultation consult-form input[type="tel"],
site-root #consultation consult-form textarea { min-height: 3rem; border: 1.5px solid #c3cfdc; border-radius: 0.75rem; background: #f8fafc; transition: border-color 0.15s, background 0.15s; }
site-root #consultation consult-form input:hover, site-root #consultation consult-form textarea:hover { border-color: #93a5b9; }
site-root #consultation consult-form input:focus-visible, site-root #consultation consult-form textarea:focus-visible { background: #fff; border-color: var(--ag-blue); outline: 3px solid rgb(37 157 233 / 0.45); outline-offset: 0; }
site-root #consultation consult-form textarea { min-height: 6.5rem; }
site-root #consultation consult-form .choices { gap: 0.5rem; }
site-root #consultation consult-form fieldset:not(:has(input[type="radio"])) .choices { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(9.5rem, 46%), 1fr)); }
site-root #consultation consult-form .choices:has(input[type="radio"]) label { white-space: nowrap; }
site-root #consultation consult-form .row:has(fieldset) { grid-template-columns: minmax(0, 1fr) auto; align-items: start; }
@media (max-width: 34rem) { site-root #consultation consult-form .row:has(fieldset) { grid-template-columns: 1fr; } }
site-root #consultation consult-form fieldset .choices:has(input[type="radio"]) { flex-wrap: nowrap; }
@media (max-width: 26rem) { site-root #consultation consult-form fieldset .choices:has(input[type="radio"]) { flex-wrap: wrap; } }
site-root #consultation consult-form .choices label {
  margin: 0; min-height: 2.75rem; padding: 0.5rem 1rem 0.5rem 0.75rem; border-radius: 999px; border: 1.5px solid #c3cfdc; background: #fff;
  font-family: var(--font-body); font-weight: 600; font-size: 0.9375rem; color: var(--ag-ink); transition: border-color 0.15s, background 0.15s;
}
site-root #consultation consult-form .choices label:hover { border-color: var(--ag-blue); }
site-root #consultation consult-form .choices input { width: 1.25rem; height: 1.25rem; }
site-root #consultation consult-form .choices label:has(input:checked) { border-color: var(--ag-blue); background: #e8f2fd; color: var(--ag-navy); }
site-root #consultation consult-form .choices label:has(input:focus-visible) { outline: 3px solid rgb(37 157 233 / 0.6); outline-offset: 2px; }
site-root #consultation consult-form .send { min-height: 3.4rem; padding: 0 2rem; border-radius: 999px; font-size: 1.0625rem; }
site-root #consultation consult-form .send:hover { background: var(--ag-navy); }
site-root #consultation consult-form .note { font-size: 0.875rem; }
site-root #consultation consult-form .done { background: #eef7ee; }

/* ---------------------------------------------------------------- the rest of the site: a little more colour */
site-root .section.navy { background: radial-gradient(50rem 28rem at 100% 0%, rgb(37 157 233 / 0.25), transparent 60%), var(--ag-navy); }
site-root .button { border-radius: 999px; }

/* home: the clients section joins the new type */
site-root .ag-clients .kicker { display: inline-flex; align-items: center; gap: 0.5rem; font-family: var(--font-heading); font-weight: 700; font-size: 0.8125rem; letter-spacing: 0.12em; color: var(--ag-blue); }
site-root .ag-clients .kicker::before { content: ""; width: 1.75rem; height: 3px; border-radius: 3px; background: var(--ag-bright); }
site-root .ag-clients .intro h2 { font-size: clamp(2rem, 1.4rem + 2.2vw, 3.1rem); line-height: 1.08; }
