/* Global design tokens shared by the new home, pricing, and reusable sections. */
:root {
    --ap-font-sans: 'Inter', ui-sans-serif, system-ui, sans-serif;
    --type-display: 3.25rem;
    --type-display-sm: 3rem;
    --type-h1: 2.75rem;
    --type-h2: 2.125rem;
    --type-h2-md: 1.75rem;
    --type-h2-sm: 1.25rem;
    --type-h3: 1.375rem;
    --type-h3-lg: 1.5rem;
    --type-h4: 1.125rem;
    --type-h5: 0.875rem;
    --type-h6: 0.75rem;
    --type-title-h1: var(--type-h1);
    --type-title-h2: var(--type-h2);
    --type-title-h3: var(--type-h3);
    --type-title-h4: var(--type-h4);
    --type-title-h5: var(--type-h5);
    --type-title-h6: var(--type-h6);
    --type-title-lh-tight: 1.08;
    --type-title-lh: 1.18;
    --type-title-lh-small: 1.25;
    --type-body-lg: 1rem;
    --type-body: 0.875rem;
    --type-body-sm: 0.8125rem;
    --type-micro: 0.6875rem;
    --type-micro-sm: 0.5625rem;
    --type-stat: 1.75rem;
    --type-icon-display: 4rem;
    --brand: #fe454b;
    --brand-hover: #e63e44;
    --ap-dark-ink: #0f172a;
    --ap-dark-panel: #13203a;
    --ap-dark-panel-deep: #0b1322;
    --ap-slate-300: #cbd5e1;
    --ap-slate-500: #64748b;
    --ap-slate-700: #334155;
    --ap-slate-900: #0f172a;
    --page-bg: #FCFCFD;
    --site-header-h: 56px;
    --elev-border-outer: #E8E8EA;
    --elev-border-inner: #F0F0F2;
    --elev-divider: #F0F0F2;
    --elev-s1: 0 1px 2px rgba(0, 0, 0, 0.035), 0 4px 12px rgba(0, 0, 0, 0.028);
    --elev-s2: 0 1px 2px rgba(0, 0, 0, 0.022);
    --elev-s3: 0 1px 1px rgba(0, 0, 0, 0.012);
    --elev-s4-border: 1px dashed rgba(48, 26, 26, 0.14);
    --ap-brand-red: #FE454B;
    --ap-brand-sky: #5BA8C0;
    --ap-top-band-divider: rgba(15, 23, 42, 0.08);
    --ap-content-max: 1344px;
    --ap-content-inset-left: calc(1rem + 14px);
    --ap-content-inset-right: calc(1rem + 14px);
    --ap-sec-head-inset: 40px;
    --ap-sec-divider-gap: 65px;
    --ap-news-space-3: 12px;
    --ap-theme-duration: 0.35s;
    --ap-theme-ease: cubic-bezier(0.16, 1, 0.3, 1);
    --transition-color: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease;
    --ap-pricing-top-inset: 64px;
    --ap-pricing-title-to-switch: 40px;
    --ap-pricing-switch-to-cards: 24px;
}

h1, h2, h3, h4, h5, h6 {
    letter-spacing: 0;
}

h1 {
    font-size: var(--type-title-h1, var(--type-h1));
    line-height: var(--type-title-lh-tight, 1.08);
}

h2 {
    font-size: var(--type-title-h2, var(--type-h2));
    line-height: var(--type-title-lh-tight, 1.1);
}

.h2_title, h2.title {
    margin: 0;
    font-family: var(--ap-font-sans);
    font-size: var(--type-title-h2, var(--type-h2));
    font-weight: 700 !important;
    line-height: var(--type-title-lh-tight, 1.08);
    letter-spacing: 0;
    color: var(--ap-slate-900, #0f172a);
}

.h3_title,  h3.title  {
    margin: 0;
    font-family: var(--ap-font-sans);
   
    font-size: clamp(25px, 2vw + 18px, 30px);

    font-weight: 700 !important;
    line-height: var(--type-title-lh, 1.18);
    letter-spacing: 0;
    color: var(--ap-slate-900, #0f172a);
}

h3 {
    font-size: var(--type-title-h3, var(--type-h3));
    line-height: var(--type-title-lh, 1.18);
}

h4 {
    font-size: var(--type-title-h4, var(--type-h4));
    line-height: var(--type-title-lh, 1.2);
}

h5 {
    font-size: var(--type-title-h5, var(--type-h5));
    line-height: var(--type-title-lh-small, 1.25);
}

h6 {
    font-size: var(--type-title-h6, var(--type-h6));
    line-height: var(--type-title-lh-small, 1.25);
}

/* Shared page breadcrumb. */
.page_breadcrumb {
    display: flex;
    font-family: var(--ap-font-sans);
    padding: 30px 0px;
}
.page_breadcrumb.centered{
    justify-content: center;
}

.page_breadcrumb ol {
    display: flex;
    align-items: center;
    gap: 7px;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: var(--type-body-sm);
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 0;
}

.page_breadcrumb li {
    display: flex;
    min-width: 0;
}

.page_breadcrumb li[aria-hidden="true"] {
    color: var(--ap-slate-300);
    font-weight: 400;
    user-select: none;
}

.page_breadcrumb li a,
.page_breadcrumb li span[aria-current="page"] {
    max-width: min(999px, 100%);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: bottom;
}

.page_breadcrumb li a {
    display: inline-flex;
    align-items: center;
    color: var(--ap-slate-500);
    text-decoration: none;
    transition: var(--transition-color);
}

.page_breadcrumb li a svg{
    width: 13px;
        margin-top: -2px;
    fill: var(--ap-slate-500);
}

.page_breadcrumb li a:hover {
    color: var(--ap-slate-700);
}

.page_breadcrumb li a[aria-label="Home"] i {
    font-size: var(--type-h6);
}

.page_breadcrumb li span[aria-current="page"] {
    display: inline-block;
    color: var(--ap-slate-900);
    font-weight: 600;
}
.ap-plus-mode .page_breadcrumb li span[aria-current="page"] {
    color: #fff  !important;
}

@media (max-width: 1023px) {
    :root {
        --type-display: 2.875rem;
        --type-display-sm: 2.5rem;
        --type-h1: 2.375rem;
        --type-h2: 1.875rem;
        --type-h2-md: 1.625rem;
        --type-h2-sm: 1.25rem;
        --type-h3: 1.25rem;
        --type-h3-lg: 1.375rem;
        --type-h4: 1.0625rem;
        --type-h5: 0.875rem;
        --type-h6: 0.75rem;
    }
}

@media (max-width: 767px) {
    :root {
        --type-display: 2.5rem;
        --type-display-sm: 2.125rem;
        --type-h1: 2rem;
        --type-h2: 1.625rem;
        --type-h2-md: 1.5rem;
        --type-h2-sm: 1.25rem;
        --type-h3: 1.1875rem;
        --type-h3-lg: 1.25rem;
        --type-h4: 1rem;
        --type-h5: 0.875rem;
        --type-h6: 0.75rem;
    }
}

@media (min-width: 640px) {
    :root {
        --ap-content-inset-left: calc(1.5rem + 14px);
        --ap-content-inset-right: calc(1.5rem + 14px);
    }
}

@media (min-width: 768px) {
    :root {
        --ap-sec-head-inset: 48px;
        --ap-pricing-top-inset: 80px;
        --ap-pricing-switch-to-cards: 32px;
    }
}

@media (min-width: 1024px) {
    :root {
        --site-header-h: 64px;
        --ap-content-inset-left: calc(2rem + 14px);
        --ap-content-inset-right: calc(2rem + 14px);
        --ap-pricing-top-inset: 96px;
    }
}
