/*!
 * CatEye Website - polish layer, overrides for modern.css, dark.css and crm.css (loaded last)
 *
 * Generated by scripts/polish.py. Do not edit by hand: change the generator or the source stylesheet and run it again.
 * Type scale 12 / 13.5 / 15 / 17 / 21 / 28 / 36 / 52 / 72 px; padding on a 4px grid; radii 4 / 8 / 12 / 16 px or pill.
 */

/* ---- from modern.css ---- */
.theme-modern h1 { font-size: 72px; }
@media (max-width: 767px) { .theme-modern h1 { font-size: 36px; } }
.theme-modern h2 { font-size: 52px; }
@media (max-width: 767px) { .theme-modern h2 { font-size: 36px; } }
.theme-modern h3 { font-size: 28px; }
@media (max-width: 767px) { .theme-modern h3 { font-size: 21px; } }
.theme-modern h4 { font-size: 21px; }
.theme-modern h5 { font-size: 17px; }
.theme-modern h6 { font-size: 15px; }
.mx-wordmark span { font-size: 12px; }
.theme-modern .site-nav .menu > li > a, .theme-modern .site-header.is-stuck .site-nav .menu > li > a { padding: 0 12px; }
.theme-modern .site-nav .menu > li > a i { font-size: 12px; }
.theme-modern .site-nav .sub-menu { border-radius: 12px; }
.theme-modern .site-nav .sub-menu a { padding: 8px 16px; font-size: 13.5px; }
.mx-cta { padding: 12px 20px; }
.theme-modern .mx-hero .ce-slide-title { font-size: 72px; }
@media (max-width: 767px) { .theme-modern .mx-hero .ce-slide-title { font-size: 52px; } }
.theme-modern .mx-hero .ce-slide-sub { font-size: 17px; }
.theme-modern .mx-hero .ce-hero-dots button span { border-radius: 4px; }
.theme-modern .ce-section { padding: 104px 0; }
@media (max-width: 767px) { .theme-modern .ce-section { padding: 64px 0; } }
.theme-modern hr.ce-sep { border-radius: 4px; }
.theme-modern .ce-headline { font-size: 52px; }
@media (max-width: 767px) { .theme-modern .ce-headline { font-size: 36px; } }
.theme-modern .ce-subheadline { font-size: 17px; }
.theme-modern .ce-widget-title { font-size: 28px; }
.theme-modern :where(.ce-btn, .ce-form button[type="submit"], .ce-section input[type="submit"]) { padding: 16px 24px; }
.theme-modern .ce-btn-lg { font-size: 15px; padding: 16px 32px; }
.theme-modern .ce-btn-small { font-size: 13.5px; padding: 8px 16px; }
.theme-modern .ce-checklist li > i { font-size: 12px; }
.theme-modern .ce-box { padding: 24px 0; }
.theme-modern .ce-box-title { font-size: 21px; }
.theme-modern .ce-feature-icon { font-size: 21px; }
.theme-modern .ce-feature-title { font-size: 21px; }
.theme-modern .ce-feature-text { font-size: 15px; }
.theme-modern .ce-person-photo img { border-radius: 999px 999px 16px 16px; }
.theme-modern .ce-person-name { font-size: 21px; }
.theme-modern .ce-social a { font-size: 13.5px; }
.theme-modern .ce-testimonial blockquote { font-size: 28px; }
@media (max-width: 767px) { .theme-modern .ce-testimonial blockquote { font-size: 21px; } }
.theme-modern .ce-testimonial blockquote::before { font-size: 52px; }
.theme-modern .ce-testimonial-dots button { border-radius: 4px; }
.theme-modern .ce-post-title { font-size: 28px; }
@media (max-width: 767px) { .theme-modern .ce-post-title { font-size: 21px; } }
.theme-modern .ce-post-meta { font-size: 13.5px; }
.theme-modern .ce-post-excerpt { font-size: 15px; }
.theme-modern .ce-posts-large .ce-post-card { border-radius: 16px; }
.theme-modern .ce-posts-list .ce-post-thumb { border-radius: 16px; }
.theme-modern .page-header { padding: 116px 0 76px; }
@media (max-width: 767px) { .theme-modern .page-header { padding: 64px 0 48px; } }
.theme-modern .page-header .page-title { font-size: 72px; }
@media (max-width: 767px) { .theme-modern .page-header .page-title { font-size: 36px; } }
.theme-modern .single-post-article { padding: 76px 0 40px; }
@media (max-width: 767px) { .theme-modern .single-post-article { padding: 48px 0 40px; } }
.theme-modern .post-featured img { border-radius: 16px; }
.theme-modern .post-title { font-size: 52px; }
@media (max-width: 767px) { .theme-modern .post-title { font-size: 36px; } }
.theme-modern .entry-content :is(h1, h2) { font-size: 36px; }
@media (max-width: 767px) { .theme-modern .entry-content :is(h1, h2) { font-size: 28px; } }
.theme-modern .entry-content h3 { font-size: 21px; }
.theme-modern .post-share { border-radius: 16px; padding: 24px 24px; }
.theme-modern .post-share h4 { font-size: 17px; }
.theme-modern .post-nav { font-size: 21px; }
.theme-modern .ce-job-title { font-size: 28px; }
.theme-modern .job-summary { border-radius: 16px; }
.theme-modern .job-summary h3 { font-size: 21px; }
.theme-modern .ce-notice { border-radius: 12px; }
.theme-modern .ce-toggle summary { font-size: 21px; }
.theme-modern .ce-flip-front, .theme-modern .ce-flip-back { border-radius: 16px; }
.theme-modern .ce-video { border-radius: 16px; }
.theme-modern .ce-image img { border-radius: 12px; }
.theme-modern .ce-prod-hero { padding: 104px 0 116px; }
@media (max-width: 767px) { .theme-modern .ce-prod-hero { padding: 64px 0 72px; } }
.theme-modern .ce-prod-name { font-size: 72px; }
@media (max-width: 767px) { .theme-modern .ce-prod-name { font-size: 52px; } }
.theme-modern .ce-prod-title { font-size: 72px; }
@media (max-width: 767px) { .theme-modern .ce-prod-title { font-size: 52px; } }
.theme-modern .ce-prod-lede { font-size: 17px; }
.theme-modern .ce-prod-tile b { font-size: 28px; }
.theme-modern .ce-prod-closing h2 { font-size: 52px; }
@media (max-width: 767px) { .theme-modern .ce-prod-closing h2 { font-size: 28px; } }
.theme-modern .ce-journey h3, .theme-modern .ce-steps h3 { font-size: 28px; }
@media (max-width: 767px) { .theme-modern .ce-journey h3, .theme-modern .ce-steps h3 { font-size: 21px; } }
.theme-modern .ce-steps > li::before { font-size: 72px; }
.mx-closing { padding: 104px 0; }
@media (max-width: 767px) { .mx-closing { padding: 56px 0; } }
.mx-closing h2 { font-size: 52px; }
@media (max-width: 767px) { .mx-closing h2 { font-size: 28px; } }
.mx-closing p { font-size: 17px; }
.mx-footer { padding: 88px 0 0; }
@media (max-width: 767px) { .mx-footer { padding: 56px 0 0; } }
.mx-footer :is(h3, .mx-footer-extra h4) { font-size: 12px; }
.mx-footer-extra a { font-size: 13.5px; }
.mx-footer-bottom { padding-top: 24px; }
@media (max-width: 1320px) { .theme-modern .site-nav .menu > li > a { padding: 0 8px; font-size: 13.5px; } }

/* ---- from dark.css ---- */
html[data-design="dark"] .theme-modern .ce-logos img { border-radius: 12px; }

/* ---- from crm.css ---- */
html[data-design="crm"] .theme-modern .ce-logos img { border-radius: 12px; }
html[data-design="crm"] .theme-modern h1 { font-size: 52px; }
@media (max-width: 767px) { html[data-design="crm"] .theme-modern h1 { font-size: 36px; } }
html[data-design="crm"] .theme-modern h2 { font-size: 36px; }
@media (max-width: 767px) { html[data-design="crm"] .theme-modern h2 { font-size: 28px; } }
html[data-design="crm"] .theme-modern h3 { font-size: 21px; }
html[data-design="crm"] .theme-modern .mx-hero .ce-slide-title { font-size: 72px; }
@media (max-width: 767px) { html[data-design="crm"] .theme-modern .mx-hero .ce-slide-title { font-size: 36px; } }
html[data-design="crm"] .theme-modern .page-header .page-title { font-size: 52px; }
@media (max-width: 767px) { html[data-design="crm"] .theme-modern .page-header .page-title { font-size: 36px; } }
html[data-design="crm"] .theme-modern .ce-feature-title { font-size: 21px; }
html[data-design="crm"] .theme-modern .mx-hero .ce-slide-sub, html[data-design="crm"] .theme-modern .ce-subheadline, html[data-design="crm"] .theme-modern .ce-prod-lede { font-size: 17px; }
html[data-design="crm"] .theme-modern .page-header-label, html[data-design="crm"] .theme-modern .ce-post-meta, html[data-design="crm"] .theme-modern .ce-job-specs, html[data-design="crm"] .theme-modern .job-summary dt, html[data-design="crm"] .theme-modern .ce-journey-when, html[data-design="crm"] .theme-modern .ce-glimpse-colhead, html[data-design="crm"] .mx-footer :is(h3, .mx-footer-extra h4), html[data-design="crm"] .mx-footer-bottom, html[data-design="crm"] .theme-modern .ce-pagination { font-size: 12px; }
html[data-design="crm"] .mx-wordmark span { font-size: 12px; }
html[data-design="crm"] .theme-modern .site-nav .menu > li > a, html[data-design="crm"] .theme-modern .site-header.is-stuck .site-nav .menu > li > a { font-size: 12px; }
html[data-design="crm"] .theme-modern .site-nav .sub-menu { border-radius: 12px; }
html[data-design="crm"] .theme-modern .ce-post-thumb, html[data-design="crm"] .theme-modern .post-featured img, html[data-design="crm"] .theme-modern .ce-image img, html[data-design="crm"] .theme-modern .ce-video { border-radius: 12px; }
html[data-design="crm"] .theme-modern .ce-posts-large .ce-post-card { border-radius: 16px; }
html[data-design="crm"] .theme-modern .job-summary, html[data-design="crm"] .theme-modern .post-share, html[data-design="crm"] .theme-modern .ce-notice { border-radius: 12px; }
html[data-design="crm"] .theme-modern .ce-feature-icon { border-radius: 8px; }
html[data-design="crm"] .theme-modern .ce-box-icon, html[data-design="crm"] .theme-modern .ce-box-icon.ce-icon-circle { border-radius: 8px; }
html[data-design="crm"] .theme-modern .ce-logos img { border-radius: 8px; }
html[data-design="crm"] .theme-modern :where(.ce-btn, .ce-form button[type="submit"], .ce-section input[type="submit"]) { padding: 12px 24px; }
html[data-design="crm"] .theme-modern .ce-btn-lg { padding: 16px 28px; }
html[data-design="crm"] .theme-modern :is(.ce-form input[type="text"], .ce-form input[type="email"], .ce-form input[type="tel"], .ce-form input[type="file"], .ce-form textarea, .ce-search-form input, .ce-section .form-control, .ce-section input[type="text"], .ce-section input[type="email"], .ce-section input[type="tel"], .ce-section select, .ce-section textarea) { border-radius: 8px; }
html[data-design="crm"] .theme-modern .ce-form label, html[data-design="crm"] .theme-modern .ce-section form .col-25 label { font-size: 12px; }
html[data-design="crm"] .theme-modern .ce-check { font-size: 13.5px; }

/* ---- by hand ---- */
/* Form controls and buttons take the site font (no Arial fallback on the menu button and hidden labels) */
.theme-modern :is(button, input, select, textarea) { font-family: inherit; }
/* Buttons without their own padding or size (menu toggles, slider arrows and dots) had the browser's 1px 6px and 13.33px */
:where(.theme-modern button) { padding: 0; font-size: 15px; }
:where(.theme-modern .nav-toggle) { font-size: 13.5px; }
/* The wordmark's small line was 10.5px: the scale's smallest step, tracked a little tighter */
.mx-wordmark span { font-size: 12px; letter-spacing: .26em; }
/* Secondary text sits one step under the body size; the header button matches the menu */
.theme-modern .ce-post-meta, .theme-modern .ce-job-specs, .theme-modern .job-summary dt { font-size: 13.5px; }
.mx-cta { font-size: 13.5px; }
.theme-modern small, .theme-modern .ce-form small { font-size: 12px; }
/* The page gutter on the 4px grid */
.theme-modern { --gutter: 32px; }
/* Greys that failed 4.5:1 on white and on the mist bands: the slate the rest of the text uses */
.theme-modern .ce-post-meta .sep, .theme-modern .ce-form small, .theme-modern .job-summary dt { color: var(--slate, #5e6378); }
.theme-modern .ce-section:not(.ce-text-light) :is([style*="color:#768894"], [style*="color: #768894"], [style*="color:#666666"], [style*="color: #666666"]) { color: var(--slate, #5e6378) !important; }
.theme-modern .ce-section:not(.ce-text-light) .ce-box-body[style*="color"] { color: var(--slate, #5e6378) !important; }
/* Four weights, not five: display text at 700 (the CRM design keeps its light headings) */
html:not([data-design="crm"]) .theme-modern :is(h1, h2, h3, h4, h5, h6, .mx-hero .ce-slide-title, .page-header .page-title, .ce-prod-name, .ce-prod-title, .ce-headline strong, .ce-headline b, .ce-404-code, .ce-steps > li::before, .ce-prod-closing h2),
html:not([data-design="crm"]) .mx-closing h2, html:not([data-design="crm"]) .mx-wordmark b { font-weight: 700; }
/* The off-screen "Skip to content" link keeps dark text on its white background in every design */
.theme-modern .skip-link { color: #24263a; }
/* The product mock-ups reuse the site's own greys and lines instead of near-duplicates */
.theme-modern .ce-glimpse { --g-slate: #5e6378; --g-line: #dfe1ec; --g-soft: #f1f2f8; }
/* Links on the white panels the dark designs keep (product mock-ups, white content panels): dark on white, 4.5:1 and better */
html[data-design="dark"] .theme-modern :is(.ce-glimpse, [style*="background-color:#ffffff"], [style*="background-color: #ffffff"], [style*="background:#ffffff"], [style*="background: #ffffff"]) :is(a, .ce-more, p, li, span):not(.ce-btn) { color: #4a2a99; }
html[data-design="dark"] .theme-modern :is([style*="background-color:#ffffff"], [style*="background-color: #ffffff"]) :is(h1, h2, h3, h4) { color: #24263a; }
html[data-design="crm"] .theme-modern :is(.ce-glimpse, [style*="background-color:#ffffff"], [style*="background-color: #ffffff"]) :is(a, .ce-more):not(.ce-btn) { color: #6b4f1d; }
