/* eKasaExpert v1: additive, scoped theme; original assets and utility layouts remain. */
.redesign-site {
  --brand: #1455f5;
  --brand-dark: #0b3ecd;
  --ink: #0d1836;
  --muted: #57637b;
  --line: #e0e7f2;
  --surface: #f4f7fc;
  --navy: #0b1634;
  color: var(--ink);
  background: #fff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  line-height: 1.6;
}
.redesign-site *, .redesign-site *::before, .redesign-site *::after { transition: none; }
.redesign-site :where(a, button) { transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.redesign-site :where(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid #ffce38; outline-offset: 4px; }
.redesign-site :where(input, textarea, select) { color: var(--ink); background: #fff; border-color: #ced8e7; min-width: 0; }
.redesign-site :where(input, select, textarea):focus { box-shadow: 0 0 0 3px #1455f520; border-color: var(--brand); }
.redesign-site :where(button, input, select, textarea) { font: inherit; }
.redesign-site button:disabled { cursor: wait; opacity: .65; }
.redesign-site :where(h1,h2,h3,h4) { line-height: 1.2; letter-spacing: -.025em; }
.redesign-site :where(section[id], div[id]) { scroll-margin-top: 88px; }
.redesign-site nav { border-bottom: 1px solid var(--line); box-shadow: 0 2px 14px #10254508; }
.redesign-site nav > div > .flex { min-width: 0; }
.redesign-site nav :where(a, button) { font-size: 14px; }
.redesign-site nav a[href="/"] > span { font-size: 23px; letter-spacing: -.055em; }
.redesign-site nav a[href="/"] > span::before { content: ""; display: inline-block; width: 24px; height: 24px; margin-right: 9px; vertical-align: -3px; background: linear-gradient(var(--brand),var(--brand)) 0 17px / 4px 7px no-repeat,linear-gradient(var(--brand),var(--brand)) 6px 12px / 4px 12px no-repeat,linear-gradient(var(--brand),var(--brand)) 12px 6px / 4px 18px no-repeat,linear-gradient(var(--brand),var(--brand)) 18px 0 / 4px 24px no-repeat; }
.redesign-site nav :where(a.bg-blue-600) { background: var(--brand); border-radius: 7px; font-weight: 700; padding: 10px 18px; box-shadow: 0 4px 10px #1455f51c; }
.redesign-site nav :where(a.bg-blue-600):hover { background: var(--brand-dark); }
.redesign-site nav .redesign-dropdown > .redesign-dropdown-panel { opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .15s ease; box-shadow: 0 16px 45px #10254522; }
.redesign-site nav .redesign-dropdown[data-dropdown-open="true"] > .redesign-dropdown-panel { opacity: 1; visibility: visible; pointer-events: auto; }
.redesign-site nav #mobile-menu { max-height: calc(100dvh - 72px); overflow-y: auto; overscroll-behavior: contain; }
.redesign-site #mobile-menu-btn { min-width: 44px; min-height: 44px; border-radius: 7px; }
.redesign-site footer { background: var(--navy); }
.redesign-site footer :where(a):hover { color: #fff; }
.redesign-site footer .text-gray-400 { color: #b8c4da; }
.redesign-site #ai-chat-widget { z-index: 10001; max-width: calc(100vw - 32px); max-height: calc(100dvh - 110px); overflow: hidden; bottom: 24px; border: 1px solid var(--line); }
.redesign-site #ai-chat-widget > div:first-child { background: var(--brand); }
.redesign-site #chat-messages { height: min(340px, 45dvh); }
.redesign-site #chat-input { min-width: 0; }
.redesign-site button[onclick="openAIChat()"] { z-index: 10000; width: 54px; height: 54px; background: var(--brand); box-shadow: 0 8px 25px #0d183630; right: 20px; bottom: 24px; }
.redesign-site:not(.redesign-home) #ai-chat-widget { bottom: 94px; }
.redesign-site:not(.redesign-home) button[onclick="openAIChat()"] { bottom: 94px; }
.redesign-site :where(.product-card,.team-card,.stat-card,.card-hover) { border: 1px solid var(--line); box-shadow: 0 3px 12px #0d183609; }
.redesign-site .product-card { background: #fff; }
.redesign-site :where(.prose, article) :where(p,li) { line-height: 1.7; }
.redesign-site :where(form) :where(input,textarea,select) { border-radius: 8px; }
.redesign-site :where(form) button[type="submit"] { border-radius: 8px; background: var(--brand); }
.redesign-site :where(form) button[type="submit"]:hover { background: var(--brand-dark); }

/* Homepage: purpose-built composition; no broad override of subpage grids. */
.redesign-home { padding-bottom: 0; }
.redesign-home .site-container { width: min(1200px, calc(100% - 64px)); margin-inline: auto; }
.redesign-home .section-space { padding-block: 56px; }
.redesign-home .homepage-nav { position: sticky; top: 0; background: #fffffffa; backdrop-filter: blur(12px); }
.redesign-home .homepage-nav > .max-w-7xl { max-width: 1264px; }
.redesign-home .homepage-nav .h-20 { height: 72px; }
.redesign-home .homepage-nav .space-x-6 > :not([hidden]) ~ :not([hidden]) { margin-left: 24px; }
.redesign-home .skip-link { position: fixed; z-index: 10010; left: 16px; top: 12px; padding: 10px 16px; border-radius: 8px; color: #fff; background: var(--navy); transform: translateY(-150%); }
.redesign-home .skip-link:focus { transform: translateY(0); }
.redesign-home .law-strip { color: #fff; background: var(--brand); }
.redesign-home .law-strip > div { min-height: 42px; display: flex; gap: 18px; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; }
.redesign-home .law-strip a { flex-shrink: 0; background: #ffcd37; color: #112047; border-radius: 5px; padding: 3px 12px; font-size: 12px; font-weight: 800; }
.redesign-home .homepage-hero { background: radial-gradient(ellipse at 76% 34%, #e7efff 0%, #f4f8ff 40%, #f9fbff 75%); border-bottom: 1px solid #eaf0fa; overflow: hidden; }
.redesign-home .hero-layout { display: grid; grid-template-columns: 1.03fr 1fr; gap: 46px; align-items: center; padding-block: 50px 44px; }
.redesign-home .eyebrow { text-transform: uppercase; letter-spacing: .105em; font-size: 11px; font-weight: 750; color: var(--brand); margin: 0 0 12px; }
.redesign-home .hero-copy > .eyebrow { display: flex; align-items: center; gap: 7px; letter-spacing: .04em; font-size: 11px; }
.redesign-home .status-dot { width: 7px; height: 7px; border-radius: 50%; background: #16a262; box-shadow: 0 0 0 4px #16a26212; flex-shrink: 0; }
.redesign-home .hero-copy h1 { margin: 0 0 20px; max-width: 590px; font-size: clamp(36px, 3.65vw, 53px); font-weight: 800; line-height: 1.12; letter-spacing: -.046em; }
.redesign-home .hero-copy h1 > span { color: var(--brand); }
.redesign-home .hero-copy h1 small { display: block; margin-top: 14px; font-size: .51em; line-height: 1.28; font-weight: 750; letter-spacing: -.025em; }
.redesign-home .hero-description { max-width: 490px; color: var(--muted); font-size: 16px; line-height: 1.65; margin: 0 0 22px; }
.redesign-home .button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 46px; padding: 12px 22px; border-radius: 7px; font-size: 14px; font-weight: 750; line-height: 1.3; text-decoration: none; white-space: nowrap; }
.redesign-home .button-primary { color: #fff; background: var(--brand); border: 1px solid var(--brand); box-shadow: 0 6px 15px #1455f51a; }
.redesign-home .button-primary:hover { background: var(--brand-dark); border-color: var(--brand-dark); transform: translateY(-1px); }
.redesign-home .button-outline { color: var(--brand); background: #ffffffaa; border: 1px solid #9ab7ff; }
.redesign-home .button-outline:hover { background: #fff; border-color: var(--brand); }
.redesign-home .hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.redesign-home .service-note { font-size: 13px; line-height: 1.65; color: #64718b; max-width: 465px; margin: 14px 0 24px; }
.redesign-home .service-note strong { color: var(--ink); }
.redesign-home .hero-benefits { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; max-width: 530px; }
.redesign-home .hero-benefits li { display: flex; align-items: flex-start; gap: 7px; font-size: 10px; line-height: 1.45; color: #49556e; }
.redesign-home .hero-benefits i { font-size: 15px; color: #13a256; margin-top: 2px; }
.redesign-home .hero-company { font-size: 10px; color: #77839a; margin-top: 18px; }
.redesign-home .hero-product { min-height: 420px; position: relative; display: grid; grid-template-columns: 1fr 185px; gap: 10px; align-items: center; }
.redesign-home .product-label { position: absolute; top: 2px; left: 0; padding: 5px 10px; font-size: 10px; font-weight: 750; letter-spacing: .05em; background: #ffcd37; color: #0d1836; border-radius: 4px; z-index: 1; }
.redesign-home .hero-photo { display: flex; align-items: center; justify-content: center; position: relative; padding-top: 18px; }
.redesign-home .hero-photo::before { content: ""; position: absolute; width: 85%; height: 75%; border-radius: 50%; background: radial-gradient(ellipse,#c6dbff80,transparent 72%); }
.redesign-home .hero-photo img { position: relative; width: 285px; max-width: 100%; height: auto; aspect-ratio: 1245 / 1765; object-fit: contain; filter: drop-shadow(0 13px 12px #31588b1c); }
.redesign-home .hero-price { background: #fff; border: 1px solid #e7edf7; padding: 23px 16px 17px; border-radius: 12px; text-align: center; box-shadow: 0 12px 35px #1c477c0c; }
.redesign-home .hero-price > p:first-child { font-size: 10px; color: var(--muted); margin: 0 0 10px; }
.redesign-home .old-price { display: flex; justify-content: center; align-items: center; gap: 9px; font-size: 12px; }
.redesign-home .old-price s { color: #7d879a; }
.redesign-home .old-price span { background: #ed3e44; color: #fff; border-radius: 3px; padding: 2px 5px; font-size: 10px; font-weight: 750; }
.redesign-home .hero-price > strong { display: block; font-size: 45px; line-height: 1.2; letter-spacing: -.05em; margin-top: 13px; }
.redesign-home .price-tax { display: block; font-size: 11px; color: var(--muted); margin: 1px 0 17px; }
.redesign-home .hero-price .button { padding: 11px 8px; width: 100%; font-size: 12px; min-height: 40px; }
.redesign-home .shipping { display: flex; justify-content: center; align-items: center; gap: 7px; font-size: 10px; color: #5f6b80; margin: 13px 0 0; }
.redesign-home .hero-product-caption { grid-column: 1 / -1; text-align: center; font-size: 12px; margin-top: -8px; }
.redesign-home .hero-product-caption span { display: block; font-size: 10px; color: var(--muted); margin-top: 3px; }
.redesign-home h2 { font-size: 31px; font-weight: 800; margin: 0 0 12px; letter-spacing: -.035em; }
.redesign-home .section-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 25px; margin-bottom: 28px; }
.redesign-home .section-heading p:not(.eyebrow) { color: var(--muted); font-size: 14px; margin: 0; max-width: 650px; }
.redesign-home .section-heading h2 { margin-bottom: 9px; }
.redesign-home .text-link { color: var(--brand); font-size: 13px; font-weight: 700; white-space: nowrap; }
.redesign-home .text-link:hover { color: var(--brand-dark); text-decoration: underline; text-underline-offset: 3px; }
.redesign-home .compact-heading { margin-bottom: 21px; }
.redesign-home .compact-heading h2 { font-size: 27px; margin-bottom: 0; }
.redesign-home .homepage-industries { padding-block: 34px 38px; }
.redesign-home .industry-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 15px; }
.redesign-home .industry-grid > a { border: 1px solid var(--line); border-radius: 10px; padding: 19px 20px; display: grid; grid-template-columns: 35px 1fr; column-gap: 11px; align-items: center; background: #fff; box-shadow: 0 3px 10px #0d183604; }
.redesign-home .industry-grid > a:hover { border-color: #94b3ff; background: #f7faff; transform: translateY(-2px); }
.redesign-home .industry-grid i { color: var(--brand); grid-row: span 2; font-size: 25px; }
.redesign-home .industry-grid strong { font-size: 13px; line-height: 1.3; }
.redesign-home .industry-grid span { color: #738097; font-size: 10px; margin-top: 5px; }
.redesign-home .homepage-catalog { background: var(--surface); padding-top: 40px; }
.redesign-home .featured-products { display: grid; grid-template-columns: repeat(3,1fr); gap: 21px; }
.redesign-home .additional-products { display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
.redesign-home .product-card { display: flex; flex-direction: column; border: 1px solid #e0e7f1; border-radius: 12px; box-shadow: 0 4px 16px #0d183607; overflow: hidden; transform: none; }
.redesign-home .product-card:hover { transform: translateY(-3px); border-color: #9cb9ff; box-shadow: 0 10px 25px #103e7d12; }
.redesign-home .featured-products .product-card:first-child { border: 1.5px solid var(--brand); background: #fbfdff; }
.redesign-home .product-card > div:first-child { height: auto; aspect-ratio: 1.85 / 1; padding: 13px; flex-shrink: 0; background: linear-gradient(160deg,#fff,#f6f9ff); }
.redesign-home .product-card > div:first-child picture { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; }
.redesign-home .product-card > div:first-child img { width: 100%; height: 100%; object-fit: contain; padding: 4px; }
.redesign-home .product-card > div:first-child > .absolute { top: 12px; right: 12px; border-radius: 4px; padding: 4px 7px; font-size: 9px; background: var(--brand); }
.redesign-home .product-card > div:last-child { padding: 20px 23px 22px; flex: 1; display: flex; flex-direction: column; }
.redesign-home .product-card h3 { font-size: 21px; margin: 0 0 9px; font-weight: 750; }
.redesign-home .product-card p { font-size: 12px; line-height: 1.55; color: var(--muted); margin-bottom: 12px; }
.redesign-home .product-card ul { font-size: 11px; line-height: 1.65; color: #66748a; margin-bottom: 17px; padding: 0; }
.redesign-home .product-card > div:last-child > .flex { margin-top: auto; margin-bottom: 13px; padding-top: 7px; }
.redesign-home .product-card > div:last-child > .flex > span:first-child { font-size: 11px; color: #69758b; }
.redesign-home .product-card > div:last-child > .flex > span:last-child { color: var(--ink); font-size: 28px; font-weight: 800; letter-spacing: -.04em; }
.redesign-home .product-card a { border: 1px solid #c7d7ff; border-radius: 7px; color: var(--brand); background: #f2f6ff; font-size: 13px; font-weight: 750; padding: 10px 6px; min-height: 44px; display: flex; align-items: center; justify-content: center; line-height: 1.4; }
.redesign-home .product-card a:hover { background: var(--brand); border-color: var(--brand); color: #fff; }
.redesign-home .featured-products .product-card:first-child a { background: var(--brand); color: #fff; border-color: var(--brand); }
.redesign-home .catalog-divider { margin-top: 34px; padding-top: 29px; border-top: 1px solid #dbe4f2; display: flex; justify-content: space-between; align-items: center; gap: 15px; }
.redesign-home .catalog-divider h3 { font-size: 19px; font-weight: 750; margin: 0; }
.redesign-home .catalog-intro { color: var(--muted); font-size: 12px; margin: 8px 0 20px; }
.redesign-home .additional-products .product-card > div:last-child { padding: 17px; }
.redesign-home .additional-products .product-card h3 { font-size: 17px; }
.redesign-home .additional-products .product-card p { font-size: 12px; }
.redesign-home .additional-products .product-card ul { font-size: 11px; }
.redesign-home .additional-products .product-card > div:last-child > .flex > span:last-child { font-size: 24px; }
.redesign-home .homepage-service { background: var(--navy); color: #fff; }
.redesign-home .service-layout { display: grid; grid-template-columns: .85fr 1.2fr; gap: 62px; align-items: center; }
.redesign-home .homepage-service h2 { color: #fff; font-size: 34px; }
.redesign-home .homepage-service .eyebrow { color: #82adff; }
.redesign-home .service-layout > div:first-child > p:not(.eyebrow) { font-size: 14px; color: #bcc9df; margin: 17px 0 22px; max-width: 420px; }
.redesign-home .service-layout > div:first-child > .service-small { font-size: 10px !important; color: #99abc6 !important; margin: 13px 0 0 !important; }
.redesign-home .service-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.redesign-home .service-grid article { display: flex; gap: 14px; padding: 21px 18px; color: var(--ink); background: #fff; border: 1px solid #fff; border-radius: 9px; }
.redesign-home .service-grid i { color: var(--brand); font-size: 26px; padding-top: 2px; }
.redesign-home .service-grid h3 { font-size: 13px; font-weight: 750; margin: 0 0 7px; }
.redesign-home .service-grid p { font-size: 11px; color: var(--muted); margin: 0; line-height: 1.65; }
.redesign-home .service-grid a { display: inline-block; margin-top: 9px; font-size: 10px; color: var(--brand); font-weight: 700; }
.redesign-home .center-heading { text-align: center; margin-bottom: 31px; }
.redesign-home .center-heading p:not(.eyebrow) { font-size: 13px; color: var(--muted); margin: 0; }
.redesign-home .process-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 36px; list-style: none; padding: 0; margin: 0; }
.redesign-home .process-grid li { display: flex; gap: 16px; align-items: flex-start; position: relative; }
.redesign-home .process-grid li:not(:last-child)::after { content: ""; position: absolute; width: 24px; height: 1px; background: #c6d6f7; right: -30px; top: 23px; }
.redesign-home .step-number { display: grid; place-items: center; width: 44px; height: 44px; flex-shrink: 0; color: #fff; background: var(--brand); border-radius: 50%; font-weight: 750; font-size: 12px; box-shadow: 0 5px 14px #1455f51b; }
.redesign-home .process-grid h3 { font-size: 14px; font-weight: 750; margin: 3px 0 7px; }
.redesign-home .process-grid p { color: var(--muted); font-size: 12px; margin: 0; line-height: 1.6; }
.redesign-home .homepage-about { background: #fbfaf8; border-block: 1px solid #f0eeeb; }
.redesign-home .about-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 76px; align-items: center; }
.redesign-home .about-layout > div:first-child > p:not(.eyebrow) { color: var(--muted); font-size: 14px; max-width: 490px; margin: 16px 0 20px; }
.redesign-home .about-layout a { color: var(--brand); font-weight: 650; }
.redesign-home .company-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; max-width: 360px; }
.redesign-home .company-facts > div { display: flex; flex-direction: column; border: 1px solid #e9e7e2; background: #fff; padding: 14px 18px; border-radius: 8px; box-shadow: 0 3px 9px #0d183605; }
.redesign-home .company-facts span { color: var(--muted); font-size: 10px; }
.redesign-home .company-facts strong { font-size: 22px; letter-spacing: -.035em; line-height: 1.3; margin-top: 4px; }
.redesign-home .company-links { display: flex; gap: 15px; flex-wrap: wrap; font-size: 11px; margin-top: 20px; }
.redesign-home .team-panel { border: 1px solid #e9e7e2; background: #fff; border-radius: 12px; text-align: center; padding: 23px; box-shadow: 0 5px 22px #0d183605; }
.redesign-home .team-panel > h3 { margin: 0 0 20px; font-size: 19px; font-weight: 750; }
.redesign-home .team-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 21px; margin-bottom: 18px; }
.redesign-home .team-grid img { width: 100px; height: 100px; aspect-ratio: 1; object-fit: cover; border-radius: 50%; margin: 0 auto 12px; border: 3px solid #f0f3fa; }
.redesign-home .team-grid h4 { font-size: 14px; font-weight: 750; margin: 0 0 5px; }
.redesign-home .team-grid p { color: var(--brand); font-size: 10px; margin: 0 0 5px; }
.redesign-home .team-grid span { color: var(--muted); font-size: 10px; display: block; max-width: 165px; margin-inline: auto; }
.redesign-home .homepage-faq { background: #fff; }
.redesign-home .faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 22px; align-items: start; }
.redesign-home .faq-grid details { border: 1px solid var(--line); border-radius: 8px; padding: 0 17px; background: #fff; }
.redesign-home .faq-grid summary { display: flex; justify-content: space-between; align-items: center; gap: 15px; cursor: pointer; list-style: none; padding: 14px 0; font-size: 13px; font-weight: 700; line-height: 1.45; }
.redesign-home .faq-grid summary::-webkit-details-marker { display: none; }
.redesign-home .faq-grid summary span { color: var(--brand); font-size: 19px; font-weight: 400; }
.redesign-home .faq-grid details[open] { background: #f8faff; border-color: #c8d9ff; }
.redesign-home .faq-grid details[open] summary { color: var(--brand); }
.redesign-home .faq-grid details[open] summary span { transform: rotate(45deg); }
.redesign-home .faq-grid details > p { color: var(--muted); font-size: 12px; line-height: 1.7; margin: 0 0 15px; }
.redesign-home .faq-grid details > a { display: inline-block; margin-bottom: 15px; font-size: 12px; }
.redesign-home .ekasa-explainer { border-top: 1px solid var(--line); padding-top: 31px; margin-top: 35px; display: grid; grid-template-columns: .55fr 1.3fr; gap: 44px; }
.redesign-home .ekasa-explainer h2 { font-size: 25px; }
.redesign-home .ekasa-explainer p:not(.eyebrow) { font-size: 12px; color: var(--muted); margin: 0 0 10px; line-height: 1.75; }
.redesign-home .ekasa-explainer p a { color: var(--brand); text-decoration: underline; text-underline-offset: 3px; }
.redesign-home .homepage-blog { background: var(--surface); }
.redesign-home .blog-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
.redesign-home .blog-grid article { border: 1px solid var(--line); border-radius: 11px; background: #fff; overflow: hidden; display: grid; grid-template-columns: 80px 1fr; }
.redesign-home .blog-photo { background-size: contain; background-position: center; background-repeat: no-repeat; background-color: #f8fbff; min-height: 168px; margin: 12px 0 12px 12px; }
.redesign-home .blog-grid article > div:last-child { padding: 20px 17px; }
.redesign-home .blog-grid .eyebrow { font-size: 9px; margin-bottom: 8px; letter-spacing: .06em; }
.redesign-home .blog-grid h3 { font-size: 17px; font-weight: 750; margin: 0 0 9px; }
.redesign-home .blog-grid p:not(.eyebrow) { color: var(--muted); font-size: 11px; line-height: 1.65; margin: 0 0 12px; }
.redesign-home .blog-grid a { color: var(--brand); font-size: 11px; font-weight: 700; }
.redesign-home .homepage-callback { background: #fff; padding: 44px 0; }
.redesign-home .homepage-callback > .max-w-5xl { max-width: 1264px; padding-inline: 32px; }
.redesign-home .homepage-callback > div > div { border: 1px solid var(--line); padding: 31px 38px; border-radius: 12px; background: #f5f8ff; box-shadow: none; }
.redesign-home .homepage-callback h2 { font-size: 29px; line-height: 1.25; }
.redesign-home .homepage-callback .text-gray-600 { font-size: 13px; max-width: 425px; }
.redesign-home .homepage-callback label, .redesign-home .homepage-contact label { font-size: 12px; margin-bottom: 5px; }
.redesign-home .homepage-callback :where(input,select), .redesign-home .homepage-contact :where(input,textarea) { padding: 10px 13px; font-size: 14px; border-color: #cbd6e8; }
.redesign-home .homepage-callback button, .redesign-home .homepage-contact button { min-height: 45px; padding: 11px 16px; font-size: 13px; font-weight: 750; }
.redesign-home .homepage-callback .text-xs { font-size: 10px; }
.redesign-home .homepage-final-cta { padding: 0 0 17px; background: #fff; }
.redesign-home .homepage-final-cta > div { display: flex; justify-content: space-between; align-items: center; gap: 28px; padding: 26px 34px; background: var(--brand); color: #fff; border-radius: 11px; }
.redesign-home .homepage-final-cta h2 { font-size: 25px; margin: 0 0 5px; }
.redesign-home .homepage-final-cta p { font-size: 12px; margin: 0; color: #dce6ff; }
.redesign-home .homepage-final-cta > div > div:last-child { display: flex; gap: 11px; flex-shrink: 0; }
.redesign-home .button-yellow { color: #13203c; background: #ffcf36; }
.redesign-home .button-yellow:hover { background: #ffdc66; }
.redesign-home .button-white { color: var(--brand); background: #fff; }
.redesign-home .button-white:hover { background: #edf3ff; }
.redesign-home .homepage-contact { background: #fff; padding: 35px 0 50px; }
.redesign-home .homepage-contact > div { max-width: 1264px; padding-inline: 32px; }
.redesign-home .homepage-contact .text-center { text-align: left; margin-bottom: 28px; }
.redesign-home .homepage-contact .text-center h2 { font-size: 28px; margin-bottom: 4px; }
.redesign-home .homepage-contact .text-center > p { font-size: 13px; }
.redesign-home .homepage-contact > div > .grid { gap: 64px; }
.redesign-home .homepage-contact .space-y-8 > :not([hidden]) ~ :not([hidden]) { margin-top: 24px; }
.redesign-home .homepage-contact .w-12 { width: 36px; height: 36px; border-radius: 8px; background: #eff4ff; color: var(--brand); }
.redesign-home .homepage-contact .w-12 i { color: var(--brand); }
.redesign-home .homepage-contact h3 { font-size: 14px; margin-bottom: 5px; }
.redesign-home .homepage-contact .text-gray-600 { font-size: 12px; }
.redesign-home .homepage-contact .text-sm { font-size: 10px; }
.redesign-home .homepage-contact .space-y-8 a { color: var(--brand); }
.redesign-home .homepage-contact .bg-white.rounded-xl { border: 1px solid var(--line); border-radius: 11px; padding: 25px; box-shadow: none; background: #f9fbff; }
.redesign-home .homepage-contact .space-y-6 > :not([hidden]) ~ :not([hidden]) { margin-top: 13px; }
.redesign-home .homepage-contact textarea { min-height: 95px; resize: vertical; }
.redesign-home .homepage-footer { padding: 33px 0 17px; }
.redesign-home .homepage-footer > .max-w-7xl { max-width: 1264px; padding-inline: 32px; }
.redesign-home .homepage-footer h3 { font-size: 20px; margin-bottom: 10px; }
.redesign-home .homepage-footer h4 { font-size: 12px; margin-bottom: 11px; }
.redesign-home .homepage-footer p, .redesign-home .homepage-footer li, .redesign-home .homepage-footer .text-sm { font-size: 11px; line-height: 1.65; }
.redesign-home .homepage-footer .space-y-2 > :not([hidden]) ~ :not([hidden]) { margin-top: 4px; }
.redesign-home .homepage-footer .mb-8 { margin-bottom: 23px; }
.redesign-home .homepage-footer .pt-8 { padding-top: 17px; border-color: #263450; }
.redesign-home .homepage-footer .text-2xl { font-size: 20px; }

@media (max-width: 1100px) {
  .redesign-home .homepage-nav .space-x-6 > :not([hidden]) ~ :not([hidden]) { margin-left: 16px; }
  .redesign-home .homepage-nav a, .redesign-home .homepage-nav button { font-size: 12px; }
  .redesign-home .hero-layout { gap: 26px; }
  .redesign-home .hero-product { grid-template-columns: 1fr 157px; }
  .redesign-home .hero-price { padding-inline: 12px; }
  .redesign-home .hero-price > strong { font-size: 40px; }
  .redesign-home .industry-grid > a { padding: 17px 14px; grid-template-columns: 27px 1fr; }
  .redesign-home .industry-grid i { font-size: 21px; }
  .redesign-home .industry-grid span { font-size: 9px; }
  .redesign-home .service-layout { gap: 35px; }
  .redesign-home .about-layout { gap: 36px; }
  .redesign-home .homepage-final-cta > div { padding: 24px; }
  .redesign-home .homepage-final-cta h2 { font-size: 21px; }
  .redesign-home .homepage-final-cta .button { padding-inline: 15px; font-size: 12px; }
  .redesign-home .blog-grid article { grid-template-columns: 60px 1fr; }
  .redesign-home .blog-grid article > div:last-child { padding: 18px 13px; }
}
@media (max-width: 900px) {
  .redesign-site nav .hidden.md\:flex { display: none; }
  .redesign-site nav .md\:hidden.flex { display: flex; }
  .redesign-site nav #mobile-menu:not(.hidden) { display: block; }
  .redesign-site nav #mobile-menu a { font-size: 14px; min-height: 44px; display: flex; align-items: center; }
  .redesign-home .homepage-nav .hidden.md\:flex { display: none; }
  .redesign-home .homepage-nav .md\:hidden.flex { display: flex; }
  .redesign-home .homepage-nav #mobile-menu:not(.hidden) { display: block; }
  .redesign-home .homepage-nav .h-20 { height: 65px; }
  .redesign-home .hero-layout { padding-block: 35px; grid-template-columns: 1fr 1fr; gap: 24px; }
  .redesign-home .hero-copy h1 { font-size: 35px; }
  .redesign-home .hero-product { grid-template-columns: 1fr; min-height: 410px; padding-bottom: 80px; }
  .redesign-home .hero-photo { padding-top: 12px; }
  .redesign-home .hero-photo img { width: 235px; }
  .redesign-home .hero-price { position: absolute; right: -5px; bottom: 65px; width: 141px; padding: 15px 11px; }
  .redesign-home .hero-price > strong { font-size: 32px; margin-top: 7px; }
  .redesign-home .hero-price > p:first-child { font-size: 9px; margin-bottom: 7px; }
  .redesign-home .price-tax { margin-bottom: 10px; }
  .redesign-home .hero-price .button { font-size: 10px; }
  .redesign-home .hero-product-caption { position: absolute; bottom: 0; left: 0; right: 0; }
  .redesign-home .hero-benefits { grid-template-columns: 1fr 1fr; gap: 13px; }
  .redesign-home .industry-grid { grid-template-columns: 1fr 1fr; }
  .redesign-home .featured-products { gap: 14px; }
  .redesign-home .product-card > div:last-child { padding: 17px; }
  .redesign-home .product-card h3 { font-size: 17px; }
  .redesign-home .product-card ul { font-size: 10px; }
  .redesign-home .additional-products { grid-template-columns: 1fr 1fr; }
  .redesign-home .service-layout { grid-template-columns: 1fr; gap: 27px; }
  .redesign-home .service-layout > div:first-child > p:not(.eyebrow) { max-width: 620px; }
  .redesign-home .service-grid article { padding: 22px; }
  .redesign-home .about-layout { grid-template-columns: 1fr 1fr; gap: 25px; }
  .redesign-home .team-panel { padding: 21px 14px; }
  .redesign-home .team-grid { gap: 11px; }
  .redesign-home .team-grid img { width: 80px; height: 80px; }
  .redesign-home .team-grid h4 { font-size: 12px; }
  .redesign-home .company-facts { grid-template-columns: 1fr; }
  .redesign-home .blog-grid { grid-template-columns: 1fr; gap: 12px; }
  .redesign-home .blog-grid article { grid-template-columns: 95px 1fr; }
  .redesign-home .blog-photo { min-height: 110px; }
  .redesign-home .homepage-callback > div > div { padding: 26px; }
  .redesign-home .homepage-callback h2 { font-size: 24px; }
  .redesign-home .homepage-final-cta > div { flex-direction: column; align-items: flex-start; gap: 18px; }
  .redesign-home .homepage-contact > div > .grid { gap: 30px; }
}
@media (max-width: 640px) {
  .redesign-site form :where(input,select,textarea) { font-size: 16px; }
  .redesign-home .site-container { width: calc(100% - 36px); }
  .redesign-home .section-space { padding-block: 35px; }
  .redesign-home .law-strip > div { min-height: 45px; font-size: 10px; gap: 10px; line-height: 1.4; justify-content: space-between; padding-block: 7px; }
  .redesign-home .law-strip a { font-size: 10px; padding: 4px 8px; }
  .redesign-home .hero-layout { grid-template-columns: 1fr; gap: 20px; padding-block: 28px 29px; }
  .redesign-home .hero-copy h1 { font-size: clamp(33px, 9vw, 44px); margin-bottom: 16px; }
  .redesign-home .hero-copy h1 small { font-size: .54em; margin-top: 11px; }
  .redesign-home .hero-copy > .eyebrow { font-size: 9px; }
  .redesign-home .hero-description { font-size: 14px; margin-bottom: 18px; }
  .redesign-home .hero-actions { gap: 9px; }
  .redesign-home .hero-actions .button { flex: 1; min-height: 44px; padding: 11px 12px; font-size: 12px; }
  .redesign-home .service-note { margin: 12px 0 18px; font-size: 10px; }
  .redesign-home .hero-benefits { grid-template-columns: repeat(4,1fr); gap: 8px; }
  .redesign-home .hero-benefits li { flex-direction: column; gap: 5px; font-size: 9px; }
  .redesign-home .hero-benefits i { font-size: 14px; }
  .redesign-home .hero-company { font-size: 9px; margin-top: 15px; }
  .redesign-home .hero-product { grid-template-columns: 1fr 142px; min-height: 292px; padding: 14px 0 26px; gap: 8px; }
  .redesign-home .product-label { font-size: 8px; padding: 4px 7px; top: 0; }
  .redesign-home .hero-photo img { width: 187px; }
  .redesign-home .hero-price { position: static; width: auto; padding: 17px 11px; }
  .redesign-home .hero-price > p:first-child { display: block; font-size: 9px; }
  .redesign-home .hero-price > strong { font-size: 34px; }
  .redesign-home .hero-price .button { font-size: 11px; }
  .redesign-home .shipping { font-size: 9px; }
  .redesign-home .hero-product-caption { font-size: 10px; bottom: -4px; }
  .redesign-home .hero-product-caption span { font-size: 9px; }
  .redesign-home h2 { font-size: 26px; }
  .redesign-home .section-heading { align-items: flex-start; flex-direction: column; gap: 11px; margin-bottom: 22px; }
  .redesign-home .section-heading p:not(.eyebrow) { font-size: 12px; }
  .redesign-home .compact-heading h2 { font-size: 25px; }
  .redesign-home .industry-grid { gap: 10px; }
  .redesign-home .industry-grid > a { padding: 16px 12px; grid-template-columns: 1fr; gap: 6px; }
  .redesign-home .industry-grid i { grid-row: auto; font-size: 22px; }
  .redesign-home .industry-grid strong { font-size: 12px; }
  .redesign-home .industry-grid span { font-size: 9px; margin-top: 0; }
  .redesign-home .featured-products { grid-template-columns: 1fr; gap: 16px; }
  .redesign-home .featured-products .product-card { display: grid; grid-template-columns: .9fr 1.1fr; }
  .redesign-home .featured-products .product-card > div:first-child { aspect-ratio: auto; min-height: 220px; padding: 8px; }
  .redesign-home .featured-products .product-card > div:first-child > .absolute { top: 10px; right: 8px; font-size: 7px; }
  .redesign-home .featured-products .product-card > div:last-child { padding: 19px 14px; }
  .redesign-home .featured-products .product-card h3 { font-size: 18px; }
  .redesign-home .featured-products .product-card p { font-size: 12px; }
  .redesign-home .featured-products .product-card ul { font-size: 11px; }
  .redesign-home .featured-products .product-card a { font-size: 12px; }
  .redesign-home .featured-products .product-card > div:last-child > .flex > span:last-child { font-size: 25px; }
  .redesign-home .additional-products { gap: 11px; }
  .redesign-home .additional-products .product-card > div:first-child { aspect-ratio: 1.1 / 1; padding: 7px; }
  .redesign-home .additional-products .product-card > div:first-child > .absolute { top: 8px; right: 7px; font-size: 7px; padding: 3px 5px; }
  .redesign-home .additional-products .product-card > div:last-child { padding: 13px 11px; }
  .redesign-home .additional-products .product-card h3 { font-size: 14px; line-height: 1.3; }
  .redesign-home .additional-products .product-card p { font-size: 12px; }
  .redesign-home .additional-products .product-card ul { font-size: 11px; }
  .redesign-home .additional-products .product-card a { font-size: 11px; padding: 9px 3px; }
  .redesign-home .additional-products .product-card > div:last-child > .flex > span:first-child { font-size: 9px; }
  .redesign-home .additional-products .product-card > div:last-child > .flex > span:last-child { font-size: 22px; }
  .redesign-home .catalog-divider { margin-top: 25px; padding-top: 23px; align-items: flex-start; flex-direction: column; gap: 10px; }
  .redesign-home .catalog-divider h3 { font-size: 18px; }
  .redesign-home .catalog-intro { font-size: 11px; }
  .redesign-home .homepage-service h2 { font-size: 29px; }
  .redesign-home .service-layout { gap: 24px; }
  .redesign-home .service-grid { grid-template-columns: 1fr; gap: 11px; }
  .redesign-home .service-grid article { padding: 19px; }
  .redesign-home .service-grid i { width: 29px; flex-shrink: 0; }
  .redesign-home .service-grid h3 { font-size: 14px; }
  .redesign-home .service-grid p { font-size: 12px; }
  .redesign-home .process-grid { grid-template-columns: 1fr; gap: 23px; }
  .redesign-home .process-grid li:not(:last-child)::after { height: 16px; width: 1px; left: 21px; top: 53px; right: auto; }
  .redesign-home .center-heading { margin-bottom: 25px; text-align: left; }
  .redesign-home .center-heading p:not(.eyebrow) { font-size: 12px; }
  .redesign-home .about-layout { grid-template-columns: 1fr; gap: 27px; }
  .redesign-home .company-facts { grid-template-columns: 1fr 1fr; }
  .redesign-home .team-panel { padding: 23px 16px; }
  .redesign-home .team-grid img { width: 90px; height: 90px; }
  .redesign-home .team-grid h4 { font-size: 13px; }
  .redesign-home .faq-grid { grid-template-columns: 1fr; gap: 10px; }
  .redesign-home .faq-grid summary { font-size: 12px; }
  .redesign-home .ekasa-explainer { grid-template-columns: 1fr; gap: 7px; margin-top: 28px; padding-top: 25px; }
  .redesign-home .blog-grid article { grid-template-columns: 76px 1fr; }
  .redesign-home .blog-grid article > div:last-child { padding: 19px 15px; }
  .redesign-home .homepage-callback { padding: 30px 0; }
  .redesign-home .homepage-callback > .max-w-5xl { padding-inline: 18px; }
  .redesign-home .homepage-callback > div > div { padding: 24px 20px; }
  .redesign-home .homepage-callback h2 { font-size: 25px; }
  .redesign-home .homepage-callback .text-gray-600 { margin-bottom: 0; font-size: 12px; }
  .redesign-home .homepage-final-cta > div { padding: 24px 20px; }
  .redesign-home .homepage-final-cta h2 { font-size: 23px; }
  .redesign-home .homepage-final-cta > div > div:last-child { flex-direction: column; width: 100%; gap: 10px; }
  .redesign-home .homepage-contact { padding: 25px 0 35px; }
  .redesign-home .homepage-contact > div { padding-inline: 18px; }
  .redesign-home .homepage-contact > div > .grid { gap: 27px; }
  .redesign-home .homepage-contact .bg-white.rounded-xl { padding: 22px; }
  .redesign-home .homepage-contact .text-gray-600 { font-size: 12px; }
  .redesign-home .homepage-contact .text-sm { font-size: 11px; }
  .redesign-home .homepage-footer { padding: 30px 0 16px; }
  .redesign-home .homepage-footer > .max-w-7xl { padding-inline: 18px; }
  .redesign-home .homepage-footer .grid { grid-template-columns: 1fr 1fr; gap: 25px 20px; }
  .redesign-home .homepage-footer h3 { font-size: 19px; }
  .redesign-home .homepage-footer p { font-size: 10px; }
  .redesign-site #ai-chat-widget { bottom: 16px; right: 16px; }
  .redesign-site button[onclick="openAIChat()"] { bottom: 16px; right: 16px; width: 48px; height: 48px; }
  .redesign-site:not(.redesign-home) #ai-chat-widget, .redesign-site:not(.redesign-home) button[onclick="openAIChat()"] { bottom: 90px; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(.redesign-site) { scroll-behavior: auto; }
  .redesign-site *, .redesign-site *::before, .redesign-site *::after { animation: none !important; transition: none !important; }
}
/* Legible touch layouts: compact does not mean miniature commercial terms. */
@media (max-width: 640px) {
  .redesign-home .hero-description { font-size: 16px; }
  .redesign-home .hero-actions .button { font-size: 13px; }
  .redesign-home .service-note { font-size: 12px; line-height: 1.6; }
  .redesign-home .hero-benefits li { font-size: 12px; line-height: 1.45; }
  .redesign-home .hero-company { font-size: 12px; }
  .redesign-home .price-tax { font-size: 12px; }
  .redesign-home .hero-product-caption { font-size: 12px; }
  .redesign-home .hero-product-caption span { font-size: 11px; }
  .redesign-home .shipping { font-size: 11px; }
  .redesign-home .eyebrow, .redesign-home .hero-copy > .eyebrow { font-size: 11px; }
  .redesign-home .section-heading p:not(.eyebrow),
  .redesign-home .center-heading p:not(.eyebrow),
  .redesign-home .catalog-intro,
  .redesign-home .process-grid p,
  .redesign-home .faq-grid details > p,
  .redesign-home .service-grid p,
  .redesign-home .ekasa-explainer p:not(.eyebrow),
  .redesign-home .blog-grid p:not(.eyebrow),
  .redesign-home .homepage-callback .text-gray-600,
  .redesign-home .homepage-final-cta p { font-size: 14px; }
  .redesign-home .faq-grid summary { font-size: 14px; }
  .redesign-home .service-layout > div:first-child > .service-small { font-size: 12px !important; }
  .redesign-home .service-grid a, .redesign-home .blog-grid a { font-size: 13px; }
  .redesign-home .blog-grid .eyebrow { font-size: 11px; }
  .redesign-home .featured-products .product-card p,
  .redesign-home .additional-products .product-card p { font-size: 13px; }
  .redesign-home .featured-products .product-card ul,
  .redesign-home .additional-products .product-card ul { font-size: 12px; }
  .redesign-home .product-card a,
  .redesign-home .featured-products .product-card a,
  .redesign-home .additional-products .product-card a { font-size: 13px; min-height: 44px; display: flex; align-items: center; justify-content: center; padding: 10px 4px; }
  .redesign-home .product-card > div:last-child > .flex > span:first-child,
  .redesign-home .additional-products .product-card > div:last-child > .flex > span:first-child { font-size: 12px; }
  .redesign-home .industry-grid span { font-size: 11px; }
  .redesign-home .company-facts span,
  .redesign-home .company-links,
  .redesign-home .team-grid p,
  .redesign-home .team-grid span { font-size: 12px; }
  .redesign-home .homepage-callback :where(input,select),
  .redesign-home .homepage-contact :where(input,textarea) { font-size: 16px; }
  .redesign-home .homepage-callback label,
  .redesign-home .homepage-contact label { font-size: 14px; }
  .redesign-home .homepage-callback .text-xs { font-size: 12px; }
  .redesign-home .homepage-contact .text-gray-600 { font-size: 14px; }
  .redesign-home .homepage-contact .text-sm { font-size: 12px; }
  .redesign-home .homepage-footer p,
  .redesign-home .homepage-footer li,
  .redesign-home .homepage-footer .text-sm { font-size: 12px; }
}
@media print {
  .redesign-home .skip-link, .redesign-home .law-strip, .redesign-home .hero-actions, .redesign-home .homepage-final-cta { display: none; }
  .redesign-home .site-container { width: 100%; }
  .redesign-home .hero-layout { padding: 0; }
  .redesign-home .section-space { padding-block: 20px; }
  .redesign-home .homepage-service { color: #000; background: #fff; }
  .redesign-home .homepage-service h2 { color: #000; }
  .redesign-home .faq-grid details > p { display: block; }
}
