/* The approved contact-page language, extended to all recovered public pages. */
[data-site-design] .site-header { background: #fff; border-color: #ded7eb; backdrop-filter: none; }
[data-site-design] .site-header .brand strong,
[data-site-design] .site-header .menu-button { color: #1a1623; }
[data-site-design] .site-header .brand small { color: #66548b; }
[data-site-design] .site-header .main-nav > a { color: #1a1623; }
[data-site-design] .site-header .main-nav > a:hover { color: #66548b; }
[data-site-design] .site-header .main-nav > a[href="/contact/"] { background: #66548b; color: #fff; padding: 12px 24px; border-radius: 4px; }
.site-redesign { background: #fff; }
.site-redesign main {
  --white: #1a1623; --muted-light: #000; --purple-light: #66548b;
  --night: #fff; --night-alt: #f6f3fb; --surface: #fff; --line: #ded7eb;
  color: #000; background: #fff;
}
.site-redesign main p { text-wrap: pretty; }
.site-redesign main h1, .site-redesign main h2, .site-redesign main h3 { font-weight: 400; }
.site-redesign main h2 { font-size: clamp(30px, 3.5vw, 44px); }
.site-redesign main p { font-size: 14px; }
.site-redesign main .lead { font-size: 18px; color: #000; line-height: 1.6; max-width: 640px; }
.site-redesign main .eyebrow, .site-redesign main .topic { font-size: 11px; letter-spacing: .14em; }
.site-redesign main .section { padding: 72px 0; }
.site-redesign main .section-heading { gap: 56px; margin-bottom: 36px; }
.site-redesign main .section-heading > p { font-size: 16px; }
.site-redesign main .button { border-radius: 4px; min-height: 48px; color: #fff; }
.site-redesign main .button-light { background: #66548b; border-color: #66548b; color: #fff; }
.site-redesign main .button:hover { transform: none; background: #302940; color: #fff; }
.site-redesign main .text-link, .site-redesign main .back-link { color: #66548b; }
.site-redesign main .back-link { font-size: 12px; margin-bottom: 24px; }
.site-redesign main .page-hero, .site-redesign main .article-hero { background: #fff; padding: 56px 0 64px; border-bottom: 1px solid #ded7eb; }
.site-redesign main .page-hero h1, .site-redesign main .article-hero h1 {
  font-size: clamp(36px, 4.3vw, 58px); line-height: 1.08; letter-spacing: -.04em; margin-bottom: 24px;
}
.site-redesign main .page-hero p:not(.eyebrow), .site-redesign main .article-hero p { color: #000; }
.ct-page-hero-grid { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: 64px; }
.ct-page-hero-copy { min-width: 0; }
.ct-page-photo { margin: 0; min-width: 0; }
.ct-page-photo img { width: 100%; height: 340px; object-fit: cover; border-radius: 8px; }
.ct-page-photo figcaption { font-size: 10px; color: #61586e; margin-top: 6px; }
.site-redesign .website-service-jumps { gap: 4px 20px; margin: 16px 0; }
.site-redesign .website-service-jumps a { font-size: 12px; min-height: 44px; }
.site-redesign main .offer-hero { background: #fff; }
.site-redesign main .offer-intro { grid-template-columns: 1.08fr 1fr; padding-block: 64px; gap: 64px; }
.site-redesign main .offer-kicker { color: #1a1623; font-size: clamp(22px, 2.6vw, 32px); font-weight: 400; line-height: 1.2; margin-bottom: 16px; max-width: 490px; }
.site-redesign main .offer-intro h1 em { color: #66548b; font-size: clamp(62px, 7vw, 90px); }
.site-redesign main .offer-tagline { color: #1a1623; font-size: clamp(24px, 2.7vw, 34px); font-weight: 400; }
.site-redesign main .offer-copy { color: #000; font-size: 16px; }
.ct-home-photo { margin: 0; position: relative; border-radius: 8px; overflow: hidden; }
.ct-home-photo img { width: 100%; height: 440px; object-fit: cover; }
.ct-home-photo figcaption { position: absolute; bottom: 0; inset-inline: 0; color: #fff; background: linear-gradient(transparent, rgba(26,22,35,.94)); padding: 60px 28px 28px; font-size: 20px; font-weight: 700; }
.site-redesign main .offer-services { background: #f6f3fb; padding: 40px 0 44px; }
.site-redesign main .offer-services-heading { font-size: 23px; margin-bottom: 28px; }
.site-redesign main .offer-service-grid { gap: 24px; }
.site-redesign main .offer-service { display: block; }
.site-redesign main .offer-service > svg { margin-bottom: 16px; }
.site-redesign main .offer-service h3 { font-size: 20px; font-weight: 700; }
.site-redesign main .offer-service p { font-size: 14px; }
.site-redesign main .offer-service span { font-size: 12px; }
.site-redesign main .ticker { background: #302940; border-color: #665776; }
.site-redesign main .ticker span { color: #fff; border-color: #665776; font-size: 12px; }
.site-redesign main .ticker svg { color: #cbbce9; }
.site-redesign main .service-grid { border: 0; gap: 28px; }
.site-redesign main .service-card { border: 1px solid #ded7eb; padding: 28px; min-height: 0; border-radius: 8px; overflow: hidden; display: flex; flex-direction: column; }
.site-redesign main .service-card .ct-service-photo { width: calc(100% + 56px); max-width: none; height: 210px; object-fit: cover; margin: -28px -28px 26px; }
.site-redesign main .service-card h3 { font-size: 29px; margin-top: 20px; }
.site-redesign main .service-card a { margin-top: auto; padding-top: 16px; min-height: 44px; align-self: flex-start; }
.site-redesign main .service-card a:hover { text-decoration: underline; text-underline-offset: 4px; }
.site-redesign main .service-card p { margin-bottom: 12px; }
.site-redesign main .icon-box { border: 0; width: 28px; height: 28px; }
.site-redesign main .section-ink {
  --white: #fff; --muted-light: #e4dfed; --purple-light: #cbbce9; --line: #665776;
  background: #302940; color: #fff;
}
.site-redesign main .section-ink h2, .site-redesign main .section-ink h3 { color: #fff; }
.site-redesign main .section-ink .button-light { background: #eee9f8; color: #302940; border-color: #eee9f8; }
.site-redesign main .section-ink .button-light:hover { background: #fff; }
.site-redesign main .audit-panel, .site-redesign main .engagement-panel { gap: 64px; }
.site-redesign main .engagement-list article { display: block; }
.site-redesign main .engagement-list article > span { display: inline-block; margin-bottom: 8px; }
.site-redesign main .audit-list article { border-color: #ded7eb; }
.site-redesign main .audit-list h3, .site-redesign main .engagement-list h3 { font-size: 22px; }
.site-redesign main .guide-grid { border: 0; gap: 24px; }
.site-redesign main .guide-card { border: 1px solid #ded7eb; border-radius: 8px; min-height: 0; padding: 30px; }
.site-redesign main .guide-card h3 { font-size: 28px; margin-top: 28px; }
.site-redesign main .guide-card > a { min-height: 44px; }
.site-redesign main .guide-card > a:hover { text-decoration: underline; }
.site-redesign main .service-layout { gap: 56px; }
.site-redesign main .service-content .content-panel { grid-template-columns: 1fr; gap: 10px; padding: 32px 0; }
.site-redesign main .service-content .content-panel ul { list-style: disc; padding-left: 20px; margin: 18px 0 0; }
.site-redesign main .service-content .content-panel li { padding: 5px 0; line-height: 1.6; }
.site-redesign main .fit-panel .related-heading { margin-top: 36px; font-size: 20px; }
.site-redesign main .content-panel { gap: 40px; }
.site-redesign main .content-panel h2 { font-size: 29px; }
.site-redesign main .fit-panel, .site-redesign main .guide-insight-panel { border: 0; border-radius: 8px; background: #302940; color: #fff; --muted-light: #e4dfed; --purple-light: #cbbce9; --line: #665776; }
.site-redesign main .fit-panel h2, .site-redesign main .guide-insight-panel h2 { color: #fff; font-size: 26px; }
.site-redesign main .fit-panel .text-link, .site-redesign main .guide-insight-panel .text-link { color: #cbbce9; }
.site-redesign main .fit-panel .footer-links a { font-size: 14px; padding-block: 10px; border-bottom: 1px solid #665776; }
.site-redesign main .closing-cta h2 { font-size: 36px; }
.site-redesign main .closing-cta .button, .site-redesign main .referral-panel .button { flex-shrink: 0; }
.site-redesign main .article-layout { padding-block: 64px; gap: 56px; }
.site-redesign main .article-body h2 { font-size: 30px; }
.site-redesign main .article-body p { font-size: 16px; }
.site-redesign main .evidence-note { border: 1px solid #ded7eb; border-radius: 8px; background: #f6f3fb; }
.site-redesign main .evidence-note strong { color: #302940; }
.site-redesign main .case-empty { border-radius: 8px; background: #f6f3fb; }
.site-redesign main .case-empty > svg { color: #66548b; margin-bottom: 16px; }
.site-redesign main .case-empty h2 { max-width: 850px; }
.site-redesign main .folio { margin-bottom: 24px; border-bottom-width: 1px; }
.site-redesign main .referral-panel h2 { font-size: 32px; }
[data-site-design] .site-footer { background: #1a1623; }
@media (max-width: 1000px) {
  .ct-page-hero-grid, .site-redesign main .offer-intro { gap: 32px; }
  .site-redesign main .page-hero h1, .site-redesign main .article-hero h1 { font-size: 42px; }
  .ct-page-photo img { height: 300px; }
}
@media (max-width: 900px) {
  .site-redesign main .service-layout, .site-redesign main .article-layout { grid-template-columns: 1fr; }
  .site-redesign main .section-heading { gap: 20px; }
  .site-redesign main .content-panel { gap: 24px; }
  .site-redesign main .fit-panel, .site-redesign main .guide-insight-panel { position: static; }
  .site-redesign main .closing-cta { flex-direction: column; align-items: flex-start; gap: 24px; }
}
@media (max-width: 720px) {
  [data-site-design] .main-nav { background: #fff; border-color: #ded7eb; }
  [data-site-design] .main-nav > a { min-height: 44px; }
  .ct-page-hero-grid, .site-redesign main .offer-intro { grid-template-columns: 1fr; gap: 32px; }
  .site-redesign main .offer-intro { padding-block: 40px; }
  .ct-home-photo img { height: 280px; }
  .ct-home-photo figcaption { font-size: 17px; padding: 40px 22px 22px; }
  .ct-page-photo img { height: 240px; }
  .site-redesign main .page-hero, .site-redesign main .article-hero { padding: 36px 0; }
  .site-redesign main .page-hero h1, .site-redesign main .article-hero h1 { font-size: clamp(34px, 9vw, 46px); }
  .site-redesign main .section { padding: 48px 0; }
  .site-redesign main .service-grid, .site-redesign main .guide-grid { grid-template-columns: 1fr; }
  .site-redesign main .content-panel { grid-template-columns: 1fr; gap: 12px; }
  .site-redesign main .audit-panel, .site-redesign main .engagement-panel { gap: 32px; }
  .site-redesign main .offer-service-grid { grid-template-columns: 1fr; gap: 24px; }
  .site-redesign main .offer-service { display: flex; }
  .site-redesign main .offer-service > svg { margin: 0; }
  .site-redesign main .referral-panel, .site-redesign main .closing-cta { gap: 24px; }
  .site-redesign main .article-layout { padding-block: 40px; }
  .site-redesign main .closing-cta h2 { font-size: 30px; }
}
@media (prefers-reduced-motion: reduce) { .site-redesign main * { scroll-behavior: auto; } }
