/* Brand 2 (rebrand, Step 1 of design_handoff_ardent_rebrand/MIGRATION.md): tokens + fonts.

   TOKEN LEVEL ONLY. This file defines the new tokens and repoints the site's EXISTING tokens at
   them. It does not touch markup, and it does not reach the ~11,000 old colours typed inline in
   the page files (#F97316 / #1D3557 / #555); those move template by template in Steps 2-4.

   Loaded last in <head> by views/layouts/base.ejs. On localhost, ?brand=1 renders any page
   without this file (and with the old font preloads) for side-by-side comparison.

   CACHE: /_astro/ is served immutable for a year. Bump the ?v= in base.ejs on EVERY edit to
   this file, or production visitors keep the old copy.

   Unlayered on purpose: the compiled Tailwind in DrURY_bQ.css declares its tokens inside
   @layer theme, and an unlayered declaration beats a layered one regardless of order. */

/* Self-hosted Google Fonts (OFL), latin subset, variable. One file per family covers every
   weight used: Newsreader 400-500 (with optical sizing), Hanken Grotesk 400-600. */
@font-face{font-family:"Newsreader";src:url(/fonts/Newsreader-latin-var.woff2) format("woff2");
  font-weight:400 500;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Hanken Grotesk";src:url(/fonts/HankenGrotesk-latin-var.woff2) format("woff2");
  font-weight:400 600;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

:root{
  /* ---- New tokens, verbatim from design_handoff_ardent_rebrand/tokens.css ---- */
  --ardent-navy:#0A1A30;
  --ardent-sovereign:#13315E;
  --ardent-blue:#2563D9;
  --ardent-blue-hover:#1D52B8;
  --ardent-glass:#D6E4F8;
  --ardent-mist:#EEF3F9;
  --ardent-line:#C9D8EE;
  --ardent-track:#E3EAF3;
  --ardent-paper:#F8F7F3;
  --ardent-white:#FFFFFF;
  --ardent-slate:#4A5A70;
  --ardent-steel:#A9BAD3;
  --ardent-sunlight:#FFD166;      /* eyebrows/labels on navy only, never text on white */
  --ardent-success:#22A45D;
  --ardent-online:#22C55E;
  --ardent-star:#F5B301;

  --font-display:"Newsreader",Georgia,serif;
  --font-body:"Hanken Grotesk",system-ui,sans-serif;
  --h1:clamp(42px,5.9vw,60px);
  --h2:clamp(33px,4.7vw,48px);
  --h3-card:23px;
  --body:16px;
  --body-lg:18px;
  --small:14px;
  --eyebrow:12px;
  --lh-heading:1.04;
  --lh-body:1.65;
  --tracking-heading:-0.02em;

  --r-sm:3px;
  --r-md:6px;
  --r-lg:8px;
  --r-xl:10px;
  --r-pill:999px;

  --shadow-card:0 12px 32px rgba(10,26,48,.12);
  --shadow-float:0 30px 80px rgba(10,26,48,.35);
  --shadow-menu:0 30px 80px rgba(5,14,28,.35),0 0 0 1px rgba(10,26,48,.06);
  --text-shadow-hero:0 2px 6px rgba(5,14,28,.55),0 4px 32px rgba(5,14,28,.75);

  --glass-bg:rgba(214,228,248,.10);
  --glass-border:1px solid rgba(214,228,248,.30);
  --glass-blur:blur(20px);
  --overlay-hero:linear-gradient(90deg,rgba(0,0,0,.7) 0%,rgba(0,0,0,.5) 30%,rgba(0,0,0,.18) 60%,rgba(0,0,0,0) 100%);
  --overlay-hero-mobile:rgba(0,0,0,.52);
  --overlay-home-mobile:linear-gradient(180deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.46) 14%,rgba(0,0,0,.32) 30%,rgba(0,0,0,.24) 50%,rgba(0,0,0,.32) 70%,rgba(0,0,0,.48) 86%,rgba(0,0,0,.62) 100%);
  --grid-navy:linear-gradient(rgba(214,228,248,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(214,228,248,.06) 1px,transparent 1px);

  --container:1280px;
  --gutter:clamp(24px,5vw,72px);
  --section-y:120px;

  /* ---- The site's existing tokens, repointed ---- */
  /* Families. --font-display is shared by name with tokens.css, so it is set above.
     --font-mono (Fragment Mono, ~1,200 uses: eyebrows and labels) goes to Hanken Grotesk too:
     the brand has no mono face. */
  --font-sans:var(--font-body);
  --font-mono:var(--font-body);

  /* Tailwind semantic colours (compiled into DrURY_bQ.css as neutral oklch values). */
  --color-bg:var(--ardent-paper);
  --color-bg-alt:var(--ardent-mist);
  --color-surface:var(--ardent-track);
  --color-text:var(--ardent-navy);
  --color-text-muted:var(--ardent-slate);
  --color-text-subtle:var(--ardent-slate);
  --color-border-strong:var(--ardent-line);
}

/* Lead modal tokens (declared on .lm-root in base.ejs <body>, so this needs the higher
   specificity rather than source order). Primary action -> Clarence Blue. The modal's green
   step buttons and progress styling are rebuilt in Step 3, not here. */
html .lm-root{
  --lm-accent:var(--ardent-blue);
  --lm-accent-hover:var(--ardent-blue-hover);
  --lm-accent-soft:rgba(37,99,217,.10);
  --lm-dark:var(--ardent-navy);
  --lm-title:var(--ardent-navy);
  --lm-body:var(--ardent-slate);
}

/* Heading type from the brand: Newsreader 400 for H1/H2, 500 for H3; tight tracking.
   !important because page bodies set font-weight inline on headings. Sizes are NOT applied
   here; they move with each template, so a long H1 is never forced to 60px in a narrow column
   it was not designed for. */
h1,h2,.heading-1,.heading-2{font-family:var(--font-display);font-weight:400 !important;letter-spacing:var(--tracking-heading);}
h3,.heading-3{font-family:var(--font-display);font-weight:500 !important;}
body{font-family:var(--font-body);}

/* ======================================================================================
   STEP 2: SHARED LAYOUT (nav bar, mega menus, mobile menu, bottom CTA, breadcrumb, footer)
   Reference: design_handoff_ardent_rebrand/designs/Ardent Nav.dc.html + README "Global".

   CSS ONLY for the chrome. The nav, mega-menu and footer markup is duplicated into every
   .body.html and is maintained by tools/sync_template_chrome.py and the gen_*_nav.py
   generators, which anchor on its exact structure. So no class, id or START/END marker
   changes; everything below restyles what is there.

   Specificity: base.ejs and the per-page nav CSS load AFTER this file (they sit in <body>),
   so chrome rules here are prefixed `html body` to outrank them. !important appears only
   where the page markup has an inline style or an !important rule to beat.
   ====================================================================================== */

/* ---------- Nav bar ---------- */
/* Default (pages without a dark hero): solid Harbour Navy. */
/* [data-scrolled] and .bg-bg\/50 are listed to reach (1,1,2): base.ejs acg-nav-solid-css sets
   #main-header[data-scrolled="true"] and #main-header.bg-bg\/50 white with !important at (1,1,0). */
html body #main-header,html body #main-header[data-scrolled],html body #main-header.bg-bg\/50{background:var(--ardent-navy) !important;border-bottom:1px solid rgba(214,228,248,.14) !important;
  backdrop-filter:none !important;-webkit-backdrop-filter:none !important;}
/* Transparent over a dark hero until the page scrolls: the v2 service hero (.cc-hero) and the
   six overlay pages (homepage, about, contact, resources, glossary, ai). */
html body:has(.cc-hero) #main-header[data-scrolled="false"],
html body #main-header[data-overlay="true"][data-scrolled="false"]{background:transparent !important;}
/* Scrolled: navy glass. */
html body #main-header[data-scrolled="true"]{background:rgba(10,26,48,.92) !important;
  backdrop-filter:blur(14px) !important;-webkit-backdrop-filter:blur(14px) !important;}
/* The service hero slides up under the transparent bar. The sticky wrapper keeps its place in
   the flow and the hero is pulled up by the bar's height (4rem = h-16). */
html body:has(.cc-hero) .sticky.top-0.z-50{margin-bottom:-4rem;}
/* base.ejs sets .cc-hero.hv3{padding:0} (0,2,0), so the hv3 hero needs its own selector. */
html body .cc-hero,html body .cc-hero.hv3{padding-top:4rem;}
/* White logo everywhere. The page bodies force the dark one with an !important <style>. */
html body #main-header #ardent-logo-white{display:block !important;}
html body #main-header #ardent-logo-dark{display:none !important;}
/* Links: 14px glass blue, white on hover/open. */
html body #main-header .acg-nav > a,
html body #main-header .acg-nav .acg-dd-trigger{color:var(--ardent-glass) !important;font-size:14px;}
html body #main-header .acg-nav > a:hover,
html body #main-header .acg-nav .acg-dd-trigger:hover,
html body #main-header .acg-nav .acg-dd.is-open .acg-dd-trigger,
html body #main-header .acg-nav .acg-dd:focus-within .acg-dd-trigger{color:#fff !important;}
html body #main-header .acg-nav .acg-dd.is-open .acg-dd-trigger{background:rgba(214,228,248,.12);border-radius:var(--r-pill);}
html body #main-header .acg-nav .acg-dd-trigger{padding:8px 12px;margin:-8px -12px;border-radius:var(--r-pill);transition:background .15s ease,color .15s ease;}
/* "Get started": outline button on the bar. */
html body #main-header a[href="/contact/"].rounded-full{background:transparent !important;color:#fff !important;
  border:1px solid rgba(214,228,248,.45);border-radius:var(--r-sm) !important;padding:10px 20px;font-weight:600;font-size:14px;
  transition:background .15s ease,border-color .15s ease;}
html body #main-header a[href="/contact/"].rounded-full:hover{background:rgba(214,228,248,.12) !important;border-color:rgba(214,228,248,.7);}
/* Mobile: round hamburger. */
html body #mobile-menu-trigger{color:#fff !important;width:44px;height:44px;margin-right:0;border-radius:50%;
  border:1px solid rgba(214,228,248,.35);}

/* ---------- Mega menus (all three are .acg-cf panels; tools/gen_*_nav.py) ---------- */
@media (min-width:1024px){
  html body .acg-nav .acg-mega-menu{border-radius:var(--r-xl);box-shadow:var(--shadow-menu);background:#fff;}
  html body .acg-nav .acg-mega-menu.acg-cf-narrow{max-width:940px;}
  html body .acg-cf-grid{grid-template-columns:300px minmax(0,1fr);}
  html body .acg-cf-promo{position:relative;overflow:hidden;border-right:0;padding:44px 36px 36px;
    background:radial-gradient(120% 70% at 0% 100%,rgba(37,99,217,.55) 0%,rgba(37,99,217,0) 62%),var(--ardent-navy);}
  html body .acg-cf-kicker{font-size:var(--eyebrow);letter-spacing:.14em;font-weight:600;color:var(--ardent-sunlight);margin:0 0 14px;}
  html body .acg-cf-ph{font-family:var(--font-display);font-weight:400;font-size:30px;line-height:1.12;letter-spacing:-.01em;color:#fff;margin:0 0 20px;}
  html body .acg-cf-pp{font-size:15px;line-height:1.6;color:var(--ardent-glass);}
  html body .acg-nav .acg-dd-menu .acg-cf-cta{font-size:15px;font-weight:600;color:#fff;padding-top:28px;}
  html body .acg-nav .acg-dd-menu .acg-cf-cta:hover{color:var(--ardent-glass);}
  html body .acg-cf-cols{padding:40px 40px 32px;gap:0 32px;}
  html body .acg-cf-gh{font-size:var(--eyebrow);letter-spacing:.14em;font-weight:600;color:var(--ardent-slate);
    border-bottom:1px solid var(--ardent-glass);padding-bottom:14px;margin:0 0 18px;}
  html body .acg-nav .acg-dd-menu .acg-cf-item{gap:14px;padding:10px 12px;margin:0 -12px 6px;border-radius:var(--r-md);}
  html body .acg-nav .acg-dd-menu .acg-cf-item:hover{background:var(--ardent-mist);}
  html body .acg-cf-ico{width:38px;height:38px;border-radius:var(--r-md);background:var(--ardent-mist);
    border:1px solid var(--ardent-glass);color:var(--ardent-blue);}
  html body .acg-nav .acg-dd-menu .acg-cf-item:hover .acg-cf-ico{color:var(--ardent-blue);background:#fff;}
  html body .acg-cf-ico svg{width:19px;height:19px;stroke-width:1.6;}
  html body .acg-cf-txt b{font-size:15px;font-weight:600;color:var(--ardent-navy);line-height:1.3;}
  html body .acg-nav .acg-dd-menu .acg-cf-item:hover .acg-cf-txt b{color:var(--ardent-blue);}
  html body .acg-cf-txt i{font-size:13px;line-height:1.5;color:var(--ardent-slate);margin-top:4px;}
  html body .acg-nav .acg-dd-menu .acg-cf-item.acg-cf-lite{padding:6px 12px;}
  html body .acg-nav .acg-dd-menu .acg-cf-item.acg-cf-lite .acg-cf-ico{width:32px;height:32px;}
}

/* ---------- Mobile menu (<1240px): full-screen navy sheet ----------
   base.ejs acg-mobile-nav-css draws the rows as pale cards in a 2-column grid; Brand 2 wants
   Newsreader rows on navy divided by hairlines, so the card treatment is undone here. */
@media (max-width:1239px){
  html body #mobile-menu{background:var(--ardent-navy) !important;color:#fff;}
  html body #mobile-menu > .container:first-child{position:sticky;top:0;z-index:2;background:var(--ardent-navy);
    border-bottom:1px solid rgba(214,228,248,.14);}
  /* The sheet's logo is the dark PNG in the markup; show the white one without touching markup. */
  html body #mobile-menu > .container:first-child > a{display:block;width:150px;height:2rem;
    background:url(/images/ardent-capital-group-white.png) left center/auto 2rem no-repeat;}
  html body #mobile-menu > .container:first-child > a img{visibility:hidden;}
  html body #mobile-menu-close{color:#fff !important;width:44px;height:44px;border-radius:50%;border:1px solid rgba(214,228,248,.35);margin-right:0;}
  html body #mobile-menu .acg-mnav{display:flex !important;flex-direction:column;gap:0;color:#fff !important;padding-top:8px;}
  html body #mobile-menu .acg-mnav > details,
  html body #mobile-menu .acg-mnav > details[open],
  html body #mobile-menu .acg-mnav > a{background:transparent;box-shadow:none;border-radius:0;
    border-bottom:1px solid rgba(214,228,248,.14) !important;}
  html body #mobile-menu .acg-mnav > details > summary,
  html body #mobile-menu .acg-mnav > a{padding:18px 0 !important;min-height:44px;color:#fff;gap:14px;}
  html body #mobile-menu .acg-mn-label{font-family:var(--font-display);font-size:26px;font-weight:400;line-height:1.2;color:#fff;}
  html body #mobile-menu .acg-mn-ico{color:#fff;width:28px;height:28px;}
  html body #mobile-menu .acg-mn-ico svg{width:22px;height:22px;}
  html body #mobile-menu .acg-mnav > details > div{padding:0 0 18px 42px !important;gap:2px 16px;}
  html body #mobile-menu .acg-mnav > details > div > a{font-family:var(--font-body);font-size:15px;line-height:1.35;
    color:var(--ardent-glass);padding:10px 0 !important;min-height:44px;display:flex;align-items:center;}
  html body #mobile-menu .acg-mnav > details > div > a:active,
  html body #mobile-menu .acg-mnav > details > div > a:hover{color:#fff;background:transparent;}
  html body #mobile-menu > .container:last-child{padding-top:24px;}
  html body #mobile-menu > .container:last-child a[href="/contact/"]{background:var(--ardent-blue) !important;color:#fff !important;
    border-radius:var(--r-sm) !important;min-height:54px;font-size:15px;font-weight:600;}
}

/* ---------- Bottom CTA (views/partials/bottom-cta.ejs) ---------- */
.acg-bcta{position:relative;overflow:hidden;color:#fff;background:var(--ardent-navy);padding:128px var(--gutter);}
.acg-bcta-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.acg-bcta-overlay{position:absolute;inset:0;background:var(--overlay-hero);}
.acg-bcta-inner{position:relative;max-width:var(--container);margin:0 auto;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:56px;align-items:center;}
.acg-bcta-copy{display:flex;flex-direction:column;gap:24px;text-shadow:var(--text-shadow-hero);}
html body .acg-bcta-h{margin:0;font-family:var(--font-display);font-weight:400 !important;font-size:var(--h2);line-height:1.05;
  letter-spacing:var(--tracking-heading);max-width:16ch;text-wrap:balance;color:#fff;}
.acg-bcta-p{margin:0;font-size:17px;line-height:1.6;color:var(--ardent-mist);max-width:44ch;}
.acg-bcta-team{display:flex;align-items:center;flex-wrap:wrap;gap:12px 16px;text-shadow:none;}
.acg-bcta-avatars{display:flex;flex:none;}
.acg-bcta-avatars img{width:52px;height:52px;border-radius:50%;object-fit:cover;object-position:top;background:var(--ardent-glass);
  border:2px solid var(--ardent-navy);display:block;}
.acg-bcta-avatars > img + img,.acg-bcta-avatars > .acg-bcta-last{margin-left:-14px;}
.acg-bcta-last{position:relative;display:block;}
.acg-bcta-online{position:absolute;right:1px;bottom:2px;width:13px;height:13px;border-radius:50%;background:var(--ardent-online);border:2px solid var(--ardent-navy);}
.acg-bcta-meta{font-size:14px;color:var(--ardent-mist);text-shadow:0 1px 8px rgba(5,14,28,.8);}
.acg-bcta-card{justify-self:end;width:min(460px,100%);padding:32px;border-radius:var(--r-lg);background:var(--glass-bg);
  border:var(--glass-border);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);display:flex;flex-direction:column;gap:16px;}
html body .acg-bcta-btn{display:block;background:var(--ardent-blue);color:#fff;font-size:15px;font-weight:600;padding:16px;border-radius:var(--r-sm);
  text-align:center;text-decoration:none;transition:background .15s ease;}
html body .acg-bcta-btn:hover{background:var(--ardent-blue-hover);color:#fff;}
html body .acg-bcta-row{display:flex;flex-direction:column;gap:4px;padding:16px;border-radius:var(--r-sm);border:1px solid rgba(214,228,248,.25);
  color:#fff;text-decoration:none;transition:border-color .15s ease,background .15s ease;}
html body .acg-bcta-row:hover{border-color:rgba(214,228,248,.55);background:rgba(214,228,248,.06);color:#fff;}
.acg-bcta-row span{font-size:13px;color:var(--ardent-glass);}
.acg-bcta-row b{font-size:16px;font-weight:600;overflow-wrap:anywhere;}
.acg-bcta-row b.acg-bcta-addr{font-weight:400;}
@media (max-width:767px){
  .acg-bcta{padding:88px var(--gutter);}
  .acg-bcta-overlay{background:var(--overlay-hero-mobile);}
  .acg-bcta-card{justify-self:stretch;padding:24px;}
}

/* ---------- Breadcrumb: a bar at the very bottom, above the footer ---------- */

html body .acg-breadcrumb{max-width:none;padding:16px max(var(--gutter),calc((100% - var(--container)) / 2));font-family:var(--font-body);font-size:13px;color:var(--ardent-slate);}
html body .acg-breadcrumb li{color:var(--ardent-slate);}
html body .acg-breadcrumb li:not(:last-child)::after{color:var(--ardent-steel);}
html body .acg-breadcrumb a{color:var(--ardent-blue);}
html body .acg-breadcrumb a:hover{color:var(--ardent-blue-hover);}
html body .acg-breadcrumb li:last-child span{color:var(--ardent-slate);}

/* ---------- Footer: navy (bg-text now resolves to Harbour Navy), columns restyled ---------- */
html body footer[data-cta-location="footer"]{background:var(--ardent-navy);color:var(--ardent-steel);}
html body footer[data-cta-location="footer"] p.font-mono{font-family:var(--font-body);font-size:var(--eyebrow);letter-spacing:.14em;
  font-weight:600;color:var(--ardent-sunlight) !important;}
html body footer[data-cta-location="footer"] ul a{color:var(--ardent-glass) !important;font-size:15px;opacity:1 !important;transition:color .15s ease;}
html body footer[data-cta-location="footer"] ul a:hover{color:#fff !important;}
html body footer[data-cta-location="footer"] a{text-decoration:none;}
/* Body-copy appliers (tools/apply_body_type.py) colour every <p> inside a content <section>
   #555 with !important; the CTA and the footer are not body copy. */
html body .acg-bcta p.acg-bcta-p{color:var(--ardent-mist) !important;font-size:17px !important;line-height:1.6 !important;margin:0 !important;}
html body footer[data-cta-location="footer"] p.text-sm{color:var(--ardent-steel) !important;}
html body footer[data-cta-location="footer"] .text-sm a{color:var(--ardent-glass) !important;}
/* The 9 utility pages (faq, legal, careers, 404, success...) carry a single dark logo <img> with
   no id, so the #ardent-logo-white swap above cannot reach it. Same background swap as the
   mobile sheet: the <img> stays in the DOM (alt text intact) but is hidden. */
html body #main-header a[href="/"]:not(:has(#ardent-logo-white)){display:block;width:152px;height:2rem;
  background:url(/images/ardent-capital-group-white.png) left center/auto 2rem no-repeat;}
html body #main-header a[href="/"]:not(:has(#ardent-logo-white)) > img{visibility:hidden;}

/* ======================================================================================
   STEP 3: SHARED SECTIONS
   ======================================================================================
   INLINE COLOUR REMAP. ~11,000 Brand 1 colours are typed into style="" attributes across the
   page files. Rather than rewrite 380 files (and the builders that clone them), each old value
   is remapped here, matched at a property boundary so `color:#111` never catches
   `color:#111827` and `background-color:#F97316` never turns the TEXT blue. Generated by the
   Step 3 pass; the selector lists are long on purpose. */
html body :is([style^="color:#F97316;"],[style*=";color:#F97316;"],[style*="; color:#F97316;"],[style$=";color:#F97316"],[style="color:#F97316"],[style$="; color:#F97316"]){color:var(--ardent-blue) !important;}
html body :is([style^="color:#f97316;"],[style*=";color:#f97316;"],[style*="; color:#f97316;"],[style$=";color:#f97316"],[style="color:#f97316"],[style$="; color:#f97316"]){color:var(--ardent-blue) !important;}
html body :not(.hiw-step *):is([style^="background:#F97316;"],[style*=";background:#F97316;"],[style*="; background:#F97316;"],[style$=";background:#F97316"],[style="background:#F97316"],[style$="; background:#F97316"]){background:var(--ardent-blue) !important;}
html body :not(.hiw-step *):is([style^="background:#f97316;"],[style*=";background:#f97316;"],[style*="; background:#f97316;"],[style$=";background:#f97316"],[style="background:#f97316"],[style$="; background:#f97316"]){background:var(--ardent-blue) !important;}
html body :not(.hiw-step *):is([style^="background-color:#F97316;"],[style*=";background-color:#F97316;"],[style*="; background-color:#F97316;"],[style$=";background-color:#F97316"],[style="background-color:#F97316"],[style$="; background-color:#F97316"]){background-color:var(--ardent-blue) !important;}
html body :is([style^="color:#1D3557;"],[style*=";color:#1D3557;"],[style*="; color:#1D3557;"],[style$=";color:#1D3557"],[style="color:#1D3557"],[style$="; color:#1D3557"]){color:var(--ardent-blue) !important;}
html body :is([style^="background:#1D3557;"],[style*=";background:#1D3557;"],[style*="; background:#1D3557;"],[style$=";background:#1D3557"],[style="background:#1D3557"],[style$="; background:#1D3557"]){background:var(--ardent-navy) !important;}
html body :is([style^="color:#111;"],[style*=";color:#111;"],[style*="; color:#111;"],[style$=";color:#111"],[style="color:#111"],[style$="; color:#111"]){color:var(--ardent-navy) !important;}
html body :is([style^="color:#1a1813;"],[style*=";color:#1a1813;"],[style*="; color:#1a1813;"],[style$=";color:#1a1813"],[style="color:#1a1813"],[style$="; color:#1a1813"]){color:var(--ardent-navy) !important;}
html body :is([style^="color:#444;"],[style*=";color:#444;"],[style*="; color:#444;"],[style$=";color:#444"],[style="color:#444"],[style$="; color:#444"]){color:var(--ardent-slate) !important;}
html body :is([style^="color:#555;"],[style*=";color:#555;"],[style*="; color:#555;"],[style$=";color:#555"],[style="color:#555"],[style$="; color:#555"]){color:var(--ardent-slate) !important;}
html body :is([style^="color:#6b6760;"],[style*=";color:#6b6760;"],[style*="; color:#6b6760;"],[style$=";color:#6b6760"],[style="color:#6b6760"],[style$="; color:#6b6760"]){color:var(--ardent-slate) !important;}
html body :is([style^="background:#fafaf8;"],[style*=";background:#fafaf8;"],[style*="; background:#fafaf8;"],[style$=";background:#fafaf8"],[style="background:#fafaf8"],[style$="; background:#fafaf8"]){background:var(--ardent-paper) !important;}
html body :is([style^="color:#FBBF24;"],[style*=";color:#FBBF24;"],[style*="; color:#FBBF24;"],[style$=";color:#FBBF24"],[style="color:#FBBF24"],[style$="; color:#FBBF24"]){color:var(--ardent-star) !important;}

/* Body copy: tools/apply_body_type.py colours every content <p>/<li> #555 at (0,2,2). Same
   scope and exclusions, colour only, boosted with :not(#_) so it wins without !important. */
html body section :is(p,li):not(:is(.lm-shell,.hiw-steps,.acg-cmp-section,.cc-hero,.ardent-review-card,.acg-rev-marquee,.ardent-ind-grid,.wf2-access-col,.acg-pt-section,.acg-bcta,.bg-text,footer) *):not([style*="--font-mono"]):not(#_){color:var(--ardent-slate);}
html body .mini-prose strong,html body section strong{color:var(--ardent-navy);}

/* Content buttons that were orange pills become the brand primary: 3px radius. */
html body :is(a,button):is([style*="background:#F97316"],[style*="background:#f97316"]){border-radius:var(--r-sm) !important;font-weight:600 !important;}
html body :is(a,button):is([style*="background:#F97316"],[style*="background:#f97316"]):hover{background:var(--ardent-blue-hover) !important;opacity:1 !important;}

/* Eyebrows on light: the site's small uppercase kickers (font-mono / tracking utilities). */
html body section p.font-mono.uppercase:not(.hiw-steps *):not(footer *):not(.bg-text *){font-size:var(--eyebrow) !important;letter-spacing:.14em;font-weight:600;color:var(--ardent-blue) !important;}

/* ---------- Hero (.cc-hero, the v2 service hero on 365 pages) ---------- */
html body .cc-hero .cc-hero-overlay{background:var(--overlay-hero) !important;}
@media (max-width:767px){html body .cc-hero .cc-hero-overlay{background:var(--overlay-hero-mobile) !important;}}
/* The badge H1 ("Retail property loans") reads as the design's Sunlight eyebrow. Text and level
   are untouched; the tick icon is decorative and goes. */
html body .cc-hero .wf2-badge{gap:0;margin-bottom:14px;}
html body .cc-hero .wf2-badge > svg{display:none;}
html body .cc-hero h1.wf2-h1{font-family:var(--font-body) !important;font-size:var(--eyebrow) !important;font-weight:600 !important;
  letter-spacing:.14em !important;text-transform:uppercase;color:var(--ardent-sunlight) !important;text-shadow:none;}
html body .cc-hero h2.heading-1{font-size:var(--h1) !important;line-height:var(--lh-heading) !important;letter-spacing:var(--tracking-heading);
  text-wrap:balance;text-shadow:var(--text-shadow-hero);}
/* Primary first, as in the design (visual order only; DOM order unchanged). */
html body .cc-hero .hv3-col-left button[data-open-lead-form],
html body .cc-hero .cc-hero-inner button[data-open-lead-form]{order:-1;background:var(--ardent-blue) !important;border-radius:var(--r-sm) !important;
  padding:16px 26px !important;font-size:15px !important;font-weight:600 !important;opacity:1 !important;}
html body .cc-hero button[data-open-lead-form]:hover{background:var(--ardent-blue-hover) !important;}
html body .cc-hero .cc-hero-inner a[href="/contact/"]{background:transparent !important;color:#fff !important;border:1px solid rgba(214,228,248,.45) !important;
  border-radius:var(--r-sm) !important;padding:16px 26px !important;font-size:15px !important;font-weight:600 !important;opacity:1 !important;}
html body .cc-hero .cc-hero-inner a[href="/contact/"]:hover{background:rgba(214,228,248,.12) !important;}
/* Hero stats: Newsreader figures, no icons, a hairline above (design). */
html body .cc-hero .acg-hero-stats{border-top:1px solid rgba(214,228,248,.2);padding-top:22px;margin-top:28px;gap:0 36px;}
html body .cc-hero .acg-hs{border:0 !important;padding:0 !important;gap:0;}
html body .cc-hero .acg-hs > svg{display:none;}
html body .cc-hero .acg-hs-t{flex-direction:row !important;align-items:baseline;gap:6px;}
html body .cc-hero .acg-hs-t b{font-family:var(--font-display);font-weight:400;font-size:30px;line-height:1;color:#fff;}
html body .cc-hero .acg-hs-t i{font-style:normal;font-size:14px;color:var(--ardent-glass);}
/* Mobile: always one row of three (Jason, 27 Sep 2026), as the homepage design's hero-stats-1:
   figure stacked over its label, centred. */
@media (max-width:767px){
  html body .cc-hero .acg-hero-stats{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:8px !important;justify-items:center;text-align:center;flex-wrap:nowrap !important;}
  html body .cc-hero .acg-hs{justify-content:center;min-width:0;}
  html body .cc-hero .acg-hs-t{flex-direction:column !important;align-items:center;gap:2px;}
  html body .cc-hero .acg-hs-t b{font-size:22px;}
  html body .cc-hero .acg-hs-t i{font-size:12px;}
}

/* ---------- Easy Enquiry card (site-wide modal + its desktop hero clone #lead-hero) ----------
   Styling only: every field, id, data-f, step and handler is as it was (check_lead_capture.js).
   #lead-modal is listed because the page bodies set its --lm-accent navy at (1,0,0). */
html body #lead-modal,html body .lm-root{--lm-accent:var(--ardent-blue);--lm-accent-hover:var(--ardent-blue-hover);
  --lm-accent-soft:rgba(37,99,217,.10);--lm-title:var(--ardent-navy);--lm-body:var(--ardent-slate);--lm-dark:var(--ardent-navy);}
html body .lm-root .lm-formtitle{font-family:var(--font-display);font-size:26px;font-weight:400;letter-spacing:-.01em;}
html body #hv3-card .lm-shell,html body #hv3-card > *{border-radius:var(--r-lg) !important;}
html body .lm-root .lm-stepcount{font-size:13px;font-weight:500;text-transform:none;letter-spacing:0;color:var(--ardent-slate);}
html body .lm-root .lm-progress{gap:4px;}
html body .lm-root .lm-seg{height:6px;border-radius:3px;background:var(--ardent-track);}
html body .lm-root .lm-seg.done,html body .lm-root .lm-seg.current{background:var(--ardent-success);}
html body .lm-root .lm-label{font-size:14px;font-weight:500;color:var(--ardent-slate);}
html body .lm-root .lm-input,html body .lm-root .lm-select{background-color:var(--ardent-paper);border:1px solid var(--ardent-line);border-radius:var(--r-sm);
  font-size:15px;color:var(--ardent-navy);min-height:50px;padding:13px 16px;}
html body .lm-root .lm-input:focus,html body .lm-root .lm-select:focus{border-color:var(--ardent-blue) !important;box-shadow:0 0 0 3px rgba(37,99,217,.18) !important;}
html body .lm-root .lm-continue{background:var(--ardent-blue);border-radius:var(--r-sm);font-size:15px;font-weight:600;letter-spacing:0;min-height:52px;}
html body .lm-root .lm-continue:hover{background:var(--ardent-blue-hover);}
html body .lm-root .lm-continue:disabled{background:#A7D9BC;opacity:1;}

/* ---------- Reviews marquee (views/partials/reviews-marquee.ejs) ---------- */
html body section:has(> .acg-rev-marquee){background:var(--ardent-mist) !important;padding-top:40px !important;padding-bottom:40px !important;}
html body .acg-rev-marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
html body .acg-rev-marquee #ardent-carousel-track{animation-duration:90s !important;}
html body .acg-rev-marquee:hover #ardent-carousel-track{animation-play-state:paused;}
html body .acg-rev-marquee .ardent-review-card{width:340px !important;background:#fff !important;border:1px solid var(--ardent-glass);border-radius:var(--r-lg);padding:22px 24px;}
html body .ardent-review-card > div:first-child{order:0;margin-bottom:12px !important;color:var(--ardent-star) !important;}
html body .ardent-review-card > div:first-child svg{width:14px;height:14px;}
html body .ardent-review-card > div:last-child{order:1;margin:0 0 10px !important;}
html body .ardent-review-card > div:last-child span{font-family:var(--font-body);font-size:11px;letter-spacing:.1em;font-weight:600;color:var(--ardent-navy);}
html body .ardent-review-card h3{order:2;font-family:var(--font-body) !important;font-size:15px !important;font-weight:700 !important;line-height:1.35;color:var(--ardent-navy);margin:0 0 6px !important;}
html body .ardent-review-card p{order:3;font-size:13px !important;line-height:1.55 !important;color:var(--ardent-slate) !important;margin:0 !important;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
@media (prefers-reduced-motion:reduce){html body .acg-rev-marquee #ardent-carousel-track{animation:none !important;}}

/* ---------- Lender logo marquee (#ardent-marquee) ---------- */
html body #ardent-marquee > .container{max-width:none;padding-left:0;padding-right:0;}
html body #ardent-marquee .il-group{gap:0 !important;padding-right:0 !important;}
html body #ardent-marquee .il-logo-item{width:200px;min-width:200px !important;height:72px;}
html body #ardent-marquee .il-logo{max-width:170px !important;max-height:40px;height:auto;}
@media (prefers-reduced-motion:reduce){html body #ardent-marquee [data-il-track]{animation:none !important;transform:none !important;}}

/* ---------- Tabs -> accordion (.ardent-tabs-*) ---------- */
@media (min-width:641px){
  html body .ardent-tabs-layout{grid-template-columns:280px 1fr;gap:40px;}
  html body .ardent-tabs-nav{border-left:0 !important;border-top:1px solid var(--ardent-navy);}
  html body .ardent-tab-btn{border-left:0 !important;margin-left:0 !important;border-bottom:1px solid var(--ardent-glass) !important;padding:15px 28px 15px 2px !important;
    font-family:var(--font-body);font-size:15px !important;font-weight:500 !important;color:var(--ardent-slate) !important;position:relative;}
  html body .ardent-tab-btn:hover{color:var(--ardent-navy) !important;}
  html body .ardent-tab-btn.ardent-tab-active{color:var(--ardent-navy) !important;font-weight:600 !important;}
  html body .ardent-tab-btn.ardent-tab-active::after{content:"\2192";position:absolute;right:4px;top:50%;transform:translateY(-50%);color:var(--ardent-blue);}
  html body .ardent-tab-panel.ardent-tab-active{background:#fff;border:1px solid var(--ardent-glass);border-radius:var(--r-md);padding:40px;}
  html body .ardent-tab-panel h3{font-family:var(--font-display) !important;font-size:30px !important;font-weight:400 !important;color:var(--ardent-navy) !important;letter-spacing:-.01em;}
}
html body .ardent-tab-panel p{color:var(--ardent-slate) !important;}
html body .ardent-tab-panel a{color:var(--ardent-blue) !important;}
@media (max-width:640px){
  html body .ardent-tab-panel{border-bottom-color:var(--ardent-glass) !important;}
  html body .ardent-tab-panel h3{font-family:var(--font-display) !important;font-size:19px !important;font-weight:500 !important;color:var(--ardent-navy) !important;min-height:44px;}
  html body .ardent-tab-panel h3::after{color:var(--ardent-blue) !important;}
}

/* ---------- How it works (.hiw-steps: service #our-process + homepage #how-it-works) ----------
   Ported 1:1 from designs/Ardent Homepage.dc.html "05 Process", including its animation: a
   13-tick loop at 650ms (8.45s). Step i turns active (faint fill, scale 1.12) at tick 2i, done
   (Sunlight fill, the number swaps for a tick) at 2i+1, and its connector fills over 0.6s from
   2i+2. The live number text stays in the DOM. */
html body section:has(> .container > .hiw-steps){position:relative;overflow:hidden;color:#fff;background-color:#0A1A30 !important;
  /* grid lines removed (Jason, 27 Sep 2026); the blue glow stays */
  background-image:radial-gradient(560px 560px at calc(100% + 160px) -120px,rgba(37,99,217,.4),transparent 70%) !important;
  background-size:auto !important;padding:120px clamp(24px,5vw,72px) !important;}
html body section:has(> .container > .hiw-steps) > .container{max-width:1280px;padding:0;display:flex;flex-direction:column;gap:64px;}
html body section:has(> .container > .hiw-steps) .hiw-header{max-width:720px !important;margin:0 !important;text-align:left !important;display:flex;flex-direction:column;gap:20px;}
html body section:has(> .container > .hiw-steps) .hiw-header > *{margin:0 !important;}
html body section:has(> .container > .hiw-steps) .hiw-header p.font-mono{color:#FFD166 !important;font-family:var(--font-body);font-size:12px !important;letter-spacing:.14em;font-weight:400;}
html body section:has(> .container > .hiw-steps) .hiw-header h2{color:#fff !important;font-size:clamp(33px,4.7vw,48px) !important;line-height:1.02;}
html body section:has(> .container > .hiw-steps) .hiw-header p:not(.font-mono){color:#D6E4F8 !important;font-size:17px !important;line-height:1.6 !important;max-width:none !important;}
html body .hiw-steps{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(250px,1fr)) !important;gap:16px !important;max-width:none !important;}
html body .hiw-step{flex-direction:column !important;gap:18px !important;padding:32px 28px !important;border-radius:6px;background:rgba(214,228,248,.07);border:1px solid rgba(214,228,248,.24);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);}
html body .hiw-step > div:first-child{flex-direction:row !important;align-items:center !important;gap:14px;margin:0 !important;}
html body .hiw-step > div:last-child{padding:0 !important;gap:18px;}
html body .hiw-step > div:first-child > div:first-child{flex:none;width:40px !important;height:40px !important;border-radius:50% !important;border:1px solid #FFD166;background:transparent;
  font-family:var(--font-display) !important;font-size:18px !important;font-weight:400 !important;color:#FFD166;position:relative;animation:8.45s infinite both;}
html body .hiw-step > div:first-child > div:first-child::after{content:"\2713";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-family:var(--font-body);font-size:16px;font-weight:700;color:#0A1A30;opacity:0;animation:8.45s infinite both;}
html body .hiw-step > div:first-child > div[aria-hidden]{display:block !important;flex:1;height:2px !important;border:0 !important;border-radius:2px;margin:0 !important;
  background:linear-gradient(#FFD166,#FFD166) left center/0% 100% no-repeat;background-color:rgba(214,228,248,.18);animation:8.45s infinite both;}
html body .hiw-step > div:first-child > div[aria-hidden] ~ div[aria-hidden]{display:none !important;}
html body .hiw-step h3{margin:0 !important;font-family:var(--font-display) !important;font-size:24px !important;font-weight:500 !important;color:#fff !important;line-height:1.2 !important;}
html body .hiw-step h3 > span[style*="#22c55e"]{display:none;}
html body .hiw-step p{margin:0 !important;color:#D6E4F8 !important;font-size:14px !important;line-height:1.6 !important;}
html body .hiw-step:nth-child(1) > div:first-child > div:first-child{animation-name:hiwC0,hiwN0;}
html body .hiw-step:nth-child(1) > div:first-child > div:first-child::after{animation-name:hiwT0;}
html body .hiw-step:nth-child(1) > div:first-child > div[aria-hidden]{animation-name:hiwL0;}
html body .hiw-step:nth-child(2) > div:first-child > div:first-child{animation-name:hiwC1,hiwN1;}
html body .hiw-step:nth-child(2) > div:first-child > div:first-child::after{animation-name:hiwT1;}
html body .hiw-step:nth-child(2) > div:first-child > div[aria-hidden]{animation-name:hiwL1;}
html body .hiw-step:nth-child(3) > div:first-child > div:first-child{animation-name:hiwC2,hiwN2;}
html body .hiw-step:nth-child(3) > div:first-child > div:first-child::after{animation-name:hiwT2;}
html body .hiw-step:nth-child(3) > div:first-child > div[aria-hidden]{animation-name:hiwL2;}
html body .hiw-step:nth-child(4) > div:first-child > div:first-child{animation-name:hiwC3,hiwN3;}
html body .hiw-step:nth-child(4) > div:first-child > div:first-child::after{animation-name:hiwT3;}
html body .hiw-step:nth-child(4) > div:first-child > div[aria-hidden]{animation-name:hiwL3;}
@keyframes hiwC0{0.00%{background:transparent;transform:scale(1);}0.00%{background:rgba(255,209,102,.18);transform:scale(1.12);}7.68%{background:rgba(255,209,102,.18);transform:scale(1.12);}7.69%{background:#FFD166;transform:scale(1);}100.00%{background:#FFD166;transform:scale(1);}}
@keyframes hiwN0{0.00%{color:#FFD166;}7.68%{color:#FFD166;}7.69%{color:transparent;}100.00%{color:transparent;}}
@keyframes hiwT0{0.00%{opacity:0;}7.68%{opacity:0;}7.69%{opacity:1;}100.00%{opacity:1;}}
@keyframes hiwL0{0.00%{background-size:0% 100%;}15.38%{background-size:0% 100%;}22.49%{background-size:100% 100%;}100.00%{background-size:100% 100%;}}
@keyframes hiwC1{0.00%{background:transparent;transform:scale(1);}15.37%{background:transparent;transform:scale(1);}15.38%{background:rgba(255,209,102,.18);transform:scale(1.12);}23.07%{background:rgba(255,209,102,.18);transform:scale(1.12);}23.08%{background:#FFD166;transform:scale(1);}100.00%{background:#FFD166;transform:scale(1);}}
@keyframes hiwN1{0.00%{color:#FFD166;}23.07%{color:#FFD166;}23.08%{color:transparent;}100.00%{color:transparent;}}
@keyframes hiwT1{0.00%{opacity:0;}23.07%{opacity:0;}23.08%{opacity:1;}100.00%{opacity:1;}}
@keyframes hiwL1{0.00%{background-size:0% 100%;}30.77%{background-size:0% 100%;}37.87%{background-size:100% 100%;}100.00%{background-size:100% 100%;}}
@keyframes hiwC2{0.00%{background:transparent;transform:scale(1);}30.76%{background:transparent;transform:scale(1);}30.77%{background:rgba(255,209,102,.18);transform:scale(1.12);}38.45%{background:rgba(255,209,102,.18);transform:scale(1.12);}38.46%{background:#FFD166;transform:scale(1);}100.00%{background:#FFD166;transform:scale(1);}}
@keyframes hiwN2{0.00%{color:#FFD166;}38.45%{color:#FFD166;}38.46%{color:transparent;}100.00%{color:transparent;}}
@keyframes hiwT2{0.00%{opacity:0;}38.45%{opacity:0;}38.46%{opacity:1;}100.00%{opacity:1;}}
@keyframes hiwL2{0.00%{background-size:0% 100%;}46.15%{background-size:0% 100%;}53.25%{background-size:100% 100%;}100.00%{background-size:100% 100%;}}
@keyframes hiwC3{0.00%{background:transparent;transform:scale(1);}46.14%{background:transparent;transform:scale(1);}46.15%{background:rgba(255,209,102,.18);transform:scale(1.12);}53.84%{background:rgba(255,209,102,.18);transform:scale(1.12);}53.85%{background:#FFD166;transform:scale(1);}100.00%{background:#FFD166;transform:scale(1);}}
@keyframes hiwN3{0.00%{color:#FFD166;}53.84%{color:#FFD166;}53.85%{color:transparent;}100.00%{color:transparent;}}
@keyframes hiwT3{0.00%{opacity:0;}53.84%{opacity:0;}53.85%{opacity:1;}100.00%{opacity:1;}}
@keyframes hiwL3{0.00%{background-size:0% 100%;}61.54%{background-size:0% 100%;}68.64%{background-size:100% 100%;}100.00%{background-size:100% 100%;}}
@media (prefers-reduced-motion:reduce){
  html body .hiw-step > div:first-child > div:first-child,html body .hiw-step > div:first-child > div:first-child::after,
  html body .hiw-step > div:first-child > div[aria-hidden]{animation:none !important;}
  html body .hiw-step > div:first-child > div:first-child{background:#FFD166 !important;color:transparent;}
  html body .hiw-step > div:first-child > div:first-child::after{opacity:1;}
  html body .hiw-step > div:first-child > div[aria-hidden]{background-size:100% 100%;}
}

/* ---------- Comparison table (.acg-cmp-*) ---------- */
html body .acg-cmp-section .acg-cmp-eyebrow{font-size:var(--eyebrow);letter-spacing:.14em;font-weight:600;color:var(--ardent-blue) !important;text-transform:uppercase;}
html body .acg-cmp-section .acg-cmp-scroll{border:1px solid var(--ardent-glass);border-radius:var(--r-md);background:#fff;}
html body .acg-cmp-table thead th{background:var(--ardent-navy) !important;color:var(--ardent-glass) !important;font-family:var(--font-body);font-size:12px !important;
  letter-spacing:.1em;text-transform:uppercase;font-weight:600 !important;}
html body .acg-cmp-table thead th:last-child{color:var(--ardent-sunlight) !important;}
html body .acg-cmp-table tbody tr,html body .acg-cmp-table tbody tr:nth-child(even){background:#fff !important;}
html body .acg-cmp-table td{color:var(--ardent-slate) !important;border-color:var(--ardent-track) !important;}
html body .acg-cmp-table td.acg-cmp-feat{color:var(--ardent-navy) !important;font-weight:600;}
html body .acg-cmp-tag{background:var(--ardent-mist) !important;border:1px solid var(--ardent-glass);color:var(--ardent-navy) !important;border-radius:var(--r-pill);}

/* ---------- FAQ (<details class="group border-b">; all start closed) ---------- */
@media (min-width:1024px){
  html body section .max-w-3xl:has(details.group){max-width:var(--container);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.9fr);gap:0 64px;align-items:start;}
  html body section .max-w-3xl:has(details.group) > header{position:sticky;top:96px;}
  html body section .max-w-3xl:has(details.group) > :not(header){border-top:1px solid var(--ardent-navy);}
}
html body section .max-w-3xl:has(details.group) > header::before{content:"FAQ";display:block;font-size:var(--eyebrow);letter-spacing:.14em;font-weight:600;color:var(--ardent-blue);margin-bottom:14px;}
html body details.group.border-b{border-color:var(--ardent-glass) !important;}
html body details.group > summary{padding-top:20px !important;padding-bottom:20px !important;min-height:44px;}
html body details.group > summary:hover{background:transparent !important;}
html body details.group > summary > span:first-child{font-family:var(--font-display);font-size:20px !important;font-weight:400;color:var(--ardent-navy) !important;line-height:1.3;}
html body details.group > summary > span[aria-hidden]{width:32px;height:32px;border:1px solid var(--ardent-line);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  font-size:16px !important;color:var(--ardent-blue) !important;flex:none;}
html body details.group .mini-prose p{color:var(--ardent-slate) !important;}

/* ---------- Service / industry cards (.ardent-ind-grid, "More ways" and specialists) ---------- */
html body .ardent-ind-grid > a{background:#fff !important;border:1px solid var(--ardent-glass);border-radius:var(--r-md) !important;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;}
html body .ardent-ind-grid > a:hover{border-color:var(--ardent-blue);box-shadow:var(--shadow-card);transform:translateY(-2px);}
html body .ardent-ind-grid .ardent-ind-title{font-family:var(--font-display) !important;font-weight:500 !important;font-size:21px !important;color:var(--ardent-navy) !important;}
html body .ardent-ind-grid .ardent-ind-desc{font-size:14px !important;color:var(--ardent-slate) !important;}
@media (max-width:767px){
  html body .ardent-ind-grid{grid-template-columns:1fr !important;gap:10px !important;}
  html body .ardent-ind-grid > a{display:grid !important;grid-template-columns:96px 1fr auto;align-items:center;}
  html body .ardent-ind-grid > a > div:first-child{height:96px !important;width:96px;}
  html body .ardent-ind-grid > a > div:last-child{padding:0 16px !important;}
  html body .ardent-ind-grid > a::after{content:"\2192";color:var(--ardent-blue);padding-right:18px;font-size:18px;}
  html body .ardent-ind-grid .ardent-ind-title{font-size:18px !important;margin:0 !important;}
  html body .ardent-ind-grid .ardent-ind-desc{display:none;}
}

/* ---------- Repayment estimator (.acg-calc) ---------- */
html body .acg-calc-kicker{font-size:var(--eyebrow) !important;letter-spacing:.14em;font-weight:600;color:var(--ardent-blue) !important;text-transform:uppercase;}
html body .acg-calc-card{background:var(--ardent-navy) !important;color:#fff;border-radius:var(--r-md) !important;box-shadow:var(--shadow-float);}
html body .acg-calc-card :is(p,label){color:var(--ardent-glass) !important;}
html body .acg-calc-out{font-family:var(--font-display);font-weight:400;color:#fff !important;}
html body .acg-calc-range{accent-color:var(--ardent-blue);}
html body .acg-calc-cta-primary{background:var(--ardent-blue) !important;color:#fff !important;border-radius:var(--r-sm) !important;}
html body .acg-calc-cta-secondary{border-radius:var(--r-sm) !important;}

/* Contrast fixes found by the Step 3 contrast scan (4.5:1 minimum, GUARDRAILS "Accessibility"). */
html body footer[data-cta-location="footer"] :is(p,li,span):not(.font-mono):not(#_){color:var(--ardent-steel);}
html body footer[data-cta-location="footer"] p.font-mono:not(#_){color:var(--ardent-sunlight) !important;}
html body section.bg-text :is(p,li):not(.font-mono):not(.hiw-steps *):not(#_){color:var(--ardent-glass);}
html body .lm-root .lm-foot{color:var(--ardent-slate);}
html body .acg-cmp-note{color:var(--ardent-slate) !important;}
html body .acg-calc-per{color:var(--ardent-glass) !important;}
/* Article table of contents: Brand 1 orange links measured 2.8:1 on white. */
html body .acg-toc a{color:var(--ardent-blue);}
html body .acg-toc a:hover{color:var(--ardent-blue-hover);}

/* ======================================================================================
   STEP 4: TEMPLATES (EXACT-MATCH.md: sections ported 1:1 from designs/*.dc.html)
   ====================================================================================== */

/* ---------- The design files' own mobile rules, verbatim (their <helmet><style> blocks) ----------
   Ported markup carries the same data-m attributes, so these apply exactly as in the designs. */
@media (max-width:767px){
  html body [data-m="overlay"]{background:rgba(0,0,0,.52)!important}
  html body [data-m="hero-form"]{display:none!important}
  html body [data-m="hero-copy"]{align-items:center!important;text-align:center!important}
  html body [data-m="hero-copy"]>*{align-self:center!important}
  html body [data-m="hero-copy"] div,html body [data-m="hero-copy"] span{justify-content:center!important}
  html body [data-m="toc-grid"]{grid-template-columns:minmax(0,1fr)!important;gap:32px!important}
  html body [data-m="toc-aside"]{position:static!important}
  html body [data-m="toc-list"][data-open="false"]{display:none!important}
  html body [data-m="toc-cta"]{display:none!important}
  html body [data-m="d-only"]{display:none!important}
  html body [data-m="method-item"]{padding:28px 0 0!important;border-left:0!important}
  html body [data-m="row-grid"]{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
  html body [data-m="row-card"]{flex-direction:row!important;align-items:stretch!important;border:0!important;background:#EEF3F9!important;border-radius:6px!important;box-shadow:none!important;transform:none!important}
  html body [data-m="row-img"]{aspect-ratio:auto!important;width:96px!important;min-height:88px!important;flex:none!important;border-radius:0!important}
  html body [data-m="row-body"]{flex:1!important;border-top:0!important;padding:14px 18px!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
  html body [data-m="row-title"]{font-size:19px!important;line-height:1.25!important}
  html body [data-m="row-hide"]{display:none!important}
  html body [data-m="tabs-grid"]{grid-template-columns:minmax(0,1fr)!important;gap:0!important}
  html body [data-m="tabs-list"]{position:static!important}
  html body [data-m="tab-btn"]{padding:20px 0!important;font-size:16px!important;font-weight:600!important;color:#0A1A30!important}
  html body [data-m="hero-stats"]{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px 20px!important;justify-items:center}
  html body [data-m="overlay-blue"]{background:linear-gradient(180deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.46) 14%,rgba(0,0,0,.32) 30%,rgba(0,0,0,.24) 50%,rgba(0,0,0,.32) 70%,rgba(0,0,0,.48) 86%,rgba(0,0,0,.62) 100%)!important;background-size:100% 100%!important}
  html body [data-m="hero-stats-1"]{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;font-size:12px!important;text-align:center}
  html body [data-m="hero-stats-1"] span span{font-size:22px!important;display:block}
  html body [data-m="m-hide"]{display:none!important}
}
@media (min-width:768px){
  html body [data-m="toc-chev"]{display:none!important}
  html body [data-m="toc-btn"]{pointer-events:none}
  html body [data-m="m-only"]{display:none!important}
}
/* style-hover="" attributes in the designs, as :hover rules */
html body [data-m="row-card"]{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;}
@media (min-width:768px){
  html body .acg-home-svc-card:hover{border-color:#2563D9 !important;box-shadow:0 18px 44px rgba(10,26,48,.14);transform:translateY(-4px);color:#0A1A30;}
}

/* ---------- Homepage: 01 Hero ---------- */
/* base.ejs makes .hv3-col-left display:contents below 1024px; the ported column is a flex stack. */
html body .acg-home-hero .hv3-col-left{display:flex !important;}
html body .acg-home-hero h1,html body .acg-home-hero h2{text-shadow:inherit;}
/* The enquiry card only mounts at 1024px and up (base.ejs), so the Get Started link covers
   every width below that, the design's m-only CTA extended to tablet. */
@media (min-width:1024px){html body .acg-home-hero .acg-home-hero-cta{display:none !important;}}
@media (max-width:767px){html body .acg-home-hero .acg-home-hero-grid{padding:198px 24px 102px !important;gap:32px !important;}}
/* The card: 440px, 32px padding, 8px radius, glass-blue border, float shadow. */
html body .hv3-card{border-radius:8px !important;border:1px solid #D6E4F8;box-shadow:0 30px 80px rgba(10,26,48,.35) !important;padding:10px 32px 22px;}
html body .hv3-card .lm-head{position:relative;padding-top:20px !important;}
html body .hv3-card .lm-formtitle{font-size:24px !important;}
html body .hv3-card .lm-dot,html body .hv3-card .lm-badge{display:none !important;}
html body .hv3-card .lm-progwrap{position:relative;}
html body .hv3-card .lm-stepcount{position:absolute;right:0;top:-38px;margin:0 !important;font-size:12px !important;color:#4A5A70 !important;}
html body .hv3-card .lm-label{font-size:13px !important;font-weight:400 !important;color:#4A5A70 !important;margin-bottom:8px !important;}
html body .hv3-card .lm-label::after{content:none;}
html body .hv3-card .lm-fields{gap:18px !important;}
html body .hv3-card .lm-select,html body .hv3-card .lm-input{padding:14px 16px !important;}
html body .hv3-card .lm-continue{padding:16px !important;}
html body .hv3-card .lm-foot{font-size:12px !important;color:#4A5A70 !important;text-align:center;}
html body .hv3-card .lm-foot svg{display:none;}
html body .hv3-card .lm-foot::before{content:"Takes 60 seconds \00B7 ";}

/* ---------- Reviews marquees: "02 Reviews marquee" (homepage strip, partial, wall) ---------- */
html body section:has(> .hero-reviews),html body section:has(> .acg-rev-marquee){background:#EEF3F9 !important;border-bottom:1px solid #D6E4F8;padding:56px 0 !important;}
html body .hero-reviews,html body .acg-rev-marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
html body .hero-reviews .hero-reviews-track,html body .acg-rev-marquee #ardent-carousel-track{animation-duration:90s !important;}
html body .hero-reviews:hover .hero-reviews-track{animation-play-state:paused;}
html body :is(.hero-reviews,.acg-rev-marquee) .ardent-review-card,html body .reviews-row > div{width:340px !important;flex:0 0 340px !important;margin:0 16px 0 0 !important;
  background:#fff !important;border:1px solid #D6E4F8;border-radius:8px !important;padding:22px 24px !important;display:grid !important;grid-template-columns:auto 1fr;column-gap:12px;row-gap:10px;align-content:start;text-align:left;}
html body .reviews-row{gap:0 !important;}
/* Design order: stars and the Google name on one row, then title, then a 3-line excerpt. */
html body :is(.acg-rev-marquee .ardent-review-card,.reviews-row > div) > div:first-child{grid-column:1;grid-row:1;margin:0 !important;color:#F5B301 !important;display:flex;gap:2px;align-items:center;}
html body :is(.acg-rev-marquee .ardent-review-card,.reviews-row > div) > div:last-child{grid-column:2;grid-row:1;justify-self:end;margin:0 !important;}
html body .hero-reviews .ardent-review-card > div:first-child{grid-column:1 / -1;margin:0 !important;}
html body .hero-reviews .ardent-review-card > div:first-child > div:first-child{color:#F5B301 !important;}
html body :is(.hero-reviews,.acg-rev-marquee) .ardent-review-card svg,html body .reviews-row > div > div:first-child svg{width:14px;height:14px;}
html body :is(.hero-reviews,.acg-rev-marquee,.reviews-row) :is(.ardent-review-card,.reviews-row > div) span.font-mono{font-family:var(--font-body) !important;font-size:11px !important;font-weight:600;letter-spacing:.1em;color:#0A1A30 !important;}
html body :is(.hero-reviews .ardent-review-card,.acg-rev-marquee .ardent-review-card,.reviews-row > div) h3{grid-column:1 / -1;margin:0 !important;font-family:var(--font-body) !important;font-weight:700 !important;font-size:15px !important;line-height:1.3 !important;color:#0A1A30 !important;}
html body :is(.hero-reviews .ardent-review-card,.acg-rev-marquee .ardent-review-card,.reviews-row > div) p{grid-column:1 / -1;margin:0 !important;font-size:13px !important;line-height:1.55 !important;color:#4A5A70 !important;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
@media (prefers-reduced-motion:reduce){html body .hero-reviews-track,html body .reviews-row{animation:none !important;}}
/* The homepage reviews wall ("Reviews from our clients.", no design counterpart, kept per
   GUARDRAILS): same cards, on the page's Paper background. */
html body section:has(.reviews-mask){background:#F8F7F3 !important;}

/* ---------- Lenders: "03 Lenders" (#ardent-marquee, every page) ---------- */
html body #ardent-marquee{background:#fff !important;border-top:1px solid #D6E4F8;border-bottom:1px solid #D6E4F8;padding:80px 0 !important;}
html body #ardent-marquee > div:first-child:not(.container){margin:0 0 44px !important;padding:0 24px !important;}
html body #ardent-marquee h2{margin:0 auto !important;font-family:var(--font-display) !important;font-weight:500 !important;font-size:clamp(33px,4.7vw,48px) !important;line-height:1.15 !important;
  max-width:22ch !important;text-align:center;text-wrap:balance;color:#0A1A30;}
html body #ardent-marquee .il-mask{-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
html body #ardent-marquee .il-logo-item{width:200px !important;min-width:200px !important;height:72px;margin-right:24px;}
html body #ardent-marquee .il-logo{max-width:170px !important;max-height:40px !important;width:auto !important;height:auto !important;object-fit:contain;}

/* ---------- Specialists: "04 Specialists" (.ardent-ind-grid section, every page) ---------- */
html body section:has(> .container > .ardent-ind-grid){background:#EEF3F9 !important;padding:120px clamp(24px,5vw,72px) !important;}
html body section:has(> .container > .ardent-ind-grid) > .container{max-width:1280px;padding:0;display:flex;flex-direction:column;gap:56px;}
html body section:has(> .container > .ardent-ind-grid) > .container > div:first-child{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:48px;align-items:end;margin:0 !important;text-align:left !important;}
html body section:has(> .container > .ardent-ind-grid) > .container > div:first-child h2{margin:0 !important;font-size:clamp(33px,4.7vw,48px) !important;line-height:1.02 !important;text-wrap:balance;}
html body section:has(> .container > .ardent-ind-grid) > .container > div:first-child p{margin:0 !important;font-size:16px !important;line-height:1.65 !important;color:#4A5A70 !important;max-width:52ch !important;}
html body .ardent-ind-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr)) !important;gap:12px !important;}
html body .ardent-ind-grid > a{background:#fff !important;border:1px solid #D6E4F8 !important;border-radius:4px !important;display:flex !important;flex-direction:column;color:#0A1A30 !important;transform:none !important;}
html body .ardent-ind-grid > a:hover{border-color:#2563D9 !important;box-shadow:0 12px 32px rgba(10,26,48,.12) !important;transform:none !important;}
html body .ardent-ind-grid > a > div:first-child{height:auto !important;aspect-ratio:16/10;background:#D6E4F8;}
html body .ardent-ind-grid > a > div:last-child{padding:24px 24px 26px !important;display:flex;flex-direction:column;gap:12px;flex:1;}
html body .ardent-ind-grid .ardent-ind-title{margin:0 !important;font-family:var(--font-display) !important;font-weight:400 !important;font-size:24px !important;line-height:1.15 !important;color:#0A1A30 !important;}
html body .ardent-ind-grid .ardent-ind-desc{margin:0 !important;font-size:14px !important;line-height:1.55 !important;color:#4A5A70 !important;flex:1;}
html body .ardent-ind-grid > a > div:last-child::after{content:"\2192";font-size:18px;color:#2563D9;}
html body .ardent-ind-grid > a::after{content:none !important;}
@media (max-width:767px){
  html body .ardent-ind-grid{grid-template-columns:minmax(0,1fr) !important;gap:10px !important;}
  html body .ardent-ind-grid > a{display:flex !important;flex-direction:row !important;align-items:stretch !important;border:0 !important;background:#EEF3F9 !important;border-radius:6px !important;box-shadow:none !important;}
  html body .ardent-ind-grid > a > div:first-child{aspect-ratio:auto;width:96px !important;min-height:88px;flex:none;}
  html body .ardent-ind-grid > a > div:last-child{flex:1;padding:14px 18px !important;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;}
  html body .ardent-ind-grid .ardent-ind-title{font-size:19px !important;line-height:1.25 !important;}
  html body .ardent-ind-grid .ardent-ind-desc{display:none !important;}
  html body section:has(> .container > .ardent-ind-grid){padding:72px 24px !important;}
}

/* ---------- Property types: "06 Property types" (.acg-pt-section, generated by gen_*_accordion.py) ---------- */
html body .acg-pt-section{background:#F8F7F3 !important;padding:120px clamp(24px,5vw,72px) !important;}
html body .acg-pt-section > .container{max-width:1280px;padding:0;display:flex;flex-direction:column;gap:48px;}
html body .acg-pt-head{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px 48px;align-items:end;margin:0 !important;text-align:left !important;}
html body .acg-pt-head .acg-pt-eyebrow{grid-column:1;margin:0 !important;font-family:var(--font-body) !important;font-size:12px !important;letter-spacing:.14em !important;font-weight:600;color:#2563D9 !important;}
html body .acg-pt-head h2{grid-column:1;margin:0 !important;font-size:clamp(33px,4.7vw,48px) !important;line-height:1.04 !important;text-wrap:balance;color:#0A1A30 !important;}
html body .acg-pt-head .acg-pt-intro{grid-column:2;grid-row:1 / span 2;align-self:end;margin:0 !important;font-size:16px !important;line-height:1.65 !important;color:#4A5A70 !important;max-width:56ch !important;text-wrap:pretty !important;}
html body .acg-pt-head .acg-pt-intro a{color:#2563D9 !important;font-weight:400;text-decoration:none;}
html body .acg-pt-layout{grid-template-columns:minmax(220px,300px) minmax(0,1fr) !important;gap:40px !important;}
html body .acg-pt-nav{border-left:0 !important;border-top:1px solid #0A1A30;}
html body .acg-pt-btn{justify-content:space-between;padding:16px 4px !important;margin:0 !important;border-left:0 !important;border-bottom:1px solid #D6E4F8 !important;font-family:var(--font-body) !important;font-size:15px !important;font-weight:400 !important;color:#4A5A70 !important;}
html body .acg-pt-btn .acg-pt-ico{display:none;}
html body .acg-pt-btn span{margin-right:auto;}
html body .acg-pt-btn::after{content:"\2192";color:#2563D9;opacity:0;}
html body .acg-pt-btn:hover{color:#0A1A30 !important;}
html body .acg-pt-btn.acg-pt-active{color:#0A1A30 !important;font-weight:600 !important;}
html body .acg-pt-btn.acg-pt-active::after{opacity:1;}
html body .acg-pt-panel.acg-pt-active{background:#fff;border:1px solid #D6E4F8;border-radius:6px;padding:16px;}
html body .acg-pt-panel.acg-pt-active{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px 32px;align-content:start;}
html body .acg-pt-panel > h3{grid-column:2;grid-row:1;margin:16px 16px 0 0 !important;font-family:var(--font-display) !important;font-weight:500 !important;font-size:28px !important;line-height:1.15 !important;color:#0A1A30 !important;}
html body .acg-pt-panel .acg-pt-body{display:contents !important;}
html body .acg-pt-panel .acg-pt-img{grid-column:1;grid-row:1 / span 2;order:0 !important;aspect-ratio:4/3;border-radius:4px !important;background:#D6E4F8;}
html body .acg-pt-panel .acg-pt-links{grid-column:2;grid-row:2;display:flex !important;flex-wrap:wrap;gap:8px !important;align-content:flex-start;padding:0 16px 16px 0;}
html body .acg-pt-panel .acg-pt-links a{font-size:13px !important;padding:8px 12px !important;border:1px solid #D6E4F8;border-radius:3px !important;color:#0A1A30 !important;background:#EEF3F9;line-height:1.3 !important;}
html body .acg-pt-panel .acg-pt-links a::before{content:none !important;}
html body .acg-pt-panel .acg-pt-links a:hover{border-color:#2563D9;color:#2563D9 !important;}
@media (max-width:640px){
  html body .acg-pt-section{padding:72px 24px !important;}
  html body .acg-pt-head .acg-pt-intro{grid-column:1;grid-row:auto;}
  html body .acg-pt-panel,html body .acg-pt-panel.acg-pt-active{display:block !important;background:transparent;border:0;border-bottom:1px solid #D6E4F8 !important;border-radius:0;padding:0;}
  html body .acg-pt-panel > h3{margin:0 !important;padding:20px 0 !important;font-family:var(--font-body) !important;font-size:16px !important;font-weight:600 !important;}
  html body .acg-pt-panel .acg-pt-body{display:none !important;}
  html body .acg-pt-panel.acg-pt-mob-open .acg-pt-body{display:flex !important;flex-direction:column;gap:16px;padding:4px 0 24px;}
  html body .acg-pt-panel .acg-pt-img{aspect-ratio:16/9;border-radius:6px !important;}
  html body .acg-pt-panel .acg-pt-links{padding:0;}
}

/* ---------- Homepage FAQ: "08 FAQ" ---------- */
html body section:has(.acg-home-faq-grid){padding:120px clamp(24px,5vw,72px) !important;background:#F8F7F3 !important;}
html body section:has(.acg-home-faq-grid) > .container{max-width:1280px;padding:0;}
html body section:has(.acg-home-faq-grid) > .container > div{max-width:1280px !important;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:64px;align-items:start;}
html body .acg-home-faq-head{position:sticky;top:96px;margin:0 !important;display:flex;flex-direction:column;gap:20px;}
html body .acg-home-faq-head::before{content:"FAQ";font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#2563D9;font-weight:600;}
html body .acg-home-faq-head h2{font-size:clamp(33px,4.7vw,48px) !important;line-height:1.04 !important;}
html body .acg-home-faq-grid{grid-column:span 2;display:flex !important;flex-direction:column;border-top:1px solid #0A1A30;gap:0 !important;}
html body .acg-home-faq-grid > div{display:contents;}
html body .acg-home-faq-grid details.group > summary{padding:24px 0 !important;gap:24px !important;}
html body .acg-home-faq-grid details.group > summary > span:first-child{font-size:22px !important;line-height:1.3;}
html body .acg-home-faq-grid details.group .mini-prose{padding:0 56px 28px 0 !important;}
html body .acg-home-faq-grid details.group .mini-prose p{font-size:15px !important;line-height:1.7 !important;}
@media (max-width:767px){
  html body section:has(.acg-home-faq-grid){padding:72px 24px !important;}
  html body .acg-home-faq-head{position:static;}
  html body .acg-home-faq-grid{grid-column:auto;}
  html body section:has(.acg-home-faq-grid) > .container > div{gap:32px;}
}
/* Homepage fixes from the 1440 comparison with screenshots/ardent-homepage/desktop-full.png */
html body #ardent-marquee h2{letter-spacing:normal !important;}
html body .hv3-card{min-height:488px !important;padding:0 32px !important;}
html body .hv3-card .lm-head{padding-top:32px !important;margin:0 0 14px !important;}
html body .hv3-card .lm-formtitle{margin:0 !important;line-height:1.2;}
html body .hv3-card .lm-progwrap{margin:0 0 18px !important;}
html body .hv3-card .lm-stepcount{top:-34px;}
html body .hv3-card .lm-form-inner{padding:0 0 28px !important;}
html body .hv3-card .lm-foot{display:block !important;margin-top:18px !important;}
html body .hv3-card .lm-continue{margin-top:18px;}
html body .hiw-steps{width:100% !important;margin:0 !important;}
html body .acg-home-faq-head{text-align:left !important;}
html body .acg-home-faq-grid details.group{width:100%;}
html body .hv3-card{padding:0 !important;}
html body .hv3-card .lm-head{padding:32px 32px 0 !important;margin:0 0 18px !important;}
html body .hv3-card .lm-progwrap{padding:0 32px !important;margin:0 !important;}
html body .hv3-card .lm-stepcount{right:32px;top:-38px;}
html body .hv3-card .lm-step{padding:18px 32px 0 !important;}
html body .hv3-card .lm-select,html body .hv3-card .lm-input{min-height:48px !important;}
html body .hv3-card .lm-foot{padding:0 32px 28px !important;margin-top:18px !important;line-height:1.3;}
html body .hv3-card .lm-form-inner{padding:0 !important;}

/* Mobile header (design "Ardent Nav", <1240px): logo and the round menu button only; Get started
   lives in the menu sheet and in each hero. */
@media (max-width:1239px){html body #main-header a[href="/contact/"].rounded-full{display:none !important;}}
/* Property types, 641-1023px: the panel's two columns do not fit beside the 300px tab list
   (it overflowed by 100px at 820); stack title, image and chips instead. */
@media (min-width:641px) and (max-width:1023px){
  html body .acg-pt-layout{grid-template-columns:minmax(200px,240px) minmax(0,1fr) !important;gap:28px !important;}
  html body .acg-pt-panel.acg-pt-active{grid-template-columns:minmax(0,1fr);}
  html body .acg-pt-panel > h3,html body .acg-pt-panel .acg-pt-img,html body .acg-pt-panel .acg-pt-links{grid-column:1;grid-row:auto;}
  html body .acg-pt-panel > h3{margin:0 !important;order:-1;}
  html body .acg-pt-panel .acg-pt-links{padding:0;}
}
/* The card arrow is drawn by CSS so the link's anchor text stays exactly the service name. */
html body .acg-svc-arrow::before{content:"\2192";}
/* Footer layout from the design ("10 Footer"): logo, address and AFCA as the first column beside
   the link columns; a hairline; the disclaimer; copyright left and the legal links in one row. */
@media (min-width:1024px){
  html body footer[data-cta-location="footer"] > .container{display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,4.2fr);column-gap:48px;}
  html body footer[data-cta-location="footer"] > .container > *{grid-column:1 / -1;}
  html body footer[data-cta-location="footer"] > .container > .mb-12{grid-column:1;margin:0 !important;}
  html body footer[data-cta-location="footer"] > .container > .grid{grid-column:2;}
  html body footer[data-cta-location="footer"] > .container > .flex:last-child > div:first-child{flex-direction:row !important;align-items:center !important;gap:24px !important;width:100%;}
  html body footer[data-cta-location="footer"] > .container > .flex:last-child > div:first-child > p{order:-1;margin:0 auto 0 0 !important;}
}
html body footer[data-cta-location="footer"] > .container > p.text-sm{font-size:12px !important;line-height:1.7;}

/* ======================================================================================
   STEP 4: SERVICE TEMPLATE (366 v2 service pages)
   designs/Ardent Service Page.dc.html "03 Intro", "04 Lenders", "05 Specialists", "06 Why Ardent".
   Markup additions (stat card, speak-card avatars + button, why band) come from
   tools/apply_brand2_service_sections.py; everything else here is layout on the existing markup.
   ====================================================================================== */

/* ---------- "03 Intro" (.cc-below): intro + speak card left, Who we help and We can help you right ---------- */
html body .cc-below{background:#F8F7F3 !important;padding:120px clamp(24px,5vw,72px) !important;}
html body .cc-below > .container{max-width:1280px;padding:0;margin:0 auto;}
@media (min-width:1024px){
  html body .cc-below > .container{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr) minmax(0,.85fr);column-gap:40px;align-items:start;}
  html body .cc-below > .container > *{grid-column:1;}
  html body .cc-below > .container > h2{grid-row:1;}
  html body .cc-below > .container > p{grid-row:2;}
  html body .cc-below > .container > div:has(> ul li > strong){grid-column:2;grid-row:1 / span 4;margin:0 !important;padding-left:24px;}
  html body .cc-below > .container > div:has(> ul):not(:has(> ul li > strong)){grid-column:3;grid-row:1 / span 4;margin:0 !important;}
  html body .cc-below > .container > div[style*="margin-top:2rem;display:flex"]{grid-row:3;}
}
html body .cc-below > .container > h2{margin:0 0 28px !important;font-size:clamp(33px,4.7vw,48px) !important;line-height:1.02 !important;}
html body .cc-below > .container > p{margin:0 0 40px !important;font-size:17px !important;line-height:1.65 !important;color:#4A5A70 !important;max-width:56ch;text-wrap:pretty;}
/* list labels -> the design's eyebrow with a navy rule */
html body .cc-below > .container > div > p[style*="font-weight:600;margin:0 0 0.7rem"]{margin:0 0 16px !important;padding-bottom:12px;border-bottom:1px solid #0A1A30;
  font-size:12px !important;letter-spacing:.14em;text-transform:uppercase;font-weight:600 !important;color:#2563D9 !important;}
html body .cc-below ul.hosp-svc-list{columns:1 !important;margin:0 !important;padding:0;display:flex;flex-direction:column;gap:16px;}
/* Who we help: icon disc, Newsreader title, slate description, hairline between */
html body .cc-below > .container > div:has(> ul li > strong) ul li{position:relative;padding:0 0 14px 54px !important;margin:0 !important;border-bottom:1px solid #D6E4F8;
  font-size:14px !important;line-height:1.5 !important;color:#4A5A70 !important;min-height:40px;}
html body .cc-below > .container > div:has(> ul li > strong) ul li::before{content:"" !important;position:absolute;left:0;top:0;width:40px !important;height:40px !important;border-radius:50% !important;
  background:#EEF3F9 center/20px 20px no-repeat !important;border:1px solid #D6E4F8;box-sizing:border-box;}
html body .cc-below > .container > div:has(> ul li > strong) ul li strong{display:block;margin:0 0 4px;font-family:var(--font-display);font-weight:400 !important;font-size:20px !important;line-height:1.2;color:#0A1A30 !important;}
/* We can help you: blue dash bullets */
html body .cc-below > .container > div:has(> ul):not(:has(> ul li > strong)) ul li{position:relative;padding:0 0 0 28px !important;margin:0 !important;font-size:15px !important;line-height:1.5 !important;color:#0A1A30 !important;}
html body .cc-below > .container > div:has(> ul):not(:has(> ul li > strong)) ul li::before{content:"\2014" !important;position:absolute;left:0;top:0 !important;width:auto !important;height:auto !important;
  background:none !important;color:#2563D9;border-radius:0 !important;}
/* Speak to a specialist: the design's navy card */
html body .cc-below div[style*="margin-top:2rem;display:flex;flex-wrap:wrap"]{margin:12px 0 0 !important;background:#0A1A30;color:#fff;border-radius:6px;padding:28px !important;
  display:flex !important;flex-direction:column !important;align-items:stretch !important;gap:22px !important;max-width:none;box-shadow:none;}
html body .cc-below div[style*="margin-top:2rem;display:flex;flex-wrap:wrap"] > div:first-child{flex-direction:row !important;align-items:center !important;flex-wrap:wrap;gap:14px 16px !important;}
html body .cc-below div[style*="margin-top:2rem;display:flex;flex-wrap:wrap"] > div:first-child > div{display:flex;}
html body .cc-below div[style*="margin-top:2rem;display:flex;flex-wrap:wrap"] img{width:52px !important;height:52px !important;border:2px solid #0A1A30 !important;background:#D6E4F8;margin-left:-14px !important;}
html body .cc-below div[style*="margin-top:2rem;display:flex;flex-wrap:wrap"] > div:first-child > div > img:first-child{margin-left:0 !important;}
html body .cc-below div[style*="margin-top:2rem;display:flex;flex-wrap:wrap"] span[data-brand2="avatar"]{margin-left:-14px !important;}
html body .cc-below div[style*="margin-top:2rem;display:flex;flex-wrap:wrap"] span[data-brand2="avatar"] img{margin-left:0 !important;}
html body .cc-below div[style*="margin-top:2rem;display:flex;flex-wrap:wrap"] span[data-brand2="avatar"] > span{right:1px !important;bottom:2px !important;width:13px !important;height:13px !important;}
html body .cc-below div[style*="margin-top:2rem;display:flex;flex-wrap:wrap"] > div:first-child > p{font-family:var(--font-display);font-weight:400 !important;font-size:clamp(20px,1.8vw,24px) !important;line-height:1.2 !important;white-space:nowrap;color:#fff !important;}
html body .cc-below div[style*="margin-top:2rem;display:flex;flex-wrap:wrap"] > div:nth-child(2){display:grid !important;grid-template-columns:1fr 1fr;gap:16px !important;border-top:1px solid rgba(214,228,248,.2);padding-top:20px;}
html body .cc-below div[style*="margin-top:2rem;display:flex;flex-wrap:wrap"] > div:nth-child(2) p[style*="font-weight:600;margin:0"]:not([style*="0.3rem"]){font-family:var(--font-display);font-weight:400 !important;font-size:36px !important;line-height:1.1 !important;color:#fff !important;}
html body .cc-below div[style*="margin-top:2rem;display:flex;flex-wrap:wrap"] > div:nth-child(2) p[style*="margin:0.3rem 0 0"]{margin:2px 0 0 !important;font-size:13px !important;color:#D6E4F8 !important;}
html body .cc-below .acg-speak-cta:hover{background:#1D52B8 !important;}
@media (max-width:1023px){
  html body .cc-below > .container > div:has(> ul){margin:48px 0 0 !important;}
  html body .cc-below{padding:72px 24px !important;}
}

/* ---------- "04 Lenders": intro row + facility-size card, the lender marquee inside the same band ---------- */
/* NB: on 360+ pages this section is never closed in the source, so every later section is nested
   inside it. So it gets no side/bottom padding of its own; its intro container carries it. */
html body section:has(> .container > .ardent-wfb-intro-row){background:#fff !important;border-top:1px solid #D6E4F8;padding:0 !important;}
html body section:has(> .container > .ardent-wfb-intro-row) > .container:has(> .ardent-wfb-intro-row){max-width:calc(1280px + 2 * clamp(24px,5vw,72px));padding:96px clamp(24px,5vw,72px) 0;margin:0 auto;}
html body .ardent-wfb-intro-row{grid-template-columns:repeat(auto-fit,minmax(340px,1fr)) !important;gap:56px !important;align-items:center !important;margin:0 !important;}
html body .ardent-wfb-intro-row > div:first-child{display:flex;flex-direction:column;gap:20px;}
html body .ardent-wfb-intro-row > div:first-child > *{margin:0 !important;}
html body .ardent-wfb-intro-row > div:first-child > p[style*="--font-mono"]{font-family:var(--font-body) !important;font-size:12px !important;letter-spacing:.14em !important;font-weight:600;color:#2563D9 !important;}
html body .ardent-wfb-intro-row h2{font-size:clamp(33px,4.7vw,48px) !important;line-height:1.05 !important;}
html body .ardent-wfb-intro-row > div:first-child > p:last-child{font-size:16px !important;line-height:1.65 !important;color:#4A5A70 !important;text-wrap:pretty;}
html body .ardent-wfb-intro-row .wf2-access-col{justify-content:center !important;}
/* the marquee nested in this band: no second border, 64px below the intro, full bleed */
html body section:has(> .container > .ardent-wfb-intro-row) > #ardent-marquee{border:0 !important;border-bottom:1px solid #D6E4F8 !important;background:#fff !important;padding:64px 0 96px !important;margin:0 !important;}

/* ---------- "05 Specialists": image left (min 520px), numbered list right ---------- */
html body section:has(> .container > .ardent-wfb-two-col){background:#F8F7F3 !important;padding:120px clamp(24px,5vw,72px) 0 !important;}
html body section:has(> .container > .ardent-wfb-two-col):not(:has(.acg-why)){padding-bottom:120px !important;}
html body section:has(> .container > .ardent-wfb-two-col) > .container{max-width:1280px;padding:0;margin:0 auto;}
html body .ardent-wfb-two-col{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(340px,1fr)) !important;gap:64px !important;align-items:center !important;}
html body .ardent-wfb-two-col > div:last-child{order:-1;position:relative;min-height:520px;}
html body .ardent-wfb-two-col > div:last-child > div{position:absolute !important;inset:0;height:auto !important;border-radius:4px !important;background:#D6E4F8;}
html body .ardent-wfb-two-col > div:first-child{display:flex;flex-direction:column;gap:24px;}
html body .ardent-wfb-two-col > div:first-child > *{margin:0 !important;}
html body .ardent-wfb-two-col h2{font-size:clamp(33px,4.7vw,48px) !important;line-height:1.05 !important;}
html body .ardent-wfb-two-col > div:first-child > p:first-of-type{font-size:16px !important;line-height:1.65 !important;color:#4A5A70 !important;}
html body .ardent-wfb-two-col > div:first-child > p:last-child{font-size:15px !important;line-height:1.65 !important;color:#4A5A70 !important;text-wrap:pretty;}
html body .ardent-wfb-two-col ul.hosp-svc-list{columns:1 !important;display:flex;flex-direction:column;border-top:1px solid #0A1A30;counter-reset:acgspec;padding:0;}
html body .ardent-wfb-two-col ul.hosp-svc-list li{counter-increment:acgspec;display:flex;gap:16px;padding:14px 0 !important;margin:0 !important;border-bottom:1px solid #D6E4F8;font-size:15px !important;line-height:1.5 !important;color:#0A1A30 !important;}
html body .ardent-wfb-two-col ul.hosp-svc-list li::before{content:counter(acgspec,decimal-leading-zero) !important;position:static !important;flex:none;width:24px !important;height:auto !important;background:none !important;
  font-family:var(--font-display);color:#2563D9;border-radius:0 !important;}
@media (max-width:767px){
  html body section:has(> .container > .ardent-wfb-two-col){padding:72px 24px 0 !important;}
  html body .ardent-wfb-two-col > div:last-child{min-height:260px;}
}

/* ---------- "06 Why Ardent": full-bleed video band, rating pill, glass cards with inline icons ---------- */
html body .acg-why{position:relative;overflow:hidden;color:#fff;background:#0A1A30;width:100vw;margin:120px 0 0 calc(50% - 50vw);padding:120px clamp(24px,5vw,72px);}
html body .acg-why-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
html body .acg-why-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.7) 0%,rgba(0,0,0,.5) 30%,rgba(0,0,0,.18) 60%,rgba(0,0,0,0) 100%);}
html body .acg-why-inner{position:relative;max-width:1280px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:20px;}
html body .acg-why-pill{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:#fff;padding:9px 16px;border-radius:999px;background:rgba(214,228,248,.1);
  border:1px solid rgba(214,228,248,.3);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);}
html body .acg-why-g{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#fff;}
html body .acg-why h2{margin:0 0 36px !important;color:#fff !important;font-size:clamp(33px,4.7vw,48px) !important;line-height:1.05 !important;text-align:center;text-shadow:0 2px 6px rgba(5,14,28,.55),0 4px 32px rgba(5,14,28,.75);}
html body .acg-why .ardent-wfb-cards{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(320px,1fr)) !important;gap:16px !important;width:100%;margin:0 !important;}
html body .acg-why .ardent-wfb-cards > div{background:rgba(214,228,248,.1) !important;border:1px solid rgba(214,228,248,.3) !important;border-radius:8px !important;padding:30px 24px !important;
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;row-gap:16px;align-items:center;box-shadow:none !important;}
html body .acg-why .ardent-wfb-cards > div > svg{grid-column:1;grid-row:1;width:24px !important;height:24px !important;color:#fff !important;stroke:#fff !important;margin:0 !important;}
html body .acg-why .ardent-wfb-cards > div > svg *{stroke:#fff;}
html body .acg-why .ardent-wfb-cards h3{grid-column:2;grid-row:1;margin:0 !important;font-family:var(--font-display) !important;font-weight:500 !important;font-size:clamp(18px,1.6vw,23px) !important;line-height:1.2 !important;color:#fff !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
html body .acg-why .ardent-wfb-cards p{grid-column:1 / -1;grid-row:2;margin:0 !important;font-size:15px !important;line-height:1.6 !important;color:#D6E4F8 !important;}
@media (max-width:767px){
  html body .acg-why{margin-top:72px;padding:72px 24px;}
  html body .acg-why-overlay{background:rgba(0,0,0,.52);}
  html body .acg-why .ardent-wfb-cards h3{white-space:normal;}
}
html body .cc-below > .container > div:has(> ul li > strong) li:nth-child(6n+1)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232563D9%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%227%22%20width%3D%2218%22%20height%3D%2213%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M9%207V5a2%202%200%200%201%202-2h2a2%202%200%200%201%202%202v2M3%2012h18%22%2F%3E%3C%2Fsvg%3E") !important;}
html body .cc-below > .container > div:has(> ul li > strong) li:nth-child(6n+2)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232563D9%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2020v-8%22%2F%3E%3Cpath%20d%3D%22M12%2012C12%208%209%206%205%206c0%204%203%206%207%206z%22%2F%3E%3Cpath%20d%3D%22M12%2014c0-3%202.5-5%206-5%200%203-2.5%205-6%205z%22%2F%3E%3C%2Fsvg%3E") !important;}
html body .cc-below > .container > div:has(> ul li > strong) li:nth-child(6n+3)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232563D9%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2020h18%22%2F%3E%3Cpath%20d%3D%22M5%2016l5-5%203%203%206-7%22%2F%3E%3Cpath%20d%3D%22M15%207h4v4%22%2F%3E%3C%2Fsvg%3E") !important;}
html body .cc-below > .container > div:has(> ul li > strong) li:nth-child(6n+4)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232563D9%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%207v5l3%202%22%2F%3E%3C%2Fsvg%3E") !important;}
html body .cc-below > .container > div:has(> ul li > strong) li:nth-child(6n+5)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232563D9%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%228%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M4%2021c0-4%204-6%208-6s8%202%208%206%22%2F%3E%3C%2Fsvg%3E") !important;}
html body .cc-below > .container > div:has(> ul li > strong) li:nth-child(6n+6)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%232563D9%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%223%22%20width%3D%2214%22%20height%3D%2218%22%20rx%3D%221%22%2F%3E%3Cpath%20d%3D%22M9%207h2M13%207h2M9%2011h2M13%2011h2M9%2015h2M13%2015h2M10%2021v-3h4v3%22%2F%3E%3C%2Fsvg%3E") !important;}
/* ---------- "07 Scenarios" (the tabs section): heading left, intro right, 120px band ---------- */
html body section:has(> .container > .ardent-tabs-layout){background:#F8F7F3 !important;padding:120px clamp(24px,5vw,72px) !important;}
html body section:has(> .container > .ardent-tabs-layout) > .container{max-width:1280px;padding:0;margin:0 auto;}
html body section:has(> .container > .ardent-tabs-layout) > .container > div:first-child:not(.ardent-tabs-layout){display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:20px 48px;align-items:end;margin:0 0 56px !important;}
html body section:has(> .container > .ardent-tabs-layout) > .container > div:first-child > p[style*="--font-mono"]{grid-column:1;margin:0 !important;font-family:var(--font-body) !important;font-size:12px !important;letter-spacing:.14em !important;font-weight:600;color:#2563D9 !important;}
html body section:has(> .container > .ardent-tabs-layout) > .container > div:first-child > h2{grid-column:1;margin:0 !important;font-size:clamp(33px,4.7vw,48px) !important;line-height:1.04 !important;text-wrap:balance;}
html body section:has(> .container > .ardent-tabs-layout) > .container > div:first-child > p:last-child{grid-column:2;grid-row:1 / span 2;align-self:end;margin:0 !important;font-size:16px !important;line-height:1.65 !important;color:#4A5A70 !important;max-width:56ch;}
@media (min-width:641px){html body .ardent-tabs-layout{grid-template-columns:minmax(220px,300px) minmax(0,1fr) !important;gap:48px !important;}}
@media (max-width:767px){
  html body section:has(> .container > .ardent-tabs-layout){padding:72px 24px !important;}
  html body section:has(> .container > .ardent-tabs-layout) > .container > div:first-child > p:last-child{grid-column:1;grid-row:auto;}
}
/* acg-shared.css forces `.wf2-access-col span{font-size:20px!important}` on mobile; the stat card
   lives in that column, so its own sizes are restated at higher specificity. */
html body .wf2-access-col .acg-stat-card > span:first-child{font-size:12px !important;}
html body .wf2-access-col .acg-stat-card > div:nth-child(2) > span:not(:nth-child(2)){font-size:clamp(40px,4vw,56px) !important;}
html body .wf2-access-col .acg-stat-card > div:nth-child(2) > span:nth-child(2){font-size:14px !important;}
html body .wf2-access-col .acg-stat-card > span:last-child{font-size:14px !important;}
/* Scenario accordion rows on mobile, per the design's data-m="tab-btn" rule: 16px / 600 Hanken */
@media (max-width:640px){
  html body .ardent-tab-panel h3{font-family:var(--font-body) !important;font-size:16px !important;font-weight:600 !important;padding:20px 0 !important;}
  html body .ardent-tab-panel h3::after{color:#4A5A70 !important;font-size:24px !important;font-weight:300 !important;}
}

/* ======================================================================================
   PASS 1 (27 Sep 2026): desktop pop-up, per designs/Pop Up Form for Desktop.dc.html.
   Scoped to #lead-modal so the hero-card clone (#lead-hero) is untouched. Styling only: the
   fields, ids, data-f keys, steps and handlers are exactly as before.
   ====================================================================================== */
html body #lead-modal .lm-formtitle{font-family:var(--font-display);font-weight:500;font-size:32px;letter-spacing:-.01em;color:#0A1A30;margin:0;gap:10px;line-height:1.1;}
html body #lead-modal .lm-dot-pulse{display:none;}
html body #lead-modal .lm-dot-core{background:#22A45D;box-shadow:0 0 0 4px rgba(34,164,93,.18);}
html body #lead-modal .lm-badge{margin:0;font-size:13px;color:#4A5A70;}
html body #lead-modal .lm-stepcount{font-size:12px !important;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:#4A5A70 !important;margin-bottom:10px;}
html body #lead-modal .lm-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;}
html body #lead-modal .lm-seg{height:5px;border-radius:999px;background:#E3EAF3;}
html body #lead-modal .lm-seg.current,html body #lead-modal .lm-seg.done{background:#22A45D;}
html body #lead-modal .lm-label{font-size:15px !important;font-weight:600 !important;color:#0A1A30 !important;margin-bottom:8px;}
html body #lead-modal .lm-fields{gap:18px;}
html body #lead-modal .lm-input,html body #lead-modal .lm-select{padding:15px 44px 15px 16px;border-radius:6px;background-color:#F8F7F3;border:1px solid #C9D8EE;font-size:15px;color:#0A1A30;min-height:0;}
html body #lead-modal .lm-input{padding-right:16px;}
html body #lead-modal .lm-continue{padding:17px;border-radius:6px;font-size:16px;font-weight:600;background:#2563D9;letter-spacing:0;min-height:0;}
html body #lead-modal .lm-continue:hover{background:#1D52B8;}
html body #lead-modal .lm-continue:disabled{background:#A7D9BC;opacity:1;}
html body #lead-modal .lm-back{font-size:15px;font-weight:600;color:#0A1A30;}
html body #lead-modal .lm-foot{font-size:13px;color:#4A5A70;gap:8px;}
html body #lead-modal .lm-check{background:#22A45D;box-shadow:0 0 0 10px rgba(34,164,93,.14);}
html body #lead-modal .lm-success-title{font-family:var(--font-display);font-weight:500;font-size:32px;line-height:1.1;color:#0A1A30;}
html body #lead-modal .lm-trust-logo,html body #lead-modal .lm-trust-team{display:none;}

@media (min-width:768px){
  /* The dialog: centred 1120px card over a blurred skyline */
  html body #lead-modal.open{align-items:center;justify-content:center;padding:40px;overflow:auto;}
  html body #lead-modal .lm-backdrop{background:rgba(5,14,28,.62) url(/images/sydney-skyline-commercial-finance-800.webp) center/cover;background-blend-mode:multiply;}
  html body #lead-modal .lm-backdrop::after{content:"";position:absolute;inset:0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:rgba(5,14,28,.35);}
  html body #lead-modal .lm-shell{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);width:100%;max-width:1120px;min-height:660px;height:auto;max-height:calc(100vh - 80px);
    margin:auto;border-radius:12px;box-shadow:0 40px 120px rgba(0,0,0,.45);overflow:hidden;}
  html body #lead-modal .lm-form-panel{display:block;overflow-y:auto;padding:48px 56px;}
  html body #lead-modal .lm-form-inner{max-width:none;padding:0;display:flex;flex-direction:column;min-height:100%;}
  html body #lead-modal .lm-logo{display:none;}
  html body #lead-modal .lm-head{padding:0;margin:0 0 28px;align-items:center;}
  html body #lead-modal .lm-progwrap{padding:0;margin:0 0 28px;}
  html body #lead-modal .lm-step{padding:0;}
  html body #lead-modal .lm-foot{padding:24px 0 0;}
  /* Right panel: skyline photo, gradient, logo, close, then the content at the bottom */
  html body #lead-modal .lm-trust-panel{position:relative;color:#fff;background:#0A1A30 url(/images/sydney-skyline-commercial-finance-800.webp) center/cover;padding:48px;
    justify-content:flex-end;gap:22px;overflow:hidden;}
  html body #lead-modal .lm-trust-panel::before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.5) 55%,rgba(0,0,0,.35) 100%);}
  html body #lead-modal .lm-trust-panel > *{position:relative;}
  html body #lead-modal .lm-trust-logo{display:block;position:absolute;top:48px;left:48px;height:30px;width:auto;}
  html body #lead-modal .lm-x{top:48px;right:48px;width:42px;height:42px;background:rgba(214,228,248,.14);border:1px solid rgba(214,228,248,.3);}
  html body #lead-modal .lm-x:hover{background:rgba(214,228,248,.26);}
  html body #lead-modal .lm-trust-panel > div:first-of-type{display:flex;flex-direction:column;gap:12px;margin-top:120px;}
  html body #lead-modal .lm-trust-title{margin:0;font-family:var(--font-display);font-weight:400;font-size:36px;line-height:1.08;letter-spacing:-.015em;color:#fff;
    text-shadow:0 2px 6px rgba(5,14,28,.55),0 4px 32px rgba(5,14,28,.75);}
  html body #lead-modal .lm-trust-sub{margin:0;font-size:16px;line-height:1.6;color:#EEF3F9;text-shadow:0 2px 6px rgba(5,14,28,.55);}
  html body #lead-modal .lm-trust-team{display:flex;align-items:center;gap:14px;margin-top:10px;}
  html body #lead-modal .lm-trust-avatars{display:flex;}
  html body #lead-modal .lm-trust-avatars img{width:36px;height:36px;border-radius:50%;object-fit:cover;object-position:top;border:2px solid #0A1A30;background:#D6E4F8;display:block;}
  html body #lead-modal .lm-trust-avatars > img + img,html body #lead-modal .lm-trust-last{margin-left:-10px;}
  html body #lead-modal .lm-trust-last{position:relative;display:block;}
  html body #lead-modal .lm-trust-online{position:absolute;right:-1px;bottom:0;width:10px;height:10px;border-radius:50%;background:#22C55E;border:2px solid #0A1A30;}
  html body #lead-modal .lm-trust-reply{font-size:13px;color:#EEF3F9;}
  html body #lead-modal .lm-trust-cards{gap:0;}
  html body #lead-modal .lm-trust-card,html body #lead-modal .lm-reviews{display:flex;align-items:center;gap:16px;padding:18px 20px;border-radius:8px;background:rgba(214,228,248,.1);
    border:1px solid rgba(214,228,248,.3);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#fff;}
  html body #lead-modal .lm-trust-card:hover{background:rgba(214,228,248,.18);}
  html body #lead-modal .lm-trust-ico{width:auto;height:auto;background:none;color:#fff;border-radius:0;}
  html body #lead-modal .lm-trust-kicker{font-size:11px;letter-spacing:.14em;color:#FFD166;margin-bottom:3px;}
  html body #lead-modal .lm-trust-val{font-size:16px;font-weight:600;color:#fff;}
  /* Google card: G disc left, "Excellent ★★★★★" over "Rated 5 stars · Google reviews" */
  html body #lead-modal .lm-reviews{display:grid;grid-template-columns:26px minmax(0,1fr);column-gap:16px;row-gap:3px;}
  html body #lead-modal .lm-reviews-google{grid-column:1;grid-row:1 / span 2;align-self:center;width:26px;height:26px;border-radius:50%;background:#fff;justify-content:center;font-size:0;gap:0;}
  html body #lead-modal .lm-reviews-google svg{height:14px;width:14px;}
  html body #lead-modal .lm-reviews-top{grid-column:2;grid-row:1;margin:0;}
  html body #lead-modal .lm-reviews-excellent{font-size:16px;font-weight:600;color:#fff;}
  html body #lead-modal .lm-reviews-stars{color:#F5B301;font-size:14px;letter-spacing:2px;}
  html body #lead-modal .lm-reviews-sub{grid-column:2;grid-row:2;margin:0;font-size:13px;color:#D6E4F8;}
}
/* Phones: the form only, full screen (the trust panel is already hidden below 768px). */
@media (max-width:767px){
  html body #lead-modal .lm-formtitle{font-size:28px;}
  html body #lead-modal .lm-x{background:#EEF3F9;color:#0A1A30;}
}

/* ---------- Pass 1 fixes (27 Sep 2026) ---------- */
/* Breadcrumb: a thin row at the bottom of the last section (base.ejs moves it there). */
html body .acg-crumb-row{position:relative;z-index:1;margin-top:64px;border-top:1px solid #D6E4F8;}
html body .acg-crumb-row .acg-breadcrumb{max-width:1280px;margin:0 auto;padding:18px 0 0;font-size:13px;}
html body .acg-bcta .acg-crumb-row{max-width:1280px;margin:72px auto -72px;border-top-color:rgba(214,228,248,.18);}
html body .acg-bcta .acg-crumb-row .acg-breadcrumb{padding:20px 0 28px;}
html body .acg-bcta .acg-crumb-row :is(li,a,span){color:#D6E4F8 !important;}
html body .acg-bcta .acg-crumb-row a:hover{color:#fff !important;}
html body .acg-bcta .acg-crumb-row li:not(:last-child)::after{color:rgba(214,228,248,.45) !important;}
@media (max-width:767px){html body .acg-bcta .acg-crumb-row{margin:48px auto -48px;}}
/* Service hero on phones: more room between the nav and the rating row. */
@media (max-width:767px){html body .cc-hero .cc-hero-inner{padding-top:36px !important;}}
/* Homepage lenders heading on two lines at desktop. */
@media (min-width:1024px){html body #ardent-marquee > div:first-child:not(.container) h2{max-width:28ch !important;}}
/* Pop-up on phones: breathing room under the title row. */
@media (max-width:767px){html body #lead-modal .lm-head{margin-bottom:16px;}}

/* ---------- Contact page (sections/contact/*.html) ---------- */
/* The form card: design "Contact us today" card. Styling only on #ctf-form. */
html body .acg-contact-formcard{position:relative;}
html body .acg-contact-formcard #ctf-form{--lm-accent:#2563D9;--lm-accent-hover:#1D52B8;--lm-title:#0A1A30;--lm-body:#4A5A70;}
html body .acg-contact-formcard #ctf-form .lm-progwrap{margin:0 0 4px;}
html body .acg-contact-formcard #ctf-form .lm-stepcount{position:absolute;top:40px;right:32px;margin:0;font-size:12px;font-weight:400;text-transform:none;letter-spacing:0;color:#4A5A70;}
html body .acg-contact-formcard #ctf-form .lm-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;}
html body .acg-contact-formcard #ctf-form .lm-seg{height:3px;border-radius:2px;background:#E3EAF3;}
html body .acg-contact-formcard #ctf-form .lm-seg.current,html body .acg-contact-formcard #ctf-form .lm-seg.done{background:#22A45D;}
html body .acg-contact-formcard #ctf-form .lm-fields{gap:16px;}
html body .acg-contact-formcard #ctf-form .lm-label{font-size:13px;font-weight:400;color:#4A5A70;margin-bottom:8px;}
html body .acg-contact-formcard #ctf-form .lm-input,html body .acg-contact-formcard #ctf-form .lm-select{padding:14px 16px;border-radius:3px;background-color:#F8F7F3;border:1px solid #C9D8EE;font-size:15px;color:#0A1A30;}
html body .acg-contact-formcard #ctf-form .lm-input:focus,html body .acg-contact-formcard #ctf-form .lm-select:focus{border-color:#2563D9 !important;box-shadow:0 0 0 3px rgba(37,99,217,.18) !important;}
html body .acg-contact-formcard #ctf-form .lm-continue{background:#2563D9;border-radius:3px;padding:16px;font-size:15px;font-weight:600;letter-spacing:0;margin-top:16px;}
html body .acg-contact-formcard #ctf-form .lm-continue:hover{background:#1D52B8;}
html body .acg-contact-formcard #ctf-form .lm-continue:disabled{background:#A7D9BC;opacity:1;}
html body .acg-contact-formcard #ctf-form .lm-heading{font-family:var(--font-display);font-weight:400;font-size:22px;color:#0A1A30;}
html body .acg-contact-formcard #ctf-form .lm-helper{color:#4A5A70;}
html body .acg-contact-formcard #ctf-form .lm-back{color:#4A5A70;}
html body .acg-contact-formcard #ctf-form .lm-foot{font-size:12px;color:#4A5A70;padding:16px 0 0;justify-content:center;}
html body .acg-contact-formcard #ctf-form .lm-foot svg{display:none;}
html body .acg-contact-formcard #ctf-form .lm-check{background:#22A45D;}

/* The contact form stays visible on phones (README): stack, and let the card fill the width. */
@media (max-width:767px){
  html body .acg-contact-grid{padding:140px 24px 72px !important;gap:40px !important;}
  html body .acg-contact-formcard{justify-self:stretch !important;width:100% !important;padding:24px !important;}
  html body .acg-contact-formcard #ctf-form .lm-stepcount{top:30px;right:24px;}
  html body .acg-contact-hero h1{white-space:normal !important;}
}
/* About hero on phones: stats as a 3-up row, H1/subtitle allowed to wrap on very narrow screens. */
@media (max-width:767px){
  html body .acg-about-hero h1,html body .acg-about-hero h2{white-space:normal !important;}
  html body .acg-about-stats > div{padding:0 12px !important;gap:8px !important;}
  html body .acg-about-stats > div > span{display:none !important;}
  html body .acg-about-stats > div span[style*="34px"]{font-size:26px !important;}
}
/* Contact hero stats on phones: one row of three, as on the service pages. */
@media (max-width:767px){
  html body .acg-contact-hero [data-m="hero-stats"]{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:8px !important;font-size:12px !important;text-align:center;}
  html body .acg-contact-hero [data-m="hero-stats"] span span{display:block;font-size:22px !important;}
}
/* About director quote: the curly quotes are drawn by CSS so the H2's text stays exactly as live. */
html body h2.acg-quote::before{content:"\201C";}
html body h2.acg-quote::after{content:"\201D";}
/* Homepage hero on phones: heavier, wider shadow so the copy reads over the video (Jason, 27 Sep). */
@media (max-width:767px){
  html body .acg-home-hero [data-m="hero-copy"]{text-shadow:0 1px 3px rgba(5,14,28,.9),0 2px 12px rgba(5,14,28,.85),0 4px 40px rgba(5,14,28,.8),0 0 70px rgba(5,14,28,.6) !important;}
  html body .acg-home-hero [data-m="hero-copy"] h1{text-shadow:0 1px 3px rgba(5,14,28,.95),0 2px 14px rgba(5,14,28,.9),0 0 40px rgba(5,14,28,.7) !important;}
}
/* Pop-up Google card: the G sits on the glass with no white disc (Jason, 27 Sep). */
@media (min-width:768px){
  html body #lead-modal .lm-reviews-google{background:none;width:auto;height:auto;}
  html body #lead-modal .lm-reviews-google svg{height:20px;width:20px;}
}
/* Why band rating pill: no white disc behind the G (Jason, 27 Sep). */
html body .acg-why-g{background:none;width:auto;height:auto;}
html body .acg-why-g svg{width:16px;height:16px;}
/* Nav bar 1024-1279px: the five links, logo and button collided at 1024 (logo over "Commercial
   Finance", "Contact" against Get started). Tighter gaps and a slightly smaller logo there. */
@media (min-width:1240px) and (max-width:1279px){
  html body #main-header > .container{padding-left:24px;padding-right:24px;gap:16px;}
  html body #main-header .acg-nav{gap:clamp(10px,1.4vw,22px) !important;}
  html body #main-header .acg-nav > a,html body #main-header .acg-nav .acg-dd-trigger{font-size:13.5px !important;}
  html body #main-header a[href="/"] img{height:1.75rem !important;}
  html body #main-header a[href="/contact/"].rounded-full{padding:9px 14px;}
}
/* Mega menus 1024-1339px: base.ejs hides the navy promo column below 1340px and makes the grid one
   column; the Step 2 rule above (grid 300px + 1fr) outranked that and squeezed the menu into the
   300px track. Restore the one-column layout at these widths. */
@media (min-width:1240px) and (max-width:1339px){
  /* Keep the navy side panel at every desktop width (Jason, 27 Sep); base.ejs hides it below
     1340px. It narrows to 240px and the columns tighten so everything fits from 1024px. */
  html body .acg-cf-grid{grid-template-columns:240px minmax(0,1fr) !important;}
  html body .acg-cf-promo{display:flex !important;padding:32px 26px 28px !important;}
  html body .acg-cf-ph{font-size:24px !important;}
  html body .acg-cf-pp{font-size:14px !important;}
  html body .acg-cf-cols{padding:32px 28px 24px !important;gap:0 20px !important;}
  html body .acg-cp-search{padding:28px 28px 0 !important;}
  html body .acg-cf-txt b{font-size:14px !important;}
  html body .acg-cf-txt i{font-size:12.5px !important;}
  html body .acg-nav .acg-dd-menu .acg-cf-item{gap:10px !important;}
  html body .acg-cf-ico{width:34px !important;height:34px !important;}
  html body .acg-nav .acg-mega-menu.acg-cf-narrow{max-width:760px !important;}
  html body .acg-cf-narrow .acg-cf-grid{grid-template-columns:240px minmax(0,1fr) !important;}
}
/* Mega-menu side panel: the bottom-CTA skyline photo behind a dark wash instead of the blue glow
   (Jason, 27 Sep). Same file as the bottom CTA, so it is one cached download site-wide. */
@media (min-width:1024px){
  html body .acg-cf-promo{background:linear-gradient(180deg,rgba(5,14,28,.84) 0%,rgba(5,14,28,.76) 45%,rgba(5,14,28,.88) 100%),#0A1A30 url(/images/sydney-skyline-commercial-finance-800.webp) 38% center/cover no-repeat !important;}
  html body .acg-cf-promo :is(.acg-cf-kicker,.acg-cf-ph,.acg-cf-pp,.acg-cf-cta){text-shadow:0 1px 2px rgba(0,0,0,.9),0 2px 10px rgba(0,0,0,.75),0 4px 28px rgba(0,0,0,.6);}
}

/* ---------- Chat launcher + chat pop-up (#byo-launcher / #build-your-own-popup in base.ejs) ----------
   Restyled to the reference Jason supplied (27 Sep): a green launcher with a pulsing halo and an
   "online" dot; a light header, a centred team label, a full-width message bubble, a grey
   secondary button and a green primary. Styling only; the buttons keep their links and handlers. */
html body #byo-launcher{background:#4CAF50 !important;width:51px !important;height:51px !important;box-shadow:0 10px 30px rgba(0,0,0,.28) !important;overflow:visible;}
html body #byo-launcher svg{width:24px;height:24px;position:relative;z-index:1;}
html body #byo-launcher::before{content:"";position:absolute;inset:-10px;border-radius:50%;background:rgba(76,175,80,.35);z-index:-1;animation:acgChatPulse 2.2s ease-out infinite;}
html body #byo-launcher::after{content:"";position:absolute;top:0;right:0;width:13px;height:13px;border-radius:50%;background:#4CAF50;border:2.5px solid #fff;box-sizing:border-box;}
@keyframes acgChatPulse{0%{transform:scale(.85);opacity:.9;}70%{transform:scale(1.25);opacity:0;}100%{transform:scale(1.25);opacity:0;}}
@media (prefers-reduced-motion:reduce){html body #byo-launcher::before{animation:none;opacity:.5;}}
html body #build-your-own-popup{border-radius:17px !important;max-width:300px !important;box-shadow:0 18px 45px rgba(0,0,0,.3) !important;bottom:5.25rem !important;}
/* header (25% smaller than the first pass, Jason 27 Sep) */
html body #build-your-own-popup > div:first-child{background:#f4f4f5 !important;border-bottom:1px solid #e4e4e7 !important;padding:16px !important;gap:10px !important;align-items:flex-start !important;}
html body #build-your-own-popup > div:first-child img{width:30px !important;height:30px !important;border:2px solid #fff !important;margin-left:-10px !important;}
html body #build-your-own-popup > div:first-child img:first-child{margin-left:0 !important;}
html body #build-your-own-popup > div:first-child > div:first-child > span{width:9px !important;height:9px !important;right:-2px !important;top:0 !important;bottom:auto !important;background:#4CAF50 !important;border:0 !important;box-shadow:0 0 0 4px rgba(76,175,80,.2);}
html body #build-your-own-popup > div:first-child p:first-child{font-size:13px !important;font-weight:700 !important;color:#18181b !important;}
html body #build-your-own-popup > div:first-child p + p{font-size:11px !important;color:#71717a !important;line-height:1.35 !important;margin-top:2px !important;}
html body #build-your-own-popup [data-byo-close]{color:#18181b !important;padding:2px !important;}
html body #build-your-own-popup [data-byo-close] svg{width:16px;height:16px;}
/* body */
html body #build-your-own-popup > div:nth-child(2){padding:16px 16px 4px !important;}
html body #build-your-own-popup > div:nth-child(2) > p{font-size:10px !important;letter-spacing:.14em !important;color:#71717a !important;margin:0 0 12px !important;}
html body #build-your-own-popup > div:nth-child(2) > div > img{display:none !important;}
html body #build-your-own-popup > div:nth-child(2) > div > div{max-width:none !important;width:100%;background:#f4f4f5 !important;border-radius:12px !important;padding:13px 15px !important;font-size:12.5px !important;line-height:1.55 !important;color:#18181b !important;}
/* buttons */
html body #build-your-own-popup > div:last-child{padding:12px 16px 16px !important;gap:9px !important;}
html body #build-your-own-popup > div:last-child > *{border-radius:9px !important;padding:11px !important;font-size:13px !important;font-weight:700 !important;}
html body #build-your-own-popup > div:last-child > a{background:#f4f4f5 !important;color:#18181b !important;}
html body #build-your-own-popup > div:last-child > a:hover{background:#e4e4e7 !important;}
html body #build-your-own-popup > div:last-child [data-open-lead-form]{background:#4CAF50 !important;color:#fff !important;}
html body #build-your-own-popup > div:last-child [data-open-lead-form]:hover{background:#43A047 !important;opacity:1 !important;}
/* Chat header stacked and centred (Jason, 27 Sep): photos, name, then "Typically replies within a
   few hours" on one line; the close button sits in the corner. */
html body #build-your-own-popup > div:first-child{position:relative;flex-direction:column !important;align-items:center !important;text-align:center;gap:8px !important;padding:18px 16px 14px !important;}
html body #build-your-own-popup > div:first-child > div:nth-child(2){flex:none !important;}
html body #build-your-own-popup > div:first-child p + p{white-space:nowrap;}
html body #build-your-own-popup [data-byo-close]{position:absolute !important;top:10px;right:10px;}

/* ======================================================================================
   NAV + INDUSTRY DIRECTORY HANDOFF (27 Sep 2026): design_handoff_ardent_nav_and_industry_directory/
   ====================================================================================== */
/* Desktop nav from 1240px; hamburger + full-screen menu below (the site's markup uses Tailwind lg =
   1024, so 1024-1239 is switched here). */
@media (min-width:1024px) and (max-width:1239.98px){
  html body #main-header .acg-nav{display:none !important;}
  html body #mobile-menu-trigger{display:inline-flex !important;}
  html body #mobile-menu:not(.hidden){display:block !important;}
}
/* Bar per spec: pill links 9px 10px, #D6E4F8 -> white, open = white on rgba(214,228,248,.14), rotating chevron, no underlines. */
@media (min-width:1240px){
  html body #main-header .acg-nav{gap:clamp(6px,1vw,14px) !important;}
  html body #main-header .acg-nav > a,html body #main-header .acg-nav .acg-dd-trigger{padding:9px 10px !important;margin:0 !important;border-radius:999px;text-decoration:none !important;transition:background .15s ease,color .15s ease;}
  html body #main-header .acg-nav .acg-dd-chev{width:12px;height:12px;transition:transform .2s ease;}
  html body #main-header .acg-nav .acg-dd.is-open .acg-dd-chev{transform:rotate(180deg);}
  html body #main-header .acg-nav .acg-dd.is-open .acg-dd-trigger{background:rgba(214,228,248,.14) !important;color:#fff !important;}
  html body #main-header a[href="/contact/"].rounded-full{border-color:rgba(214,228,248,.5) !important;padding:11px 20px !important;}
  html body #main-header a[href="/contact/"].rounded-full:hover{background:#fff !important;color:#0A1A30 !important;}
  html body #main-header a{text-decoration:none !important;}
}
/* ---------- Business Loans mega panel ---------- */
html body .acg-blm{display:flex;flex-direction:column;gap:28px;padding:36px 40px 40px;min-width:0;max-height:calc(100vh - 120px);overflow-y:auto;}
html body .acg-blm-search{display:flex;flex-direction:column;gap:10px;}
html body .acg-blm-label{font-size:15px;font-weight:600;color:#0A1A30;}
html body .acg-blm-wrap{position:relative;max-width:560px;}
html body .acg-blm-wrap svg,html body .acg-bl-wrap svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);}
html body .acg-blm-q{width:100%;padding:14px 16px 14px 46px;border-radius:6px;border:1px solid #C9D8EE;background:#F8F7F3;font:15px 'Hanken Grotesk',sans-serif;color:#0A1A30;outline:none;box-sizing:border-box;}
html body .acg-blm-q:focus,html body .acg-bl-wrap input:focus{border-color:#2563D9;box-shadow:0 0 0 3px rgba(37,99,217,.15);}
html body .acg-blm-pop,html body .acg-bl-pop{display:flex;flex-wrap:wrap;gap:6px;align-items:center;}
html body .acg-blm-pop{margin-top:-12px;}
html body .acg-blm-pop > span:first-child,html body .acg-bl-pop > span:first-child{font-size:12px;color:#4A5A70;padding-right:2px;}
html body .acg-bl-chip{cursor:pointer;font:600 12px 'Hanken Grotesk',sans-serif;padding:6px 11px;border-radius:999px;background:#fff;color:#0A1A30;border:1px solid #D6E4F8;line-height:1.2;}
html body .acg-bl-chip:hover{border-color:#2563D9;color:#2563D9;}
html body .acg-bl-chip.is-on{background:#0A1A30;color:#fff;border-color:#0A1A30;}
html body .acg-blm-countl{margin-left:auto;font-size:12px;color:#4A5A70;}
html body .acg-blm-cards{columns:200px 3;column-gap:12px;}
html body .acg-blm-card,html body .acg-bld-card{break-inside:avoid;background:#fff;border:1px solid #D6E4F8;border-radius:10px;display:flex;flex-direction:column;}
html body .acg-blm-card{margin-bottom:12px;padding:14px 14px 8px;}
html body .acg-blm-head,html body .acg-bld-head{display:flex;align-items:center;gap:10px;border-bottom:1px solid #EEF3F9;}
html body .acg-blm-head{padding-bottom:10px;margin-bottom:4px;}
html body .acg-blm-ico,html body .acg-bld-ico{flex:none;border-radius:7px;background:#EEF3F9;border:1px solid #D6E4F8;display:flex;align-items:center;justify-content:center;}
html body .acg-blm-ico{width:28px;height:28px;}
html body .acg-blm-ico svg{width:15px;height:15px;}
html body .acg-blm-name{flex:1;font-size:12.5px;font-weight:600;line-height:1.3;color:#0A1A30;}
html body .acg-blm-count,html body .acg-bld-count{flex:none;font-size:11px;font-weight:600;color:#13315E;background:#EEF3F9;border-radius:999px;padding:2px 7px;}
html body .acg-nav .acg-dd-menu .acg-blm-card a,html body .acg-bld-card a{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#33445C;text-decoration:none;white-space:normal;}
html body .acg-nav .acg-dd-menu .acg-blm-card a{font-size:13.5px;line-height:1.3;padding:5px 8px;margin:0 -8px;border-radius:6px;}
html body .acg-blm-card a span,html body .acg-bld-card a span{color:#A9BAD3;font-size:11px;}
html body .acg-nav .acg-dd-menu .acg-blm-card a:hover,html body .acg-bld-card a:hover{background:#EEF3F9;color:#2563D9;}
html body .acg-blm-card[hidden],html body .acg-bld-card[hidden],html body .acg-blm-card a[hidden],html body .acg-bld-card a[hidden]{display:none !important;}
html body .acg-bl-empty{background:#fff;border:1px dashed #C9D8EE;border-radius:10px;padding:20px;font-size:14px;line-height:1.6;color:#4A5A70;}
html body .acg-bl-empty[hidden]{display:none;}
html body .acg-bl-empty a{color:#2563D9;text-decoration:none;}
@media (min-width:1240px){ html body .acg-nav .acg-bl-mega .acg-mega-menu{max-width:1240px;} }
/* ---------- Mobile menu: Business Loans row, accordion chip, footer block ---------- */
@media (max-width:1239px){
  html body #mobile-menu .acg-mnav > details > summary::after{content:"";flex:none;width:32px;height:32px;margin-left:auto !important;border-radius:50%;
    background:rgba(214,228,248,.12) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center/14px no-repeat;
    transition:transform .2s ease,background-color .2s ease;font-size:0;}
  html body #mobile-menu .acg-mnav > details[open] > summary::after{background-color:#2563D9;transform:rotate(180deg);}
  html body #mobile-menu .acg-mnav > details > summary{list-style:none;}
  html body #mobile-menu .acg-mnav > details > summary::-webkit-details-marker{display:none;}
  html body #mobile-menu .acg-blmob-body{display:flex !important;flex-direction:column;gap:2px;padding:4px 0 24px 0 !important;}
  html body #mobile-menu .acg-blmob-gh{margin:0 0 6px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#FFD166;font-weight:600;}
  html body #mobile-menu .acg-blmob-item{display:flex !important;gap:14px;align-items:center;min-height:56px;padding:6px 0 !important;color:#fff !important;text-decoration:none;}
  html body #mobile-menu .acg-blmob-ico{flex:none;width:40px;height:40px;border-radius:8px;background:rgba(214,228,248,.08);border:1px solid rgba(214,228,248,.2);display:flex;align-items:center;justify-content:center;}
  html body #mobile-menu .acg-blmob-txt{display:flex;flex-direction:column;gap:2px;min-width:0;}
  html body #mobile-menu .acg-blmob-txt b{font-family:var(--font-body);font-size:16px;font-weight:600;color:#fff;}
  html body #mobile-menu .acg-blmob-txt i{font-style:normal;font-size:13px;line-height:1.45;color:#A9BAD3;}
  html body #mobile-menu .acg-blmob-all{margin-top:12px;font-size:15px;font-weight:600;color:#FFD166 !important;text-decoration:none;min-height:44px;display:flex;align-items:center;}
  html body #mobile-menu > .container:last-child{display:flex;flex-direction:column;gap:14px;padding:24px !important;margin-top:24px;background:rgba(214,228,248,.04);border-top:1px solid rgba(214,228,248,.14);max-width:none;}
  html body #mobile-menu > .container:last-child a[href="/contact/"]{min-height:54px !important;border-radius:4px !important;font-size:16px !important;}
  html body #mobile-menu .acg-mob-email{display:flex;align-items:center;justify-content:center;gap:10px;min-height:50px;border:1px solid rgba(214,228,248,.4);border-radius:4px;color:#fff !important;font-size:15px;font-weight:600;text-decoration:none;}
  html body #mobile-menu .acg-mob-rating{margin:0;text-align:center;font-size:13px;color:#D6E4F8;}
  html body #mobile-menu .acg-mob-rating span{color:#F5B301;letter-spacing:1px;}
}
/* ---------- "Business loans by industry" directory ---------- */
html body .acg-bl-dir{position:relative;overflow:hidden;background:#EEF3F9;border-top:1px solid #D6E4F8;padding:96px clamp(24px,5vw,72px);color:#0A1A30;}
html body .acg-bl-glow{position:absolute;left:-180px;top:-200px;width:520px;height:520px;border-radius:50%;background:#2563D9;opacity:.1;filter:blur(70px);pointer-events:none;}
html body .acg-bl-grid{position:relative;max-width:1280px;margin:0 auto;display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:40px 48px;align-items:start;}
html body .acg-bl-side{display:flex;flex-direction:column;gap:18px;max-width:380px;position:sticky;top:96px;}
html body .acg-bl-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#2563D9;font-weight:600;}
html body .acg-bl-dir h2.acg-bl-h{margin:0 !important;font-family:var(--font-display);font-weight:400 !important;font-size:clamp(28px,2.8vw,36px) !important;line-height:1.1 !important;letter-spacing:-.015em;text-wrap:balance;color:#0A1A30 !important;}
html body .acg-bl-dir p.acg-bl-intro{margin:0 !important;font-size:15px !important;line-height:1.6 !important;color:#4A5A70 !important;}
html body .acg-bl-search{background:#fff;border:1px solid #D6E4F8;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:0 14px 36px rgba(10,26,48,.06);}
html body .acg-bl-wrap{position:relative;display:block;}
html body .acg-bl-wrap svg{left:14px;}
html body .acg-bl-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
html body .acg-bl-wrap input{width:100%;padding:13px 14px 13px 40px;border-radius:6px;border:1px solid #C9D8EE;background:#F8F7F3;font:15px 'Hanken Grotesk',sans-serif;color:#0A1A30;outline:none;box-sizing:border-box;}
html body .acg-bl-countl{font-size:13px;color:#4A5A70;border-top:1px solid #EEF3F9;padding-top:10px;}
html body .acg-bl-all{font-size:14px;font-weight:600;color:#2563D9;text-decoration:none;}
html body .acg-bl-all:hover{color:#13315E;}
html body .acg-bl-main{position:relative;min-width:0;}
html body .acg-bl-clip{max-height:560px;overflow:hidden;transition:max-height .35s ease;}
html body .acg-bl-clip.is-open{max-height:5000px;}
html body .acg-bl-cards{columns:190px 3;column-gap:14px;}
html body .acg-bld-card{margin-bottom:14px;padding:18px 18px 12px;scroll-margin-top:110px;}
html body .acg-bld-head{padding-bottom:12px;margin-bottom:6px;}
html body .acg-bld-ico{width:32px;height:32px;border-radius:8px;}
html body .acg-bld-name{flex:1;font-size:13px;font-weight:600;line-height:1.3;color:#0A1A30;}
html body .acg-bld-count{padding:3px 8px;}
html body .acg-bld-card a{font-size:14px;line-height:1.35;padding:6px 8px;margin:0 -8px;border-radius:6px;}
html body .acg-bld-card a span{font-size:12px;}
html body .acg-bl-toggle-wrap{position:relative;display:flex;justify-content:center;padding-top:10px;}
html body .acg-bl-toggle-wrap[hidden]{display:none;}
html body .acg-bl-fade{position:absolute;left:0;right:0;bottom:100%;height:140px;background:linear-gradient(180deg,rgba(238,243,249,0),#EEF3F9);pointer-events:none;}
html body .acg-bl-toggle.is-open ~ .acg-bl-fade,html body .acg-bl-toggle-wrap:has(.is-open) .acg-bl-fade{height:0;}
html body .acg-bl-toggle{cursor:pointer;display:flex;align-items:center;gap:8px;font:600 14px 'Hanken Grotesk',sans-serif;color:#fff;padding:12px 20px;border:0;border-radius:999px;background:#0A1A30;box-shadow:0 10px 24px rgba(10,26,48,.18);}
html body .acg-bl-toggle:hover{background:#13315E;}
html body .acg-bl-toggle svg{transition:transform .2s ease;}
html body .acg-bl-toggle.is-open svg{transform:rotate(180deg);}
@media (max-width:900px){html body .acg-bl-grid{grid-template-columns:minmax(0,1fr);}html body .acg-bl-side{max-width:none;}}
@media (max-width:767px){html body .acg-bl-side{position:static;}html body .acg-bl-dir{padding:72px 24px;}html body .acg-bl-wrap input{font-size:16px;}}
/* Rich mobile rows built from the desktop menus: sprite icons in white. */
@media (max-width:1239px){ html body #mobile-menu .acg-blmob-ico svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;color:#fff;} }
/* About team grid on phones: 3 per row (Jason, 27 Sep). */
@media (max-width:767px){
  html body section[data-screen-label="07 Team"] ul{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:8px !important;}
  html body section[data-screen-label="07 Team"] li > div:last-child{padding:10px 8px !important;}
  html body section[data-screen-label="07 Team"] li h3{font-size:14px !important;line-height:1.2;}
  html body section[data-screen-label="07 Team"] li p{font-size:11px !important;line-height:1.3;}
  html body section[data-screen-label="07 Team"] li svg{width:36px;height:36px;}
}
/* Mega-menu close (x): small, top-right of the white area. */
html body .acg-nav .acg-mega-menu{position:absolute;}
html body .acg-mega-x{position:absolute;top:14px;right:14px;z-index:5;width:32px;height:32px;border-radius:50%;border:1px solid #D6E4F8;background:#fff;color:#4A5A70;
  display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background .15s ease,color .15s ease,border-color .15s ease;}
html body .acg-mega-x:hover{background:#EEF3F9;color:#0A1A30;border-color:#C9D8EE;}
html body .acg-mega-x:focus-visible{outline:2px solid #2563D9;outline-offset:2px;}
html body .acg-nav .acg-dd.acg-mega.is-dismissed .acg-dd-menu{opacity:0 !important;visibility:hidden !important;pointer-events:none;}
html body .acg-nav .acg-dd.acg-mega.is-dismissed .acg-dd-chev{transform:none !important;}
/* ---------- Success page ---------- */
html body .acg-succ-online{position:absolute;top:-2px;right:0;width:12px;height:12px;border-radius:50%;background:#22C55E;border:2px solid #fff;box-shadow:0 0 0 5px rgba(34,197,94,.2);animation:acgOnline 2s ease-out infinite;}
@keyframes acgOnline{0%{box-shadow:0 0 0 0 rgba(34,197,94,.45);}70%{box-shadow:0 0 0 8px rgba(34,197,94,0);}100%{box-shadow:0 0 0 0 rgba(34,197,94,0);}}
@media (prefers-reduced-motion:reduce){html body .acg-succ-online{animation:none;}}
html body .acg-succ-tile{transition:border-color .15s ease,background .15s ease;}
html body .acg-succ-tile:hover{border-color:#2563D9 !important;color:#0A1A30 !important;}
html body .acg-succ-tile-dark:hover{background:#13315E !important;color:#fff !important;}
@media (max-width:767px){
  html body .acg-succ-grid{padding:130px 24px 72px !important;gap:36px !important;}
  html body .acg-succ-card{justify-self:stretch !important;width:100% !important;padding:22px !important;}
  html body .acg-succ-hero [data-m="hero-stats"]{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:8px !important;font-size:12px !important;text-align:center;}
  html body .acg-succ-hero [data-m="hero-stats"] span span{display:block;font-size:22px !important;}
}

/* ======================================================================================
   PASS 2: RESOURCES INDEX + ARTICLE (design_handoff_ardent_pages_about_contact_resources)
   ====================================================================================== */
/* ---------- Resources index ---------- */
html body .acg-res-hero{position:relative;overflow:hidden;color:#fff;background-color:#0A1A30;background-image:linear-gradient(rgba(214,228,248,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(214,228,248,.06) 1px,transparent 1px);background-size:80px 80px;}
html body .acg-res-glow,html body .acg-art-glow{position:absolute;right:-160px;top:-220px;width:720px;height:720px;border-radius:50%;background:#2563D9;opacity:.45;filter:blur(90px);pointer-events:none;}
html body .acg-res-hero-inner{position:relative;max-width:1280px;margin:0 auto;padding:165px clamp(24px,5vw,72px) 96px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:48px;align-items:end;}
html body .acg-res-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#FFD166;font-weight:600;}
html body h1.acg-res-h1{margin:0;font-family:var(--font-display);font-weight:400 !important;font-size:clamp(42px,5.9vw,60px);line-height:1;letter-spacing:-.02em;color:#fff;}
html body p.acg-res-intro{margin:0 !important;font-size:18px !important;line-height:1.6 !important;color:#D6E4F8 !important;max-width:46ch;}
html body .acg-res-filter{position:sticky;top:64px;z-index:5;background:rgba(248,247,243,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #D6E4F8;padding:16px clamp(24px,5vw,72px);}
html body .acg-res-filter-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;gap:16px;min-width:0;}
html body .acg-res-filter-k{flex:none;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#4A5A70;font-weight:600;}
html body .acg-res-pills{display:flex;gap:8px;overflow-x:auto;padding:2px;scrollbar-width:none;min-width:0;}
html body .acg-res-pills::-webkit-scrollbar{display:none;}
html body .acg-res-pill{flex:none;font-size:13px;font-weight:500;padding:9px 14px;border-radius:999px;white-space:nowrap;background:#fff;color:#0A1A30;border:1px solid #D6E4F8;text-decoration:none;}
html body .acg-res-pill:hover{border-color:#2563D9;color:#2563D9;}
html body .acg-res-pill.is-on{background:#0A1A30;color:#fff;border-color:#0A1A30;}
@media (max-width:767px){html body .acg-res-filter-k{display:none;}html body .acg-res-hero-inner{padding:130px 24px 64px;}}
/* articles grid (cards from server.js resCardHtml, restyled) */
html body section:has(#blog-list){background:#F8F7F3 !important;padding:72px clamp(24px,5vw,72px) 120px !important;}
html body section:has(#blog-list) > .container{max-width:1280px;padding:0;}
html body section:has(#blog-list) > .container > h2{font-family:var(--font-display) !important;font-weight:400 !important;font-size:clamp(33px,4.7vw,48px) !important;letter-spacing:-.02em;margin:0 0 40px !important;color:#0A1A30;}
html body #blog-list{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(300px,1fr)) !important;gap:20px !important;}
html body #blog-list > li{background:#fff;border:1px solid #D6E4F8;border-radius:6px;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease;}
html body #blog-list > li:hover{border-color:#2563D9;box-shadow:0 14px 36px rgba(10,26,48,.1);}
html body #blog-list > li > a:first-child{margin:0 !important;border-radius:0 !important;aspect-ratio:16/10 !important;background:#D6E4F8;}
html body #blog-list > li > div{padding:22px 24px 26px;gap:12px !important;}
html body #blog-list > li p.font-mono{font-family:var(--font-body) !important;font-size:12px !important;letter-spacing:0 !important;text-transform:none !important;color:#4A5A70 !important;margin:0 !important;display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
html body #blog-list > li p.font-mono span:first-child{order:3;}
html body #blog-list > li p.font-mono span[aria-hidden]{order:2;color:#A9BAD3;}
html body #blog-list > li p.font-mono a{order:1;font-weight:600;color:#2563D9 !important;text-decoration:none;}
html body #blog-list > li a.group{text-decoration:none;color:#0A1A30;display:flex;flex-direction:column;gap:12px;}
html body #blog-list > li h2{font-family:var(--font-display) !important;font-weight:500 !important;font-size:23px !important;line-height:1.18 !important;color:#0A1A30 !important;margin:0 !important;letter-spacing:0;}
html body #blog-list > li a.group::after{content:"Read article \2192";font-size:13px;font-weight:600;color:#2563D9;}
/* featured: the first card spans the row, image beside text */
@media (min-width:900px){
  html body #blog-list > li:first-child{grid-column:1 / -1;display:grid !important;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));}
  html body #blog-list > li:first-child > a:first-child{aspect-ratio:auto !important;min-height:380px;height:100%;}
  html body #blog-list > li:first-child > div{padding:clamp(28px,4vw,56px);justify-content:center;gap:20px !important;}
  html body #blog-list > li:first-child h2{font-size:clamp(30px,3.2vw,44px) !important;line-height:1.08 !important;letter-spacing:-.015em;}
  html body #blog-list > li:first-child p.font-mono a{font-size:12px;padding:6px 12px;border-radius:999px;background:#EEF3F9;color:#13315E !important;border:1px solid #D6E4F8;}
  html body #blog-list > li:first-child a.group::after{content:"Read the guide \2192";font-size:15px;}
}
/* pagination */
html body .acg-pg{padding:40px 0 0 !important;}
html body .acg-pg .container{padding:0;}
html body .acg-pg-num,html body .acg-pg-arrow{width:40px;min-width:40px !important;height:40px !important;border-radius:50% !important;border:1px solid #D6E4F8 !important;color:#0A1A30 !important;font-size:14px !important;background:#fff;}
html body .acg-pg-num:hover,html body .acg-pg-arrow:hover{border-color:#2563D9 !important;color:#2563D9 !important;background:#fff !important;}
html body .acg-pg-cur{background:#0A1A30 !important;color:#fff !important;border-color:#0A1A30 !important;font-weight:600;}
html body .acg-pg-arrow{color:#2563D9 !important;}
html body .acg-pg-off{color:#A9BAD3 !important;opacity:1 !important;}
/* browse by industry */
html body section.border-t:has(> .container > ul a[href*="/commercial-property-loans/"]){background:#fff !important;border-top:1px solid #D6E4F8 !important;padding:96px clamp(24px,5vw,72px) !important;}
html body section.border-t:has(> .container > ul a[href*="/commercial-property-loans/"]) > .container{max-width:1280px !important;padding:0;}
html body section.border-t:has(> .container > ul a[href*="/commercial-property-loans/"]) h2{font-family:var(--font-display) !important;font-weight:400 !important;font-size:clamp(33px,4.7vw,48px) !important;margin:0 0 36px !important;color:#0A1A30;}
html body section.border-t:has(> .container > ul a[href*="/commercial-property-loans/"]) ul{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1px !important;background:#D6E4F8;border:1px solid #D6E4F8;}
html body section.border-t:has(> .container > ul a[href*="/commercial-property-loans/"]) ul a{display:flex !important;justify-content:space-between;align-items:center;background:#fff !important;padding:24px !important;border:0 !important;border-radius:0 !important;font-family:var(--font-display);font-size:21px !important;color:#0A1A30 !important;}
html body section.border-t:has(> .container > ul a[href*="/commercial-property-loans/"]) ul a::after{content:"\2192";font-family:var(--font-body);font-size:16px;color:#2563D9;}
html body section.border-t:has(> .container > ul a[href*="/commercial-property-loans/"]) ul a:hover{background:#EEF3F9 !important;color:#2563D9 !important;}
/* newsletter */
html body section:has(> .container > .bg-text form){position:relative;overflow:hidden;background:#2563D9 !important;padding:88px clamp(24px,5vw,72px) !important;}
html body section:has(> .container > .bg-text form) > .container{max-width:1280px;padding:0;}
html body section:has(> .container > .bg-text form) .bg-text{background:transparent !important;padding:0 !important;text-align:left !important;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:14px 40px;align-items:center;}
html body section:has(> .container > .bg-text form) h3{grid-column:1;margin:0 !important;font-family:var(--font-display) !important;font-weight:500 !important;font-size:clamp(30px,3.2vw,44px) !important;line-height:1.08 !important;color:#fff !important;}
html body section:has(> .container > .bg-text form) p{grid-column:1;margin:0 !important;font-size:16px !important;line-height:1.6 !important;color:#EEF3F9 !important;}
html body section:has(> .container > .bg-text form) form{grid-column:2;grid-row:1 / span 2;margin:0 !important;max-width:none !important;background:#fff !important;border:0 !important;border-radius:6px !important;padding:8px !important;box-shadow:0 20px 50px rgba(10,26,48,.25);}
html body section:has(> .container > .bg-text form) input{color:#0A1A30 !important;font-size:15px !important;padding:12px 14px;}
html body section:has(> .container > .bg-text form) input::placeholder{color:#4A5A70 !important;}
html body section:has(> .container > .bg-text form) button{background:#0A1A30 !important;color:#fff !important;border-radius:4px !important;padding:14px 22px !important;font-size:15px !important;font-weight:600 !important;}
@media (max-width:767px){html body section:has(> .container > .bg-text form) form{grid-column:1;grid-row:auto;}}

/* ---------- Article ---------- */
html body .acg-art-head{position:relative;overflow:hidden;color:#fff;background-color:#0A1A30;background-image:linear-gradient(rgba(214,228,248,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(214,228,248,.06) 1px,transparent 1px);background-size:80px 80px;}
html body .acg-art-head-inner{position:relative;max-width:1080px;margin:0 auto;padding:157px clamp(24px,5vw,72px) 220px;display:flex;flex-direction:column;gap:24px;}
html body .acg-art-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:13px;color:#D6E4F8;}
html body .acg-art-cat{font-weight:600;padding:6px 12px;border-radius:999px;background:rgba(214,228,248,.12);border:1px solid rgba(214,228,248,.3);color:#fff !important;text-decoration:none;}
html body .acg-art-dot{color:#A9BAD3;}
html body h1.acg-art-h1{margin:0;font-family:var(--font-display);font-weight:400 !important;font-size:clamp(42px,5.9vw,60px);line-height:1.02;letter-spacing:-.02em;text-wrap:balance;max-width:18ch;color:#fff;}
html body p.acg-art-intro{margin:0 !important;font-size:19px !important;line-height:1.6 !important;color:#D6E4F8 !important;max-width:62ch;text-wrap:pretty;}
html body .acg-art-by{display:flex;align-items:center;gap:12px;padding-top:8px;}
html body .acg-art-by img{width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:top;border:2px solid rgba(214,228,248,.4);}
html body .acg-art-by div{display:flex;flex-direction:column;font-size:14px;}
html body .acg-art-by div span:first-child{font-weight:600;}
html body .acg-art-by div span:last-child{color:#D6E4F8;font-size:13px;}
html body .acg-art-feature{position:relative;margin-top:-170px;padding:0 clamp(24px,5vw,72px);}
html body .acg-art-feature img{display:block;width:100%;max-width:1080px;height:auto;margin:0 auto;aspect-ratio:16/8;object-fit:cover;border-radius:6px;box-shadow:0 30px 80px rgba(10,26,48,.25);background:#D6E4F8;}
html body .acg-art-body{background:#F8F7F3;padding:72px clamp(24px,5vw,72px) 96px;}
html body main:has(.acg-art-head){background:#F8F7F3 !important;}
html body .acg-art-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:64px;align-items:start;}
html body .acg-art-aside{position:sticky;top:96px;display:flex;flex-direction:column;gap:20px;}
html body .acg-art-toc{display:flex;flex-direction:column;border-top:1px solid #0A1A30;}
html body .acg-art-tocbtn{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;background:none;border:0;padding:12px 0;font:600 12px 'Hanken Grotesk',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#0A1A30;text-align:left;}
html body .acg-art-toclist{display:flex;flex-direction:column;}
html body .acg-art-toclist a{font-size:13px;line-height:1.4;color:#4A5A70;padding:8px 0 8px 12px;border-left:2px solid #D6E4F8;text-decoration:none;}
html body .acg-art-toclist a:hover{color:#2563D9;border-left-color:#2563D9;}
html body .acg-art-aside .acg-quote-cta{background:#0A1A30 !important;color:#fff;border-radius:6px !important;padding:24px !important;display:flex;flex-direction:column;gap:12px;}
html body .acg-art-aside .acg-quote-cta-eyebrow{font-family:var(--font-body) !important;font-size:12px !important;letter-spacing:.14em;color:#FFD166 !important;margin:0 !important;}
html body .acg-art-aside .acg-quote-cta-title{font-family:var(--font-display) !important;font-weight:500 !important;font-size:22px !important;line-height:1.15;color:#fff !important;margin:0 !important;}
html body .acg-art-aside .acg-quote-cta-text{font-size:14px !important;line-height:1.55;color:#D6E4F8 !important;margin:0 !important;}
html body .acg-art-aside .acg-quote-cta-btn{background:#2563D9 !important;color:#fff !important;font-size:14px;font-weight:600;padding:13px !important;border-radius:3px !important;}
html body .acg-art-aside .acg-quote-cta-btn:hover{background:#1D52B8 !important;}
@media (min-width:768px){html body .acg-art-tocbtn .acg-toc-chev{display:none;}html body .acg-art-tocbtn{pointer-events:none;}}
@media (max-width:767px){
  html body .acg-art-grid{grid-template-columns:minmax(0,1fr);gap:32px;}
  html body .acg-art-aside{position:static;}
  html body .acg-art-toclist[data-open="false"]{display:none;}
  html body .acg-art-tocbtn[aria-expanded="true"] .acg-toc-chev{transform:rotate(180deg);}
  html body .acg-quote-cta[data-m="toc-cta"]{display:none !important;}
  html body .acg-art-head-inner{padding:130px 24px 170px;}
}
/* article column typography */
html body .acg-art-main{max-width:720px !important;min-width:0;}
html body .acg-art-main.prose p,html body .acg-art-main.prose li{font-size:17px !important;line-height:1.75 !important;color:#33445C !important;}
html body .acg-art-main.prose h2{margin:36px 0 18px !important;padding-top:28px;border-top:1px solid #D6E4F8;font-family:var(--font-display) !important;font-weight:500 !important;font-size:clamp(28px,3.4vw,38px) !important;line-height:1.1 !important;letter-spacing:-.015em;color:#0A1A30 !important;scroll-margin-top:110px;}
html body .acg-art-main.prose > h2:first-child{margin-top:0 !important;border-top:0;padding-top:0;}
html body .acg-art-main.prose h3{font-family:var(--font-display) !important;font-weight:500 !important;font-size:23px !important;line-height:1.25 !important;color:#0A1A30 !important;margin:28px 0 12px !important;}
html body .acg-art-main.prose strong{color:#0A1A30 !important;font-weight:600;}
html body .acg-art-main.prose a{color:#2563D9;}
html body .acg-art-main.prose ul{list-style:none;padding-left:0;}
html body .acg-art-main.prose ul > li{position:relative;padding-left:20px;}
html body .acg-art-main.prose ul > li::before{content:"";position:absolute;left:0;top:.72em;width:6px;height:6px;border-radius:50%;background:#2563D9;}
html body .acg-art-main.prose ol:not(.acg-toc){list-style:none;padding-left:0;counter-reset:acgol;border-top:1px solid #0A1A30;}
html body .acg-art-main.prose ol:not(.acg-toc) > li{counter-increment:acgol;position:relative;padding:20px 0 20px 56px !important;margin:0 !important;border-bottom:1px solid #D6E4F8;}
html body .acg-art-main.prose ol:not(.acg-toc) > li::before{content:counter(acgol);position:absolute;left:0;top:18px;width:36px;height:36px;border-radius:50%;background:#EEF3F9;border:1px solid #D6E4F8;color:#2563D9;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:17px;}
html body .acg-art-main.prose .acg-table-wrap{border:1px solid #D6E4F8;border-radius:6px;background:#fff;}
html body .acg-art-main.prose table{font-size:14px !important;}
html body .acg-art-main.prose th{background:#0A1A30 !important;color:#fff !important;font-size:12px !important;letter-spacing:.08em;text-transform:uppercase;font-weight:600 !important;border-color:#0A1A30 !important;}
html body .acg-art-main.prose td{color:#33445C !important;border-color:#D6E4F8 !important;}
html body .acg-art-author{margin-top:40px;background:#fff;border:1px solid #D6E4F8;border-radius:6px;padding:28px;display:grid;grid-template-columns:88px minmax(0,1fr);gap:22px;align-items:start;}
html body .acg-art-author img{width:88px;height:88px;border-radius:50%;object-fit:cover;object-position:top;margin:0 !important;}
html body .acg-art-author p{margin:0 !important;}
html body .acg-art-author-k{font-size:12px !important;letter-spacing:.14em;text-transform:uppercase;color:#2563D9 !important;font-weight:600;line-height:1.4 !important;}
html body .acg-art-author-n{font-family:var(--font-display);font-weight:500;font-size:24px !important;color:#0A1A30 !important;line-height:1.3 !important;margin-top:6px !important;}
html body .acg-art-author-r{font-size:13px !important;color:#4A5A70 !important;line-height:1.4 !important;}
html body .acg-art-author-b{margin-top:12px !important;font-size:14px !important;line-height:1.65 !important;color:#33445C !important;}
html body .acg-art-method{margin-top:22px;background:#EEF3F9;border:1px solid #D6E4F8;border-radius:6px;padding:28px;display:flex;flex-direction:column;gap:18px;}
html body .acg-art-method h3{margin:0 !important;font-family:var(--font-display);font-weight:500;font-size:24px;color:#0A1A30;}
html body .acg-art-method > div{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;}
@media (max-width:767px){html body .acg-art-author{grid-template-columns:1fr;}}
/* Article: lead paragraph (design: 23px Newsreader), table cell padding, and the one in-content
   "What this guide covers" list, which the sidebar / mobile dropdown now shows (kept in the HTML). */
html body .acg-art-main.prose > p:first-child{font-family:var(--font-display) !important;font-size:23px !important;line-height:1.5 !important;color:#0A1A30 !important;}
html body .acg-art-main.prose th,html body .acg-art-main.prose td{padding:14px 16px !important;border-left:0 !important;border-right:0 !important;}
html body .acg-art-main.prose h2#contents{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);margin:0 !important;padding:0 !important;border:0;}
html body .acg-art-main.prose h2#contents + ol.acg-toc{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);margin:0;}
/* Resources index: category dropdown in the sticky bar (Jason, 27 Sep). */
html body .acg-res-select-wrap{position:relative;}
html body .acg-res-select{appearance:none;-webkit-appearance:none;cursor:pointer;font:500 14px 'Hanken Grotesk',sans-serif;color:#0A1A30;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563D9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 14px center/14px no-repeat;
  border:1px solid #C9D8EE;border-radius:999px;padding:10px 40px 10px 16px;min-height:44px;min-width:240px;}
html body .acg-res-select:hover,html body .acg-res-select:focus{border-color:#2563D9;outline:none;box-shadow:0 0 0 3px rgba(37,99,217,.15);}
@media (max-width:767px){html body .acg-res-filter-k{display:block;}html body .acg-res-select-wrap{flex:1;}html body .acg-res-select{width:100%;min-width:0;font-size:16px;}}
/* Article Ardent Method panel: simple line icons. */
html body .acg-art-micon{width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid #D6E4F8;display:flex;align-items:center;justify-content:center;color:#2563D9;margin-bottom:4px;}
html body .acg-art-micon svg{width:20px;height:20px;}
