/**
 * OnePercent design tokens  -  use for new CSS; legacy template colors mapped here.
 */
:root {
    --op-color-accent: #ffc451;
    --op-color-accent-hover: #ffd584;
    --op-color-bg-page: #f9f9f9;
    --op-color-bg-dark: #151515;
    --op-color-bg-header: #000000;
    --op-color-text: #444444;
    --op-color-text-muted: #666666;
    --op-color-text-light: #777777;
    --op-color-text-on-dark: #ffffff;
    --op-color-text-footer-muted: #aaaaaa;
    --op-color-footer-label: #999999;

    --op-font-body: "Open Sans", sans-serif;
    --op-font-heading: Georgia, serif;

    --op-space-section-y: 50px;
    --op-header-offset: 75px;
    --op-content-padding-x: 20px;

    --op-radius-card: 15px;
    --op-radius-modal: 10px;

    --op-breakpoint-compact-max: 599px;
    --op-breakpoint-expanded-min: 600px;
}

/**
 * Site-wide overrides on top of legacy GP template styles.
 */

body.op-site {
    background-color: var(--op-color-bg-page);
}

.op-legal-content p {
    color: var(--op-color-text-muted);
}

.op-legal-content h3 {
    font-size: 1.35em;
    font-weight: 500;
}

.nav-link-icon {
    color: var(--op-color-text-light);
    margin-right: 15px;
}

.op-header-spacer {
    width: 100px;
}

.op-section-legal {
    margin-top: var(--op-header-offset);
    margin-bottom: var(--op-space-section-y);
    padding-top: var(--op-space-section-y);
    padding-left: var(--op-content-padding-x);
    padding-right: var(--op-content-padding-x);
    padding-bottom: var(--op-content-padding-x);
}

.op-section-title-tight {
    margin-bottom: -20px;
}

.op-section-title-subtitle {
    color: #000000;
}

.op-footer-dark {
    padding-bottom: 0;
    background-color: var(--op-color-bg-header);
}

.op-footer-top {
    background-color: var(--op-color-bg-header);
    width: 100%;
}

.op-back-to-top {
    margin-right: 10px;
}

#preloader.is-hidden {
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    transition: opacity 0.4s ease, visibility 0.4s ease;
}

.op-lazy-bg {
    background-color: #e8e8e8;
    background-size: cover;
    background-position: center;
    min-height: 120px;
}

iframe[data-src] {
    background: #f0f0f0;
}

/**
 * Legal / policy document pages.
 */

.op-legal-header {
    background-color: var(--op-color-bg-header);
}

.op-legal-header .logo a {
    color: var(--op-color-text-on-dark);
}
