/* Unitwise additions on top of the Framo agency-2 theme */

[hidden] { display: none !important; }

/* Logo: the theme sizes .brand-logo by height; keep the wordmark crisp */
.brand-logo--original { height: 2em; }
.compare-table-brand .brand-logo { height: 1.75rem; }

/* Industry marquee (text instead of client logos) */
.lp-industries .logo-item span {
    display: inline-flex; align-items: center; gap: .5rem;
    font-size: 1rem; font-weight: 600; white-space: nowrap; color: currentColor;
}
.lp-industries .logo-item i { font-size: 1.25rem; color: var(--custom-accent); }

/* Form success panel shown by js/site.js */
.form-success {
    display: grid; gap: .75rem; justify-items: start;
    padding: clamp(1.5rem, 1rem + 1.5vw, 2.25rem);
    border-radius: 1.25rem;
    background: color-mix(in oklab, var(--color-primary) 14%, var(--color-surface, #fff));
    color: var(--color-text);
    outline: none;
}
.form-success p { font-size: 1.0625rem; line-height: 1.6; }
.form-success-title { font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem) !important; font-weight: 600; letter-spacing: -.03em; }
.form-success-icon {
    display: grid; place-items: center; width: 3rem; aspect-ratio: 1; border-radius: 999px;
    background: var(--color-primary); color: var(--color-on-primary, #10231a); font-size: 1.25rem;
}
.form-success--dark { background: color-mix(in oklab, var(--color-primary) 12%, transparent); color: #fff; }
.form-success ul { display: grid; gap: .5rem; padding-left: 1.25rem; list-style: disc; }

/* Consent checkbox text */
.form-consent { font-size: .875rem; line-height: 1.5; }
.form-consent a, .custom-audit-note a { text-decoration: underline; }

/* Blog post page header: long titles need a smaller display size */
.custom-ph--post .custom-ph-title { font-size: clamp(2.125rem, 1.4rem + 2.4vw, 3.5rem); max-width: 24ch; }

/* Legal pages and article tables */
.legal-body h2 { scroll-margin-top: calc(var(--header-h, 6rem) + 1rem); }
.article-body table { width: 100%; border-collapse: collapse; font-size: 1rem; margin: 1.5rem 0; }
.article-body th, .article-body td { padding: .75rem 1rem; border-bottom: 1px solid var(--color-border, #e2e8f0); text-align: left; vertical-align: top; }
.article-body thead th { font-weight: 600; background: var(--color-bg-soft); }

/* Case study detail rows */
.case-row { display: grid; gap: clamp(1.5rem, 1rem + 1.5vw, 2.5rem); align-items: start; }
.case-row h3 { font-size: clamp(1.5rem, 1.2rem + 1vw, 2.125rem); font-weight: 600; letter-spacing: -.03em; line-height: 1.15; }
.case-row h4 { font-size: .8125rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--color-text-soft); margin-bottom: .5rem; }
.case-row p, .case-row li { font-size: 1.0625rem; line-height: 1.65; color: var(--color-text-soft); }
.case-row ul { display: grid; gap: .5rem; }
.case-row ul li { display: flex; gap: .625rem; }
.case-row ul li i { color: var(--color-primary-ink, var(--color-primary)); margin-top: .3rem; }
.case-cols { display: grid; gap: 2rem; }
@media (width >= 768px) { .case-cols { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(2rem, 1rem + 3vw, 4rem); } }
.case-divider { border: 0; border-top: 1px solid var(--color-border, #e2e8f0); }

/* Landing page */
.lp-call i { font-size: 1.125rem; }
.lp-footer { flex-wrap: wrap; gap: .75rem 2rem; }
.lp-footer a { text-decoration: underline; }
.lp-disclaimer { padding-bottom: 1.5rem; font-size: .8125rem; line-height: 1.55; color: var(--color-text-soft); }
.lp-form-card {
    position: relative; display: grid; gap: 1.25rem;
    padding: clamp(1.5rem, 1rem + 1.5vw, 2.25rem);
    border-radius: 1.5rem; background: var(--color-surface, #fff); color: var(--color-text);
    box-shadow: 0 30px 80px -30px rgb(0 0 0 / .45);
}
.lp-form-card .form-label { color: var(--color-text); }
.lp-form-title { font-size: clamp(1.5rem, 1.25rem + .8vw, 1.875rem); font-weight: 600; letter-spacing: -.03em; line-height: 1.15; }
.lp-checks { display: grid; gap: .75rem; }
.lp-checks li { display: flex; gap: .75rem; align-items: flex-start; font-size: 1.0625rem; line-height: 1.5; }
.lp-checks i { color: var(--custom-accent); font-size: 1.25rem; margin-top: .1rem; }
.lp-leak { display: grid; gap: 1rem; align-content: start; padding: clamp(1.5rem, 1rem + 1.5vw, 2.25rem); border-radius: 1.5rem; background: var(--color-surface, #fff); }
.lp-leak h3 { font-size: 1.375rem; font-weight: 600; letter-spacing: -.02em; }
.lp-leak p { font-size: 1.0625rem; line-height: 1.6; color: var(--color-text-soft); }
.lp-leak .custom-disc { width: 3rem; }
.lp-step { display: grid; gap: .75rem; align-content: start; }
.lp-step h3 { font-size: 1.375rem; font-weight: 600; letter-spacing: -.02em; color: #fff; }
.lp-sticky-cta { display: none; }
@media (width < 768px) {
    .lp-sticky-cta {
        display: flex; position: fixed; inset: auto 1rem 1rem; z-index: 50; justify-content: center;
        box-shadow: 0 12px 30px -10px rgb(0 0 0 / .45);
    }
    .lp-page .back-to-top { display: none; }
}
.lp-pod-icon {
    display: grid; place-items: center; width: 3rem; height: 3rem; border-radius: 999px; flex: none;
    background: color-mix(in oklab, var(--custom-accent) 18%, transparent); color: var(--custom-accent); font-size: 1.25rem;
}
.custom-svcs-float { right: 1rem; bottom: 1rem; }
.lp-title { font-size: clamp(2.5rem, 1.6rem + 3.4vw, 4.5rem); }
.lp-header .nav-actions { margin-left: auto; }
/* Light form card inside the dark hero: pin light-theme colours */
.lp-form-card { background: #fff; color: #10231a; }
.lp-form-card .form-label, .lp-form-card .form-check-label, .lp-form-card .lp-form-title { color: #10231a; }
.lp-form-card .text-soft { color: #4b5d54; }
.lp-form-card .form-success { background: #eef8e8; color: #10231a; }
.lp-header .navbar-inner { display: flex; justify-content: space-between; align-items: center; }
.lp-form-card a { color: #10231a; }
