/* ═══════════════════════════════════════════════════════════
   PHP Pro Bid — Shared Stylesheet
   Header, footer, and base reset shared across all pages.
   Page-specific styles stay in each page's own <style> block.
   ═══════════════════════════════════════════════════════════ */

/* ── CSS VARIABLES (canonical set) ───────────────────────── */
:root {
    --ink: #1e2d4d;
    --ink2: #162440;
    --ink3: #2d5cbf;
    --mid: #5a6a82;
    --light: #8fa8c8;
    --pale: #e8f0fc;
    --bg: #f4f7fd;
    --white: #FFFFFF;
    --blue: #3b7de8;
    --blue2: #5a94ef;
    --gold: #3b7de8;
    --gold2: #5a94ef;
    --green: #1a4d8f;
    --red: #C0392B;
    --blue-pale: #e8f0fc;
    --green-pale: #e8f5ee;
    --amber: #c8962a;
    --amber-pale: #fdf8e8;
    --grass: #1a6b45;
    --grass-pale: #e8f5ee;
    --max: 1200px;
    --header-h: 68px;
    --serif: 'Geist Sans', 'Geist', sans-serif;
    --sans: 'Switzer', system-ui, sans-serif;
    --mono: 'Geist Mono', monospace;
}

/* ── BASE RESET ───────────────────────────────────────────── */
*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
html {
    scroll-behavior: smooth;
}
body {
    font-family: var(--sans);
    background: var(--white);
    color: var(--ink);
    font-size: 16px;
    line-height: 1.6;
    overflow-x: hidden;
}

/* ── HEADER ───────────────────────────────────────────────── */
.site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background: rgba(255, 255, 255, 0.97);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(30, 45, 77, 0.08);
    padding: 0 40px;
    height: 68px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    transition: box-shadow 0.3s ease;
}
.site-header.scrolled {
    box-shadow: 0 4px 24px rgba(30, 45, 77, 0.1);
}

.logo {
    font-family: var(--sans);
    font-weight: 700;
    font-size: 1.15rem;
    color: var(--ink);
    letter-spacing: -0.01em;
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    flex-shrink: 0;
}
.logo-mark {
    width: 36px;
    height: 28px;
    border: 2.5px solid var(--ink);
    border-radius: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    font-family: var(--sans);
    font-weight: 800;
    font-size: 0.7rem;
    color: var(--ink);
    letter-spacing: -0.02em;
}
.logo-mark::after {
    content: '';
    position: absolute;
    bottom: -6px;
    left: 6px;
    width: 10px;
    height: 2.5px;
    background: var(--gold);
}

.header-nav {
    display: flex;
    align-items: center;
    gap: 4px;
    flex: 1;
    justify-content: center;
}
.header-nav a {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--mid);
    text-decoration: none;
    padding: 6px 14px;
    border-radius: 6px;
    transition: color 0.15s, background 0.15s;
    white-space: nowrap;
}
.header-nav a:hover {
    color: var(--ink);
    background: var(--pale);
}
.header-nav a.active {
    color: var(--ink);
    font-weight: 600;
}

.header-right {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}
.header-login {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--mid);
    text-decoration: none;
    padding: 8px 16px;
    border-radius: 6px;
    border: 1px solid rgba(30, 45, 77, 0.15);
    transition: color 0.15s, border-color 0.15s, background 0.15s;
    white-space: nowrap;
}
.header-login:hover {
    color: var(--ink);
    border-color: var(--ink);
    background: var(--pale);
}

.header-cta {
    background: var(--ink);
    color: var(--white);
    font-family: var(--sans);
    font-weight: 600;
    font-size: 0.875rem;
    letter-spacing: 0.01em;
    padding: 10px 22px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    transition: background 0.2s, transform 0.15s;
    white-space: nowrap;
    flex-shrink: 0;
}
.header-cta:hover {
    background: var(--ink2);
    transform: translateY(-1px);
}

/* ── FOOTER ───────────────────────────────────────────────── */
footer {
    background: #080F18;
    padding: 60px 40px 40px;
    color: var(--light);
}
.footer-inner {
    max-width: 1100px;
    margin: 0 auto;
}
.footer-top {
    display: grid;
    grid-template-columns: 1.6fr 1fr 1fr 1fr 1fr;
    gap: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
    margin-bottom: 32px;
}
.footer-logo {
    font-family: var(--serif);
    font-weight: 700;
    font-size: 1.2rem;
    color: var(--white);
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
}
.footer-logo-mark {
    width: 34px;
    height: 26px;
    border: 2px solid rgba(255, 255, 255, 0.5);
    border-radius: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--sans);
    font-weight: 800;
    font-size: 0.65rem;
    color: rgba(255, 255, 255, 0.85);
    letter-spacing: -0.01em;
}
.footer-tagline {
    font-size: 0.85rem;
    color: var(--mid);
    line-height: 1.5;
    max-width: 240px;
}
.footer-col h4 {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--white);
    margin-bottom: 16px;
}
.footer-links {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.footer-links a {
    font-size: 0.875rem;
    color: var(--mid);
    text-decoration: none;
    transition: color 0.2s;
}
.footer-links a:hover {
    color: var(--white);
}
.footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.8rem;
    color: var(--mid);
    flex-wrap: wrap;
    gap: 12px;
}
.footer-bottom-links {
    display: flex;
    align-items: center;
    gap: 20px;
}
.footer-bottom-links a {
    color: var(--mid);
    text-decoration: none;
    font-size: 0.8rem;
    transition: color 0.2s;
}
.footer-bottom-links a:hover {
    color: var(--white);
}
.footer-bottom-links a[aria-label] {
    color: var(--mid);
    transition: color 0.2s;
    display: inline-flex;
    align-items: center;
}
.footer-bottom-links a[aria-label]:hover {
    color: var(--white);
}
.footer-version {
    display: inline-block;
    font-size: 0.7rem;
    color: var(--gold);
    font-weight: 600;
    letter-spacing: 0.04em;
    margin-top: 4px;
}
.footer-link-featured {
    color: var(--gold) !important;
    font-weight: 500;
}
.footer-link-featured:hover {
    color: var(--white) !important;
}
.footer-demo-btn {
    display: inline-block;
    margin-top: 16px;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--gold);
    text-decoration: none;
    border-bottom: 1px solid rgba(59, 125, 232, 0.35);
    padding-bottom: 2px;
    transition: border-color 0.2s, color 0.2s;
}
.footer-demo-btn:hover {
    color: var(--white);
    border-color: var(--white);
}

/* ── FOOTER RESPONSIVE ────────────────────────────────────── */
@media (max-width: 900px) {
    .site-header {
        padding: 0 24px;
    }

    footer {
        padding: 48px 24px 32px;
    }

    .footer-top {
        grid-template-columns: 1.4fr 1fr 1fr;
        gap: 32px;
    }

    .footer-top .footer-brand {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: auto 1fr;
        align-items: start;
        gap: 24px;
    }

    .footer-top .footer-brand .footer-logo {
        margin-bottom: 0;
    }
}
@media (max-width: 600px) {
    .site-header {
        padding: 0 16px;
    }

    .header-nav {
        display: none;
    }

    footer {
        padding: 40px 16px 28px;
    }

    .footer-top {
        grid-template-columns: 1fr;
    }
}

/* ── BREADCRUMBS ─────────────────────────────────────────── */
.breadcrumb-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 120px 40px 0;
}
.breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.78rem;
    color: var(--light);
}
.breadcrumb a {
    color: var(--light);
    text-decoration: none;
    transition: color 0.15s;
}
.breadcrumb a:hover {
    color: var(--mid);
}
.breadcrumb span {
    opacity: 0.5;
}

/* ── HERO EYEBROW ────────────────────────────────────────── */
.hero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--gold);
    margin-bottom: 24px;
}
.hero-eyebrow::before {
    content: '';
    width: 20px;
    height: 2px;
    background: var(--gold);
    display: inline-block;
}

/* ── SECTION LABEL ───────────────────────────────────────── */
.section-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--gold);
    margin-bottom: 16px;
}
.section-label::before {
    content: '';
    width: 16px;
    height: 2px;
    background: var(--gold);
}

/* ── PAGE HERO ───────────────────────────────────────────── */
.page-hero {
    padding: 24px 40px 48px;
    max-width: 1100px;
    margin: 0 auto;
}
.page-hero h1 {
    font-family: var(--serif);
    font-size: clamp(2rem, 3.5vw, 2.8rem);
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.03em;
    line-height: 1.12;
    margin-bottom: 16px;
    text-align: center;
}
.page-hero h1 em {
    font-style: italic;
    color: var(--blue);
}
.page-hero p,
.page-hero .hero-sub,
.page-hero .intro {
    font-size: 1rem;
    color: var(--mid);
    max-width: 560px;
    line-height: 1.7;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

/* ── BUTTONS ─────────────────────────────────────────────── */
.btn-primary {
    background: var(--ink);
    color: var(--white);
    font-family: var(--sans);
    font-weight: 600;
    font-size: 1rem;
    padding: 16px 36px;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: background 0.2s, transform 0.15s, box-shadow 0.2s;
    box-shadow: 0 4px 20px rgba(30, 45, 77, 0.18);
}
.btn-primary:hover {
    background: var(--ink2);
    transform: translateY(-2px);
    box-shadow: 0 8px 28px rgba(30, 45, 77, 0.22);
}
.btn-primary i[data-lucide] {
    transition: transform 0.2s;
}
.btn-primary:hover i[data-lucide] {
    transform: translateX(4px);
}

.btn-secondary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--ink);
    font-family: var(--serif);
    font-weight: 600;
    font-size: 0.95rem;
    padding: 14px 28px;
    border-radius: 8px;
    text-decoration: none;
    border: 1.5px solid rgba(30, 45, 77, 0.2);
    background: transparent;
    transition: border-color 0.2s, background 0.2s, color 0.15s;
}
.btn-secondary:hover {
    border-color: var(--ink);
    background: var(--pale);
}

/* ── BOTTOM CTA BAND ─────────────────────────────────────── */
.bottom-cta {
    background: var(--ink2);
    padding: 72px 40px;
    text-align: center;
}
.bottom-cta h2 {
    font-family: var(--serif);
    font-size: clamp(1.8rem, 3vw, 2.4rem);
    font-weight: 800;
    color: var(--white);
    letter-spacing: -0.03em;
    line-height: 1.15;
    margin-bottom: 12px;
}
.bottom-cta p {
    font-size: 0.94rem;
    color: rgba(255, 255, 255, 0.45);
    margin-bottom: 28px;
    line-height: 1.7;
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
}
.cta-btns {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

/* ── FAQ ACCORDION ───────────────────────────────────────── */
.faq-item {
    background: var(--white);
    padding: 28px 32px;
    cursor: pointer;
    transition: background 0.15s;
}
.faq-item:hover {
    background: var(--pale);
}
.faq-item.open {
    background: var(--pale);
}
.faq-q {
    font-weight: 600;
    font-size: 0.95rem;
    color: var(--ink);
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    line-height: 1.4;
    transition: color 0.15s;
}
.faq-item.open .faq-q {
    color: var(--blue);
}
.faq-toggle {
    width: 24px;
    height: 24px;
    background: var(--pale);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    flex-shrink: 0;
    color: var(--ink);
    transition: background 0.15s, transform 0.2s;
}
.faq-item.open .faq-toggle {
    background: var(--blue);
    color: var(--white);
    transform: rotate(45deg);
}
.faq-a {
    font-size: 0.875rem;
    color: var(--mid);
    line-height: 1.65;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, padding 0.3s ease;
}
.faq-item.open .faq-a {
    max-height: 1200px;
    padding-top: 16px;
}

/* ── SHARED RESPONSIVE ───────────────────────────────────── */
@media (max-width: 900px) {
    .breadcrumb-wrap {
        padding-left: 24px;
        padding-right: 24px;
    }

    .page-hero {
        padding-left: 24px;
        padding-right: 24px;
    }

    .bottom-cta {
        padding-left: 24px;
        padding-right: 24px;
    }
}
@media (max-width: 560px) {
    .breadcrumb-wrap {
        padding-left: 20px;
        padding-right: 20px;
    }

    .page-hero {
        padding-left: 20px;
        padding-right: 20px;
    }

    .bottom-cta {
        padding-left: 20px;
        padding-right: 20px;
    }

    .faq-item {
        padding: 20px 20px;
    }
}

/* ── PAGE: about ──────────────────────────── */
body.p-about .hero {
    padding: 24px 40px 80px;
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 80px;
    align-items: center;
}

body.p-about .hero h1 {
    font-family: var(--serif);
    font-size: clamp(2rem, 3.5vw, 2.8rem);
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.03em;
    line-height: 1.12;
    margin-bottom: 20px;
    text-align: center;
}
body.p-about .hero h1 .accent {
    color: var(--blue);
}
body.p-about .hero-sub {
    font-size: 1rem;
    color: var(--mid);
    line-height: 1.75;
    text-align: center;
}
body.p-about .entity-desc {
    font-size: 0.8rem;
    color: var(--light);
    line-height: 1.7;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid rgba(30, 45, 77, 0.08);
}
body.p-about .hero-stats {
    display: flex;
    flex-direction: column;
    gap: 0;
}
body.p-about .stat-item {
    padding: 24px 28px;
    border-bottom: 1px solid rgba(30, 45, 77, 0.07);
}
body.p-about .stat-item:first-child {
    background: var(--ink);
    border-radius: 12px 12px 0 0;
    padding: 28px;
}
body.p-about .stat-item:last-child {
    border-bottom: none;
    border-radius: 0 0 12px 12px;
    border: 1px solid rgba(30, 45, 77, 0.08);
    border-top: none;
}
body.p-about .stat-item:not(:first-child) {
    border-left: 1px solid rgba(30, 45, 77, 0.08);
    border-right: 1px solid rgba(30, 45, 77, 0.08);
}
body.p-about .stat-num {
    font-family: var(--serif);
    font-size: 2.6rem;
    font-weight: 800;
    letter-spacing: -0.04em;
    line-height: 1;
    margin-bottom: 6px;
}
body.p-about .stat-item:first-child .stat-num {
    color: var(--white);
}
body.p-about .stat-item:first-child .stat-label {
    color: rgba(255, 255, 255, 0.55);
}
body.p-about .stat-item:not(:first-child) .stat-num {
    color: var(--ink);
}
body.p-about .stat-label {
    font-size: 0.8rem;
    color: var(--mid);
    line-height: 1.4;
}

body.p-about .story-section {
    background: var(--bg);
    border-top: 1px solid rgba(30, 45, 77, 0.06);
    border-bottom: 1px solid rgba(30, 45, 77, 0.06);
    padding: 80px 40px;
}
body.p-about .story-inner {
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 80px;
    align-items: start;
}
body.p-about .story-label {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
}
body.p-about .story-label::before {
    content: '';
    width: 16px;
    height: 2px;
    background: var(--blue);
}
body.p-about .story-nav {
    display: flex;
    flex-direction: column;
    gap: 0;
    position: sticky;
    top: 88px;
}
body.p-about .story-nav-item {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--light);
    padding: 12px 0;
    border-left: 2px solid rgba(30, 45, 77, 0.08);
    padding-left: 16px;
    cursor: pointer;
    transition: color 0.15s, border-color 0.15s;
    text-decoration: none;
    display: block;
}
body.p-about .story-nav-item:hover, body.p-about .story-nav-item.active {
    color: var(--ink);
    border-left-color: var(--blue);
}
body.p-about .story-content {
    display: flex;
    flex-direction: column;
    gap: 56px;
}
body.p-about .story-block h2 {
    font-family: var(--serif);
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.02em;
    line-height: 1.2;
    margin-bottom: 16px;
}
body.p-about .story-block p {
    font-size: 0.95rem;
    color: var(--mid);
    line-height: 1.8;
    margin-bottom: 14px;
}
body.p-about .story-block p:last-child {
    margin-bottom: 0;
}
body.p-about .story-block strong {
    color: var(--ink);
    font-weight: 600;
}
body.p-about .timeline {
    margin-top: 8px;
    display: flex;
    flex-direction: column;
    gap: 0;
}
body.p-about .tl-item {
    display: flex;
    gap: 20px;
    padding-bottom: 28px;
    position: relative;
}
body.p-about .tl-item:last-child {
    padding-bottom: 0;
}
body.p-about .tl-item:last-child .tl-line {
    display: none;
}
body.p-about .tl-left {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
    width: 48px;
}
body.p-about .tl-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--blue);
    border: 2px solid var(--white);
    box-shadow: 0 0 0 2px var(--blue);
    flex-shrink: 0;
    margin-top: 4px;
}
body.p-about .tl-line {
    flex: 1;
    width: 1.5px;
    background: rgba(30, 45, 77, 0.1);
    margin-top: 6px;
}
body.p-about .tl-year {
    font-family: var(--serif);
    font-size: 0.78rem;
    font-weight: 800;
    color: var(--light);
    margin-top: 2px;
    letter-spacing: 0.02em;
}
body.p-about .tl-text h4 {
    font-family: var(--serif);
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 4px;
    letter-spacing: -0.01em;
}
body.p-about .tl-text p {
    font-size: 0.8rem;
    color: var(--mid);
    line-height: 1.6;
}

body.p-about .principles-section {
    max-width: 1100px;
    margin: 0 auto;
    padding: 80px 40px;
}
body.p-about .principles-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-top: 48px;
}
body.p-about .principle-card {
    background: var(--white);
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    border-radius: 14px;
    padding: 28px;
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
}
body.p-about .principle-card:hover {
    border-color: rgba(59, 125, 232, 0.25);
    box-shadow: 0 6px 28px rgba(30, 45, 77, 0.07);
    transform: translateY(-2px);
}
body.p-about .principle-num {
    font-family: var(--serif);
    font-size: 2rem;
    font-weight: 800;
    color: var(--pale);
    letter-spacing: -0.04em;
    line-height: 1;
    margin-bottom: 16px;
}
body.p-about .principle-card h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 800;
    color: var(--ink);
    margin-bottom: 10px;
    letter-spacing: -0.01em;
}
body.p-about .principle-card p {
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.65;
}

body.p-about .explore-section {
    background: var(--bg);
    border-top: 1px solid rgba(30, 45, 77, 0.06);
    border-bottom: 1px solid rgba(30, 45, 77, 0.06);
    padding: 64px 40px;
}
body.p-about .explore-inner {
    max-width: 1100px;
    margin: 0 auto;
}
body.p-about .explore-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 40px;
}
body.p-about .explore-card {
    background: var(--white);
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    border-radius: 12px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    text-decoration: none;
    color: inherit;
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
}
body.p-about .explore-card:hover {
    border-color: rgba(59, 125, 232, 0.3);
    box-shadow: 0 4px 20px rgba(30, 45, 77, 0.07);
    transform: translateY(-2px);
}
body.p-about .explore-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--pale);
    border: 1px solid rgba(59, 125, 232, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--blue);
}
body.p-about .explore-card h3 {
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.01em;
    line-height: 1.25;
}
body.p-about .explore-card p {
    font-size: 0.78rem;
    color: var(--mid);
    line-height: 1.6;
    flex: 1;
}
body.p-about .explore-arrow {
    font-size: 0.78rem;
    color: var(--blue);
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 4px;
    margin-top: auto;
}
body.p-about .explore-arrow i[data-lucide] {
    transition: transform 0.2s;
}
body.p-about .explore-card:hover .explore-arrow i[data-lucide] {
    transform: translateX(4px);
}

body.p-about .consulting-section {
    max-width: 1100px;
    margin: 0 auto;
    padding: 80px 40px;
    display: grid;
    grid-template-columns: 1fr 440px;
    gap: 72px;
    align-items: start;
}

body.p-about .consulting-text h2 {
    font-family: var(--serif);
    font-size: clamp(1.6rem, 2.8vw, 2.2rem);
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.03em;
    line-height: 1.15;
    margin-bottom: 20px;
}
body.p-about .consulting-text p {
    font-size: 0.92rem;
    color: var(--mid);
    line-height: 1.75;
    margin-bottom: 14px;
}
body.p-about .consulting-text strong {
    color: var(--ink);
    font-weight: 600;
}
body.p-about .consulting-points {
    margin-top: 28px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
body.p-about .consulting-point {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}
body.p-about .cp-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--blue);
    flex-shrink: 0;
    margin-top: 7px;
}
body.p-about .cp-text {
    font-size: 0.85rem;
    color: var(--mid);
    line-height: 1.6;
}
body.p-about .cp-text strong {
    color: var(--ink);
    font-weight: 600;
}
body.p-about .consulting-form-card {
    background: var(--white);
    border: 1.5px solid rgba(30, 45, 77, 0.09);
    border-radius: 16px;
    padding: 36px 32px;
    box-shadow: 0 4px 32px rgba(30, 45, 77, 0.07);
    position: sticky;
    top: 88px;
}
body.p-about .consulting-form-card h3 {
    font-family: var(--serif);
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.02em;
    margin-bottom: 6px;
}
body.p-about .form-sub {
    font-size: 0.8rem;
    color: var(--mid);
    margin-bottom: 24px;
    line-height: 1.5;
}
body.p-about .field {
    margin-bottom: 16px;
}
body.p-about .field label {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--mid);
    margin-bottom: 5px;
}
body.p-about .field label .req {
    color: var(--blue);
}
body.p-about .field input, body.p-about .field textarea, body.p-about .field select {
    width: 100%;
    padding: 10px 13px;
    font-family: var(--sans);
    font-size: 0.875rem;
    color: var(--ink);
    background: var(--bg);
    border: 1.5px solid rgba(30, 45, 77, 0.12);
    border-radius: 7px;
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
    appearance: none;
}
body.p-about .field input::placeholder, body.p-about .field textarea::placeholder {
    color: var(--light);
}
body.p-about .field input:focus, body.p-about .field textarea:focus, body.p-about .field select:focus {
    border-color: var(--blue);
    box-shadow: 0 0 0 3px rgba(59, 125, 232, 0.1);
    background: var(--white);
}
body.p-about .field textarea {
    resize: vertical;
    min-height: 100px;
    line-height: 1.55;
}
body.p-about .select-wrap {
    position: relative;
}
body.p-about .select-wrap::after {
    content: '';
    position: absolute;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid var(--light);
    pointer-events: none;
}
body.p-about .select-wrap select {
    padding-right: 34px;
    cursor: pointer;
}
body.p-about .field-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
body.p-about .form-submit {
    width: 100%;
    background: var(--ink);
    color: var(--white);
    font-family: var(--serif);
    font-weight: 700;
    font-size: 0.92rem;
    padding: 13px 20px;
    border-radius: 7px;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: background 0.2s, transform 0.15s;
    margin-top: 4px;
}
body.p-about .form-submit:hover {
    background: var(--blue);
    transform: translateY(-1px);
}
body.p-about .form-note {
    font-size: 0.7rem;
    color: var(--light);
    text-align: center;
    margin-top: 10px;
    line-height: 1.5;
}
body.p-about .form-note a {
    color: var(--light);
    text-decoration: underline;
}
body.p-about .form-success {
    display: none;
    text-align: center;
    padding: 32px 16px;
}
body.p-about .success-icon {
    width: 52px;
    height: 52px;
    background: var(--pale);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    color: var(--blue);
}
body.p-about .form-success h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 800;
    color: var(--ink);
    margin-bottom: 8px;
}
body.p-about .form-success p {
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.6;
}

body.p-about .btn-cta-primary {
    background: var(--blue);
    color: var(--white);
    font-family: var(--sans);
    font-weight: 700;
    font-size: 0.9rem;
    padding: 13px 28px;
    border-radius: 8px;
    text-decoration: none;
    transition: background 0.15s, transform 0.15s;
    display: inline-flex;
    align-items: center;
    gap: 7px;
}
body.p-about .btn-cta-primary:hover {
    background: var(--blue2);
    transform: translateY(-1px);
}
body.p-about .btn-cta-ghost {
    background: transparent;
    color: rgba(255, 255, 255, 0.6);
    font-family: var(--sans);
    font-weight: 600;
    font-size: 0.9rem;
    padding: 13px 28px;
    border-radius: 8px;
    text-decoration: none;
    border: 1.5px solid rgba(255, 255, 255, 0.2);
    transition: all 0.15s;
}
body.p-about .btn-cta-ghost:hover {
    border-color: rgba(255, 255, 255, 0.45);
    color: var(--white);
}

@media (max-width: 960px) {
    body.p-about .hero {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    body.p-about .hero-stats {
        flex-direction: row;
    }

    body.p-about .stat-item {
        flex: 1;
    }

    body.p-about .story-inner {
        grid-template-columns: 1fr;
    }

    body.p-about .story-nav {
        display: none;
    }

    body.p-about .principles-grid {
        grid-template-columns: 1fr 1fr;
    }

    body.p-about .explore-grid {
        grid-template-columns: 1fr 1fr;
    }

    body.p-about .consulting-section {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    body.p-about .consulting-form-card {
        position: static;
    }
}
@media (max-width: 560px) {
    body.p-about .hero, body.p-about .story-section, body.p-about .principles-section, body.p-about .explore-section, body.p-about .consulting-section {
        padding-left: 20px;
        padding-right: 20px;
    }

    body.p-about .principles-grid, body.p-about .explore-grid {
        grid-template-columns: 1fr;
    }

    body.p-about .field-row {
        grid-template-columns: 1fr;
    }

    body.p-about .hero-stats {
        flex-direction: column;
    }
}

/* ── PAGE: articles ──────────────────────────── */
/* ── PAGE HERO ── */

/* ── FEATURED ARTICLE ── */
body.p-articles .featured-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 40px 56px;
}
body.p-articles .featured-article {
    display: grid;
    grid-template-columns: 1fr 420px;
    gap: 0;
    border-radius: 16px;
    overflow: hidden;
    border: 1.5px solid rgba(30, 45, 77, 0.09);
    box-shadow: 0 4px 32px rgba(30, 45, 77, 0.07);
    text-decoration: none;
    color: inherit;
    transition: box-shadow 0.2s, transform 0.15s;
}
body.p-articles .featured-article:hover {
    box-shadow: 0 8px 48px rgba(30, 45, 77, 0.12);
    transform: translateY(-2px);
}
body.p-articles .featured-img {
    background: linear-gradient(135deg, var(--ink) 0%, #2a4a8f 60%, var(--blue) 100%);
    min-height: 320px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    padding: 32px;
}
body.p-articles .featured-img::before {
    content: '';
    position: absolute;
    inset: 0;
    background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
body.p-articles .featured-badge {
    position: absolute;
    top: 24px;
    left: 24px;
    background: var(--blue);
    color: white;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 4px;
}
body.p-articles .featured-img-label {
    position: relative;
    z-index: 1;
}
body.p-articles .featured-category-tag {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.6);
    margin-bottom: 8px;
}
body.p-articles .featured-img-title {
    font-family: var(--serif);
    font-size: 1.5rem;
    font-weight: 800;
    color: white;
    letter-spacing: -0.02em;
    line-height: 1.2;
}

body.p-articles .featured-body {
    padding: 36px 40px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: var(--white);
}
body.p-articles .featured-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}
body.p-articles .article-cat {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--blue);
    background: var(--pale);
    padding: 3px 9px;
    border-radius: 4px;
}
body.p-articles .article-read-time {
    font-size: 0.75rem;
    color: var(--light);
}
body.p-articles .featured-body h2 {
    font-family: var(--serif);
    font-size: 1.3rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.02em;
    line-height: 1.25;
    margin-bottom: 12px;
}
body.p-articles .featured-body p {
    font-size: 0.87rem;
    color: var(--mid);
    line-height: 1.7;
    margin-bottom: 24px;
    flex: 1;
}
body.p-articles .read-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: var(--serif);
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--blue);
    text-decoration: none;
    transition: gap 0.2s;
}
body.p-articles .featured-article:hover .read-link {
    gap: 10px;
}
body.p-articles .read-link svg {
    transition: transform 0.2s;
}
body.p-articles .featured-article:hover .read-link svg {
    transform: translateX(4px);
}

/* ── FILTER BAR ── */
body.p-articles .filter-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 40px 32px;
}
body.p-articles .filter-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    border-bottom: 1px solid rgba(30, 45, 77, 0.08);
    padding-bottom: 20px;
}
body.p-articles .filter-label {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--light);
    margin-right: 4px;
}
body.p-articles .filter-btn {
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--mid);
    background: var(--bg);
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    border-radius: 20px;
    padding: 6px 16px;
    cursor: pointer;
    transition: all 0.15s;
    font-family: var(--sans);
}
body.p-articles .filter-btn:hover {
    color: var(--ink);
    border-color: rgba(30, 45, 77, 0.2);
}
body.p-articles .filter-btn.active {
    color: var(--white);
    background: var(--ink);
    border-color: var(--ink);
}

/* ── ARTICLE GRID ── */
body.p-articles .grid-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 40px 80px;
}
body.p-articles .article-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

body.p-articles .article-card {
    background: var(--white);
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    border-radius: 14px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
}
body.p-articles .article-card:hover {
    border-color: rgba(59, 125, 232, 0.25);
    box-shadow: 0 6px 28px rgba(30, 45, 77, 0.08);
    transform: translateY(-2px);
}

body.p-articles .card-img {
    height: 160px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    padding: 16px;
}
body.p-articles .card-img-cat {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.85);
    background: rgba(0, 0, 0, 0.25);
    padding: 3px 8px;
    border-radius: 3px;
    position: relative;
    z-index: 1;
}

body.p-articles .cat-guide {
    background: linear-gradient(135deg, #1e2d4d, #3b7de8);
}
body.p-articles .cat-strategy {
    background: linear-gradient(135deg, #1a3a2a, #057642);
}
body.p-articles .cat-technical {
    background: linear-gradient(135deg, #2d1e4d, #7c3aed);
}
body.p-articles .cat-business {
    background: linear-gradient(135deg, #4d2a1e, #c2410c);
}
body.p-articles .cat-feature {
    background: linear-gradient(135deg, #1e3a4d, #0369a1);
}
body.p-articles .cat-coming {
    background: linear-gradient(135deg, #2d2d2d, #555);
}

body.p-articles .card-body {
    padding: 20px 22px;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
body.p-articles .card-meta {
    display: flex;
    align-items: center;
    gap: 10px;
}
body.p-articles .card-tag {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--blue);
}
body.p-articles .card-time {
    font-size: 0.72rem;
    color: var(--light);
}
body.p-articles .card-title {
    font-family: var(--serif);
    font-size: 0.97rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.02em;
    line-height: 1.3;
    flex: 1;
}
body.p-articles .card-excerpt {
    font-size: 0.78rem;
    color: var(--mid);
    line-height: 1.6;
}
body.p-articles .card-footer {
    padding: 0 22px 20px;
    margin-top: auto;
}
body.p-articles .card-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--blue);
    transition: gap 0.15s;
}
body.p-articles .article-card:hover .card-link {
    gap: 9px;
}

body.p-articles .article-card.coming-soon {
    opacity: 0.65;
    pointer-events: none;
}
body.p-articles .coming-badge {
    display: inline-block;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--light);
    background: var(--bg);
    border: 1px solid rgba(30, 45, 77, 0.1);
    padding: 3px 8px;
    border-radius: 4px;
}

/* ── COMING SOON STRIP ── */
body.p-articles .coming-section {
    background: var(--bg);
    border-top: 1px solid rgba(30, 45, 77, 0.06);
    border-bottom: 1px solid rgba(30, 45, 77, 0.06);
    padding: 56px 40px;
}
body.p-articles .coming-inner {
    max-width: 1100px;
    margin: 0 auto;
}
body.p-articles .coming-header {
    margin-bottom: 32px;
}
body.p-articles .coming-header h2 {
    font-family: var(--serif);
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.02em;
    margin-bottom: 8px;
}
body.p-articles .coming-header p {
    font-size: 0.875rem;
    color: var(--mid);
    line-height: 1.6;
}
body.p-articles .coming-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
body.p-articles .coming-item {
    background: var(--white);
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    border-radius: 10px;
    padding: 16px 20px;
    display: flex;
    align-items: center;
    gap: 16px;
}
body.p-articles .coming-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(30, 45, 77, 0.15);
    flex-shrink: 0;
}
body.p-articles .coming-item-title {
    font-family: var(--serif);
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--mid);
    flex: 1;
    letter-spacing: -0.01em;
}
body.p-articles .coming-item-cat {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--light);
    background: var(--bg);
    padding: 3px 9px;
    border-radius: 4px;
    flex-shrink: 0;
}

@media (max-width: 960px) {
    body.p-articles .featured-article {
        grid-template-columns: 1fr;
    }

    body.p-articles .featured-img {
        min-height: 220px;
    }

    body.p-articles .article-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 600px) {
    body.p-articles .featured-wrap, body.p-articles .filter-wrap, body.p-articles .grid-wrap, body.p-articles .coming-section {
        padding-left: 20px;
        padding-right: 20px;
    }

    body.p-articles .article-grid {
        grid-template-columns: 1fr;
    }
}

/* ── PAGE: clients ──────────────────────────── */
/* ── STATS STRIP ── */
body.p-clients .stats-strip {
    max-width: 1100px;
    margin: 40px auto 0;
    padding: 0 40px;
    display: flex;
    gap: 0;
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    border-radius: 12px;
    overflow: hidden;
}
body.p-clients .stat {
    flex: 1;
    padding: 20px 24px;
    border-right: 1px solid rgba(30, 45, 77, 0.08);
}
body.p-clients .stat:last-child {
    border-right: none;
}
body.p-clients .stat-num {
    font-family: var(--serif);
    font-size: 1.6rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.03em;
    line-height: 1;
    margin-bottom: 3px;
}
body.p-clients .stat-label {
    font-size: 0.72rem;
    color: var(--mid);
}

/* ── FILTER BAR ── */
body.p-clients .filter-wrap {
    max-width: 1100px;
    margin: 48px auto 0;
    padding: 0 40px;
}
body.p-clients .filter-bar {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
body.p-clients .filter-btn {
    font-family: var(--sans);
    font-size: 0.78rem;
    font-weight: 600;
    padding: 7px 16px;
    border-radius: 20px;
    border: 1.5px solid rgba(30, 45, 77, 0.12);
    background: transparent;
    color: var(--mid);
    cursor: pointer;
    transition: all 0.15s;
}
body.p-clients .filter-btn:hover {
    border-color: var(--blue);
    color: var(--blue);
}
body.p-clients .filter-btn.active {
    background: var(--ink);
    border-color: var(--ink);
    color: var(--white);
}

/* ── CLIENTS GRID ── */
body.p-clients .clients-wrap {
    max-width: 1100px;
    margin: 32px auto 0;
    padding: 0 40px;
}
body.p-clients .clients-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

body.p-clients .client-card {
    border: 1.5px solid rgba(30, 45, 77, 0.09);
    border-radius: 14px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
    background: var(--white);
}
body.p-clients .client-card:hover {
    border-color: rgba(59, 125, 232, 0.3);
    box-shadow: 0 6px 28px rgba(30, 45, 77, 0.08);
    transform: translateY(-2px);
}
body.p-clients .client-card.hidden {
    display: none;
}

body.p-clients .client-thumb {
    height: 148px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    flex-shrink: 0;
}
body.p-clients .client-thumb-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    height: 100%;
}
body.p-clients .client-initial {
    font-family: var(--serif);
    font-size: 2rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.03em;
}
body.p-clients .client-thumb-domain {
    font-size: 0.65rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    opacity: 0.5;
}
body.p-clients .thumb-auction {
    background: linear-gradient(135deg, #e8f0fc 0%, #d4e4fa 100%);
}
body.p-clients .thumb-auction .client-initial {
    color: #1a3a7a;
}
body.p-clients .thumb-auction .client-thumb-domain {
    color: #1a3a7a;
}
body.p-clients .thumb-charity {
    background: linear-gradient(135deg, #e6f5ed 0%, #c8ecd8 100%);
}
body.p-clients .thumb-charity .client-initial {
    color: #1a5c38;
}
body.p-clients .thumb-charity .client-thumb-domain {
    color: #1a5c38;
}
body.p-clients .thumb-niche {
    background: linear-gradient(135deg, #fdf5e8 0%, #fae8cc 100%);
}
body.p-clients .thumb-niche .client-initial {
    color: #7a4a00;
}
body.p-clients .thumb-niche .client-thumb-domain {
    color: #7a4a00;
}
body.p-clients .thumb-marketplace {
    background: linear-gradient(135deg, #f5e8fc 0%, #e8cef5 100%);
}
body.p-clients .thumb-marketplace .client-initial {
    color: #5a1a6e;
}
body.p-clients .thumb-marketplace .client-thumb-domain {
    color: #5a1a6e;
}
body.p-clients .thumb-events {
    background: linear-gradient(135deg, #f0fce8 0%, #d8f5c0 100%);
}
body.p-clients .thumb-events .client-initial {
    color: #2a5a10;
}
body.p-clients .thumb-events .client-thumb-domain {
    color: #2a5a10;
}
body.p-clients .thumb-mobile {
    background: linear-gradient(135deg, #e8f8fc 0%, #c8edf5 100%);
}
body.p-clients .thumb-mobile .client-initial {
    color: #0a4a5a;
}
body.p-clients .thumb-mobile .client-thumb-domain {
    color: #0a4a5a;
}

body.p-clients .client-body {
    padding: 20px 22px;
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 10px;
}
body.p-clients .client-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}
body.p-clients .client-name {
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--ink);
    line-height: 1.3;
}
body.p-clients .client-cat {
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    padding: 3px 8px;
    border-radius: 4px;
    white-space: nowrap;
    flex-shrink: 0;
}
body.p-clients .cat-auction {
    background: var(--pale);
    color: #1a3a7a;
    border: 1px solid rgba(59, 125, 232, 0.2);
}
body.p-clients .cat-charity {
    background: #e6f5ed;
    color: #1a5c38;
    border: 1px solid #a8d9bc;
}
body.p-clients .cat-niche {
    background: #fff3e0;
    color: #7a4a00;
    border: 1px solid #ffc57d;
}
body.p-clients .cat-marketplace {
    background: #f5e8fc;
    color: #5a1a6e;
    border: 1px solid #c990f5;
}
body.p-clients .cat-events {
    background: #f0fce8;
    color: #2a5a10;
    border: 1px solid #a0d870;
}
body.p-clients .cat-mobile {
    background: #e8f8fc;
    color: #0a4a5a;
    border: 1px solid #70c8d8;
}
body.p-clients .client-desc {
    font-size: 0.8rem;
    color: var(--mid);
    line-height: 1.6;
    flex: 1;
}
body.p-clients .client-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 10px;
    border-top: 1px solid var(--pale);
    margin-top: auto;
}
body.p-clients .client-location {
    font-size: 0.7rem;
    color: var(--light);
    display: flex;
    align-items: center;
    gap: 4px;
}
body.p-clients .client-link {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--blue);
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 4px;
    transition: color 0.15s;
}
body.p-clients .client-link:hover {
    color: var(--ink);
}
body.p-clients .client-link i[data-lucide] {
    transition: transform 0.15s;
}
body.p-clients .client-link:hover i[data-lucide] {
    transform: translate(1px, -1px);
}
body.p-clients .client-no-link {
    font-size: 0.72rem;
    color: var(--light);
    font-style: italic;
}

/* ── TESTIMONIALS ── */
body.p-clients .testimonials {
    max-width: 1100px;
    margin: 56px auto 0;
    padding: 0 40px;
}
body.p-clients .testimonials-label {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 20px;
}
body.p-clients .testimonials-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
body.p-clients .testimonial-card {
    background: var(--bg);
    border: 1px solid rgba(30, 45, 77, 0.07);
    border-radius: 12px;
    padding: 24px 26px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
body.p-clients .testimonial-quote {
    font-size: 0.85rem;
    color: var(--ink);
    line-height: 1.7;
    font-style: italic;
}
body.p-clients .testimonial-quote::before {
    content: '\201C';
}
body.p-clients .testimonial-quote::after {
    content: '\201D';
}
body.p-clients .testimonial-attr {
    font-size: 0.72rem;
    color: var(--light);
}

/* ── CTA BANNER ── */
body.p-clients .cta-banner {
    max-width: 1100px;
    margin: 56px auto 80px;
    padding: 0 40px;
}
body.p-clients .cta-inner {
    background: var(--bg);
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    border-radius: 14px;
    padding: 40px 44px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
}
body.p-clients .cta-text h3 {
    font-family: var(--serif);
    font-size: 1.3rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.02em;
    margin-bottom: 8px;
}
body.p-clients .cta-text p {
    font-size: 0.88rem;
    color: var(--mid);
    line-height: 1.6;
    max-width: 480px;
}

/* ── RESPONSIVE ── */
@media (max-width: 900px) {
    body.p-clients .clients-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    body.p-clients .testimonials-grid {
        grid-template-columns: 1fr;
    }

    body.p-clients .stats-strip {
        flex-wrap: wrap;
    }

    body.p-clients .cta-inner {
        flex-direction: column;
    }
}
@media (max-width: 600px) {
    body.p-clients .stats-strip, body.p-clients .filter-wrap, body.p-clients .clients-wrap, body.p-clients .testimonials, body.p-clients .cta-banner {
        padding-left: 20px;
        padding-right: 20px;
    }

    body.p-clients .clients-grid {
        grid-template-columns: 1fr;
    }
}

/* ── PAGE: contact ──────────────────────────── */
/* ── TWO-COLUMN LAYOUT ── */
body.p-contact .page-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 40px 80px;
    display: grid;
    grid-template-columns: 1fr 440px;
    gap: 72px;
    align-items: start;
}

/* ── CONTACT REASON CARDS ── */
body.p-contact .reason-cards {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 44px;
}

body.p-contact .reason-card {
    background: var(--bg);
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    border-radius: 12px;
    padding: 20px 22px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    transition: border-color 0.2s, background 0.2s, transform 0.15s;
    cursor: pointer;
}
body.p-contact .reason-card:hover {
    border-color: rgba(59, 125, 232, 0.3);
    background: var(--pale);
    transform: translateY(-1px);
}
body.p-contact .reason-card.selected {
    border-color: var(--blue);
    background: var(--pale);
}

body.p-contact .reason-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--white);
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background 0.2s, border-color 0.2s;
}
body.p-contact .reason-card.selected .reason-icon {
    background: var(--blue);
    border-color: var(--blue);
}
body.p-contact .reason-icon i[data-lucide] {
    color: var(--blue);
    transition: color 0.2s;
}
body.p-contact .reason-card.selected .reason-icon i[data-lucide] {
    color: var(--white);
}

body.p-contact .reason-title {
    font-family: var(--serif);
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 3px;
    line-height: 1.3;
}
body.p-contact .reason-desc {
    font-size: 0.78rem;
    color: var(--mid);
    line-height: 1.5;
}

/* ── RESPONSE PROMISE ── */
body.p-contact .response-promise {
    background: var(--bg);
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    border-radius: 12px;
    padding: 20px 22px;
    display: flex;
    gap: 14px;
    align-items: center;
}
body.p-contact .promise-icon {
    width: 38px;
    height: 38px;
    border-radius: 9px;
    background: var(--pale);
    border: 1.5px solid rgba(59, 125, 232, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
body.p-contact .promise-icon i[data-lucide] {
    color: var(--blue);
}
body.p-contact .promise-title {
    font-family: var(--serif);
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 2px;
}
body.p-contact .promise-sub {
    font-size: 0.76rem;
    color: var(--mid);
    line-height: 1.5;
}

/* ── QUICK LINKS ── */
body.p-contact .quick-links {
    margin-top: 40px;
    padding-top: 32px;
    border-top: 1px solid rgba(30, 45, 77, 0.07);
}
body.p-contact .quick-links-label {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 14px;
}
body.p-contact .quick-link-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
body.p-contact .quick-link {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.82rem;
    color: var(--mid);
    text-decoration: none;
    padding: 8px 12px;
    border-radius: 8px;
    transition: color 0.15s, background 0.15s;
}
body.p-contact .quick-link:hover {
    color: var(--ink);
    background: var(--bg);
}
body.p-contact .quick-link i[data-lucide] {
    color: var(--blue);
    flex-shrink: 0;
}
body.p-contact .quick-link-arrow {
    margin-left: auto;
    transition: transform 0.15s;
}
body.p-contact .quick-link-arrow i[data-lucide] {
    color: var(--light);
}
body.p-contact .quick-link:hover .quick-link-arrow i[data-lucide] {
    color: var(--blue);
}
body.p-contact .quick-link:hover .quick-link-arrow {
    transform: translateX(3px);
}

/* ── RIGHT COLUMN — FORM ── */
body.p-contact .form-col {
    position: sticky;
    top: 88px;
}

body.p-contact .form-card {
    background: var(--white);
    border: 1.5px solid rgba(30, 45, 77, 0.09);
    border-radius: 16px;
    padding: 36px 32px;
    box-shadow: 0 4px 32px rgba(30, 45, 77, 0.07);
}

body.p-contact .form-card h2 {
    font-family: var(--serif);
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.02em;
    margin-bottom: 6px;
}
body.p-contact .form-card .form-sub {
    font-size: 0.8rem;
    color: var(--mid);
    margin-bottom: 28px;
    line-height: 1.5;
}

body.p-contact .form-context {
    background: var(--pale);
    border: 1px solid rgba(59, 125, 232, 0.2);
    border-radius: 8px;
    padding: 10px 14px;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
    font-size: 0.78rem;
    color: var(--blue);
    font-weight: 600;
    transition: opacity 0.2s;
}
body.p-contact .form-context svg {
    flex-shrink: 0;
}
body.p-contact .form-context span {
    flex: 1;
}

body.p-contact .field {
    margin-bottom: 18px;
}
body.p-contact .field label {
    display: block;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--ink);
    margin-bottom: 6px;
}
body.p-contact .field label .req {
    color: var(--blue);
    margin-left: 2px;
}

body.p-contact .field input, body.p-contact .field textarea, body.p-contact .field select {
    width: 100%;
    padding: 11px 14px;
    font-family: var(--sans);
    font-size: 0.875rem;
    color: var(--ink);
    background: var(--white);
    border: 1.5px solid rgba(30, 45, 77, 0.15);
    border-radius: 8px;
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
    appearance: none;
    -webkit-appearance: none;
}
body.p-contact .field input::placeholder, body.p-contact .field textarea::placeholder {
    color: var(--light);
}
body.p-contact .field input:focus, body.p-contact .field textarea:focus, body.p-contact .field select:focus {
    border-color: var(--blue);
    box-shadow: 0 0 0 3px rgba(59, 125, 232, 0.1);
}
body.p-contact .field textarea {
    resize: vertical;
    min-height: 120px;
    line-height: 1.6;
}

body.p-contact .select-wrap {
    position: relative;
}
body.p-contact .select-wrap::after {
    content: '';
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid var(--light);
    pointer-events: none;
}
body.p-contact .select-wrap select {
    padding-right: 36px;
    cursor: pointer;
}

body.p-contact .field-hint {
    font-size: 0.72rem;
    color: var(--light);
    margin-top: 5px;
    line-height: 1.4;
}
body.p-contact .field-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

body.p-contact .form-submit {
    width: 100%;
    background: var(--ink);
    color: var(--white);
    font-family: var(--serif);
    font-weight: 700;
    font-size: 0.95rem;
    padding: 14px 28px;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: background 0.2s, transform 0.15s;
    margin-top: 8px;
}
body.p-contact .form-submit:hover {
    background: var(--blue);
    transform: translateY(-1px);
}
body.p-contact .form-submit i[data-lucide] {
    transition: transform 0.2s;
}
body.p-contact .form-submit:hover i[data-lucide] {
    transform: translateX(4px);
}

body.p-contact .form-privacy {
    font-size: 0.72rem;
    color: var(--light);
    text-align: center;
    margin-top: 12px;
    line-height: 1.5;
}
body.p-contact .form-privacy a {
    color: var(--light);
    text-decoration: underline;
    transition: color 0.15s;
}
body.p-contact .form-privacy a:hover {
    color: var(--mid);
}

body.p-contact .form-success {
    display: none;
    text-align: center;
    padding: 40px 20px;
}
body.p-contact .success-icon {
    width: 56px;
    height: 56px;
    background: #e6f5ed;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}
body.p-contact .success-icon i[data-lucide] {
    color: #1a5c38;
}
body.p-contact .form-success h3 {
    font-family: var(--serif);
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--ink);
    margin-bottom: 10px;
}
body.p-contact .form-success p {
    font-size: 0.85rem;
    color: var(--mid);
    line-height: 1.65;
}

@media (max-width: 900px) {
    body.p-contact .page-wrap {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    body.p-contact .form-col {
        position: static;
    }
}
@media (max-width: 560px) {
    body.p-contact .page-wrap {
        padding-left: 20px;
        padding-right: 20px;
    }

    body.p-contact .field-row {
        grid-template-columns: 1fr;
    }
}

/* ── PAGE: demo ──────────────────────────── */
/* ── HERO ── */
body.p-demo .hero {
    padding-top: calc(var(--header-h) + 80px);
    padding-bottom: 72px;
    text-align: center;
    max-width: 700px;
    margin: 0 auto;
    padding-left: 32px;
    padding-right: 32px;
}

body.p-demo .hero h1 {
    font-family: var(--serif);
    font-size: clamp(2rem, 5vw, 2.9rem);
    font-weight: 800;
    color: var(--ink2);
    letter-spacing: -0.03em;
    line-height: 1.1;
    margin-bottom: 20px;
}
body.p-demo .hero h1 em {
    font-style: normal;
    color: var(--blue);
}
body.p-demo .hero-sub {
    font-size: 1rem;
    color: var(--mid);
    line-height: 1.7;
    margin-bottom: 40px;
}
body.p-demo .hero-cta {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    background: var(--blue);
    color: var(--white);
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    padding: 15px 34px;
    border-radius: 8px;
    text-decoration: none;
    transition: background 0.15s, transform 0.12s;
    box-shadow: 0 4px 18px rgba(59, 125, 232, 0.28);
    margin-bottom: 12px;
}
body.p-demo .hero-cta:hover {
    background: var(--blue2);
    transform: translateY(-1px);
}
body.p-demo .hero-note {
    display: block;
    font-size: 0.76rem;
    color: var(--light);
}

/* ── ROLE CARDS ── */
body.p-demo .roles {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 32px 72px;
}
body.p-demo .roles-label {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 20px;
}
body.p-demo .roles-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
body.p-demo .role-card {
    background: var(--white);
    border-radius: 12px;
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    padding: 28px;
    position: relative;
    overflow: hidden;
    transition: border-color 0.15s, box-shadow 0.15s;
}
body.p-demo .role-card:hover {
    border-color: rgba(59, 125, 232, 0.3);
    box-shadow: 0 4px 20px rgba(59, 125, 232, 0.08);
}
body.p-demo .role-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--blue);
    border-radius: 12px 12px 0 0;
    opacity: 0.4;
}
body.p-demo .role-card.featured::before {
    opacity: 1;
}
body.p-demo .role-tag {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 12px;
    display: block;
}
body.p-demo .role-card h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    color: var(--ink2);
    letter-spacing: -0.02em;
    margin-bottom: 10px;
}
body.p-demo .role-card p {
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.6;
}
body.p-demo .role-best {
    display: inline-block;
    margin-top: 14px;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--blue);
    background: var(--pale);
    padding: 3px 9px;
    border-radius: 4px;
}

/* ── WHAT TO EXPLORE ── */
body.p-demo .explore {
    background: var(--white);
    border-top: 1px solid rgba(30, 45, 77, 0.07);
    border-bottom: 1px solid rgba(30, 45, 77, 0.07);
    padding: 72px 32px;
}
body.p-demo .explore-inner {
    max-width: 1100px;
    margin: 0 auto;
}
body.p-demo .section-header {
    margin-bottom: 40px;
}

body.p-demo .section-header h2 {
    font-family: var(--serif);
    font-size: 1.6rem;
    font-weight: 800;
    color: var(--ink2);
    letter-spacing: -0.025em;
    margin-bottom: 8px;
}
body.p-demo .section-header p {
    font-size: 0.88rem;
    color: var(--mid);
}
body.p-demo .explore-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
body.p-demo .exp-card {
    border-radius: 12px;
    padding: 28px;
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    background: var(--bg);
}
body.p-demo .exp-card.dark {
    background: var(--ink2);
    border-color: transparent;
    grid-column: span 2;
}
body.p-demo .exp-tag {
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    display: inline-block;
    padding: 3px 9px;
    border-radius: 4px;
    margin-bottom: 14px;
}
body.p-demo .exp-card:not(.dark) .exp-tag {
    background: var(--pale);
    color: var(--blue);
}
body.p-demo .exp-card.dark .exp-tag {
    background: rgba(59, 125, 232, 0.2);
    color: #7fb3ff;
}
body.p-demo .exp-card h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    margin-bottom: 10px;
}
body.p-demo .exp-card:not(.dark) h3 {
    color: var(--ink2);
}
body.p-demo .exp-card.dark h3 {
    color: var(--white);
    font-size: 1.1rem;
}
body.p-demo .exp-card p {
    font-size: 0.82rem;
    line-height: 1.6;
}
body.p-demo .exp-card:not(.dark) p {
    color: var(--mid);
}
body.p-demo .exp-card.dark p {
    color: rgba(255, 255, 255, 0.45);
}
body.p-demo .exp-steps {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 9px;
    margin-top: 16px;
}
body.p-demo .exp-steps li {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    font-size: 0.82rem;
    line-height: 1.5;
}
body.p-demo .exp-card:not(.dark) .exp-steps li {
    color: var(--mid);
}
body.p-demo .exp-card.dark .exp-steps li {
    color: rgba(255, 255, 255, 0.55);
}
body.p-demo .sn {
    width: 19px;
    height: 19px;
    border-radius: 50%;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.58rem;
    font-weight: 800;
    margin-top: 1px;
}
body.p-demo .exp-card:not(.dark) .sn {
    background: var(--pale);
    color: var(--blue);
}
body.p-demo .exp-card.dark .sn {
    background: rgba(59, 125, 232, 0.25);
    color: #7fb3ff;
}
body.p-demo .exp-steps li strong {
    font-weight: 600;
}
body.p-demo .exp-card:not(.dark) .exp-steps li strong {
    color: var(--ink);
}
body.p-demo .exp-card.dark .exp-steps li strong {
    color: rgba(255, 255, 255, 0.85);
}

/* ── PANEL CALLOUT ── */
body.p-demo .panel {
    max-width: 1100px;
    margin: 0 auto;
    padding: 64px 32px;
}
body.p-demo .panel-box {
    background: var(--white);
    border-radius: 14px;
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    padding: 40px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 48px;
    align-items: center;
}
body.p-demo .panel-icon {
    width: 46px;
    height: 46px;
    background: var(--pale);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
}
body.p-demo .panel-icon i[data-lucide] {
    color: var(--blue);
}
body.p-demo .panel-box h3 {
    font-family: var(--serif);
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--ink2);
    letter-spacing: -0.025em;
    margin-bottom: 8px;
}
body.p-demo .panel-box > div > p {
    font-size: 0.85rem;
    color: var(--mid);
    line-height: 1.65;
    max-width: 520px;
}
body.p-demo .panel-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 16px;
}
body.p-demo .panel-list li {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 0.82rem;
    color: var(--mid);
}
body.p-demo .panel-list li::before {
    content: '';
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--blue);
    flex-shrink: 0;
}
body.p-demo .panel-badge {
    background: var(--ink2);
    border-radius: 10px;
    padding: 24px 28px;
    min-width: 210px;
    text-align: center;
    flex-shrink: 0;
}
body.p-demo .panel-badge-label {
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.3);
    margin-bottom: 10px;
}
body.p-demo .panel-badge-text {
    font-family: var(--serif);
    font-size: 0.88rem;
    font-weight: 600;
    color: var(--white);
    line-height: 1.6;
}
body.p-demo .panel-badge-text em {
    font-style: normal;
    color: rgba(255, 255, 255, 0.4);
    font-size: 0.78rem;
    display: block;
    margin-top: 4px;
}

/* ── BOTTOM CTA ── */

body.p-demo .cta-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
}
body.p-demo .btn-light {
    background: var(--blue);
    color: var(--white);
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 700;
    padding: 14px 32px;
    border-radius: 8px;
    text-decoration: none;
    transition: background 0.15s;
    box-shadow: 0 4px 16px rgba(59, 125, 232, 0.3);
}
body.p-demo .btn-light:hover {
    background: var(--blue2);
}
body.p-demo .btn-ghost {
    color: rgba(255, 255, 255, 0.5);
    font-family: var(--serif);
    font-size: 0.88rem;
    font-weight: 600;
    text-decoration: none;
    padding: 14px 22px;
    border-radius: 8px;
    border: 1.5px solid rgba(255, 255, 255, 0.12);
    transition: border-color 0.15s, color 0.15s;
}
body.p-demo .btn-ghost:hover {
    border-color: rgba(255, 255, 255, 0.35);
    color: var(--white);
}

@media (max-width: 800px) {
    body.p-demo .roles-grid {
        grid-template-columns: 1fr;
    }

    body.p-demo .explore-grid {
        grid-template-columns: 1fr;
    }

    body.p-demo .exp-card.dark {
        grid-column: span 1;
    }

    body.p-demo .panel-box {
        grid-template-columns: 1fr;
    }
}

/* ── PAGE: documentation-users--v1 ──────────────────────────── */
/* ── Layout shell ────────────────────────────── */
body.p-documentation-users--v1 .doc-wrap {
    display: flex;
    align-items: flex-start;
    width: 100%;
    min-height: calc(100vh - var(--doc-top));
}

/* ── Guide switcher bar ──────────────────────── */
body.p-documentation-users--v1 .role-bar {
    position: sticky;
    top: var(--doc-top);
    z-index: 90;
    width: 100%;
    background: #fff;
    border-bottom: 1px solid #e4eaf4;
    padding: 0 24px;
    display: flex;
    align-items: center;
    gap: 6px;
    height: var(--role-bar);
}
body.p-documentation-users--v1 .role-bar-label {
    font: 500 12px/1 var(--sans);
    color: #8fa8c8;
    margin-right: 6px;
    text-transform: uppercase;
    letter-spacing: .05em;
}
body.p-documentation-users--v1 .role-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 16px;
    border-radius: 20px;
    font: 500 13px/1 var(--sans);
    color: #5a6a82;
    text-decoration: none;
    border: 1.5px solid transparent;
    transition: all .15s;
}
body.p-documentation-users--v1 .role-pill:hover {
    color: #1e2d4d;
    border-color: #d0daea;
    background: #f4f7fd;
}
body.p-documentation-users--v1 .role-pill.active {
    color: #3b7de8;
    background: #e8f0fc;
    border-color: #c5d8f8;
}
body.p-documentation-users--v1 .role-pill i {
    width: 14px;
    height: 14px;
}
body.p-documentation-users--v1 .sidebar-toggle-btn {
    display: none;
    align-items: center;
    gap: 8px;
    margin-right: 8px;
    padding: 6px 10px;
    font: 500 13px/1 var(--sans);
    color: #5a6a82;
    background: none;
    border: none;
    cursor: pointer;
}
body.p-documentation-users--v1 .sidebar-toggle-btn i {
    width: 16px;
    height: 16px;
}

/* ── Sidebar ─────────────────────────────────── */
body.p-documentation-users--v1 #doc-sidebar {
    width: var(--sidebar-w);
    flex-shrink: 0;
    position: sticky;
    top: calc(var(--doc-top) + var(--role-bar));
    height: calc(100vh - var(--doc-top) - var(--role-bar));
    overflow-y: auto;
    border-right: 1px solid #e4eaf4;
    background: #fafbfd;
    padding: 16px 0 40px;
}
body.p-documentation-users--v1 #doc-sidebar::-webkit-scrollbar {
    width: 3px;
}
body.p-documentation-users--v1 #doc-sidebar::-webkit-scrollbar-thumb {
    background: #d0daea;
    border-radius: 3px;
}

/* Search */
body.p-documentation-users--v1 .doc-search-wrap {
    padding: 0 16px 14px;
    border-bottom: 1px solid #e4eaf4;
    margin-bottom: 10px;
}
body.p-documentation-users--v1 .doc-search-box {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #f0f4fb;
    border: 1px solid #e4eaf4;
    border-radius: 8px;
    padding: 7px 10px;
    transition: border-color .15s;
}
body.p-documentation-users--v1 .doc-search-box:focus-within {
    border-color: #3b7de8;
    background: #fff;
}
body.p-documentation-users--v1 .doc-search-box i {
    width: 14px;
    height: 14px;
    color: #8fa8c8;
    flex-shrink: 0;
}
body.p-documentation-users--v1 .doc-search-box input {
    flex: 1;
    border: none;
    background: none;
    outline: none;
    font: 400 13px/1 var(--sans);
    color: #1e2d4d;
}
body.p-documentation-users--v1 .doc-search-box input::placeholder {
    color: #8fa8c8;
}
body.p-documentation-users--v1 .doc-search-shortcut {
    font: 500 11px/1 var(--sans);
    color: #8fa8c8;
    background: #e4eaf4;
    border-radius: 4px;
    padding: 2px 5px;
    flex-shrink: 0;
}

/* Nav groups */
body.p-documentation-users--v1 .doc-nav-group {
    margin-bottom: 2px;
}
body.p-documentation-users--v1 .doc-nav-group-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 7px 16px;
    font: 600 11px/1 var(--sans);
    letter-spacing: .07em;
    text-transform: uppercase;
    color: #8fa8c8;
    cursor: pointer;
    user-select: none;
    transition: color .15s;
}
body.p-documentation-users--v1 .doc-nav-group-title:hover {
    color: #1e2d4d;
}
body.p-documentation-users--v1 .doc-nav-group-title i {
    width: 13px;
    height: 13px;
    transition: transform .2s;
}
body.p-documentation-users--v1 .doc-nav-group.open .doc-nav-group-title i {
    transform: rotate(90deg);
}
body.p-documentation-users--v1 .doc-nav-items {
    display: none;
    padding-bottom: 4px;
}
body.p-documentation-users--v1 .doc-nav-group.open .doc-nav-items {
    display: block;
}

body.p-documentation-users--v1 .doc-nav-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 6px 16px 6px 24px;
    font: 400 13px/1.4 var(--sans);
    color: #5a6a82;
    text-decoration: none;
    border-left: 2px solid transparent;
    transition: all .15s;
}
body.p-documentation-users--v1 .doc-nav-link:hover {
    color: #1e2d4d;
    background: #f0f4fb;
}
body.p-documentation-users--v1 .doc-nav-link.active {
    color: #3b7de8;
    border-left-color: #3b7de8;
    background: #f0f6ff;
    font-weight: 500;
}

/* Role badge in sidebar */
body.p-documentation-users--v1 .nav-badge {
    font: 600 10px/1 var(--sans);
    letter-spacing: .03em;
    padding: 2px 6px;
    border-radius: 4px;
    flex-shrink: 0;
}
body.p-documentation-users--v1 .nav-badge-seller {
    background: #e8f5ee;
    color: #1a5c38;
}
body.p-documentation-users--v1 .nav-badge-buyer {
    background: #e8f0fc;
    color: #1a4d8f;
}

/* ── Main content ────────────────────────────── */
body.p-documentation-users--v1 .doc-main {
    flex: 1;
    min-width: 0;
    padding: 48px 56px 80px;
}

body.p-documentation-users--v1 .doc-section {
    margin-bottom: 72px;
    scroll-margin-top: calc(var(--doc-top) + var(--role-bar) + 24px);
}
body.p-documentation-users--v1 .doc-section h2 {
    font: 700 24px/1.2 var(--serif);
    color: #1e2d4d;
    margin: 0 0 6px;
    padding-bottom: 14px;
    border-bottom: 1px solid #e4eaf4;
}
body.p-documentation-users--v1 .doc-section h3 {
    font: 600 16px/1.3 var(--serif);
    color: #1e2d4d;
    margin: 32px 0 10px;
}
body.p-documentation-users--v1 .doc-section p {
    font: 400 15px/1.7 var(--sans);
    color: #374151;
    margin: 0 0 14px;
}

/* Numbered steps */
body.p-documentation-users--v1 .doc-steps {
    margin: 14px 0 22px;
    padding: 0;
    list-style: none;
    counter-reset: step;
}
body.p-documentation-users--v1 .doc-steps li {
    display: flex;
    gap: 14px;
    margin-bottom: 12px;
    counter-increment: step;
    font: 400 14.5px/1.6 var(--sans);
    color: #374151;
}
body.p-documentation-users--v1 .doc-steps li::before {
    content: counter(step);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #e8f0fc;
    color: #3b7de8;
    font: 600 11px/1 var(--sans);
    margin-top: 3px;
}

/* Screenshot */
body.p-documentation-users--v1 .doc-screenshot {
    margin: 18px 0 28px;
    border-radius: 10px;
    border: 1px solid #e4eaf4;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(30, 45, 77, .07);
    display: inline-block;
    max-width: 100%;
}
body.p-documentation-users--v1 .doc-screenshot img {
    display: block;
    width: 720px;
    max-width: 100%;
    height: auto;
}
body.p-documentation-users--v1 .doc-screenshot-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 720px;
    max-width: 100%;
    height: 200px;
    background: #f4f7fd;
    color: #8fa8c8;
    font: 500 13px/1 var(--sans);
}
body.p-documentation-users--v1 .doc-screenshot-placeholder i {
    width: 18px;
    height: 18px;
}

/* ── Callout boxes (4 variants) ──────────────── */
body.p-documentation-users--v1 .callout {
    display: flex;
    gap: 12px;
    border-radius: 0 8px 8px 0;
    border-left: 3px solid;
    padding: 13px 16px;
    margin: 18px 0;
    font: 400 14px/1.6 var(--sans);
}
body.p-documentation-users--v1 .callout i {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    margin-top: 2px;
}
body.p-documentation-users--v1 .callout-info {
    background: #f0f6ff;
    border-color: #3b7de8;
    color: #1e2d4d;
}
body.p-documentation-users--v1 .callout-info i {
    color: #3b7de8;
}
body.p-documentation-users--v1 .callout-warn {
    background: #fdf8ed;
    border-color: #c8962a;
    color: #5a3e00;
}
body.p-documentation-users--v1 .callout-warn i {
    color: #c8962a;
}
body.p-documentation-users--v1 .callout-danger {
    background: #fdf0f0;
    border-color: #c82a2a;
    color: #5a0000;
}
body.p-documentation-users--v1 .callout-danger i {
    color: #c82a2a;
}
body.p-documentation-users--v1 .callout-success {
    background: #edfaf3;
    border-color: #1a5c38;
    color: #0a2e1a;
}
body.p-documentation-users--v1 .callout-success i {
    color: #1a5c38;
}

/* ── Badges ──────────────────────────────────── */
body.p-documentation-users--v1 .badge {
    display: inline-flex;
    align-items: center;
    font: 600 11px/1 var(--sans);
    letter-spacing: .03em;
    padding: 3px 8px;
    border-radius: 4px;
    vertical-align: middle;
    margin-left: 6px;
}
body.p-documentation-users--v1 .badge-seller {
    background: #e8f5ee;
    color: #1a5c38;
}
body.p-documentation-users--v1 .badge-buyer {
    background: #e8f0fc;
    color: #1a4d8f;
}
body.p-documentation-users--v1 .badge-both {
    background: #f4f7fd;
    color: #5a6a82;
}
body.p-documentation-users--v1 .badge-req {
    background: #e8f0fc;
    color: #3b7de8;
}
body.p-documentation-users--v1 .badge-opt {
    background: #f4f7fd;
    color: #5a6a82;
}

/* Placeholder sections */
body.p-documentation-users--v1 .doc-coming-soon {
    padding: 32px;
    background: #fafbfd;
    border: 1.5px dashed #d0daea;
    border-radius: 10px;
    text-align: center;
    color: #8fa8c8;
    font: 500 14px/1 var(--sans);
}

/* ── Prev / Next navigation ──────────────────── */
body.p-documentation-users--v1 .doc-page-nav {
    display: flex;
    gap: 16px;
    margin-top: 64px;
    padding-top: 32px;
    border-top: 1px solid #e4eaf4;
}
body.p-documentation-users--v1 .doc-page-nav-btn {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 16px 20px;
    border: 1.5px solid #e4eaf4;
    border-radius: 10px;
    text-decoration: none;
    transition: all .15s;
    min-width: 0;
}
body.p-documentation-users--v1 .doc-page-nav-btn:hover {
    border-color: #3b7de8;
    box-shadow: 0 2px 12px rgba(59, 125, 232, .1);
}
body.p-documentation-users--v1 .doc-page-nav-btn.next {
    text-align: right;
}
body.p-documentation-users--v1 .doc-page-nav-label {
    font: 500 11px/1 var(--sans);
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #8fa8c8;
}
body.p-documentation-users--v1 .doc-page-nav-title {
    font: 600 14px/1.3 var(--sans);
    color: #1e2d4d;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Responsive ──────────────────────────────── */
@media (max-width: 960px) {
    body.p-documentation-users--v1 .doc-main {
        padding: 32px 28px 64px;
    }
}
@media (max-width: 720px) {
    body.p-documentation-users--v1 .role-bar {
        padding: 0 16px;
    }

    body.p-documentation-users--v1 .sidebar-toggle-btn {
        display: flex;
    }

    body.p-documentation-users--v1 #doc-sidebar {
        position: fixed;
        top: 0;
        left: -100%;
        width: 280px;
        height: 100vh;
        z-index: 200;
        transition: left .25s ease;
        box-shadow: 4px 0 24px rgba(30, 45, 77, .15);
    }

    body.p-documentation-users--v1 #doc-sidebar.open {
        left: 0;
    }

    body.p-documentation-users--v1 .doc-main {
        padding: 24px 16px 56px;
    }

    body.p-documentation-users--v1 .doc-section h2 {
        font-size: 21px;
    }

    body.p-documentation-users--v1 .doc-page-nav {
        flex-direction: column;
    }
}

/* ── PAGE: features ──────────────────────────── */
/* ── HERO ── */
body.p-features .hero {
    max-width: var(--max);
    margin: 0 auto;
    padding: 20px 40px 0;
    text-align: center
}
body.p-features .hero h1 {
    font-family: var(--serif);
    font-size: clamp(2.6rem, 4.5vw, 3.8rem);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -.03em;
    color: var(--ink2);
    margin-bottom: 14px;
    max-width: 720px;
    margin-left: auto;
    margin-right: auto
}
body.p-features .hero h1 em {
    font-style: normal;
    color: var(--blue)
}
body.p-features .hero-sub {
    font-size: .96rem;
    color: var(--mid);
    max-width: 580px;
    line-height: 1.75;
    margin-left: auto;
    margin-right: auto
}

/* ── PERSONA TABS ── */
body.p-features .persona-wrap {
    max-width: var(--max);
    margin: 0 auto;
    padding: 28px 40px 0
}
body.p-features .persona-label {
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 10px
}
body.p-features .persona-tabs {
    display: flex;
    gap: 8px;
    flex-wrap: wrap
}
body.p-features .ptab {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 9px 16px;
    border-radius: 8px;
    border: 1.5px solid var(--pale);
    background: var(--white);
    color: var(--mid);
    font-family: var(--sans);
    font-size: .8rem;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s;
    white-space: nowrap
}
body.p-features .ptab:hover {
    border-color: var(--blue);
    color: var(--ink);
    background: #e8f0fc
}
body.p-features .ptab.active {
    border-color: var(--blue);
    background: var(--blue);
    color: var(--white)
}

/* ── STATS BAR ── */
body.p-features .stats-bar {
    max-width: var(--max);
    margin: 24px auto 0;
    padding: 0 40px
}
body.p-features .stats-inner {
    display: flex;
    border: 1px solid var(--pale);
    border-radius: 12px;
    overflow: hidden;
    background: var(--white)
}
body.p-features .stat-item {
    flex: 1;
    padding: 16px 22px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    border-right: 1px solid var(--pale)
}
body.p-features .stat-item:last-child {
    border-right: none
}
body.p-features .stat-num {
    font-family: var(--serif);
    font-size: 1.55rem;
    font-weight: 800;
    color: var(--ink2);
    letter-spacing: -.03em;
    line-height: 1
}
body.p-features .stat-label {
    font-size: .7rem;
    color: var(--mid)
}

/* ── PAGE LAYOUT ── */
body.p-features .page-outer {
    max-width: var(--max);
    margin: 0 auto;
    padding: 40px 40px 80px;
    display: grid;
    grid-template-columns:192px 1fr;
    gap: 48px;
    align-items: start
}

/* ── SIDEBAR ── */
body.p-features .sidebar {
    position: sticky;
    top: 86px
}
body.p-features .sidebar-label {
    font-size: .6rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--light);
    padding: 0 10px 6px
}
body.p-features .sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: 1px
}
body.p-features .snav-link {
    font-size: .77rem;
    font-weight: 500;
    color: var(--mid);
    text-decoration: none;
    padding: 7px 10px;
    border-radius: 6px;
    transition: all .15s;
    display: block;
    border-left: 2px solid transparent
}
body.p-features .snav-link:hover {
    color: var(--ink);
    background: var(--bg)
}
body.p-features .snav-link.active {
    color: var(--blue);
    background: #e8f0fc;
    border-left-color: var(--blue);
    font-weight: 600
}

/* ── SECTION ── */
body.p-features .feat-section {
    margin-bottom: 52px
}
body.p-features .feat-section.hidden {
    display: none
}
body.p-features .section-head {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 2px solid var(--pale)
}
body.p-features .section-icon {
    width: 38px;
    height: 38px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 2px
}
body.p-features .ic-blue {
    background: #eef3ff;
    color: var(--blue)
}
body.p-features .ic-orange {
    background: #fdf3e8;
    color: #c8720a
}
body.p-features .ic-green {
    background: #e8f5ee;
    color: #1a5c38
}
body.p-features .ic-purple {
    background: #f0eeff;
    color: #6b4de8
}
body.p-features .ic-red {
    background: #fff0f0;
    color: #c82030
}
body.p-features .ic-teal {
    background: #e8faff;
    color: #0a8dad
}
body.p-features .section-meta {
    flex: 1
}
body.p-features .section-title {
    font-family: var(--serif);
    font-size: 1.35rem;
    font-weight: 800;
    color: var(--ink2);
    letter-spacing: -.025em;
    line-height: 1.2;
    margin-bottom: 4px
}
body.p-features .section-sub {
    font-size: .79rem;
    color: var(--mid);
    line-height: 1.55
}
body.p-features .section-tags {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 7px
}
body.p-features .stag {
    font-size: .6rem;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    padding: 3px 8px;
    border-radius: 4px;
    border: 1px solid
}
body.p-features .stag-blue {
    color: var(--blue);
    background: #e8f0fc;
    border-color: #b3cdf5
}
body.p-features .stag-orange {
    color: #c8720a;
    background: #fdf3e8;
    border-color: #f5c87a
}
body.p-features .stag-green {
    color: #1a5c38;
    background: #e8f5ee;
    border-color: #a8d9bc
}
body.p-features .stag-purple {
    color: #6b4de8;
    background: #f0eeff;
    border-color: #c5b8f5
}
body.p-features .stag-gold {
    color: #8a5200;
    background: #fff0d6;
    border-color: #f5c87a
}

/* ── FEATURE GRID ── */
body.p-features .feat-grid {
    display: grid;
    gap: 12px
}
body.p-features .g3 {
    grid-template-columns:repeat(3, 1fr)
}
body.p-features .g2 {
    grid-template-columns:repeat(2, 1fr)
}
body.p-features .g4 {
    grid-template-columns:repeat(4, 1fr)
}
body.p-features .feat-card {
    background: var(--bg);
    border: 1px solid var(--pale);
    border-radius: 10px;
    padding: 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    transition: border-color .15s, box-shadow .15s
}
body.p-features .feat-card:hover {
    border-color: #c5d8f5;
    box-shadow: 0 3px 12px rgba(45, 107, 228, .07)
}
body.p-features .feat-card.hl {
    background: #e8f0fc;
    border-color: #b3cdf5
}
body.p-features .feat-card.hl .fname {
    color: var(--blue2)
}
body.p-features .card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 2px
}
body.p-features .fname {
    font-size: .86rem;
    font-weight: 700;
    color: var(--ink);
    line-height: 1.3
}
body.p-features .fbadge {
    font-size: .54rem;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    padding: 2px 6px;
    border-radius: 3px;
    white-space: nowrap;
    flex-shrink: 0;
    border: 1px solid
}
body.p-features .b-core {
    background: var(--pale);
    color: var(--mid);
    border-color: #d5dff0
}
body.p-features .b-key {
    background: #ddeeff;
    color: var(--blue2);
    border-color: #b3cdf5
}
body.p-features .b-unique {
    background: #fff0d6;
    color: #8a5200;
    border-color: #f5c87a
}
body.p-features .b-rev {
    background: #e8f5ee;
    color: #1a5c38;
    border-color: #a8d9bc
}
body.p-features .fdesc {
    font-size: .77rem;
    color: var(--mid);
    line-height: 1.5
}
body.p-features .fwhy {
    font-size: .73rem;
    color: var(--blue2);
    font-weight: 500;
    line-height: 1.4;
    padding-top: 5px;
    border-top: 1px solid rgba(45, 107, 228, .1);
    margin-top: 2px;
    display: flex;
    align-items: flex-start;
    gap: 4px
}
body.p-features .fwhy::before {
    content: '→';
    font-size: .68rem;
    flex-shrink: 0;
    margin-top: 1px
}
body.p-features .fdoc {
    font-size: .68rem;
    color: var(--light);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 3px;
    margin-top: 3px;
    transition: color .15s;
    width: fit-content
}
body.p-features .fdoc:hover {
    color: var(--blue)
}

/* ── CALLOUT BANNERS ── */
body.p-features .callout {
    border-radius: 12px;
    padding: 20px 24px;
    margin-bottom: 52px;
    display: flex;
    align-items: center;
    gap: 18px
}
body.p-features .callout-dark {
    background: var(--ink2)
}
body.p-features .callout-gold {
    background: #e8f0fc;
    border: 1px solid #f5d9a0
}
body.p-features .callout-green {
    background: #e8f5ee;
    border: 1px solid #a8d9bc
}
body.p-features .callout-blue {
    background: #e8f0fc;
    border: 1px solid #b3cdf5
}
body.p-features .callout-icon {
    width: 40px;
    height: 40px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0
}
body.p-features .callout-dark .callout-icon {
    background: rgba(255, 255, 255, .08)
}
body.p-features .callout-body {
    flex: 1
}
body.p-features .ctitle {
    font-size: .86rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 3px
}
body.p-features .callout-dark .ctitle {
    color: var(--white)
}
body.p-features .ctext {
    font-size: .77rem;
    color: var(--mid);
    line-height: 1.5
}
body.p-features .callout-dark .ctext {
    color: rgba(255, 255, 255, .45)
}
body.p-features .ccta {
    font-size: .77rem;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    padding: 7px 14px;
    border-radius: 6px;
    border: 1.5px solid;
    transition: all .15s;
    flex-shrink: 0
}
body.p-features .callout-dark .ccta {
    color: var(--white);
    border-color: rgba(255, 255, 255, .2)
}
body.p-features .callout-dark .ccta:hover {
    background: rgba(255, 255, 255, .08)
}
body.p-features .ccta-blue {
    color: var(--blue);
    border-color: var(--blue)
}
body.p-features .ccta-blue:hover {
    background: var(--blue);
    color: var(--white)
}
body.p-features .ccta-green {
    color: #1a5c38;
    border-color: #1a5c38
}
body.p-features .ccta-green:hover {
    background: #1a5c38;
    color: var(--white)
}
body.p-features .ccta-gold {
    color: var(--blue);
    border-color: var(--blue)
}
body.p-features .ccta-gold:hover {
    background: var(--blue);
    color: var(--white)
}

body.p-features .cta-row {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap
}
body.p-features .btn-p {
    background: var(--blue);
    color: var(--white);
    font-family: var(--sans);
    font-weight: 700;
    font-size: .86rem;
    padding: 13px 26px;
    border-radius: 8px;
    text-decoration: none;
    transition: background .15s, transform .15s;
    display: inline-flex;
    align-items: center;
    gap: 7px
}
body.p-features .btn-p:hover {
    background: var(--blue2);
    transform: translateY(-1px)
}
body.p-features .btn-g {
    background: transparent;
    color: rgba(255, 255, 255, .6);
    font-family: var(--sans);
    font-weight: 600;
    font-size: .86rem;
    padding: 13px 26px;
    border-radius: 8px;
    text-decoration: none;
    border: 1.5px solid rgba(255, 255, 255, .2);
    transition: all .15s
}
body.p-features .btn-g:hover {
    border-color: rgba(255, 255, 255, .45);
    color: var(--white)
}

/* ── REVEAL ── */
@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(16px)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}
.reveal {
    opacity: 0;
    animation: fadeUp .5s ease forwards
}
.reveal.d1 {
    animation-delay: .05s
}
.reveal.d2 {
    animation-delay: .1s
}
.reveal.d3 {
    animation-delay: .15s
}
.reveal.d4 {
    animation-delay: .2s
}

/* ── RESPONSIVE ── */
@media (max-width: 960px) {
    body.p-features .page-outer {
        grid-template-columns:1fr;
        padding: 24px 20px 60px
    }

    body.p-features .sidebar {
        display: none
    }

    body.p-features .g3 {
        grid-template-columns:1fr 1fr
    }

    body.p-features .g4 {
        grid-template-columns:1fr 1fr
    }

    body.p-features .hero, .persona-wrap, .stats-bar {
        padding-left: 20px;
        padding-right: 20px
    }

    body.p-features .stats-inner {
        flex-wrap: wrap
    }

    body.p-features .stat-item {
        min-width: 50%
    }
}
@media (max-width: 580px) {
    body.p-features .g3, body.p-features .g2, body.p-features .g4 {
        grid-template-columns:1fr
    }

    body.p-features .persona-tabs {
        flex-direction: column
    }

    body.p-features .callout {
        flex-direction: column;
        align-items: flex-start
    }
}

/* ── PAGE: home ──────────────────────────── */
body.p-home .accent {
    color: var(--gold);
    font-style: normal;
    font-weight: inherit;
}

/* ── MONO ACCENTS ──────────────────────────────────────── */
body.p-home .uc-badge, body.p-home .option-tag, body.p-home .section-label, body.p-home .step-num {
    font-family: var(--mono);
}
body.p-home .fees-card .fees-figure {
    font-family: var(--mono);
}

/* ── HERO ───────────────────────────────────────────────── */
body.p-home .hero {
    padding: 140px 40px 100px;
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 56px;
    align-items: center;
    min-height: 92vh;
}
body.p-home .hero-left {
    animation: fadeUp 0.7s ease both;
}
body.p-home .hero-right {
    animation: fadeUp 0.7s 0.15s ease both;
}
@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(28px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
body.p-home h1 {
    font-family: var(--serif);
    font-size: clamp(2.6rem, 4.5vw, 3.8rem);
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: -0.03em;
    color: var(--ink);
    margin-bottom: 28px;
}
body.p-home h1 .accent {
    font-style: normal;
    color: var(--gold);
}
body.p-home .hero-sub {
    font-size: 1.15rem;
    color: var(--mid);
    line-height: 1.65;
    margin-bottom: 40px;
    max-width: 480px;
}
body.p-home .cta-group {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
}
body.p-home .cta-micro {
    font-size: 0.8rem;
    color: var(--light);
    padding-left: 4px;
}

/* Hero visual */
body.p-home .hero-visual {
    position: relative;
}
body.p-home .hero-float-1, body.p-home .hero-float-2 {
    position: absolute;
    background: var(--white);
    border-radius: 10px;
    padding: 10px 14px;
    box-shadow: 0 8px 32px rgba(30, 45, 77, 0.15);
    font-size: 0.78rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
    animation: float 3s ease-in-out infinite;
}
body.p-home .hero-float-1 {
    bottom: -20px;
    left: -30px;
    color: var(--green);
    animation-delay: 0s;
}
body.p-home .hero-float-2 {
    top: -16px;
    right: -20px;
    color: var(--ink3);
    animation-delay: 1.5s;
}
@keyframes float {
    0%, 100% {
        transform: translateY(0)
    }
    50% {
        transform: translateY(-6px)
    }
}
.float-icon {
    font-size: 1.1rem;
}

/* ── SOCIAL PROOF ───────────────────────────────────────── */
.proof-bar {
    background: var(--ink);
    padding: 28px 40px;
}
.proof-inner {
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 24px;
}
body.p-home .proof-item {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--white);
}
body.p-home .proof-icon {
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    opacity: 0.9;
}
body.p-home .proof-item strong {
    font-size: 1.1rem;
    font-family: var(--serif);
    font-weight: 700;
}
body.p-home .proof-item span {
    font-size: 0.8rem;
    color: var(--light);
    display: block;
}
body.p-home .proof-divider {
    width: 1px;
    height: 36px;
    background: rgba(255, 255, 255, 0.12);
}
body.p-home .stars {
    color: #f5a623;
    font-size: 0.9rem;
    letter-spacing: 2px;
}

/* ── SECTION BASE ───────────────────────────────────────── */
body.p-home section {
    padding: 100px 40px;
}
body.p-home .section-inner {
    max-width: 1100px;
    margin: 0 auto;
}
body.p-home h2.section-heading {
    font-family: var(--serif);
    font-size: clamp(2rem, 3.5vw, 2.9rem);
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1.15;
    color: var(--ink);
    margin-bottom: 16px;
}
body.p-home h2.section-heading em {
    font-style: normal;
    font-weight: 800;
    color: var(--ink3);
}
body.p-home .section-sub {
    font-size: 1.05rem;
    color: var(--mid);
    max-width: 560px;
    line-height: 1.65;
    margin-bottom: 60px;
}

/* ── USE CASES ──────────────────────────────────────────── */
body.p-home .use-cases {
    background: var(--bg);
    padding: 100px 40px;
}
body.p-home .use-case-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
body.p-home .use-case-card {
    background: var(--white);
    border-radius: 16px;
    padding: 36px 32px 32px;
    border: 1px solid rgba(30, 45, 77, 0.07);
    transition: transform 0.22s, box-shadow 0.22s, border-color 0.22s;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
}
body.p-home .use-case-card::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--ink) 0%, var(--blue) 100%);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
}
body.p-home .use-case-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 56px rgba(30, 45, 77, 0.11);
    border-color: transparent;
}
body.p-home .use-case-card:hover::after {
    transform: scaleX(1);
}
body.p-home .uc-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 24px;
}
body.p-home .use-case-icon {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(59, 125, 232, 0.08);
    border-radius: 11px;
}
body.p-home .uc-badge {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--blue);
    background: var(--pale);
    padding: 3px 9px;
    border-radius: 20px;
    white-space: nowrap;
    flex-shrink: 0;
    transition: background 0.15s, color 0.15s;
}
body.p-home .use-case-card:hover .uc-badge {
    background: var(--ink);
    color: var(--white);
}
body.p-home .use-case-card h3 {
    font-family: var(--serif);
    font-size: 1.35rem;
    font-weight: 800;
    color: var(--ink);
    margin-bottom: 12px;
    letter-spacing: -0.025em;
    line-height: 1.2;
}
body.p-home .use-case-card p {
    font-size: 0.9rem;
    color: var(--mid);
    line-height: 1.65;
    flex: 0 0 auto;
    min-height: 88px;
}
body.p-home .uc-bullets {
    display: flex;
    flex-direction: column;
    gap: 7px;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid var(--pale);
}
body.p-home .uc-bullet {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.4;
}
body.p-home .uc-bullet i[data-lucide] {
    flex-shrink: 0;
    margin-top: 1px;
}
body.p-home .uc-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 22px;
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--blue);
    text-decoration: none;
    letter-spacing: 0.01em;
    transition: gap 0.2s;
}
body.p-home .use-case-card:hover .uc-link {
    gap: 10px;
}
@media (max-width: 900px) {
    body.p-home .use-case-grid {
        grid-template-columns: 1fr;
    }
}

/* ── PRODUCT OPTIONS ────────────────────────────────────── */
body.p-home .options {
    background: var(--white);
}
body.p-home .options-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2px;
    background: var(--ink);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(30, 45, 77, 0.15);
}
body.p-home .option-card {
    background: var(--white);
    padding: 40px 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    transition: background 0.2s;
    position: relative;
}
body.p-home .option-card:hover {
    background: var(--bg);
}
body.p-home .option-card.featured {
    background: var(--ink);
    color: var(--white);
}
body.p-home .option-card.featured:hover {
    background: var(--ink2);
}
body.p-home .option-tag {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--mid);
    margin-bottom: 4px;
}
body.p-home .option-card.featured .option-tag {
    color: var(--light);
}
body.p-home .option-card h3 {
    font-family: var(--serif);
    font-size: 1.5rem;
    font-weight: 800;
    letter-spacing: -0.03em;
    color: var(--ink);
    line-height: 1.2;
}
body.p-home .option-card.featured h3 {
    color: var(--white);
}
body.p-home .option-desc {
    font-size: 0.9rem;
    color: var(--mid);
    line-height: 1.6;
    flex: 1;
}
body.p-home .option-card.featured .option-desc {
    color: var(--light);
}
body.p-home .option-best-for {
    font-size: 0.8rem;
    color: var(--ink3);
    font-style: italic;
    padding-top: 8px;
    border-top: 1px solid var(--pale);
}
body.p-home .option-card.featured .option-best-for {
    color: var(--light);
    border-top-color: rgba(255, 255, 255, 0.1);
}
body.p-home .option-cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--ink);
    text-decoration: none;
    padding: 10px 0;
    border-bottom: 2px solid var(--ink);
    transition: gap 0.2s;
    width: fit-content;
    margin-top: 8px;
}
body.p-home .option-cta:hover {
    gap: 12px;
}
body.p-home .option-card.featured .option-cta {
    color: var(--gold2);
    border-bottom-color: var(--gold2);
}
body.p-home .option-popular {
    position: absolute;
    top: -1px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--gold);
    color: var(--white);
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 4px 14px;
    border-radius: 0 0 8px 8px;
}

/* ── ZERO FEES CALLOUT ──────────────────────────────────── */
body.p-home .fees-callout {
    background: var(--pale);
}
body.p-home .fees-compare {
    display: flex;
    gap: 24px;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 24px;
}
body.p-home .fees-card {
    background: var(--white);
    border-radius: 12px;
    padding: 24px 36px;
    border: 1px solid rgba(30, 45, 77, 0.1);
    text-align: center;
    min-width: 200px;
}
body.p-home .fees-card.fees-bad .fees-figure {
    font-size: 1.8rem;
    font-weight: 900;
    color: #C0392B;
    font-family: var(--serif);
}
body.p-home .fees-card.fees-good {
    background: var(--ink);
}
body.p-home .fees-card.fees-good .fees-figure {
    font-size: 1.8rem;
    font-weight: 900;
    color: var(--gold2);
    font-family: var(--serif);
}
body.p-home .fees-card.fees-good .fees-label {
    color: var(--light);
}
body.p-home .fees-label {
    font-size: 0.85rem;
    color: var(--mid);
    margin-top: 6px;
    line-height: 1.5;
}
body.p-home .fees-arrow {
    font-size: 1.5rem;
    color: var(--light);
}

/* ── FEATURES ───────────────────────────────────────────── */
body.p-home .features {
    background: var(--bg);
}
body.p-home .features-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: start;
}
body.p-home .features-sticky {
    position: sticky;
    top: 100px;
}
body.p-home .feature-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
body.p-home .feature-item {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 20px 0;
    border-bottom: 1px solid rgba(30, 45, 77, 0.07);
    transition: padding 0.2s;
}
body.p-home .feature-item:last-child {
    border-bottom: none;
}
body.p-home .feature-item:hover {
    padding-left: 6px;
}
body.p-home .feature-item:hover .feature-icon {
    background: var(--ink);
}
body.p-home .feature-item:hover .feature-icon i[data-lucide] {
    color: var(--white);
}
body.p-home .feature-icon {
    width: 40px;
    height: 40px;
    background: var(--pale);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    flex-shrink: 0;
    transition: background 0.2s, color 0.2s;
}
body.p-home .feature-text strong {
    display: block;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--ink);
    margin-bottom: 4px;
}
body.p-home .feature-text p {
    font-size: 0.85rem;
    color: var(--mid);
    line-height: 1.5;
}

/* ── ENTREPRENEUR ───────────────────────────────────────── */
body.p-home .entrepreneur {
    background: var(--white);
    border-top: 1px solid var(--pale);
}
body.p-home .entrepreneur-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}
body.p-home .steps {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-top: 8px;
}
body.p-home .step {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    position: relative;
    padding-bottom: 32px;
}
body.p-home .step:last-child {
    padding-bottom: 0;
}
body.p-home .step:not(:last-child)::after {
    content: '';
    position: absolute;
    left: 19px;
    top: 40px;
    width: 2px;
    height: calc(100% - 40px);
    background: linear-gradient(180deg, var(--ink) 0%, var(--pale) 100%);
}
body.p-home .step-num {
    width: 40px;
    height: 40px;
    background: var(--ink);
    color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--serif);
    font-weight: 700;
    font-size: 1rem;
    flex-shrink: 0;
    z-index: 1;
}
body.p-home .step-text strong {
    display: block;
    font-size: 1rem;
    font-weight: 600;
    color: var(--ink);
    margin-bottom: 4px;
}
body.p-home .step-text p {
    font-size: 0.875rem;
    color: var(--mid);
    line-height: 1.55;
}

/* ── AUCTION EVENTS SPOTLIGHT ────────────────────────────── */
body.p-home .ae-spotlight {
    background: var(--ink);
    padding: 100px 40px;
    position: relative;
    overflow: hidden;
}
body.p-home .ae-spotlight::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 70% 50% at 100% 0%, rgba(59, 125, 232, 0.12), transparent), radial-gradient(ellipse 40% 40% at 0% 100%, rgba(59, 125, 232, 0.07), transparent);
}
body.p-home .ae-spotlight .section-inner {
    position: relative;
    z-index: 1;
}
body.p-home .ae-spotlight .section-label {
    color: var(--blue2);
}
body.p-home .ae-spotlight .section-label::before {
    background: var(--blue2);
}
body.p-home .ae-spotlight .section-heading {
    color: var(--white);
}
body.p-home .ae-spotlight .section-heading .accent {
    color: var(--blue2);
}
body.p-home .ae-spotlight .section-sub {
    color: var(--light);
}
body.p-home .ae-intro {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 60px;
    align-items: start;
    margin-bottom: 64px;
}
body.p-home .ae-cta-box {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 14px;
    padding: 28px;
}
body.p-home .ae-cta-box p {
    font-size: 0.875rem;
    color: var(--light);
    line-height: 1.6;
    margin-bottom: 20px;
}
body.p-home .ae-demo-link {
    display: block;
    text-align: center;
    font-size: 0.82rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    margin-top: 14px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    padding-bottom: 2px;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    transition: color 0.15s, border-color 0.15s;
}
body.p-home .ae-demo-link:hover {
    color: var(--white);
    border-color: var(--white);
}

/* ── WHY PPB ────────────────────────────────────────────── */
body.p-home .why-ppb {
    background: var(--white);
}
body.p-home .why-ppb-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    margin-top: 48px;
}
body.p-home .why-ppb-item strong {
    display: block;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 8px;
}
body.p-home .why-ppb-item p {
    font-size: 0.875rem;
    color: var(--mid);
    line-height: 1.65;
}

/* ── FAQ ────────────────────────────────────────────────── */
body.p-home .faq {
    background: var(--bg);
}
body.p-home .faq-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2px;
    background: rgba(30, 45, 77, 0.07);
    border-radius: 12px;
    overflow: hidden;
}

/* ── FINAL CTA ──────────────────────────────────────────── */
body.p-home .final-cta {
    background: var(--ink);
    padding: 100px 40px;
    text-align: center;
    position: relative;
    overflow: hidden;
}
body.p-home .final-cta::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 60% 50% at 50% 0%, rgba(59, 125, 232, 0.12), transparent);
}
body.p-home .final-cta-inner {
    max-width: 700px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}
body.p-home .final-cta h2 {
    font-family: var(--serif);
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 900;
    color: var(--white);
    letter-spacing: -0.03em;
    line-height: 1.1;
    margin-bottom: 20px;
}
body.p-home .final-cta h2 em {
    font-style: italic;
    color: var(--gold2);
}
body.p-home .final-cta p {
    font-size: 1.05rem;
    color: var(--light);
    margin-bottom: 48px;
    line-height: 1.6;
}
body.p-home .final-cta-buttons {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}
body.p-home .btn-primary-inv {
    background: var(--white);
    color: var(--ink);
    font-family: var(--sans);
    font-weight: 700;
    font-size: 1rem;
    padding: 16px 36px;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: transform 0.15s, box-shadow 0.2s;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.25);
}
body.p-home .btn-primary-inv:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}
body.p-home .btn-secondary-inv {
    background: transparent;
    color: var(--white);
    font-family: var(--sans);
    font-weight: 600;
    font-size: 1rem;
    padding: 16px 36px;
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: border-color 0.2s, background 0.2s;
}
body.p-home .btn-secondary-inv:hover {
    border-color: rgba(255, 255, 255, 0.6);
    background: rgba(255, 255, 255, 0.05);
}

/* ── RESPONSIVE ──────────────────────────────────────────── */
@media (max-width: 1000px) {
    body.p-home .ae-intro {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 900px) {
    body.p-home .hero {
        grid-template-columns: 1fr;
        gap: 40px;
        min-height: auto;
        padding-top: 120px;
    }

    body.p-home .hero-float-1, body.p-home .hero-float-2 {
        display: none;
    }

    body.p-home .options-grid {
        grid-template-columns: 1fr;
    }

    body.p-home .features-layout {
        grid-template-columns: 1fr;
    }

    body.p-home .features-sticky {
        position: static;
    }

    body.p-home .entrepreneur-inner {
        grid-template-columns: 1fr;
    }

    body.p-home .faq-grid {
        grid-template-columns: 1fr;
    }

    body.p-home .proof-divider {
        display: none;
    }

    body.p-home .why-ppb-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }
}
@media (max-width: 600px) {
    body.p-home section {
        padding: 70px 24px;
    }

    body.p-home .hero {
        padding: 110px 24px 70px;
    }

    body.p-home .proof-bar {
        padding: 24px;
    }

    body.p-home .proof-inner {
        gap: 16px;
    }

    body.p-home .faq-grid {
        grid-template-columns: 1fr;
    }

    body.p-home .final-cta-buttons {
        flex-direction: column;
        align-items: center;
    }

    body.p-home .ae-spotlight {
        padding: 60px 24px;
    }

    body.p-home .fees-compare {
        flex-direction: column;
    }

    body.p-home .fees-arrow {
        transform: rotate(90deg);
    }
}

/* ── PAGE: how-to-start-an-online-auction-business ──────────────────────────── */
/* ── ARTICLE LAYOUT ─────────────────────────────────────── */
body.p-how-to-start-an-online-auction-business .article-wrap {
    max-width: 1200px;
    margin: 0 auto;
    padding: 108px 40px 80px;
    display: grid;
    grid-template-columns: 680px 1fr;
    gap: 80px;
    align-items: start;
}

/* ── BREADCRUMB ─────────────────────────────────────────── */

/* ── ARTICLE HEADER ─────────────────────────────────────── */
body.p-how-to-start-an-online-auction-business .article-header {
    margin-bottom: 48px;
}

body.p-how-to-start-an-online-auction-business .article-category {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 16px;
}
body.p-how-to-start-an-online-auction-business .article-category::before {
    content: '';
    width: 16px;
    height: 2px;
    background: var(--blue);
}

body.p-how-to-start-an-online-auction-business .article-title {
    font-family: var(--serif);
    font-size: clamp(2rem, 3.5vw, 2.8rem);
    font-weight: 900;
    letter-spacing: -0.03em;
    line-height: 1.1;
    color: var(--ink);
    margin-bottom: 20px;
}

body.p-how-to-start-an-online-auction-business .article-intro {
    font-size: 1.1rem;
    color: var(--mid);
    line-height: 1.7;
    border-left: 3px solid var(--blue);
    padding-left: 20px;
    margin-bottom: 28px;
}

body.p-how-to-start-an-online-auction-business .article-meta {
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: 0.8rem;
    color: var(--light);
    padding-bottom: 28px;
    border-bottom: 1px solid var(--pale);
}
body.p-how-to-start-an-online-auction-business .article-meta-item {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--light);
}

/* ── ARTICLE BODY ───────────────────────────────────────── */
body.p-how-to-start-an-online-auction-business .article-body {
    font-size: 1rem;
    line-height: 1.8;
    color: var(--ink);
}

body.p-how-to-start-an-online-auction-business .article-body h2 {
    font-family: var(--serif);
    font-size: 1.65rem;
    font-weight: 800;
    letter-spacing: -0.025em;
    color: var(--ink);
    margin: 56px 0 20px;
    line-height: 1.2;
}
body.p-how-to-start-an-online-auction-business .article-body h2:first-child {
    margin-top: 0;
}

body.p-how-to-start-an-online-auction-business .article-body h3 {
    font-family: var(--serif);
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--ink);
    margin: 32px 0 12px;
    letter-spacing: -0.015em;
}

body.p-how-to-start-an-online-auction-business .article-body p {
    margin-bottom: 20px;
    color: var(--mid);
}
body.p-how-to-start-an-online-auction-business .article-body p:last-child {
    margin-bottom: 0;
}

body.p-how-to-start-an-online-auction-business .article-body a {
    color: var(--blue);
    text-decoration: none;
    border-bottom: 1px solid rgba(59, 125, 232, 0.3);
    transition: border-color 0.15s;
}
body.p-how-to-start-an-online-auction-business .article-body a:hover {
    border-color: var(--blue);
}

body.p-how-to-start-an-online-auction-business .article-body strong {
    color: var(--ink);
    font-weight: 600;
}

/* Callout box */
body.p-how-to-start-an-online-auction-business .callout {
    background: var(--pale);
    border-left: 4px solid var(--blue);
    border-radius: 0 8px 8px 0;
    padding: 20px 24px;
    margin: 32px 0;
}
body.p-how-to-start-an-online-auction-business .callout p {
    margin: 0;
    font-size: 0.95rem;
}
body.p-how-to-start-an-online-auction-business .callout strong {
    color: var(--blue);
}

/* Cost comparison table */
body.p-how-to-start-an-online-auction-business .cost-table {
    width: 100%;
    border-collapse: collapse;
    margin: 28px 0;
    font-size: 0.9rem;
}
body.p-how-to-start-an-online-auction-business .cost-table th {
    text-align: left;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--mid);
    padding: 10px 16px;
    background: var(--bg);
    border-bottom: 2px solid var(--pale);
}
body.p-how-to-start-an-online-auction-business .cost-table td {
    padding: 12px 16px;
    border-bottom: 1px solid var(--pale);
    color: var(--mid);
    vertical-align: top;
}
body.p-how-to-start-an-online-auction-business .cost-table td:first-child {
    font-weight: 500;
    color: var(--ink);
}
body.p-how-to-start-an-online-auction-business .cost-table tr:last-child td {
    border-bottom: none;
}
body.p-how-to-start-an-online-auction-business .cost-table .total td {
    background: var(--ink);
    color: var(--white);
    font-weight: 700;
    border-radius: 0 0 8px 8px;
}
body.p-how-to-start-an-online-auction-business .cost-table .total td:first-child {
    color: var(--white);
    border-radius: 0 0 0 8px;
}
body.p-how-to-start-an-online-auction-business .cost-table .total td:last-child {
    border-radius: 0 0 8px 0;
}

/* Step list */
body.p-how-to-start-an-online-auction-business .step-list {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin: 28px 0;
}
body.p-how-to-start-an-online-auction-business .step-item {
    display: flex;
    gap: 20px;
    padding: 24px 0;
    border-bottom: 1px solid var(--pale);
    position: relative;
}
body.p-how-to-start-an-online-auction-business .step-item:last-child {
    border-bottom: none;
}
body.p-how-to-start-an-online-auction-business .step-num {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    background: var(--ink);
    color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--serif);
    font-weight: 800;
    font-size: 0.9rem;
    margin-top: 2px;
}
body.p-how-to-start-an-online-auction-business .step-body {
}
body.p-how-to-start-an-online-auction-business .step-body strong {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 6px;
}
body.p-how-to-start-an-online-auction-business .step-body p {
    margin: 0;
    font-size: 0.9rem;
    color: var(--mid);
    line-height: 1.6;
}

/* Niche cards */
body.p-how-to-start-an-online-auction-business .niche-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 28px 0;
}
body.p-how-to-start-an-online-auction-business .niche-card {
    background: var(--bg);
    border: 1px solid rgba(30, 45, 77, 0.07);
    border-radius: 10px;
    padding: 20px;
    transition: border-color 0.2s, background 0.2s;
}
body.p-how-to-start-an-online-auction-business .niche-card:hover {
    background: var(--pale);
    border-color: rgba(59, 125, 232, 0.2);
}
body.p-how-to-start-an-online-auction-business .niche-card h4 {
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 6px;
}
body.p-how-to-start-an-online-auction-business .niche-card p {
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.5;
    margin: 0;
}
body.p-how-to-start-an-online-auction-business .niche-icon {
    width: 38px;
    height: 38px;
    background: var(--pale);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    color: var(--ink);
}

/* Warning box */
body.p-how-to-start-an-online-auction-business .warning {
    background: #fffbf0;
    border-left: 4px solid #f5a623;
    border-radius: 0 8px 8px 0;
    padding: 20px 24px;
    margin: 32px 0;
}
body.p-how-to-start-an-online-auction-business .warning p {
    margin: 0;
    font-size: 0.9rem;
    color: var(--mid);
}
body.p-how-to-start-an-online-auction-business .warning strong {
    color: #b87a00;
}

/* Platform comparison */
body.p-how-to-start-an-online-auction-business .platform-compare {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 28px 0;
}
body.p-how-to-start-an-online-auction-business .platform-card {
    border-radius: 10px;
    padding: 24px;
    border: 1px solid rgba(30, 45, 77, 0.1);
}
body.p-how-to-start-an-online-auction-business .platform-card.them {
    background: var(--bg);
}
body.p-how-to-start-an-online-auction-business .platform-card.us {
    background: var(--ink);
}
body.p-how-to-start-an-online-auction-business .platform-card h4 {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 14px;
}
body.p-how-to-start-an-online-auction-business .platform-card.them h4 {
    color: var(--mid);
}
body.p-how-to-start-an-online-auction-business .platform-card.us h4 {
    color: var(--blue2);
}
body.p-how-to-start-an-online-auction-business .platform-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
body.p-how-to-start-an-online-auction-business .platform-item {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 0.85rem;
    line-height: 1.4;
}
body.p-how-to-start-an-online-auction-business .platform-card.them .platform-item {
    color: var(--mid);
}
body.p-how-to-start-an-online-auction-business .platform-card.us .platform-item {
    color: rgba(255, 255, 255, 0.8);
}
body.p-how-to-start-an-online-auction-business .platform-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 5px;
}
body.p-how-to-start-an-online-auction-business .platform-card.them .platform-dot {
    background: var(--light);
}
body.p-how-to-start-an-online-auction-business .platform-card.us .platform-dot {
    background: var(--blue2);
}

/* FAQ */
body.p-how-to-start-an-online-auction-business .article-faq {
    margin-top: 56px;
    padding-top: 40px;
    border-top: 2px solid var(--pale);
}
body.p-how-to-start-an-online-auction-business .article-faq h2 {
    font-family: var(--serif);
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--ink);
    margin-bottom: 24px;
    letter-spacing: -0.02em;
}

/* ── SIDEBAR ─────────────────────────────────────────────── */
body.p-how-to-start-an-online-auction-business .sidebar {
    position: sticky;
    top: 88px;
}

body.p-how-to-start-an-online-auction-business .toc-card {
    background: var(--bg);
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 24px;
}
body.p-how-to-start-an-online-auction-business .toc-title {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--mid);
    margin-bottom: 16px;
}
body.p-how-to-start-an-online-auction-business .toc-list {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
body.p-how-to-start-an-online-auction-business .toc-link {
    font-size: 0.85rem;
    color: var(--mid);
    text-decoration: none;
    padding: 6px 10px;
    border-radius: 6px;
    transition: background 0.15s, color 0.15s;
    display: flex;
    align-items: center;
    gap: 8px;
    line-height: 1.4;
}
body.p-how-to-start-an-online-auction-business .toc-link:hover {
    background: var(--pale);
    color: var(--ink);
}
body.p-how-to-start-an-online-auction-business .toc-link.active {
    background: var(--pale);
    color: var(--blue);
    font-weight: 600;
}
body.p-how-to-start-an-online-auction-business .toc-num {
    font-size: 0.7rem;
    font-weight: 700;
    color: var(--light);
    width: 18px;
    flex-shrink: 0;
}

body.p-how-to-start-an-online-auction-business .cta-card {
    background: var(--ink);
    border-radius: 12px;
    padding: 28px 24px;
    color: var(--white);
}
body.p-how-to-start-an-online-auction-business .cta-card-label {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--blue2);
    margin-bottom: 12px;
}
body.p-how-to-start-an-online-auction-business .cta-card h3 {
    font-family: var(--serif);
    font-size: 1.2rem;
    font-weight: 800;
    color: var(--white);
    letter-spacing: -0.02em;
    margin-bottom: 10px;
    line-height: 1.25;
}
body.p-how-to-start-an-online-auction-business .cta-card p {
    font-size: 0.85rem;
    color: var(--light);
    line-height: 1.55;
    margin-bottom: 20px;
}
body.p-how-to-start-an-online-auction-business .cta-card-btn {
    display: block;
    text-align: center;
    background: var(--white);
    color: var(--ink);
    font-weight: 700;
    font-size: 0.875rem;
    padding: 12px 20px;
    border-radius: 7px;
    text-decoration: none;
    transition: transform 0.15s, box-shadow 0.2s;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
    margin-bottom: 10px;
}
body.p-how-to-start-an-online-auction-business .cta-card-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
}
body.p-how-to-start-an-online-auction-business .cta-card-link {
    display: block;
    text-align: center;
    font-size: 0.8rem;
    color: var(--blue2);
    text-decoration: none;
    border-bottom: 1px solid rgba(90, 148, 239, 0.3);
    padding-bottom: 2px;
    width: fit-content;
    margin: 0 auto;
    transition: color 0.15s, border-color 0.15s;
}
body.p-how-to-start-an-online-auction-business .cta-card-link:hover {
    color: var(--white);
    border-color: var(--white);
}

/* ── RESPONSIVE ─────────────────────────────────────────── */
@media (max-width: 1100px) {
    body.p-how-to-start-an-online-auction-business .article-wrap {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    body.p-how-to-start-an-online-auction-business .sidebar {
        position: static;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }
}
@media (max-width: 900px) {
    body.p-how-to-start-an-online-auction-business .article-wrap {
        padding: 90px 24px 60px;
    }

    body.p-how-to-start-an-online-auction-business .platform-compare, body.p-how-to-start-an-online-auction-business .niche-grid {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 600px) {
    body.p-how-to-start-an-online-auction-business .sidebar {
        grid-template-columns: 1fr;
    }
}

/* ── PAGE: online-auction-software ──────────────────────────── */
/* ── HERO ── */
body.p-online-auction-software .hero {
    max-width: var(--max);
    margin: 0 auto;
    padding: 40px 40px 80px;
    text-align: center
}

body.p-online-auction-software .hero h1 {
    font-family: var(--serif);
    font-size: clamp(2.6rem, 4.5vw, 3.8rem);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -.03em;
    color: var(--ink2);
    max-width: 820px;
    margin: 0 auto 24px
}
body.p-online-auction-software .hero h1 em {
    font-style: italic;
    color: var(--blue)
}
body.p-online-auction-software .hero-lead {
    font-size: 1.08rem;
    color: var(--mid);
    line-height: 1.7;
    max-width: 620px;
    margin: 0 auto 36px
}
body.p-online-auction-software .hero-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap
}

body.p-online-auction-software .hero-proof {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    flex-wrap: wrap;
    margin-top: 36px;
    padding-top: 28px;
    border-top: 1px solid var(--pale)
}
body.p-online-auction-software .proof-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: .78rem;
    color: var(--mid)
}
body.p-online-auction-software .proof-item i[data-lucide] {
    flex-shrink: 0;
    color: var(--blue)
}
body.p-online-auction-software .proof-divider {
    width: 1px;
    height: 18px;
    background: var(--pale)
}

/* ── INTRO EDITORIAL ── */
body.p-online-auction-software .editorial {
    max-width: var(--max);
    margin: 0 auto;
    padding: 0 40px 80px;
    display: grid;
    grid-template-columns:1fr 360px;
    gap: 80px;
    align-items: start
}
body.p-online-auction-software .editorial-label {
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 16px
}
body.p-online-auction-software .editorial-body h2 {
    font-family: var(--serif);
    font-size: 1.75rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -.025em;
    color: var(--ink2);
    margin-bottom: 20px
}
body.p-online-auction-software .editorial-body p {
    font-size: .95rem;
    color: var(--mid);
    line-height: 1.75;
    margin-bottom: 16px
}
body.p-online-auction-software .editorial-body p strong {
    color: var(--ink);
    font-weight: 600
}
body.p-online-auction-software .editorial-body p:last-child {
    margin-bottom: 0
}
body.p-online-auction-software .editorial-aside {
    position: sticky;
    top: 86px
}
body.p-online-auction-software .aside-card {
    background: var(--ink2);
    border-radius: 14px;
    padding: 28px;
    color: rgba(255, 255, 255, .85)
}
body.p-online-auction-software .aside-card h3 {
    font-family: var(--serif);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--white);
    margin-bottom: 16px;
    line-height: 1.3
}
body.p-online-auction-software .aside-stats {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 22px
}
body.p-online-auction-software .aside-stat {
    display: flex;
    align-items: center;
    gap: 12px
}
body.p-online-auction-software .aside-stat-num {
    font-family: var(--serif);
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--white);
    line-height: 1;
    min-width: 52px
}
body.p-online-auction-software .aside-stat-label {
    font-size: .78rem;
    color: rgba(255, 255, 255, .55);
    line-height: 1.35
}
body.p-online-auction-software .aside-divider {
    height: 1px;
    background: rgba(255, 255, 255, .1);
    margin: 18px 0
}
body.p-online-auction-software .aside-pricing {
    display: flex;
    flex-direction: column;
    gap: 8px
}
body.p-online-auction-software .aside-price-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: .82rem
}
body.p-online-auction-software .aside-price-row .label {
    color: rgba(255, 255, 255, .5)
}
body.p-online-auction-software .aside-price-row .val {
    color: var(--white);
    font-weight: 600
}
body.p-online-auction-software .aside-cta {
    display: block;
    background: var(--blue);
    color: var(--white);
    text-align: center;
    padding: 12px;
    border-radius: 8px;
    font-family: var(--serif);
    font-size: .85rem;
    font-weight: 600;
    text-decoration: none;
    margin-top: 20px;
    transition: background .15s
}
body.p-online-auction-software .aside-cta:hover {
    background: var(--blue2)
}

/* ── FORMATS ── */
body.p-online-auction-software .formats {
    background: var(--bg);
    padding: 80px 40px
}
body.p-online-auction-software .formats-inner {
    max-width: var(--max);
    margin: 0 auto
}
body.p-online-auction-software .section-eyebrow {
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 12px
}
body.p-online-auction-software .section-heading {
    font-family: var(--serif);
    font-size: clamp(2rem, 3.5vw, 2.9rem);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -.03em;
    color: var(--ink2);
    margin-bottom: 14px
}
body.p-online-auction-software .section-sub {
    font-size: .95rem;
    color: var(--mid);
    line-height: 1.65;
    max-width: 560px;
    margin-bottom: 52px
}
body.p-online-auction-software .format-list {
    display: flex;
    flex-direction: column;
    gap: 1px
}
body.p-online-auction-software .format-item {
    background: var(--white);
    border-radius: 0;
    overflow: hidden;
    transition: box-shadow .2s
}
body.p-online-auction-software .format-item:first-child {
    border-radius: 12px 12px 0 0
}
body.p-online-auction-software .format-item:last-child {
    border-radius: 0 0 12px 12px
}
body.p-online-auction-software .format-item:hover {
    box-shadow: 0 4px 24px rgba(26, 38, 64, .08);
    z-index: 1;
    position: relative
}
body.p-online-auction-software .format-row {
    display: grid;
    grid-template-columns:56px 1fr 1fr auto;
    gap: 0;
    align-items: stretch
}
body.p-online-auction-software .format-num {
    background: var(--ink2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--serif);
    font-size: 1.1rem;
    font-weight: 700;
    color: rgba(255, 255, 255, .3);
    padding: 32px 0;
    width: 56px
}
body.p-online-auction-software .format-content {
    padding: 28px 32px;
    border-right: 1px solid var(--pale)
}
body.p-online-auction-software .format-tag {
    display: inline-block;
    font-size: .6rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 3px 8px;
    border-radius: 3px;
    margin-bottom: 10px;
    border: 1px solid
}
body.p-online-auction-software .ft-popular {
    color: var(--blue);
    background: var(--pale);
    border-color: #90b3f5
}
body.p-online-auction-software .ft-reinvented {
    color: var(--ink3);
    background: #eef2fc;
    border-color: #b8c8ef
}
body.p-online-auction-software .ft-marketplace {
    color: var(--green);
    background: #eaf0fc;
    border-color: #9db5e8
}
body.p-online-auction-software .format-content h3 {
    font-family: var(--serif);
    font-size: 1.2rem;
    font-weight: 600;
    color: var(--ink2);
    margin-bottom: 8px;
    letter-spacing: -.02em
}
body.p-online-auction-software .format-content p {
    font-size: .88rem;
    color: var(--mid);
    line-height: 1.6
}
body.p-online-auction-software .format-details {
    padding: 28px 32px;
    border-right: 1px solid var(--pale)
}
body.p-online-auction-software .format-details ul {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 7px
}
body.p-online-auction-software .format-details li {
    font-size: .82rem;
    color: var(--mid);
    display: flex;
    gap: 9px;
    align-items: flex-start;
    line-height: 1.4
}
body.p-online-auction-software .format-details li i[data-lucide] {
    flex-shrink: 0;
    margin-top: 2px;
    color: var(--blue)
}
body.p-online-auction-software .format-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px 32px;
    min-width: 160px
}
body.p-online-auction-software .format-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: .82rem;
    font-weight: 600;
    color: var(--blue);
    text-decoration: none;
    transition: gap .15s
}
body.p-online-auction-software .format-link:hover {
    gap: 10px
}

/* ── ONE PLATFORM ── */
body.p-online-auction-software .one-platform {
    max-width: var(--max);
    margin: 0 auto;
    padding: 80px 40px
}
body.p-online-auction-software .op-grid {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 60px;
    align-items: center
}
body.p-online-auction-software .op-content h2 {
    font-family: var(--serif);
    font-size: clamp(1.6rem, 2.8vw, 2.1rem);
    font-weight: 600;
    line-height: 1.18;
    letter-spacing: -.025em;
    color: var(--ink2);
    margin-bottom: 20px
}
body.p-online-auction-software .op-content p {
    font-size: .93rem;
    color: var(--mid);
    line-height: 1.75;
    margin-bottom: 14px
}
body.p-online-auction-software .op-content p:last-of-type {
    margin-bottom: 0
}
body.p-online-auction-software .op-visual {
    background: var(--ink2);
    border-radius: 16px;
    padding: 32px;
    position: relative;
    overflow: hidden
}
body.p-online-auction-software .op-visual::before {
    content: '';
    position: absolute;
    top: -40px;
    right: -40px;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(45, 107, 228, .3) 0%, transparent 70%);
    pointer-events: none
}
body.p-online-auction-software .op-rows {
    display: flex;
    flex-direction: column;
    gap: 0
}
body.p-online-auction-software .op-row {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .07)
}
body.p-online-auction-software .op-row:last-child {
    border-bottom: none
}
body.p-online-auction-software .op-row-icon {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: rgba(255, 255, 255, .06);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0
}
body.p-online-auction-software .op-row-icon i[data-lucide] {
    color: #5a94ef
}
body.p-online-auction-software .op-row-title {
    font-size: .82rem;
    font-weight: 600;
    color: rgba(255, 255, 255, .9);
    margin-bottom: 1px
}
body.p-online-auction-software .op-row-sub {
    font-size: .72rem;
    color: rgba(255, 255, 255, .4)
}
body.p-online-auction-software .op-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .3);
    border: 1px solid rgba(255, 255, 255, .1);
    padding: 3px 8px;
    border-radius: 3px;
    margin-left: auto;
    white-space: nowrap;
    flex-shrink: 0
}

/* ── OWNERSHIP ── */
body.p-online-auction-software .ownership {
    background: var(--ink2);
    padding: 80px 40px;
    position: relative;
    overflow: hidden
}
body.p-online-auction-software .ownership::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 800px;
    height: 400px;
    background: radial-gradient(ellipse, rgba(45, 107, 228, .15) 0%, transparent 70%);
    pointer-events: none
}
body.p-online-auction-software .ownership-inner {
    max-width: var(--max);
    margin: 0 auto;
    position: relative
}
body.p-online-auction-software .ownership-inner .section-eyebrow {
    color: rgba(255, 255, 255, .4)
}
body.p-online-auction-software .ownership-inner .section-heading {
    color: var(--white)
}
body.p-online-auction-software .ownership-inner .section-sub {
    color: rgba(255, 255, 255, .5);
    margin-bottom: 48px
}
body.p-online-auction-software .own-grid {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 2px
}
body.p-online-auction-software .own-card {
    background: rgba(255, 255, 255, .04);
    padding: 28px;
    transition: background .2s
}
body.p-online-auction-software .own-card:first-child {
    border-radius: 12px 0 0 12px
}
body.p-online-auction-software .own-card:last-child {
    border-radius: 0 12px 12px 0
}
body.p-online-auction-software .own-card:hover {
    background: rgba(255, 255, 255, .07)
}
body.p-online-auction-software .own-card-icon {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: rgba(45, 107, 228, .2);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px
}
body.p-online-auction-software .own-card-icon i[data-lucide] {
    color: #5a94ef
}
body.p-online-auction-software .own-card h3 {
    font-family: var(--serif);
    font-size: .9rem;
    font-weight: 600;
    color: var(--white);
    margin-bottom: 10px;
    line-height: 1.3
}
body.p-online-auction-software .own-card p {
    font-size: .8rem;
    color: rgba(255, 255, 255, .45);
    line-height: 1.6
}

/* ── PRICING ANCHOR ── */
body.p-online-auction-software .pricing-anchor {
    max-width: var(--max);
    margin: 0 auto;
    padding: 80px 40px
}
body.p-online-auction-software .pa-inner {
    background: var(--bg);
    border-radius: 16px;
    padding: 48px;
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 48px;
    align-items: center
}
body.p-online-auction-software .pa-label {
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 14px
}
body.p-online-auction-software .pa-left h2 {
    font-family: var(--serif);
    font-size: 1.7rem;
    font-weight: 600;
    line-height: 1.18;
    letter-spacing: -.025em;
    color: var(--ink2);
    margin-bottom: 14px
}
body.p-online-auction-software .pa-left p {
    font-size: .88rem;
    color: var(--mid);
    line-height: 1.65
}
body.p-online-auction-software .pa-right {
    display: flex;
    flex-direction: column;
    gap: 14px
}
body.p-online-auction-software .pa-option {
    background: var(--white);
    border-radius: 10px;
    padding: 20px 22px;
    border: 1.5px solid transparent;
    display: flex;
    align-items: center;
    gap: 18px;
    transition: border-color .15s
}
body.p-online-auction-software .pa-option:hover {
    border-color: var(--blue)
}
body.p-online-auction-software .pa-option-icon {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0
}
body.p-online-auction-software .pa-option-icon.licence {
    background: var(--pale)
}
body.p-online-auction-software .pa-option-icon.licence i[data-lucide] {
    color: var(--blue)
}
body.p-online-auction-software .pa-option-icon.subscription {
    background: var(--pale)
}
body.p-online-auction-software .pa-option-icon.subscription i[data-lucide] {
    color: var(--blue)
}
body.p-online-auction-software .pa-option-icon.managed {
    background: var(--pale)
}
body.p-online-auction-software .pa-option-icon.managed i[data-lucide] {
    color: var(--blue)
}
body.p-online-auction-software .pa-option-text h4 {
    font-size: .88rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 2px
}
body.p-online-auction-software .pa-option-text p {
    font-size: .76rem;
    color: var(--mid);
    line-height: 1.35
}
body.p-online-auction-software .pa-option-price {
    margin-left: auto;
    font-family: var(--serif);
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--ink2);
    white-space: nowrap;
    flex-shrink: 0
}
body.p-online-auction-software .pa-cta {
    display: flex;
    gap: 12px;
    margin-top: 6px;
    align-items: center
}

/* ── PROOF STRIP ── */
body.p-online-auction-software .proof-strip {
    background: var(--bg);
    border-top: 1px solid var(--pale);
    border-bottom: 1px solid var(--pale);
    padding: 32px 40px
}
body.p-online-auction-software .proof-strip-inner {
    max-width: var(--max);
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 24px
}
body.p-online-auction-software .proof-strip-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px
}
body.p-online-auction-software .proof-strip-num {
    font-family: var(--serif);
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--ink2);
    line-height: 1
}
body.p-online-auction-software .proof-strip-label {
    font-size: .7rem;
    font-weight: 500;
    color: var(--light);
    letter-spacing: .04em;
    text-align: center
}

/* ── INTERNAL LINKS ── */
body.p-online-auction-software .internal-links {
    max-width: var(--max);
    margin: 0 auto;
    padding: 0 40px 80px
}
body.p-online-auction-software .il-label {
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--mid);
    margin-bottom: 20px
}
body.p-online-auction-software .il-grid {
    display: grid;
    grid-template-columns:repeat(4, 1fr);
    gap: 12px
}
body.p-online-auction-software .il-card {
    background: var(--bg);
    border-radius: 10px;
    padding: 18px 20px;
    text-decoration: none;
    border: 1.5px solid transparent;
    transition: border-color .15s, background .15s;
    display: block
}
body.p-online-auction-software .il-card:hover {
    border-color: var(--blue);
    background: var(--pale)
}
body.p-online-auction-software .il-card-label {
    font-size: .6rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 6px
}
body.p-online-auction-software .il-card-title {
    font-size: .85rem;
    font-weight: 600;
    color: var(--ink);
    line-height: 1.3;
    margin-bottom: 4px
}
body.p-online-auction-software .il-card-sub {
    font-size: .73rem;
    color: var(--mid)
}

/* ── ANIMATIONS ── */
body.p-online-auction-software .reveal {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity .55s ease, transform .55s ease
}
body.p-online-auction-software .reveal.visible {
    opacity: 1;
    transform: translateY(0)
}

@media (max-width: 900px) {
    body.p-online-auction-software .editorial {
        grid-template-columns:1fr
    }

    body.p-online-auction-software .editorial-aside {
        position: static
    }

    body.p-online-auction-software .format-row {
        grid-template-columns:40px 1fr
    }

    body.p-online-auction-software .format-details, body.p-online-auction-software .format-cta {
        display: none
    }

    body.p-online-auction-software .op-grid {
        grid-template-columns:1fr
    }

    body.p-online-auction-software .own-grid {
        grid-template-columns:1fr
    }

    body.p-online-auction-software .own-card {
        border-radius: 10px !important
    }

    body.p-online-auction-software .pa-inner {
        grid-template-columns:1fr
    }

    body.p-online-auction-software .il-grid {
        grid-template-columns:1fr 1fr
    }

    body.p-online-auction-software .hero {
        padding: 32px 20px 60px
    }

    body.p-online-auction-software .editorial, body.p-online-auction-software .formats, body.p-online-auction-software .one-platform, body.p-online-auction-software .ownership, body.p-online-auction-software .pricing-anchor, body.p-online-auction-software .internal-links {
        padding-left: 20px;
        padding-right: 20px
    }
}

/* ── PAGE: online-auction-software__auction-events ──────────────────────────── */
/* ── HERO ────────────────────────────────────────── */
body.p-online-auction-software__auction-events .hero {
    padding: 40px 40px 80px;
    max-width: var(--max);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: center;
}

body.p-online-auction-software__auction-events h1 {
    font-family: var(--serif);
    font-size: clamp(2.4rem, 4vw, 3.6rem);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.03em;
    color: var(--ink);
    margin-bottom: 24px;
}
body.p-online-auction-software__auction-events h1 .accent {
    color: var(--blue);
}
body.p-online-auction-software__auction-events .hero-sub {
    font-size: 1.08rem;
    color: var(--mid);
    line-height: 1.7;
    margin-bottom: 36px;
    max-width: 520px;
}
body.p-online-auction-software__auction-events .hero-cta-group {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
}

body.p-online-auction-software__auction-events .cta-micro {
    font-size: 0.78rem;
    color: var(--light);
}

/* Hero sidebar — timeline widget */
body.p-online-auction-software__auction-events .hero-timeline {
    background: var(--ink);
    border-radius: 16px;
    padding: 28px;
    position: sticky;
    top: 88px;
}
body.p-online-auction-software__auction-events .tl-label {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.35);
    margin-bottom: 20px;
}
body.p-online-auction-software__auction-events .tl-title {
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 6px;
}
body.p-online-auction-software__auction-events .tl-meta {
    font-size: 0.72rem;
    color: rgba(255, 255, 255, 0.4);
    margin-bottom: 20px;
}
body.p-online-auction-software__auction-events .tl-lots {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
body.p-online-auction-software__auction-events .tl-lot {
    display: grid;
    grid-template-columns: 1fr auto auto;
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    background: rgba(255, 255, 255, 0.04);
    transition: background 0.2s;
}
body.p-online-auction-software__auction-events .tl-lot.closing {
    background: rgba(59, 125, 232, 0.18);
    border-color: rgba(59, 125, 232, 0.4);
    animation: pulse 2s ease-in-out infinite;
}
body.p-online-auction-software__auction-events .tl-lot.closed {
    opacity: 0.45;
}
@keyframes pulse {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(59, 125, 232, 0)
    }
    50% {
        box-shadow: 0 0 0 4px rgba(59, 125, 232, 0.2)
    }
}
.tl-lot-name {
    font-size: 0.75rem;
    color: var(--white);
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.tl-lot.closed .tl-lot-name {
    color: rgba(255, 255, 255, 0.5);
}
.tl-bid {
    font-family: var(--serif);
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--blue2);
}
.tl-lot.closed .tl-bid {
    color: rgba(255, 255, 255, 0.35);
}
.tl-timer {
    font-size: 0.68rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.4);
    white-space: nowrap;
}
.tl-lot.closing .tl-timer {
    color: #fbbf24;
}
.tl-lot.closed .tl-timer {
    color: rgba(255, 255, 255, 0.25);
}
.tl-footer {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.tl-footer-stat {
    text-align: center;
}
.tl-footer-num {
    font-family: var(--serif);
    font-size: 1.3rem;
    font-weight: 800;
    color: var(--white);
    line-height: 1;
}
.tl-footer-lbl {
    font-size: 0.62rem;
    color: rgba(255, 255, 255, 0.35);
    margin-top: 3px;
    letter-spacing: 0.05em;
}
.tl-footer-div {
    width: 1px;
    height: 32px;
    background: rgba(255, 255, 255, 0.1);
}
.tl-note {
    margin-top: 14px;
    font-size: 0.7rem;
    color: rgba(255, 255, 255, 0.3);
    text-align: center;
    line-height: 1.5;
}

/* ── PROOF STRIP ─────────────────────────────────── */
.proof-strip {
    background: var(--bg);
    border-top: 1px solid rgba(30, 45, 77, 0.06);
    border-bottom: 1px solid rgba(30, 45, 77, 0.06);
    padding: 18px 40px;
}
.proof-inner {
    max-width: var(--max);
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 40px;
    flex-wrap: wrap;
}
.proof-label {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--light);
    white-space: nowrap;
    flex-shrink: 0;
}
.proof-items {
    display: flex;
    align-items: center;
    gap: 32px;
    flex-wrap: wrap;
}
.proof-item {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 0.8rem;
    color: var(--mid);
}
.proof-item i {
    color: var(--blue);
    flex-shrink: 0;
}
.proof-div {
    width: 1px;
    height: 16px;
    background: rgba(30, 45, 77, 0.12);
}

/* ── SECTIONS ────────────────────────────────────── */
section {
    padding: 80px 40px;
}
.section-inner {
    max-width: var(--max);
    margin: 0 auto;
}

h2.section-heading {
    font-family: var(--serif);
    font-size: clamp(1.8rem, 3vw, 2.5rem);
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1.15;
    color: var(--ink);
    margin-bottom: 16px;
}
.section-sub {
    font-size: 0.95rem;
    color: var(--mid);
    line-height: 1.65;
    max-width: 580px;
    margin-bottom: 52px;
}

/* ── EDITORIAL ───────────────────────────────────── */
.editorial {
    background: var(--bg);
}
.editorial-body {
    max-width: var(--max);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 340px;
    gap: 80px;
    align-items: start;
}
.editorial-label {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 14px;
}
.editorial-body h2 {
    font-family: var(--serif);
    font-size: clamp(1.5rem, 2.5vw, 2rem);
    font-weight: 800;
    letter-spacing: -0.025em;
    line-height: 1.2;
    color: var(--ink);
    margin-bottom: 20px;
}
.editorial-body p {
    font-size: 0.95rem;
    color: var(--mid);
    line-height: 1.75;
    margin-bottom: 16px;
}
.editorial-body p:last-child {
    margin-bottom: 0;
}
.editorial-body strong {
    color: var(--ink);
    font-weight: 600;
}

.aside-card {
    background: var(--white);
    border-radius: 14px;
    padding: 28px;
    border: 1px solid rgba(30, 45, 77, 0.08);
    box-shadow: 0 4px 24px rgba(30, 45, 77, 0.05);
}
.aside-card h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 18px;
}
.aside-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.aside-list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 0.83rem;
    color: var(--mid);
    line-height: 1.45;
}
.aside-list li::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--blue);
    flex-shrink: 0;
    margin-top: 6px;
}
.aside-divider {
    height: 1px;
    background: rgba(30, 45, 77, 0.07);
    margin: 20px 0;
}
.aside-no-fee {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    background: var(--pale);
    border-radius: 8px;
}
.aside-no-fee-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: var(--green);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--white);
}
.aside-no-fee-text {
    font-size: 0.8rem;
    color: var(--green);
    line-height: 1.4;
    font-weight: 500;
}

/* ── HOW IT WORKS ────────────────────────────────── */
.how-it-works {
    background: var(--white);
}
.stagger-demo {
    max-width: var(--max);
    margin: 0 auto;
}
.stagger-header {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 60px;
    align-items: start;
    margin-bottom: 60px;
}
.stagger-diagram {
    background: var(--ink);
    border-radius: 16px;
    padding: 28px;
}
.sd-title {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.35);
    margin-bottom: 20px;
}
.sd-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}
.sd-row:last-of-type {
    margin-bottom: 0;
}
.sd-lot-label {
    font-size: 0.72rem;
    color: rgba(255, 255, 255, 0.5);
    width: 88px;
    flex-shrink: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.sd-bar-track {
    flex: 1;
    height: 20px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 4px;
    overflow: hidden;
    position: relative;
}
.sd-bar {
    height: 100%;
    border-radius: 4px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 8px;
}
.sd-bar-label {
    font-size: 0.6rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.9);
    white-space: nowrap;
}
.sd-time {
    font-size: 0.65rem;
    color: rgba(255, 255, 255, 0.35);
    width: 52px;
    text-align: right;
    flex-shrink: 0;
}
.sd-closing {
    background: rgba(251, 191, 36, 0.2);
    border: 1px solid rgba(251, 191, 36, 0.4);
    border-radius: 4px;
    padding: 6px 10px;
    margin-top: 16px;
    font-size: 0.7rem;
    color: #fbbf24;
    display: flex;
    align-items: center;
    gap: 7px;
}
.sd-closing::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #fbbf24;
    animation: pulse 1.5s ease-in-out infinite;
    flex-shrink: 0;
}

.steps-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin-top: 48px;
}
.step-card {
    padding: 28px 24px;
    border-radius: 14px;
    border: 1px solid rgba(30, 45, 77, 0.08);
    background: var(--white);
    position: relative;
}
.step-num {
    font-family: var(--serif);
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--pale);
    line-height: 1;
    margin-bottom: 16px;
}
.step-card h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 8px;
    line-height: 1.3;
}
.step-card p {
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.6;
}
.step-connector {
    position: absolute;
    top: 42px;
    right: -13px;
    width: 26px;
    height: 2px;
    background: var(--pale);
    z-index: 1;
}
.steps-grid .step-card:last-child .step-connector {
    display: none;
}

/* ── EVENT TYPES ─────────────────────────────────── */
.event-types {
    background: var(--bg);
}
.event-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    max-width: var(--max);
    margin: 0 auto;
}
.event-card {
    background: var(--white);
    border-radius: 14px;
    padding: 28px 26px;
    border: 1px solid rgba(30, 45, 77, 0.07);
    display: flex;
    flex-direction: column;
    gap: 12px;
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}
.event-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 36px rgba(30, 45, 77, 0.08);
    border-color: var(--blue);
}
.event-card-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.event-card h3 {
    font-family: var(--serif);
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--ink);
    line-height: 1.3;
}
.event-card p {
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.6;
    flex: 1;
}
.event-card-keywords {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 4px;
}
.event-kw {
    font-size: 0.65rem;
    font-weight: 600;
    color: var(--blue);
    background: var(--pale);
    padding: 3px 8px;
    border-radius: 4px;
}
.event-card-typical {
    font-size: 0.72rem;
    color: var(--light);
    margin-top: 2px;
}

/* ── FEATURES ────────────────────────────────────── */
.features-section {
    background: var(--white);
}
.features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    max-width: var(--max);
    margin: 0 auto;
}
.feat-card {
    padding: 26px 24px;
    border-radius: 12px;
    border: 1px solid rgba(30, 45, 77, 0.08);
    background: var(--bg);
}
.feat-card-icon {
    width: 38px;
    height: 38px;
    border-radius: 8px;
    background: var(--pale);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
}
.feat-card h3 {
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 6px;
    line-height: 1.3;
}
.feat-card p {
    font-size: 0.81rem;
    color: var(--mid);
    line-height: 1.6;
}
.feat-card .unique-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--amber);
    background: var(--amber-pale);
    padding: 3px 7px;
    border-radius: 4px;
    margin-top: 8px;
}

/* ── PRICING CALLOUT ─────────────────────────────── */
.pricing-callout {
    background: var(--ink);
    color: var(--white);
}
.pc-inner {
    max-width: var(--max);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}
.pc-left h2 {
    font-family: var(--serif);
    font-size: clamp(1.8rem, 2.8vw, 2.4rem);
    font-weight: 800;
    letter-spacing: -0.03em;
    color: var(--white);
    margin-bottom: 16px;
    line-height: 1.15;
}
.pc-left p {
    font-size: 0.95rem;
    color: rgba(255, 255, 255, 0.55);
    line-height: 1.7;
    margin-bottom: 28px;
}
.pc-comparison {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.pc-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 18px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.05);
    gap: 16px;
}
.pc-row-label {
    font-size: 0.82rem;
    color: rgba(255, 255, 255, 0.6);
}
.pc-row-val {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    white-space: nowrap;
}
.pc-row-val.good {
    color: #4ade80;
}
.pc-row-val.bad {
    color: #f87171;
    text-decoration: line-through;
    font-size: 0.82rem;
    font-family: var(--sans);
    font-weight: 400;
}
.pc-row-sub {
    font-size: 0.68rem;
    color: rgba(255, 255, 255, 0.3);
    margin-top: 2px;
}
.pc-disclaimer {
    font-size: 0.72rem;
    color: rgba(255, 255, 255, 0.25);
    margin-top: 14px;
    line-height: 1.5;
}
.pc-cta-group {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}
.btn-white {
    background: var(--white);
    color: var(--ink);
    font-family: var(--serif);
    font-weight: 700;
    font-size: 0.95rem;
    padding: 14px 28px;
    border-radius: 8px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: background 0.2s;
}
.btn-white:hover {
    background: var(--pale);
}
.btn-ghost {
    border: 1.5px solid rgba(255, 255, 255, 0.2);
    color: rgba(255, 255, 255, 0.8);
    font-family: var(--serif);
    font-weight: 600;
    font-size: 0.9rem;
    padding: 13px 24px;
    border-radius: 8px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: border-color 0.2s, color 0.2s;
}
.btn-ghost:hover {
    border-color: rgba(255, 255, 255, 0.5);
    color: var(--white);
}

/* ── FAQ ─────────────────────────────────────────── */
.faq-section {
    background: var(--bg);
}
.faq-inner {
    max-width: 740px;
    margin: 0 auto;
}
.faq-heading-wrap {
    max-width: var(--max);
    margin: 0 auto 0;
}
.faq-list {
    margin-top: 40px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.faq-item {
    background: var(--white);
    border-radius: 10px;
    border: 1px solid rgba(30, 45, 77, 0.07);
    overflow: hidden;
}
.faq-q {
    padding: 20px 24px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    font-weight: 600;
    font-size: 0.92rem;
    color: var(--ink);
    user-select: none;
}
.faq-q:hover {
    background: var(--bg);
}
.faq-icon {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 1.5px solid rgba(30, 45, 77, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background 0.2s, border-color 0.2s;
}
.faq-item.open .faq-icon {
    background: var(--blue);
    border-color: var(--blue);
}
.faq-icon svg {
    transition: transform 0.2s;
}
.faq-item.open .faq-icon svg {
    transform: rotate(45deg);
}
.faq-icon svg path {
    stroke: var(--mid);
}
.faq-item.open .faq-icon svg path {
    stroke: var(--white);
}
.faq-a {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, padding 0.2s;
}
.faq-item.open .faq-a {
    max-height: 300px;
}
.faq-a-inner {
    padding: 0 24px 22px;
    font-size: 0.88rem;
    color: var(--mid);
    line-height: 1.75;
}
.faq-a-inner strong {
    color: var(--ink);
    font-weight: 600;
}

/* ── INTERNAL LINKS ──────────────────────────────── */
.internal-links {
    background: var(--bg);
}
.il-label {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 28px;
    max-width: var(--max);
    margin-left: auto;
    margin-right: auto;
}
.il-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    max-width: var(--max);
    margin: 0 auto;
}
.il-card {
    background: var(--white);
    border-radius: 12px;
    padding: 28px 24px;
    text-decoration: none;
    border: 1px solid rgba(30, 45, 77, 0.07);
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}
.il-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 36px rgba(30, 45, 77, 0.08);
    border-color: var(--blue);
}
.il-card-icon {
    width: 38px;
    height: 38px;
    border-radius: 9px;
    background: var(--pale);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
}
.il-card h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    color: var(--ink);
    line-height: 1.35;
    letter-spacing: -0.01em;
}
.il-card p {
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.55;
    flex: 1;
}
.il-arrow {
    font-size: 0.8rem;
    color: var(--blue);
    font-weight: 600;
    margin-top: auto;
    display: flex;
    align-items: center;
    gap: 4px;
    transition: gap 0.15s;
}
.il-card:hover .il-arrow {
    gap: 8px;
}

/* ── RESPONSIVE ──────────────────────────────────── */
@media (max-width: 1024px) {
    body.p-online-auction-software__auction-events .hero {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    body.p-online-auction-software__auction-events .hero-timeline {
        position: static;
    }

    body.p-online-auction-software__auction-events .editorial-body {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__auction-events .stagger-header {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__auction-events .pc-inner {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    body.p-online-auction-software__auction-events .steps-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    body.p-online-auction-software__auction-events .event-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    body.p-online-auction-software__auction-events .features-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    body.p-online-auction-software__auction-events .il-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 640px) {
    body.p-online-auction-software__auction-events .hero {
        padding: 32px 20px 60px;
    }

    body.p-online-auction-software__auction-events section {
        padding: 60px 20px;
    }

    body.p-online-auction-software__auction-events .proof-strip {
        padding: 16px 20px;
    }

    body.p-online-auction-software__auction-events .steps-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__auction-events .event-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__auction-events .features-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__auction-events .il-grid {
        grid-template-columns: 1fr;
    }
}

/* ── PAGE: online-auction-software__charity-auctions ──────────────────────────── */
/* ── HERO ── */
body.p-online-auction-software__charity-auctions .hero {
    padding: 40px 40px 80px;
    max-width: var(--max);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 72px;
    align-items: start;
}

body.p-online-auction-software__charity-auctions h1 {
    font-family: var(--serif);
    font-size: clamp(2rem, 4vw, 2.85rem);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.03em;
    color: var(--ink);
    margin-bottom: 20px;
}
body.p-online-auction-software__charity-auctions .hero-lead {
    font-size: 1.05rem;
    color: var(--mid);
    line-height: 1.7;
    margin-bottom: 32px;
    max-width: 520px;
}
body.p-online-auction-software__charity-auctions .hero-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

body.p-online-auction-software__charity-auctions .btn-ghost {
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--mid);
    text-decoration: none;
    padding: 12px 20px;
    border-radius: 7px;
    border: 1px solid rgba(30, 45, 77, 0.18);
    transition: all 0.15s;
    white-space: nowrap;
}
body.p-online-auction-software__charity-auctions .btn-ghost:hover {
    color: var(--ink);
    border-color: var(--ink);
}
body.p-online-auction-software__charity-auctions .hero-trust {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}
body.p-online-auction-software__charity-auctions .trust-item {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--mid);
}
body.p-online-auction-software__charity-auctions .trust-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--blue);
    flex-shrink: 0;
}

/* Cost card */
body.p-online-auction-software__charity-auctions .cost-card {
    background: var(--ink);
    border-radius: 16px;
    overflow: hidden;
}
body.p-online-auction-software__charity-auctions .cost-card-header {
    padding: 20px 24px 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
body.p-online-auction-software__charity-auctions .cost-card-header h3 {
    font-family: var(--serif);
    font-size: 0.9rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 4px;
}
body.p-online-auction-software__charity-auctions .cost-card-header p {
    font-size: 0.78rem;
    color: rgba(255, 255, 255, 0.4);
}
body.p-online-auction-software__charity-auctions .cost-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 24px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    gap: 12px;
}
body.p-online-auction-software__charity-auctions .cost-row:last-child {
    border-bottom: none;
}
body.p-online-auction-software__charity-auctions .cost-row.ppb {
    background: rgba(59, 125, 232, 0.2);
}
body.p-online-auction-software__charity-auctions .cost-row-label {
    font-size: 0.82rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.65);
}
body.p-online-auction-software__charity-auctions .cost-row-sub {
    font-size: 0.68rem;
    color: rgba(255, 255, 255, 0.3);
    margin-top: 2px;
}
body.p-online-auction-software__charity-auctions .cost-row.ppb .cost-row-label {
    color: #7db8f7;
    font-weight: 600;
}
body.p-online-auction-software__charity-auctions .cost-row.ppb .cost-row-sub {
    color: rgba(125, 184, 247, 0.6);
}
body.p-online-auction-software__charity-auctions .cost-row-price {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 800;
    color: rgba(255, 255, 255, 0.4);
    white-space: nowrap;
    flex-shrink: 0;
}
body.p-online-auction-software__charity-auctions .cost-row.ppb .cost-row-price {
    color: #7db8f7;
}
body.p-online-auction-software__charity-auctions .cost-card-footer {
    padding: 14px 24px;
    background: rgba(255, 255, 255, 0.04);
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.3);
    font-style: italic;
}

/* ── SHARED ── */
body.p-online-auction-software__charity-auctions section {
    padding: 72px 40px;
}
body.p-online-auction-software__charity-auctions .section-inner {
    max-width: var(--max);
    margin: 0 auto;
}

body.p-online-auction-software__charity-auctions h2.section-h2 {
    font-family: var(--serif);
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    font-weight: 800;
    letter-spacing: -0.025em;
    color: var(--ink);
    line-height: 1.2;
    margin-bottom: 14px;
}
body.p-online-auction-software__charity-auctions .section-sub {
    font-size: 1rem;
    color: var(--mid);
    max-width: 580px;
    line-height: 1.65;
    margin-bottom: 48px;
}

/* ── AUCTION TYPES ── */
body.p-online-auction-software__charity-auctions .types-section {
    background: var(--bg);
}
body.p-online-auction-software__charity-auctions .types-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}
body.p-online-auction-software__charity-auctions .type-card {
    background: var(--white);
    border: 1px solid var(--pale);
    border-radius: 12px;
    padding: 24px 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    transition: box-shadow 0.2s, border-color 0.2s;
}
body.p-online-auction-software__charity-auctions .type-card:hover {
    box-shadow: 0 4px 20px rgba(30, 45, 77, 0.08);
    border-color: #c8daf8;
}
body.p-online-auction-software__charity-auctions .type-icon {
    font-size: 1.4rem;
}
body.p-online-auction-software__charity-auctions .type-card h3 {
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--ink);
    line-height: 1.3;
}
body.p-online-auction-software__charity-auctions .type-card p {
    font-size: 0.8rem;
    color: var(--mid);
    line-height: 1.55;
    flex: 1;
}
body.p-online-auction-software__charity-auctions .type-keywords {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: auto;
    padding-top: 8px;
    border-top: 1px solid var(--pale);
}
body.p-online-auction-software__charity-auctions .type-kw {
    font-size: 0.65rem;
    font-weight: 600;
    color: var(--light);
    background: var(--bg);
    border: 1px solid var(--pale);
    border-radius: 4px;
    padding: 2px 7px;
}

/* ── FEATURES ── */
body.p-online-auction-software__charity-auctions .features-section {
    background: var(--white);
}
body.p-online-auction-software__charity-auctions .features-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: start;
}
body.p-online-auction-software__charity-auctions .features-copy h2 {
    font-family: var(--serif);
    font-size: clamp(1.6rem, 3vw, 2.1rem);
    font-weight: 800;
    letter-spacing: -0.025em;
    color: var(--ink);
    line-height: 1.2;
    margin-bottom: 16px;
}
body.p-online-auction-software__charity-auctions .features-copy > p {
    font-size: 0.95rem;
    color: var(--mid);
    line-height: 1.7;
    margin-bottom: 28px;
}
body.p-online-auction-software__charity-auctions .feature-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
body.p-online-auction-software__charity-auctions .feat-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}
body.p-online-auction-software__charity-auctions .feat-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--blue);
    flex-shrink: 0;
    margin-top: 6px;
}
body.p-online-auction-software__charity-auctions .feat-item strong {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--ink);
    margin-bottom: 2px;
}
body.p-online-auction-software__charity-auctions .feat-item span {
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.5;
}
body.p-online-auction-software__charity-auctions .features-cards {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
body.p-online-auction-software__charity-auctions .feat-card {
    background: var(--bg);
    border: 1px solid var(--pale);
    border-radius: 10px;
    padding: 18px 20px;
}
body.p-online-auction-software__charity-auctions .feat-card h4 {
    font-family: var(--serif);
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 6px;
}
body.p-online-auction-software__charity-auctions .feat-card p {
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.55;
}

/* ── COST SECTION ── */
body.p-online-auction-software__charity-auctions .cost-section {
    background: var(--bg);
}
body.p-online-auction-software__charity-auctions .cost-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: start;
}
body.p-online-auction-software__charity-auctions .cost-copy > p {
    font-size: 0.95rem;
    color: var(--mid);
    line-height: 1.7;
    margin-bottom: 18px;
}
body.p-online-auction-software__charity-auctions .savings-callout {
    background: var(--pale);
    border: 1px solid #c8daf8;
    border-radius: 10px;
    padding: 18px 20px;
    margin-top: 20px;
}
body.p-online-auction-software__charity-auctions .savings-callout p {
    font-size: 0.85rem;
    color: var(--ink);
    line-height: 1.6;
}
body.p-online-auction-software__charity-auctions .savings-callout strong {
    font-weight: 700;
    color: var(--blue);
}
body.p-online-auction-software__charity-auctions .cost-table-wrap {
    background: var(--white);
    border: 1px solid var(--pale);
    border-radius: 14px;
    overflow: hidden;
}
body.p-online-auction-software__charity-auctions .cost-table {
    width: 100%;
    border-collapse: collapse;
}
body.p-online-auction-software__charity-auctions .cost-table thead tr {
    background: var(--ink);
}
body.p-online-auction-software__charity-auctions .cost-table thead th {
    padding: 13px 18px;
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--white);
    text-align: left;
}
body.p-online-auction-software__charity-auctions .cost-table thead th:first-child {
    border-radius: 13px 0 0 0;
}
body.p-online-auction-software__charity-auctions .cost-table thead th:last-child {
    border-radius: 0 13px 0 0;
}
body.p-online-auction-software__charity-auctions .cost-table thead th.ppb-col {
    background: var(--blue);
}
body.p-online-auction-software__charity-auctions .cost-table tbody tr {
    border-bottom: 1px solid var(--pale);
}
body.p-online-auction-software__charity-auctions .cost-table tbody tr:last-child {
    border-bottom: none;
}
body.p-online-auction-software__charity-auctions .cost-table tbody td {
    padding: 12px 18px;
    font-size: 0.82rem;
    color: var(--mid);
    vertical-align: middle;
}
body.p-online-auction-software__charity-auctions .cost-table tbody td:first-child {
    color: var(--ink);
    font-weight: 500;
}
body.p-online-auction-software__charity-auctions .cost-table tbody td.ppb-col {
    background: rgba(59, 125, 232, 0.04);
}
body.p-online-auction-software__charity-auctions .check-y {
    color: var(--grass);
    font-weight: 700;
}
body.p-online-auction-software__charity-auctions .check-n {
    color: #ccc;
}
body.p-online-auction-software__charity-auctions .check-p {
    color: var(--amber);
    font-size: 0.78rem;
    font-weight: 600;
}

/* ── WHO ── */
body.p-online-auction-software__charity-auctions .who-section {
    background: var(--white);
}
body.p-online-auction-software__charity-auctions .who-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
body.p-online-auction-software__charity-auctions .who-card {
    border: 1px solid var(--pale);
    border-radius: 14px;
    padding: 28px;
    background: var(--bg);
}
body.p-online-auction-software__charity-auctions .who-card h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 10px;
}
body.p-online-auction-software__charity-auctions .who-card > p {
    font-size: 0.84rem;
    color: var(--mid);
    line-height: 1.65;
    margin-bottom: 16px;
}
body.p-online-auction-software__charity-auctions .who-uses {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
body.p-online-auction-software__charity-auctions .who-uses li {
    font-size: 0.8rem;
    color: var(--mid);
    display: flex;
    align-items: flex-start;
    gap: 8px;
    line-height: 1.45;
}
body.p-online-auction-software__charity-auctions .who-uses li::before {
    content: '—';
    color: var(--light);
    flex-shrink: 0;
}

/* ── PRICING ── */
body.p-online-auction-software__charity-auctions .pricing-section {
    background: var(--bg);
}
body.p-online-auction-software__charity-auctions .pricing-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 20px;
}
body.p-online-auction-software__charity-auctions .price-card {
    border: 1px solid var(--pale);
    border-radius: 14px;
    padding: 28px;
    background: var(--white);
}
body.p-online-auction-software__charity-auctions .price-card.featured {
    border-color: var(--blue);
    box-shadow: 0 4px 24px rgba(59, 125, 232, 0.12);
}
body.p-online-auction-software__charity-auctions .price-badge {
    display: inline-block;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    background: var(--blue);
    color: var(--white);
    padding: 3px 10px;
    border-radius: 20px;
    margin-bottom: 14px;
}
body.p-online-auction-software__charity-auctions .price-card h3 {
    font-family: var(--serif);
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 6px;
}
body.p-online-auction-software__charity-auctions .price-val {
    font-family: var(--serif);
    font-size: 2rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.03em;
    margin: 12px 0 4px;
}
body.p-online-auction-software__charity-auctions .price-val span {
    font-size: 1rem;
    font-weight: 500;
    color: var(--mid);
}
body.p-online-auction-software__charity-auctions .price-note {
    font-size: 0.78rem;
    color: var(--light);
    margin-bottom: 18px;
}
body.p-online-auction-software__charity-auctions .price-desc {
    font-size: 0.84rem;
    color: var(--mid);
    line-height: 1.6;
    margin-bottom: 20px;
}
body.p-online-auction-software__charity-auctions .price-card a {
    display: block;
    text-align: center;
    padding: 11px;
    border-radius: 7px;
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s;
}
body.p-online-auction-software__charity-auctions .price-card.featured a {
    background: var(--blue);
    color: var(--white);
}
body.p-online-auction-software__charity-auctions .price-card.featured a:hover {
    background: var(--blue2);
}
body.p-online-auction-software__charity-auctions .price-card:not(.featured) a {
    background: var(--pale);
    color: var(--blue);
}
body.p-online-auction-software__charity-auctions .price-card:not(.featured) a:hover {
    background: var(--blue);
    color: var(--white);
}
body.p-online-auction-software__charity-auctions .price-note-box {
    background: var(--white);
    border: 1px solid var(--pale);
    border-radius: 10px;
    padding: 16px 20px;
    font-size: 0.84rem;
    color: var(--mid);
    line-height: 1.6;
}
body.p-online-auction-software__charity-auctions .price-note-box strong {
    color: var(--ink);
}

/* ── FAQ ── */
body.p-online-auction-software__charity-auctions .faq-section {
    background: var(--white);
}
body.p-online-auction-software__charity-auctions .faq-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
body.p-online-auction-software__charity-auctions .faq-item {
    background: var(--bg);
    border: 1px solid var(--pale);
    border-radius: 12px;
    padding: 24px;
}
body.p-online-auction-software__charity-auctions .faq-item h4 {
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 10px;
}
body.p-online-auction-software__charity-auctions .faq-item p {
    font-size: 0.875rem;
    color: var(--mid);
    line-height: 1.65;
}

/* ── CTA ── */
body.p-online-auction-software__charity-auctions .cta-section {
    background: var(--ink);
    padding: 80px 40px;
}
body.p-online-auction-software__charity-auctions .cta-inner {
    max-width: 600px;
    margin: 0 auto;
    text-align: center;
}
body.p-online-auction-software__charity-auctions .cta-inner h2 {
    font-family: var(--serif);
    font-size: clamp(1.7rem, 3vw, 2.2rem);
    font-weight: 800;
    color: var(--white);
    letter-spacing: -0.025em;
    margin-bottom: 16px;
}
body.p-online-auction-software__charity-auctions .cta-inner p {
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.65);
    line-height: 1.65;
    margin-bottom: 32px;
}
body.p-online-auction-software__charity-auctions .cta-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}
body.p-online-auction-software__charity-auctions .cta-primary {
    background: var(--blue);
    color: var(--white);
    font-family: var(--serif);
    font-weight: 600;
    font-size: 1rem;
    padding: 14px 32px;
    border-radius: 7px;
    text-decoration: none;
    transition: background 0.2s;
}
body.p-online-auction-software__charity-auctions .cta-primary:hover {
    background: var(--blue2);
}
body.p-online-auction-software__charity-auctions .cta-ghost {
    color: rgba(255, 255, 255, 0.65);
    font-size: 0.9rem;
    font-weight: 500;
    text-decoration: none;
    padding: 13px 20px;
    border-radius: 7px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: all 0.15s;
}
body.p-online-auction-software__charity-auctions .cta-ghost:hover {
    color: var(--white);
    border-color: rgba(255, 255, 255, 0.5);
}

/* ── INTERNAL LINKS ── */
body.p-online-auction-software__charity-auctions .internal-links {
    background: var(--bg);
    padding: 64px 40px;
}
body.p-online-auction-software__charity-auctions .il-label {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 28px;
    max-width: var(--max);
    margin-left: auto;
    margin-right: auto;
    display: block;
}
body.p-online-auction-software__charity-auctions .il-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    max-width: var(--max);
    margin: 0 auto;
}
body.p-online-auction-software__charity-auctions .il-card {
    background: var(--white);
    border-radius: 12px;
    padding: 28px 24px;
    text-decoration: none;
    border: 1px solid rgba(30, 45, 77, 0.07);
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}
body.p-online-auction-software__charity-auctions .il-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 36px rgba(30, 45, 77, 0.08);
    border-color: var(--blue);
}
body.p-online-auction-software__charity-auctions .il-card-icon {
    width: 38px;
    height: 38px;
    border-radius: 9px;
    background: var(--pale);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
}
body.p-online-auction-software__charity-auctions .il-card h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    color: var(--ink);
    line-height: 1.35;
    letter-spacing: -0.01em;
}
body.p-online-auction-software__charity-auctions .il-card p {
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.55;
    flex: 1;
}
body.p-online-auction-software__charity-auctions .il-arrow {
    font-size: 0.8rem;
    color: var(--blue);
    font-weight: 600;
    margin-top: auto;
}

/* ── RESPONSIVE ── */
@media (max-width: 1024px) {
    body.p-online-auction-software__charity-auctions .hero {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    body.p-online-auction-software__charity-auctions .types-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    body.p-online-auction-software__charity-auctions .features-split {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__charity-auctions .cost-split {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__charity-auctions .who-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    body.p-online-auction-software__charity-auctions .pricing-cards {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__charity-auctions .faq-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__charity-auctions .il-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 640px) {
    body.p-online-auction-software__charity-auctions .hero {
        padding: 32px 20px 60px;
    }

    body.p-online-auction-software__charity-auctions section {
        padding: 60px 20px;
    }

    body.p-online-auction-software__charity-auctions .types-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__charity-auctions .who-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__charity-auctions .il-grid {
        grid-template-columns: 1fr;
    }
}

/* ── PAGE: online-auction-software__estate-sales ──────────────────────────── */
/* ── HERO ── */
body.p-online-auction-software__estate-sales .hero {
    padding: 40px 40px 72px;
    max-width: var(--max);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 64px;
    align-items: center;
}

body.p-online-auction-software__estate-sales h1 {
    font-family: var(--serif);
    font-size: clamp(2rem, 3.5vw, 2.8rem);
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.03em;
    line-height: 1.12;
    margin-bottom: 20px;
}
body.p-online-auction-software__estate-sales h1 .accent {
    color: var(--blue);
}
body.p-online-auction-software__estate-sales .hero-sub {
    font-size: 1rem;
    color: var(--mid);
    line-height: 1.75;
    margin-bottom: 32px;
}
body.p-online-auction-software__estate-sales .hero-ctas {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

/* Cost card */
body.p-online-auction-software__estate-sales .cost-card {
    background: var(--ink);
    border-radius: 14px;
    padding: 28px;
    color: white;
}
body.p-online-auction-software__estate-sales .cost-card-label {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.45);
    margin-bottom: 20px;
}
body.p-online-auction-software__estate-sales .cost-scenario {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
body.p-online-auction-software__estate-sales .cost-scenario:last-of-type {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}
body.p-online-auction-software__estate-sales .cost-scenario-title {
    font-size: 0.72rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.5);
    margin-bottom: 10px;
    letter-spacing: 0.02em;
}
body.p-online-auction-software__estate-sales .cost-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}
body.p-online-auction-software__estate-sales .cost-row-label {
    font-size: 0.78rem;
    color: rgba(255, 255, 255, 0.55);
}
body.p-online-auction-software__estate-sales .cost-row-val {
    font-family: var(--serif);
    font-size: 0.88rem;
    font-weight: 700;
}
body.p-online-auction-software__estate-sales .cost-row-val.red {
    color: #f87171;
}
body.p-online-auction-software__estate-sales .cost-row-val.green {
    color: #4ade80;
}
body.p-online-auction-software__estate-sales .cost-row-val.neutral {
    color: rgba(255, 255, 255, 0.8);
}
body.p-online-auction-software__estate-sales .cost-total {
    background: rgba(255, 255, 255, 0.05);
    border-radius: 6px;
    padding: 10px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 8px;
}
body.p-online-auction-software__estate-sales .cost-total-label {
    font-size: 0.72rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.5);
    letter-spacing: 0.04em;
    text-transform: uppercase;
}
body.p-online-auction-software__estate-sales .cost-total-val {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 800;
}
body.p-online-auction-software__estate-sales .cost-total-val.red {
    color: #f87171;
}
body.p-online-auction-software__estate-sales .cost-total-val.green {
    color: #4ade80;
}
body.p-online-auction-software__estate-sales .cost-note {
    font-size: 0.68rem;
    color: rgba(255, 255, 255, 0.3);
    margin-top: 14px;
    line-height: 1.5;
}

/* ── SHARED SECTION ── */

body.p-online-auction-software__estate-sales h2.section-h2 {
    font-family: var(--serif);
    font-size: clamp(1.6rem, 2.8vw, 2.2rem);
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.03em;
    line-height: 1.15;
    margin-bottom: 16px;
}
body.p-online-auction-software__estate-sales .section-body {
    font-size: 0.92rem;
    color: var(--mid);
    line-height: 1.8;
}
body.p-online-auction-software__estate-sales .section-body p {
    margin-bottom: 14px;
}
body.p-online-auction-software__estate-sales .section-body p:last-child {
    margin-bottom: 0;
}
body.p-online-auction-software__estate-sales .section-body strong {
    color: var(--ink);
    font-weight: 600;
}

/* ── PAIN SECTION ── */
body.p-online-auction-software__estate-sales .pain-section {
    background: var(--bg);
    border-top: 1px solid rgba(30, 45, 77, 0.06);
    border-bottom: 1px solid rgba(30, 45, 77, 0.06);
    padding: 72px 40px;
}
body.p-online-auction-software__estate-sales .pain-inner {
    max-width: var(--max);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: start;
}
body.p-online-auction-software__estate-sales .pain-points {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
body.p-online-auction-software__estate-sales .pain-point {
    background: var(--white);
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    border-radius: 10px;
    padding: 18px 20px;
    display: flex;
    gap: 14px;
    align-items: flex-start;
}
body.p-online-auction-software__estate-sales .pain-icon {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: #fdecea;
    border: 1px solid #f5a8a8;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--red);
}
body.p-online-auction-software__estate-sales .pain-text h4 {
    font-family: var(--serif);
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 4px;
    letter-spacing: -0.01em;
}
body.p-online-auction-software__estate-sales .pain-text p {
    font-size: 0.78rem;
    color: var(--mid);
    line-height: 1.55;
}

/* ── HOW IT WORKS ── */
body.p-online-auction-software__estate-sales .how-section {
    max-width: var(--max);
    margin: 0 auto;
    padding: 72px 40px;
}
body.p-online-auction-software__estate-sales .how-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    margin-top: 48px;
    position: relative;
}
body.p-online-auction-software__estate-sales .how-grid::before {
    content: '';
    position: absolute;
    top: 24px;
    left: 14%;
    right: 14%;
    height: 1.5px;
    background: linear-gradient(90deg, var(--pale) 0%, var(--blue) 50%, var(--pale) 100%);
    z-index: 0;
}
body.p-online-auction-software__estate-sales .how-step {
    text-align: center;
    padding: 0 12px;
    position: relative;
    z-index: 1;
}
body.p-online-auction-software__estate-sales .how-num {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--white);
    border: 2px solid var(--pale);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 18px;
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 800;
    color: var(--blue);
    transition: border-color 0.2s, background 0.2s;
}
body.p-online-auction-software__estate-sales .how-step:hover .how-num {
    border-color: var(--blue);
    background: var(--pale);
}
body.p-online-auction-software__estate-sales .how-step h4 {
    font-family: var(--serif);
    font-size: 0.88rem;
    font-weight: 800;
    color: var(--ink);
    margin-bottom: 8px;
    letter-spacing: -0.01em;
}
body.p-online-auction-software__estate-sales .how-step p {
    font-size: 0.76rem;
    color: var(--mid);
    line-height: 1.6;
}

/* ── FEATURES ── */
body.p-online-auction-software__estate-sales .features-section {
    background: var(--bg);
    border-top: 1px solid rgba(30, 45, 77, 0.06);
    border-bottom: 1px solid rgba(30, 45, 77, 0.06);
    padding: 72px 40px;
}
body.p-online-auction-software__estate-sales .features-inner {
    max-width: var(--max);
    margin: 0 auto;
}
body.p-online-auction-software__estate-sales .features-intro {
    max-width: 600px;
    margin-bottom: 48px;
}
body.p-online-auction-software__estate-sales .features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
body.p-online-auction-software__estate-sales .feature-card {
    background: var(--white);
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    border-radius: 12px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
}
body.p-online-auction-software__estate-sales .feature-card:hover {
    border-color: rgba(59, 125, 232, 0.25);
    box-shadow: 0 4px 20px rgba(30, 45, 77, 0.07);
    transform: translateY(-2px);
}
body.p-online-auction-software__estate-sales .feature-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--pale);
    border: 1px solid rgba(59, 125, 232, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
}
body.p-online-auction-software__estate-sales .feature-card h3 {
    font-family: var(--serif);
    font-size: 0.92rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.01em;
    line-height: 1.25;
}
body.p-online-auction-software__estate-sales .feature-card p {
    font-size: 0.78rem;
    color: var(--mid);
    line-height: 1.65;
}

/* ── Q&A SECTION ── */
body.p-online-auction-software__estate-sales .qa-section {
    max-width: var(--max);
    margin: 0 auto;
    padding: 72px 40px;
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 64px;
    align-items: start;
}
body.p-online-auction-software__estate-sales .qa-nav {
    position: sticky;
    top: 88px;
}
body.p-online-auction-software__estate-sales .qa-nav-label {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 14px;
}
body.p-online-auction-software__estate-sales .qa-nav-link {
    display: block;
    font-size: 0.82rem;
    color: var(--light);
    padding: 9px 0 9px 16px;
    border-left: 2px solid rgba(30, 45, 77, 0.08);
    text-decoration: none;
    transition: color 0.15s, border-color 0.15s;
    margin-bottom: 2px;
}
body.p-online-auction-software__estate-sales .qa-nav-link:hover {
    color: var(--mid);
    border-left-color: var(--light);
}
body.p-online-auction-software__estate-sales .qa-content {
    display: flex;
    flex-direction: column;
    gap: 0;
}
body.p-online-auction-software__estate-sales .qa-item {
    padding: 28px 0;
    border-bottom: 1px solid rgba(30, 45, 77, 0.07);
}
body.p-online-auction-software__estate-sales .qa-item:first-child {
    padding-top: 0;
}
body.p-online-auction-software__estate-sales .qa-item:last-child {
    border-bottom: none;
}
body.p-online-auction-software__estate-sales .qa-q {
    font-family: var(--serif);
    font-size: 1.05rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.02em;
    line-height: 1.3;
    margin-bottom: 12px;
}
body.p-online-auction-software__estate-sales .qa-a {
    font-size: 0.9rem;
    color: var(--mid);
    line-height: 1.8;
}
body.p-online-auction-software__estate-sales .qa-a p {
    margin-bottom: 10px;
}
body.p-online-auction-software__estate-sales .qa-a p:last-child {
    margin-bottom: 0;
}
body.p-online-auction-software__estate-sales .qa-a strong {
    color: var(--ink);
    font-weight: 600;
}
body.p-online-auction-software__estate-sales .qa-a ul {
    list-style: none;
    margin: 8px 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
body.p-online-auction-software__estate-sales .qa-a ul li {
    position: relative;
    padding-left: 18px;
    font-size: 0.87rem;
    color: var(--mid);
}
body.p-online-auction-software__estate-sales .qa-a ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 9px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--blue);
}

/* ── CTA SECTION ── */
body.p-online-auction-software__estate-sales .cta-section {
    background: var(--ink);
    padding: 72px 40px;
    position: relative;
    overflow: hidden;
}
body.p-online-auction-software__estate-sales .cta-section::before {
    content: '';
    position: absolute;
    top: -80px;
    right: -80px;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(59, 125, 232, 0.12), transparent 70%);
}
body.p-online-auction-software__estate-sales .cta-inner {
    max-width: var(--max);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: center;
    position: relative;
    z-index: 1;
}
body.p-online-auction-software__estate-sales .cta-text h2 {
    font-family: var(--serif);
    font-size: clamp(1.7rem, 3vw, 2.4rem);
    font-weight: 800;
    color: var(--white);
    letter-spacing: -0.03em;
    line-height: 1.15;
    margin-bottom: 16px;
}
body.p-online-auction-software__estate-sales .cta-text p {
    font-size: 0.92rem;
    color: rgba(255, 255, 255, 0.55);
    line-height: 1.7;
    margin-bottom: 8px;
}
body.p-online-auction-software__estate-sales .cta-plans {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 8px;
}
body.p-online-auction-software__estate-sales .cta-plan {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    padding: 16px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
body.p-online-auction-software__estate-sales .cta-plan-name {
    font-family: var(--serif);
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 3px;
}
body.p-online-auction-software__estate-sales .cta-plan-desc {
    font-size: 0.72rem;
    color: rgba(255, 255, 255, 0.45);
    line-height: 1.4;
}
body.p-online-auction-software__estate-sales .cta-plan-price {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 800;
    color: var(--white);
    white-space: nowrap;
    flex-shrink: 0;
}
body.p-online-auction-software__estate-sales .cta-plan-price span {
    font-size: 0.65rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.45);
    display: block;
    text-align: right;
}

body.p-online-auction-software__estate-sales .cta-btn-primary {
    background: var(--blue);
    color: white;
    font-family: var(--serif);
    font-weight: 700;
    font-size: 0.9rem;
    padding: 13px 28px;
    border-radius: 7px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: background 0.15s, transform 0.15s;
}
body.p-online-auction-software__estate-sales .cta-btn-primary:hover {
    background: var(--blue2);
    transform: translateY(-1px);
}
body.p-online-auction-software__estate-sales .cta-btn-primary svg {
    flex-shrink: 0;
}
body.p-online-auction-software__estate-sales .cta-btn-secondary {
    color: rgba(255, 255, 255, 0.65);
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    transition: color 0.15s;
}
body.p-online-auction-software__estate-sales .cta-btn-secondary:hover {
    color: white;
}
body.p-online-auction-software__estate-sales .cta-checklist {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    padding: 28px;
}
body.p-online-auction-software__estate-sales .cta-checklist-label {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.35);
    margin-bottom: 20px;
}
body.p-online-auction-software__estate-sales .cta-check-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 12px;
}
body.p-online-auction-software__estate-sales .cta-check-item:last-child {
    margin-bottom: 0;
}
body.p-online-auction-software__estate-sales .cta-check-item svg {
    flex-shrink: 0;
    margin-top: 2px;
}
body.p-online-auction-software__estate-sales .cta-check-item span {
    font-size: 0.82rem;
    color: rgba(255, 255, 255, 0.65);
}

/* ── RELATED LINKS ── */
body.p-online-auction-software__estate-sales .related-section {
    max-width: var(--max);
    margin: 0 auto;
    padding: 56px 40px;
}
body.p-online-auction-software__estate-sales .related-heading {
    font-family: var(--serif);
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.02em;
    margin-bottom: 24px;
}
body.p-online-auction-software__estate-sales .related-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
body.p-online-auction-software__estate-sales .related-card {
    background: var(--white);
    border: 1.5px solid rgba(30, 45, 77, 0.08);
    border-radius: 10px;
    padding: 20px 22px;
    text-decoration: none;
    color: inherit;
    display: flex;
    align-items: center;
    gap: 14px;
    transition: border-color 0.2s, background 0.2s, transform 0.15s;
}
body.p-online-auction-software__estate-sales .related-card:hover {
    border-color: rgba(59, 125, 232, 0.25);
    background: var(--pale);
    transform: translateY(-2px);
}
body.p-online-auction-software__estate-sales .related-icon {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: var(--pale);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--ink);
}
body.p-online-auction-software__estate-sales .related-text {
    flex: 1;
}
body.p-online-auction-software__estate-sales .related-text h4 {
    font-family: var(--serif);
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 2px;
    letter-spacing: -0.01em;
}
body.p-online-auction-software__estate-sales .related-text p {
    font-size: 0.72rem;
    color: var(--mid);
    line-height: 1.4;
}
body.p-online-auction-software__estate-sales .related-arrow {
    color: var(--light);
    transition: transform 0.2s, color 0.2s;
    flex-shrink: 0;
}
body.p-online-auction-software__estate-sales .related-card:hover .related-arrow {
    transform: translateX(4px);
    color: var(--blue);
}

/* ── RESPONSIVE ── */
@media (max-width: 960px) {
    body.p-online-auction-software__estate-sales .hero {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    body.p-online-auction-software__estate-sales .pain-inner {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    body.p-online-auction-software__estate-sales .how-grid {
        grid-template-columns: 1fr 1fr;
        gap: 32px;
    }

    body.p-online-auction-software__estate-sales .how-grid::before {
        display: none;
    }

    body.p-online-auction-software__estate-sales .features-grid {
        grid-template-columns: 1fr 1fr;
    }

    body.p-online-auction-software__estate-sales .qa-section {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    body.p-online-auction-software__estate-sales .qa-nav {
        display: none;
    }

    body.p-online-auction-software__estate-sales .cta-inner {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    body.p-online-auction-software__estate-sales .related-grid {
        grid-template-columns: 1fr 1fr;
    }
}
@media (max-width: 560px) {
    body.p-online-auction-software__estate-sales .hero, body.p-online-auction-software__estate-sales .pain-section, body.p-online-auction-software__estate-sales .how-section, body.p-online-auction-software__estate-sales .features-section, body.p-online-auction-software__estate-sales .cta-section, body.p-online-auction-software__estate-sales .related-section {
        padding-left: 20px;
        padding-right: 20px;
    }

    body.p-online-auction-software__estate-sales .qa-section {
        padding: 60px 20px;
    }

    body.p-online-auction-software__estate-sales .features-grid, body.p-online-auction-software__estate-sales .related-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__estate-sales .how-grid {
        grid-template-columns: 1fr;
    }
}

/* ── PAGE: online-auction-software__marketplace-webstore ──────────────────────────── */
/* ── HERO ── */
body.p-online-auction-software__marketplace-webstore .hero {
    padding: 40px 40px 80px;
    max-width: var(--max);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 80px;
    align-items: start;
}

body.p-online-auction-software__marketplace-webstore h1 {
    font-family: var(--serif);
    font-size: clamp(2rem, 4vw, 2.9rem);
    font-weight: 800;
    line-height: 1.13;
    letter-spacing: -0.03em;
    color: var(--ink);
    margin-bottom: 20px;
}
body.p-online-auction-software__marketplace-webstore .hero-sub {
    font-size: 1.1rem;
    color: var(--mid);
    line-height: 1.65;
    margin-bottom: 32px;
    max-width: 520px;
}
body.p-online-auction-software__marketplace-webstore .hero-cta {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 44px;
}

body.p-online-auction-software__marketplace-webstore .btn-ghost {
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--mid);
    text-decoration: none;
    padding: 12px 20px;
    border-radius: 7px;
    border: 1px solid rgba(30, 45, 77, 0.18);
    transition: all 0.15s;
    white-space: nowrap;
}
body.p-online-auction-software__marketplace-webstore .btn-ghost:hover {
    color: var(--ink);
    border-color: var(--ink);
}
body.p-online-auction-software__marketplace-webstore .hero-trust {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}
body.p-online-auction-software__marketplace-webstore .trust-item {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--mid);
}
body.p-online-auction-software__marketplace-webstore .trust-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--grass);
    flex-shrink: 0;
}

/* Hero right — mode switcher card */
body.p-online-auction-software__marketplace-webstore .hero-card {
    background: var(--bg);
    border: 1px solid var(--pale);
    border-radius: 16px;
    overflow: hidden;
}
body.p-online-auction-software__marketplace-webstore .hero-card-tabs {
    display: flex;
    border-bottom: 1px solid var(--pale);
}
body.p-online-auction-software__marketplace-webstore .hero-tab {
    flex: 1;
    padding: 14px 16px;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--mid);
    text-align: center;
    cursor: pointer;
    border: none;
    background: none;
    transition: all 0.15s;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
}
body.p-online-auction-software__marketplace-webstore .hero-tab.active {
    color: var(--blue);
    border-bottom-color: var(--blue);
    background: var(--white);
}
body.p-online-auction-software__marketplace-webstore .hero-tab-panel {
    display: none;
    padding: 24px;
}
body.p-online-auction-software__marketplace-webstore .hero-tab-panel.active {
    display: block;
}
body.p-online-auction-software__marketplace-webstore .hero-tab-panel h3 {
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 14px;
}
body.p-online-auction-software__marketplace-webstore .use-case-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
body.p-online-auction-software__marketplace-webstore .use-case-list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 0.84rem;
    color: var(--mid);
    line-height: 1.45;
}
body.p-online-auction-software__marketplace-webstore .use-case-list li::before {
    content: '';
    width: 16px;
    height: 16px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 1px;
    background: var(--grass-pale) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 8l3 3 5-5' stroke='%231a6b45' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* ── SECTION SHARED ── */
body.p-online-auction-software__marketplace-webstore section {
    padding: 72px 40px;
}
body.p-online-auction-software__marketplace-webstore .section-inner {
    max-width: var(--max);
    margin: 0 auto;
}

body.p-online-auction-software__marketplace-webstore h2.section-h2 {
    font-family: var(--serif);
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    font-weight: 800;
    letter-spacing: -0.025em;
    color: var(--ink);
    line-height: 1.2;
    margin-bottom: 14px;
}
body.p-online-auction-software__marketplace-webstore .section-sub {
    font-size: 1rem;
    color: var(--mid);
    max-width: 560px;
    line-height: 1.65;
    margin-bottom: 48px;
}

/* ── WEBSTORE SECTION ── */
body.p-online-auction-software__marketplace-webstore .webstore-section {
    background: var(--white);
}
body.p-online-auction-software__marketplace-webstore .webstore-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-bottom: 48px;
}
body.p-online-auction-software__marketplace-webstore .ws-card {
    background: var(--bg);
    border: 1px solid var(--pale);
    border-radius: 12px;
    padding: 28px;
}
body.p-online-auction-software__marketplace-webstore .ws-card-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: var(--pale);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    color: var(--ink);
}
body.p-online-auction-software__marketplace-webstore .ws-card-icon svg {
    width: 22px;
    height: 22px;
}
body.p-online-auction-software__marketplace-webstore .ws-card h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 8px;
}
body.p-online-auction-software__marketplace-webstore .ws-card p {
    font-size: 0.875rem;
    color: var(--mid);
    line-height: 1.6;
}
body.p-online-auction-software__marketplace-webstore .ws-feature-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 16px;
}
body.p-online-auction-software__marketplace-webstore .ws-feat {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 16px;
    background: var(--bg);
    border-radius: 8px;
    border: 1px solid var(--pale);
}
body.p-online-auction-software__marketplace-webstore .ws-feat-check {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 1px;
    background: var(--grass-pale) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 10l4 4 6-6' stroke='%231a6b45' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
body.p-online-auction-software__marketplace-webstore .ws-feat span {
    font-size: 0.84rem;
    color: var(--mid);
    line-height: 1.45;
}
body.p-online-auction-software__marketplace-webstore .ws-feat strong {
    display: block;
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--ink);
    margin-bottom: 2px;
}

/* ── MARKETPLACE SECTION ── */
body.p-online-auction-software__marketplace-webstore .marketplace-section {
    background: var(--bg);
}
body.p-online-auction-software__marketplace-webstore .mp-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: start;
}
body.p-online-auction-software__marketplace-webstore .mp-copy p {
    font-size: 0.95rem;
    color: var(--mid);
    line-height: 1.7;
    margin-bottom: 20px;
}
body.p-online-auction-software__marketplace-webstore .mp-revenue-box {
    background: var(--white);
    border: 1px solid var(--pale);
    border-radius: 12px;
    padding: 24px;
    margin-top: 24px;
}
body.p-online-auction-software__marketplace-webstore .mp-revenue-box h4 {
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 14px;
}
body.p-online-auction-software__marketplace-webstore .revenue-stream {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--pale);
}
body.p-online-auction-software__marketplace-webstore .revenue-stream:last-child {
    border-bottom: none;
}
body.p-online-auction-software__marketplace-webstore .rs-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--blue);
    flex-shrink: 0;
}
body.p-online-auction-software__marketplace-webstore .rs-label {
    font-size: 0.84rem;
    color: var(--ink);
    font-weight: 500;
    flex: 1;
}
body.p-online-auction-software__marketplace-webstore .rs-note {
    font-size: 0.78rem;
    color: var(--light);
}
body.p-online-auction-software__marketplace-webstore .mp-features {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
body.p-online-auction-software__marketplace-webstore .mp-feat-card {
    background: var(--white);
    border: 1px solid var(--pale);
    border-radius: 12px;
    padding: 22px;
}
body.p-online-auction-software__marketplace-webstore .mp-feat-card h4 {
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 8px;
}
body.p-online-auction-software__marketplace-webstore .mp-feat-card p {
    font-size: 0.84rem;
    color: var(--mid);
    line-height: 1.55;
}

/* ── COMBINE SECTION ── */
body.p-online-auction-software__marketplace-webstore .combine-section {
    background: var(--white);
}
body.p-online-auction-software__marketplace-webstore .combine-banner {
    background: linear-gradient(135deg, var(--ink) 0%, #2d4a80 100%);
    border-radius: 16px;
    padding: 52px 56px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 48px;
    align-items: center;
}
body.p-online-auction-software__marketplace-webstore .combine-banner h2 {
    font-family: var(--serif);
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--white);
    letter-spacing: -0.025em;
    margin-bottom: 12px;
}
body.p-online-auction-software__marketplace-webstore .combine-banner p {
    font-size: 0.95rem;
    color: rgba(255, 255, 255, 0.7);
    line-height: 1.65;
    max-width: 480px;
}
body.p-online-auction-software__marketplace-webstore .combine-examples {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 280px;
}
body.p-online-auction-software__marketplace-webstore .combine-eg {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 8px;
    padding: 12px 16px;
    font-size: 0.84rem;
    color: rgba(255, 255, 255, 0.85);
    display: flex;
    align-items: center;
    gap: 10px;
}
body.p-online-auction-software__marketplace-webstore .combine-eg-icon {
    font-size: 1.1rem;
}

/* ── VS SECTION ── */
body.p-online-auction-software__marketplace-webstore .vs-section {
    background: var(--bg);
}
body.p-online-auction-software__marketplace-webstore .vs-table-wrap {
    overflow-x: auto;
    border-radius: 14px;
    border: 1px solid var(--pale);
    background: var(--white);
}
body.p-online-auction-software__marketplace-webstore .vs-table {
    width: 100%;
    border-collapse: collapse;
}
body.p-online-auction-software__marketplace-webstore .vs-table thead tr {
    background: var(--ink);
}
body.p-online-auction-software__marketplace-webstore .vs-table thead th {
    padding: 16px 20px;
    font-family: var(--serif);
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--white);
    text-align: left;
}
body.p-online-auction-software__marketplace-webstore .vs-table thead th:first-child {
    border-radius: 13px 0 0 0;
}
body.p-online-auction-software__marketplace-webstore .vs-table thead th:last-child {
    border-radius: 0 13px 0 0;
}
body.p-online-auction-software__marketplace-webstore .vs-table thead th.ppb-col {
    background: var(--blue);
}
body.p-online-auction-software__marketplace-webstore .vs-table tbody tr {
    border-bottom: 1px solid var(--pale);
}
body.p-online-auction-software__marketplace-webstore .vs-table tbody tr:last-child {
    border-bottom: none;
}
body.p-online-auction-software__marketplace-webstore .vs-table tbody tr:hover {
    background: var(--bg);
}
body.p-online-auction-software__marketplace-webstore .vs-table tbody td {
    padding: 14px 20px;
    font-size: 0.875rem;
    color: var(--mid);
    vertical-align: middle;
}
body.p-online-auction-software__marketplace-webstore .vs-table tbody td:first-child {
    color: var(--ink);
    font-weight: 500;
}
body.p-online-auction-software__marketplace-webstore .vs-table tbody td.ppb-col {
    background: rgba(59, 125, 232, 0.04);
}
body.p-online-auction-software__marketplace-webstore .check-y {
    color: var(--grass);
    font-weight: 700;
    font-size: 1rem;
}
body.p-online-auction-software__marketplace-webstore .check-n {
    color: #ccc;
    font-size: 1rem;
}
body.p-online-auction-software__marketplace-webstore .check-p {
    color: var(--amber);
    font-size: 0.8rem;
    font-weight: 600;
}

/* ── PRICING SUMMARY ── */
body.p-online-auction-software__marketplace-webstore .pricing-section {
    background: var(--white);
}
body.p-online-auction-software__marketplace-webstore .pricing-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
body.p-online-auction-software__marketplace-webstore .price-card {
    border: 1px solid var(--pale);
    border-radius: 14px;
    padding: 28px;
    background: var(--bg);
}
body.p-online-auction-software__marketplace-webstore .price-card.featured {
    border-color: var(--blue);
    background: var(--white);
    box-shadow: 0 4px 24px rgba(59, 125, 232, 0.12);
}
body.p-online-auction-software__marketplace-webstore .price-badge {
    display: inline-block;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    background: var(--blue);
    color: var(--white);
    padding: 3px 10px;
    border-radius: 20px;
    margin-bottom: 14px;
}
body.p-online-auction-software__marketplace-webstore .price-card h3 {
    font-family: var(--serif);
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 6px;
}
body.p-online-auction-software__marketplace-webstore .price-card .price {
    font-family: var(--serif);
    font-size: 2rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.03em;
    margin: 12px 0 4px;
}
body.p-online-auction-software__marketplace-webstore .price-card .price span {
    font-size: 1rem;
    font-weight: 500;
    color: var(--mid);
}
body.p-online-auction-software__marketplace-webstore .price-card .price-note {
    font-size: 0.78rem;
    color: var(--light);
    margin-bottom: 20px;
}
body.p-online-auction-software__marketplace-webstore .price-card .price-desc {
    font-size: 0.84rem;
    color: var(--mid);
    line-height: 1.6;
    margin-bottom: 20px;
}
body.p-online-auction-software__marketplace-webstore .price-card a {
    display: block;
    text-align: center;
    padding: 11px;
    border-radius: 7px;
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s;
}
body.p-online-auction-software__marketplace-webstore .price-card.featured a {
    background: var(--blue);
    color: var(--white);
}
body.p-online-auction-software__marketplace-webstore .price-card.featured a:hover {
    background: var(--blue2);
}
body.p-online-auction-software__marketplace-webstore .price-card:not(.featured) a {
    background: var(--pale);
    color: var(--blue);
}
body.p-online-auction-software__marketplace-webstore .price-card:not(.featured) a:hover {
    background: var(--blue);
    color: var(--white);
}

/* ── FAQ ── */
body.p-online-auction-software__marketplace-webstore .faq-section {
    background: var(--bg);
}
body.p-online-auction-software__marketplace-webstore .faq-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
body.p-online-auction-software__marketplace-webstore .faq-item {
    background: var(--white);
    border: 1px solid var(--pale);
    border-radius: 12px;
    padding: 24px;
}
body.p-online-auction-software__marketplace-webstore .faq-item h4 {
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 10px;
}
body.p-online-auction-software__marketplace-webstore .faq-item p {
    font-size: 0.875rem;
    color: var(--mid);
    line-height: 1.65;
}

/* ── CTA ── */
body.p-online-auction-software__marketplace-webstore .cta-section {
    background: var(--ink);
    padding: 80px 40px;
}
body.p-online-auction-software__marketplace-webstore .cta-inner {
    max-width: 600px;
    margin: 0 auto;
    text-align: center;
}
body.p-online-auction-software__marketplace-webstore .cta-inner h2 {
    font-family: var(--serif);
    font-size: clamp(1.7rem, 3vw, 2.2rem);
    font-weight: 800;
    color: var(--white);
    letter-spacing: -0.025em;
    margin-bottom: 16px;
}
body.p-online-auction-software__marketplace-webstore .cta-inner p {
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.65);
    line-height: 1.65;
    margin-bottom: 32px;
}
body.p-online-auction-software__marketplace-webstore .cta-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}
body.p-online-auction-software__marketplace-webstore .cta-primary {
    background: var(--blue);
    color: var(--white);
    font-family: var(--serif);
    font-weight: 600;
    font-size: 1rem;
    padding: 14px 32px;
    border-radius: 7px;
    text-decoration: none;
    transition: background 0.2s;
}
body.p-online-auction-software__marketplace-webstore .cta-primary:hover {
    background: var(--blue2);
}
body.p-online-auction-software__marketplace-webstore .cta-ghost {
    color: rgba(255, 255, 255, 0.65);
    font-size: 0.9rem;
    font-weight: 500;
    text-decoration: none;
    padding: 13px 20px;
    border-radius: 7px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: all 0.15s;
}
body.p-online-auction-software__marketplace-webstore .cta-ghost:hover {
    color: var(--white);
    border-color: rgba(255, 255, 255, 0.5);
}

/* ── INTERNAL LINKS ── */
body.p-online-auction-software__marketplace-webstore .internal-links {
    background: var(--bg);
    padding: 64px 40px;
}
body.p-online-auction-software__marketplace-webstore .il-label {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 28px;
    max-width: var(--max);
    margin-left: auto;
    margin-right: auto;
    display: block;
}
body.p-online-auction-software__marketplace-webstore .il-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    max-width: var(--max);
    margin: 0 auto;
}
body.p-online-auction-software__marketplace-webstore .il-card {
    background: var(--white);
    border-radius: 12px;
    padding: 28px 24px;
    text-decoration: none;
    border: 1px solid rgba(30, 45, 77, 0.07);
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}
body.p-online-auction-software__marketplace-webstore .il-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 36px rgba(30, 45, 77, 0.08);
    border-color: var(--blue);
}
body.p-online-auction-software__marketplace-webstore .il-card-icon {
    width: 38px;
    height: 38px;
    border-radius: 9px;
    background: var(--pale);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
}
body.p-online-auction-software__marketplace-webstore .il-card h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    color: var(--ink);
    line-height: 1.35;
    letter-spacing: -0.01em;
}
body.p-online-auction-software__marketplace-webstore .il-card p {
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.55;
    flex: 1;
}
body.p-online-auction-software__marketplace-webstore .il-arrow {
    font-size: 0.8rem;
    color: var(--blue);
    font-weight: 600;
    margin-top: auto;
}

/* ── RESPONSIVE ── */
@media (max-width: 1024px) {
    body.p-online-auction-software__marketplace-webstore .hero {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    body.p-online-auction-software__marketplace-webstore .webstore-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__marketplace-webstore .mp-split {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__marketplace-webstore .combine-banner {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__marketplace-webstore .pricing-cards {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__marketplace-webstore .faq-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__marketplace-webstore .il-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 640px) {
    body.p-online-auction-software__marketplace-webstore .hero {
        padding: 32px 20px 60px;
    }

    body.p-online-auction-software__marketplace-webstore section {
        padding: 60px 20px;
    }

    body.p-online-auction-software__marketplace-webstore .ws-feature-row {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__marketplace-webstore .combine-banner {
        padding: 36px 28px;
    }

    body.p-online-auction-software__marketplace-webstore .il-grid {
        grid-template-columns: 1fr;
    }
}

/* ── PAGE: online-auction-software__online-timed-auctions ──────────────────────────── */
/* ── HERO ── */
body.p-online-auction-software__online-timed-auctions .hero {
    padding: 40px 40px 80px;
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 420px;
    gap: 80px;
    align-items: start;
}

body.p-online-auction-software__online-timed-auctions h1 {
    font-family: var(--serif);
    font-size: clamp(2.6rem, 4.5vw, 3.8rem);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.03em;
    color: var(--ink);
    margin-bottom: 24px;
}
body.p-online-auction-software__online-timed-auctions h1 .accent {
    color: var(--blue);
}
body.p-online-auction-software__online-timed-auctions .hero-sub {
    font-size: 1.1rem;
    color: var(--mid);
    line-height: 1.7;
    margin-bottom: 36px;
    max-width: 520px;
}
body.p-online-auction-software__online-timed-auctions .hero-cta-group {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
}

body.p-online-auction-software__online-timed-auctions .cta-micro {
    font-size: 0.78rem;
    color: var(--light);
}

/* Hero stats card */
body.p-online-auction-software__online-timed-auctions .hero-stats {
    background: var(--ink);
    border-radius: 16px;
    padding: 32px;
    position: sticky;
    top: 88px;
}
body.p-online-auction-software__online-timed-auctions .hero-stat {
    padding: 20px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
body.p-online-auction-software__online-timed-auctions .hero-stat:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
body.p-online-auction-software__online-timed-auctions .hero-stat:first-child {
    padding-top: 0;
}
body.p-online-auction-software__online-timed-auctions .stat-num {
    font-family: var(--serif);
    font-size: 2rem;
    font-weight: 800;
    color: var(--white);
    line-height: 1;
    margin-bottom: 4px;
}
body.p-online-auction-software__online-timed-auctions .stat-label {
    font-size: 0.8rem;
    color: var(--light);
    line-height: 1.4;
}
body.p-online-auction-software__online-timed-auctions .stat-num .accent {
    color: var(--blue2);
}
body.p-online-auction-software__online-timed-auctions .hero-demo-link {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--blue2);
    text-decoration: none;
    transition: gap 0.2s;
}
body.p-online-auction-software__online-timed-auctions .hero-demo-link:hover {
    gap: 14px;
}

/* ── SECTIONS ── */
body.p-online-auction-software__online-timed-auctions section {
    padding: 80px 40px;
}
body.p-online-auction-software__online-timed-auctions .section-inner {
    max-width: 1100px;
    margin: 0 auto;
}

body.p-online-auction-software__online-timed-auctions h2.section-heading {
    font-family: var(--serif);
    font-size: clamp(1.8rem, 3vw, 2.5rem);
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1.15;
    color: var(--ink);
    margin-bottom: 16px;
}
body.p-online-auction-software__online-timed-auctions h2.section-heading .accent {
    color: var(--blue);
}
body.p-online-auction-software__online-timed-auctions .section-sub {
    font-size: 1rem;
    color: var(--mid);
    max-width: 560px;
    line-height: 1.65;
    margin-bottom: 56px;
}

/* ── WHAT IS SECTION ── */
body.p-online-auction-software__online-timed-auctions .what-is {
    background: var(--bg);
}
body.p-online-auction-software__online-timed-auctions .what-is-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: start;
}
body.p-online-auction-software__online-timed-auctions .what-is-copy p {
    font-size: 1rem;
    color: var(--mid);
    line-height: 1.75;
    margin-bottom: 20px;
}
body.p-online-auction-software__online-timed-auctions .what-is-copy p:last-child {
    margin-bottom: 0;
}
body.p-online-auction-software__online-timed-auctions .what-is-copy strong {
    color: var(--ink);
    font-weight: 600;
}
body.p-online-auction-software__online-timed-auctions .vs-box {
    background: var(--white);
    border-radius: 12px;
    border: 1px solid rgba(30, 45, 77, 0.08);
    overflow: hidden;
}
body.p-online-auction-software__online-timed-auctions .vs-header {
    background: var(--ink);
    padding: 16px 24px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
}
body.p-online-auction-software__online-timed-auctions .vs-header span {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--light);
}
body.p-online-auction-software__online-timed-auctions .vs-header span:last-child {
    padding-left: 16px;
    border-left: 1px solid rgba(255, 255, 255, 0.1);
}
body.p-online-auction-software__online-timed-auctions .vs-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    border-bottom: 1px solid var(--pale);
}
body.p-online-auction-software__online-timed-auctions .vs-row:last-child {
    border-bottom: none;
}
body.p-online-auction-software__online-timed-auctions .vs-cell {
    padding: 14px 24px;
    font-size: 0.85rem;
    line-height: 1.5;
}
body.p-online-auction-software__online-timed-auctions .vs-cell:last-child {
    border-left: 1px solid var(--pale);
    color: var(--mid);
}
body.p-online-auction-software__online-timed-auctions .vs-cell.positive {
    color: var(--ink);
    font-weight: 500;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}
body.p-online-auction-software__online-timed-auctions .vs-icon {
    color: var(--blue);
    flex-shrink: 0;
    margin-top: 2px;
    width: 14px;
    height: 14px;
}

/* ── HOW IT WORKS (STEPS) ── */
body.p-online-auction-software__online-timed-auctions .how-it-works {
    background: var(--white);
}
body.p-online-auction-software__online-timed-auctions .steps-layout {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 80px;
    align-items: start;
}
body.p-online-auction-software__online-timed-auctions .steps-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}
body.p-online-auction-software__online-timed-auctions .step-item {
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 24px;
    padding-bottom: 40px;
    position: relative;
    cursor: pointer;
}
body.p-online-auction-software__online-timed-auctions .step-item:last-child {
    padding-bottom: 0;
}
body.p-online-auction-software__online-timed-auctions .step-item:not(:last-child)::after {
    content: '';
    position: absolute;
    left: 27px;
    top: 56px;
    width: 2px;
    height: calc(100% - 56px);
    background: linear-gradient(180deg, var(--pale) 0%, transparent 100%);
}
body.p-online-auction-software__online-timed-auctions .step-item.active:not(:last-child)::after {
    background: linear-gradient(180deg, var(--blue) 0%, var(--pale) 100%);
}
body.p-online-auction-software__online-timed-auctions .step-num-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
}
body.p-online-auction-software__online-timed-auctions .step-num {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--pale);
    border: 2px solid var(--pale);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--serif);
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--mid);
    transition: all 0.25s;
    flex-shrink: 0;
}
body.p-online-auction-software__online-timed-auctions .step-item.active .step-num {
    background: var(--ink);
    border-color: var(--ink);
    color: var(--white);
}
body.p-online-auction-software__online-timed-auctions .step-content {
    padding-top: 12px;
}
body.p-online-auction-software__online-timed-auctions .step-content h3 {
    font-family: var(--serif);
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--mid);
    margin-bottom: 8px;
    letter-spacing: -0.01em;
    transition: color 0.2s;
}
body.p-online-auction-software__online-timed-auctions .step-item.active .step-content h3 {
    color: var(--ink);
}
body.p-online-auction-software__online-timed-auctions .step-content p {
    font-size: 0.9rem;
    color: var(--mid);
    line-height: 1.65;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease, opacity 0.25s ease;
    opacity: 0;
}
body.p-online-auction-software__online-timed-auctions .step-item.active .step-content p {
    max-height: 200px;
    opacity: 1;
}
body.p-online-auction-software__online-timed-auctions .step-doc-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--blue);
    text-decoration: none;
    margin-top: 10px;
    opacity: 0;
    transition: opacity 0.25s;
}
body.p-online-auction-software__online-timed-auctions .step-item.active .step-doc-link {
    opacity: 1;
}
body.p-online-auction-software__online-timed-auctions .step-doc-link:hover {
    text-decoration: underline;
}

/* Step preview panel */
body.p-online-auction-software__online-timed-auctions .step-preview {
    background: var(--ink);
    border-radius: 14px;
    padding: 28px;
    position: sticky;
    top: 88px;
}
body.p-online-auction-software__online-timed-auctions .step-preview-label {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--blue2);
    margin-bottom: 16px;
}
body.p-online-auction-software__online-timed-auctions .step-preview-title {
    font-family: var(--serif);
    font-size: 1.2rem;
    font-weight: 800;
    color: var(--white);
    margin-bottom: 20px;
    line-height: 1.2;
}
body.p-online-auction-software__online-timed-auctions .preview-fields {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
body.p-online-auction-software__online-timed-auctions .preview-field {
    background: rgba(255, 255, 255, 0.06);
    border-radius: 7px;
    padding: 10px 14px;
}
body.p-online-auction-software__online-timed-auctions .preview-field label {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--blue2);
    display: block;
    margin-bottom: 4px;
}
body.p-online-auction-software__online-timed-auctions .preview-field span {
    font-size: 0.85rem;
    color: var(--white);
}
body.p-online-auction-software__online-timed-auctions .preview-field span.placeholder {
    color: rgba(255, 255, 255, 0.35);
    font-style: italic;
}
body.p-online-auction-software__online-timed-auctions .preview-submit {
    background: var(--blue);
    color: var(--white);
    font-weight: 700;
    font-size: 0.875rem;
    width: 100%;
    padding: 12px;
    border-radius: 7px;
    text-align: center;
    margin-top: 16px;
    display: block;
}

/* ── FEATURES GRID ── */
body.p-online-auction-software__online-timed-auctions .features-section {
    background: var(--bg);
}
body.p-online-auction-software__online-timed-auctions .features-intro {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: start;
    margin-bottom: 60px;
}
body.p-online-auction-software__online-timed-auctions .features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2px;
    background: rgba(30, 45, 77, 0.06);
    border-radius: 14px;
    overflow: hidden;
}
body.p-online-auction-software__online-timed-auctions .feature-card {
    background: var(--white);
    padding: 28px 24px;
    transition: background 0.15s;
}
body.p-online-auction-software__online-timed-auctions .feature-card:hover {
    background: var(--pale);
}
body.p-online-auction-software__online-timed-auctions .fc-icon {
    width: 40px;
    height: 40px;
    background: rgba(59, 125, 232, 0.08);
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    color: var(--blue);
}
body.p-online-auction-software__online-timed-auctions .feature-card h3 {
    font-family: var(--serif);
    font-size: 0.98rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 8px;
    letter-spacing: -0.01em;
}
body.p-online-auction-software__online-timed-auctions .feature-card p {
    font-size: 0.83rem;
    color: var(--mid);
    line-height: 1.6;
}
body.p-online-auction-software__online-timed-auctions .feature-card .fc-doc {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--blue);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 12px;
    opacity: 0;
    transition: opacity 0.15s;
}
body.p-online-auction-software__online-timed-auctions .feature-card:hover .fc-doc {
    opacity: 1;
}

/* ── VS COMPETITORS ── */
body.p-online-auction-software__online-timed-auctions .vs-section {
    background: var(--white);
}
body.p-online-auction-software__online-timed-auctions .vs-table-wrap {
    overflow-x: auto;
}
body.p-online-auction-software__online-timed-auctions .vs-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}
body.p-online-auction-software__online-timed-auctions .vs-table th {
    padding: 14px 20px;
    text-align: left;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--light);
    background: var(--ink);
    border-right: 1px solid rgba(255, 255, 255, 0.07);
}
body.p-online-auction-software__online-timed-auctions .vs-table th:first-child {
    border-radius: 10px 0 0 0;
    color: var(--white);
}
body.p-online-auction-software__online-timed-auctions .vs-table th.highlight {
    background: var(--blue);
    color: var(--white);
    border-right: none;
}
body.p-online-auction-software__online-timed-auctions .vs-table th:last-child {
    border-radius: 0 10px 0 0;
}
body.p-online-auction-software__online-timed-auctions .vs-table td {
    padding: 14px 20px;
    border-bottom: 1px solid var(--pale);
    border-right: 1px solid var(--pale);
    color: var(--mid);
    vertical-align: middle;
}
body.p-online-auction-software__online-timed-auctions .vs-table td:first-child {
    font-weight: 500;
    color: var(--ink);
    border-right-color: rgba(30, 45, 77, 0.08);
}
body.p-online-auction-software__online-timed-auctions .vs-table td.highlight {
    background: rgba(59, 125, 232, 0.04);
    border-right: 1px solid rgba(59, 125, 232, 0.1);
}
body.p-online-auction-software__online-timed-auctions .vs-table tr:last-child td {
    border-bottom: none;
}
body.p-online-auction-software__online-timed-auctions .check {
    color: var(--blue);
}
.cross {
    color: #c0392b;
}
.partial {
    color: #e67e22;
}
body.p-online-auction-software__online-timed-auctions .vs-note {
    font-size: 0.78rem;
    color: var(--light);
    margin-top: 16px;
    font-style: italic;
}

/* ── WHAT YOU NEED ── */
body.p-online-auction-software__online-timed-auctions .prereqs {
    background: var(--bg);
}
body.p-online-auction-software__online-timed-auctions .prereqs-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}
body.p-online-auction-software__online-timed-auctions .prereq-card {
    background: var(--white);
    border-radius: 12px;
    padding: 28px;
    border: 1px solid rgba(30, 45, 77, 0.07);
    display: flex;
    gap: 20px;
    align-items: flex-start;
    transition: transform 0.2s, box-shadow 0.2s;
}
body.p-online-auction-software__online-timed-auctions .prereq-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 36px rgba(30, 45, 77, 0.08);
}
body.p-online-auction-software__online-timed-auctions .prereq-icon {
    width: 44px;
    height: 44px;
    background: rgba(59, 125, 232, 0.08);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--blue);
}
body.p-online-auction-software__online-timed-auctions .prereq-text h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 6px;
}
body.p-online-auction-software__online-timed-auctions .prereq-text p {
    font-size: 0.875rem;
    color: var(--mid);
    line-height: 1.6;
}
body.p-online-auction-software__online-timed-auctions .optional-badge {
    display: inline-block;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--blue);
    background: var(--pale);
    padding: 2px 8px;
    border-radius: 20px;
    margin-bottom: 8px;
}

/* ── FAQ ── */
body.p-online-auction-software__online-timed-auctions .faq-section {
    background: var(--white);
}
body.p-online-auction-software__online-timed-auctions .faq-layout {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 60px;
    align-items: start;
}
body.p-online-auction-software__online-timed-auctions .faq-sidebar {
    position: sticky;
    top: 88px;
}
body.p-online-auction-software__online-timed-auctions .faq-sidebar h3 {
    font-family: var(--serif);
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--ink);
    margin-bottom: 12px;
    line-height: 1.2;
    letter-spacing: -0.02em;
}
body.p-online-auction-software__online-timed-auctions .faq-sidebar p {
    font-size: 0.875rem;
    color: var(--mid);
    line-height: 1.65;
    margin-bottom: 24px;
}
body.p-online-auction-software__online-timed-auctions .faq-sidebar-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--blue);
    text-decoration: none;
    border-bottom: 1px solid rgba(59, 125, 232, 0.3);
    padding-bottom: 2px;
}
body.p-online-auction-software__online-timed-auctions .faq-list {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
body.p-online-auction-software__online-timed-auctions .faq-item {
    background: var(--bg);
    border-radius: 8px;
    overflow: hidden;
    cursor: pointer;
}
body.p-online-auction-software__online-timed-auctions .faq-item.open {
    background: var(--ink);
}
body.p-online-auction-software__online-timed-auctions .faq-q {
    padding: 18px 22px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    font-weight: 600;
    font-size: 0.93rem;
    color: var(--ink);
    transition: color 0.15s;
    line-height: 1.4;
}
body.p-online-auction-software__online-timed-auctions .faq-item.open .faq-q {
    color: var(--white);
}
body.p-online-auction-software__online-timed-auctions .faq-toggle {
    width: 26px;
    height: 26px;
    background: rgba(30, 45, 77, 0.08);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 1.1rem;
    line-height: 1;
    transition: transform 0.2s, background 0.15s;
    color: var(--ink);
}
body.p-online-auction-software__online-timed-auctions .faq-item.open .faq-toggle {
    transform: rotate(45deg);
    background: rgba(255, 255, 255, 0.12);
    color: var(--white);
}
body.p-online-auction-software__online-timed-auctions .faq-a {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.75);
    line-height: 1.7;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, padding 0.3s ease;
}
body.p-online-auction-software__online-timed-auctions .faq-item.open .faq-a {
    max-height: 300px;
    padding: 0 22px 20px;
}
body.p-online-auction-software__online-timed-auctions .faq-a a {
    color: var(--blue2);
    text-decoration: underline;
}

/* ── INTERNAL LINKS ── */
body.p-online-auction-software__online-timed-auctions .internal-links {
    background: var(--bg);
}
body.p-online-auction-software__online-timed-auctions .il-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
body.p-online-auction-software__online-timed-auctions .il-card {
    background: var(--white);
    border-radius: 12px;
    padding: 28px 24px;
    text-decoration: none;
    border: 1px solid rgba(30, 45, 77, 0.07);
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}
body.p-online-auction-software__online-timed-auctions .il-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 36px rgba(30, 45, 77, 0.08);
    border-color: var(--blue);
}
body.p-online-auction-software__online-timed-auctions .il-tag {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--blue);
}
body.p-online-auction-software__online-timed-auctions .il-card h3 {
    font-family: var(--serif);
    font-size: 1rem;
    font-weight: 700;
    color: var(--ink);
    line-height: 1.35;
    letter-spacing: -0.01em;
}
body.p-online-auction-software__online-timed-auctions .il-card p {
    font-size: 0.82rem;
    color: var(--mid);
    line-height: 1.55;
    flex: 1;
}
body.p-online-auction-software__online-timed-auctions .il-arrow {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--blue);
    margin-top: 4px;
    transition: margin-left 0.2s;
}
body.p-online-auction-software__online-timed-auctions .il-card:hover .il-arrow {
    margin-left: 4px;
}

/* ── FINAL CTA ── */
body.p-online-auction-software__online-timed-auctions .final-cta {
    background: var(--ink);
    padding: 100px 40px;
    text-align: center;
    position: relative;
    overflow: hidden;
}
body.p-online-auction-software__online-timed-auctions .final-cta::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 60% 50% at 50% 0%, rgba(59, 125, 232, 0.15), transparent);
}
body.p-online-auction-software__online-timed-auctions .final-cta-inner {
    max-width: 680px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}
body.p-online-auction-software__online-timed-auctions .final-cta h2 {
    font-family: var(--serif);
    font-size: clamp(2rem, 3.5vw, 2.8rem);
    font-weight: 800;
    color: var(--white);
    letter-spacing: -0.03em;
    line-height: 1.15;
    margin-bottom: 20px;
}
body.p-online-auction-software__online-timed-auctions .final-cta h2 .accent {
    color: var(--blue2);
}
body.p-online-auction-software__online-timed-auctions .final-cta p {
    font-size: 1rem;
    color: var(--light);
    margin-bottom: 44px;
    line-height: 1.65;
}
body.p-online-auction-software__online-timed-auctions .final-cta-btns {
    display: flex;
    gap: 14px;
    justify-content: center;
    flex-wrap: wrap;
}
body.p-online-auction-software__online-timed-auctions .btn-inv {
    background: var(--white);
    color: var(--ink);
    font-family: var(--serif);
    font-weight: 700;
    font-size: 1rem;
    padding: 15px 34px;
    border-radius: 8px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: transform 0.15s, box-shadow 0.2s;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.25);
}
body.p-online-auction-software__online-timed-auctions .btn-inv:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}
body.p-online-auction-software__online-timed-auctions .btn-ghost {
    background: transparent;
    color: var(--white);
    font-family: var(--serif);
    font-weight: 600;
    font-size: 1rem;
    padding: 15px 34px;
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: border-color 0.2s, background 0.2s;
}
body.p-online-auction-software__online-timed-auctions .btn-ghost:hover {
    border-color: rgba(255, 255, 255, 0.6);
    background: rgba(255, 255, 255, 0.05);
}

/* ── RESPONSIVE ── */
@media (max-width: 1000px) {
    body.p-online-auction-software__online-timed-auctions .hero {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__online-timed-auctions .hero-stats {
        position: static;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1px;
        background: rgba(255, 255, 255, 0.08);
    }

    body.p-online-auction-software__online-timed-auctions .hero-stat {
        background: var(--ink);
    }

    body.p-online-auction-software__online-timed-auctions .what-is-grid, body.p-online-auction-software__online-timed-auctions .steps-layout, body.p-online-auction-software__online-timed-auctions .faq-layout {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__online-timed-auctions .steps-layout .step-preview {
        display: none;
    }

    body.p-online-auction-software__online-timed-auctions .faq-sidebar {
        position: static;
    }

    body.p-online-auction-software__online-timed-auctions .features-intro {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 700px) {
    body.p-online-auction-software__online-timed-auctions section {
        padding: 60px 24px;
    }

    body.p-online-auction-software__online-timed-auctions .hero {
        padding: 28px 24px 60px;
    }

    body.p-online-auction-software__online-timed-auctions .features-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__online-timed-auctions .prereqs-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__online-timed-auctions .il-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__online-timed-auctions .final-cta-btns {
        flex-direction: column;
        align-items: center;
    }
}

/* ── PAGE: online-auction-software__self-hosted ──────────────────────────── */
body.p-online-auction-software__self-hosted .hero-cta-row {
    display: flex;
    gap: 14px;
    justify-content: center;
    flex-wrap: wrap;
}

/* ── section base ─────────────────────────────────── */
body.p-online-auction-software__self-hosted .section {
    padding: 72px 40px;
}
body.p-online-auction-software__self-hosted .section-inner {
    max-width: var(--max);
    margin: 0 auto;
}

body.p-online-auction-software__self-hosted .section-title {
    font-family: var(--serif);
    font-weight: 800;
    font-size: clamp(1.6rem, 3.5vw, 2.2rem);
    letter-spacing: -0.02em;
    line-height: 1.18;
    color: var(--ink);
    margin: 0 0 14px;
}
body.p-online-auction-software__self-hosted .section-sub {
    font-size: 1.05rem;
    color: var(--mid);
    line-height: 1.65;
    max-width: 620px;
    margin: 0 0 40px;
}
body.p-online-auction-software__self-hosted .section--alt {
    background: var(--white);
}

/* ── 5-year cost comparison ───────────────────────── */
body.p-online-auction-software__self-hosted .cost-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 16px rgba(30, 45, 77, 0.09);
    margin-top: 8px;
}
body.p-online-auction-software__self-hosted .cost-table thead tr th {
    background: var(--ink);
    color: var(--white);
    padding: 14px 20px;
    text-align: left;
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}
body.p-online-auction-software__self-hosted .cost-table thead tr th:first-child {
    border-radius: 12px 0 0 0;
}
body.p-online-auction-software__self-hosted .cost-table thead tr th:last-child {
    border-radius: 0 12px 0 0;
}
body.p-online-auction-software__self-hosted .cost-table thead tr th.highlight-col {
    background: var(--blue);
}
body.p-online-auction-software__self-hosted .cost-row td {
    padding: 14px 20px;
    font-size: 0.9rem;
    color: var(--ink);
    border-bottom: 1px solid var(--pale);
    vertical-align: middle;
}
body.p-online-auction-software__self-hosted .cost-row:last-child td {
    border-bottom: none;
}
body.p-online-auction-software__self-hosted .cost-row:nth-child(even) td {
    background: var(--bg);
}
body.p-online-auction-software__self-hosted .cost-row td.highlight-col {
    background: #eef4fd;
    font-weight: 700;
    color: var(--blue);
}
body.p-online-auction-software__self-hosted .cost-row:nth-child(even) td.highlight-col {
    background: #ddeaf9;
}
body.p-online-auction-software__self-hosted .cost-total td {
    padding: 16px 20px;
    font-weight: 800;
    font-size: 1rem;
    border-top: 2px solid var(--pale);
    background: var(--white) !important;
}
body.p-online-auction-software__self-hosted .cost-total td.highlight-col {
    color: var(--blue);
    background: #eef4fd !important;
}
body.p-online-auction-software__self-hosted .cost-savings-note {
    margin-top: 16px;
    font-size: 0.88rem;
    color: var(--mid);
}
body.p-online-auction-software__self-hosted .cost-savings-note strong {
    color: var(--ink);
}

/* ── feature cards ────────────────────────────────── */
body.p-online-auction-software__self-hosted .feature-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 24px;
    margin-top: 8px;
}
body.p-online-auction-software__self-hosted .feature-card {
    background: var(--white);
    border: 1px solid var(--pale);
    border-radius: 12px;
    padding: 28px;
    transition: box-shadow 0.2s, transform 0.2s;
}
body.p-online-auction-software__self-hosted .feature-card:hover {
    box-shadow: 0 6px 24px rgba(30, 45, 77, 0.1);
    transform: translateY(-2px);
}
body.p-online-auction-software__self-hosted .feature-icon {
    width: 44px;
    height: 44px;
    background: var(--pale);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    color: var(--ink);
}
body.p-online-auction-software__self-hosted .feature-card h3 {
    font-family: var(--serif);
    font-weight: 700;
    font-size: 1rem;
    color: var(--ink);
    margin: 0 0 8px;
}
body.p-online-auction-software__self-hosted .feature-card p {
    font-size: 0.875rem;
    color: var(--mid);
    line-height: 1.6;
    margin: 0;
}

/* ── persona cards ────────────────────────────────── */
body.p-online-auction-software__self-hosted .persona-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 24px;
    margin-top: 8px;
}
body.p-online-auction-software__self-hosted .persona-card {
    background: var(--white);
    border: 1px solid var(--pale);
    border-radius: 14px;
    padding: 30px;
    transition: box-shadow 0.2s, transform 0.2s;
}
body.p-online-auction-software__self-hosted .persona-card:hover {
    box-shadow: 0 6px 24px rgba(30, 45, 77, 0.1);
    transform: translateY(-2px);
}
body.p-online-auction-software__self-hosted .persona-icon {
    width: 48px;
    height: 48px;
    background: var(--pale);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    color: var(--ink);
}
body.p-online-auction-software__self-hosted .persona-card h3 {
    font-family: var(--serif);
    font-weight: 700;
    font-size: 1.05rem;
    color: var(--ink);
    margin: 0 0 8px;
}
body.p-online-auction-software__self-hosted .persona-card p {
    font-size: 0.875rem;
    color: var(--mid);
    line-height: 1.65;
    margin: 0;
}

/* ── install steps ────────────────────────────────── */
body.p-online-auction-software__self-hosted .steps-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
    gap: 24px;
    margin-top: 8px;
    counter-reset: step;
}
body.p-online-auction-software__self-hosted .step-card {
    background: var(--white);
    border: 1px solid var(--pale);
    border-radius: 12px;
    padding: 28px 28px 28px 72px;
    position: relative;
    transition: box-shadow 0.2s;
}
body.p-online-auction-software__self-hosted .step-card:hover {
    box-shadow: 0 4px 20px rgba(30, 45, 77, 0.09);
}
body.p-online-auction-software__self-hosted .step-card::before {
    counter-increment: step;
    content: counter(step);
    position: absolute;
    left: 20px;
    top: 28px;
    width: 36px;
    height: 36px;
    background: var(--blue);
    color: var(--white);
    border-radius: 50%;
    font-family: var(--serif);
    font-weight: 800;
    font-size: 0.95rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
body.p-online-auction-software__self-hosted .step-card h3 {
    font-family: var(--serif);
    font-weight: 700;
    font-size: 0.95rem;
    color: var(--ink);
    margin: 0 0 8px;
}
body.p-online-auction-software__self-hosted .step-card p {
    font-size: 0.85rem;
    color: var(--mid);
    line-height: 1.6;
    margin: 0;
}

/* ── CTA band ─────────────────────────────────────── */
body.p-online-auction-software__self-hosted .cta-band {
    background: var(--ink);
    color: var(--white);
    text-align: center;
    padding: 72px 40px;
}
body.p-online-auction-software__self-hosted .cta-band h2 {
    font-family: var(--serif);
    font-weight: 800;
    font-size: clamp(1.6rem, 3.5vw, 2.2rem);
    letter-spacing: -0.02em;
    line-height: 1.18;
    margin: 0 auto 16px;
    max-width: 680px;
}
body.p-online-auction-software__self-hosted .cta-band h2 em {
    color: var(--blue2);
    font-style: normal;
}
body.p-online-auction-software__self-hosted .cta-band p {
    font-size: 1rem;
    color: var(--light);
    max-width: 560px;
    margin: 0 auto 32px;
    line-height: 1.65;
}
body.p-online-auction-software__self-hosted .cta-band .btn-primary {
    background: var(--blue);
}
body.p-online-auction-software__self-hosted .cta-band .btn-primary:hover {
    background: var(--blue2);
}
body.p-online-auction-software__self-hosted .cta-checklist {
    display: flex;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 auto 32px;
    max-width: 600px;
}
body.p-online-auction-software__self-hosted .cta-check-item {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 0.875rem;
    color: var(--light);
}

/* ── FAQ ──────────────────────────────────────────── */
body.p-online-auction-software__self-hosted .faq-list {
    max-width: 760px;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
}
body.p-online-auction-software__self-hosted .faq-item {
    border-bottom: 1px solid var(--pale);
    padding: 20px 0;
}
body.p-online-auction-software__self-hosted .faq-item:first-child {
    border-top: 1px solid var(--pale);
}
body.p-online-auction-software__self-hosted .faq-q {
    font-family: var(--serif);
    font-weight: 700;
    font-size: 1rem;
    color: var(--ink);
    cursor: pointer;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    user-select: none;
}
body.p-online-auction-software__self-hosted .faq-q::-webkit-details-marker {
    display: none;
}
body.p-online-auction-software__self-hosted details[open] .faq-q {
    color: var(--blue);
}
body.p-online-auction-software__self-hosted .faq-chevron {
    flex-shrink: 0;
    color: var(--mid);
    transition: transform 0.2s;
}
body.p-online-auction-software__self-hosted details[open] .faq-chevron {
    transform: rotate(180deg);
}
body.p-online-auction-software__self-hosted .faq-a {
    font-size: 0.9rem;
    color: var(--mid);
    line-height: 1.7;
    margin-top: 10px;
    padding-right: 30px;
}

/* ── internal links ───────────────────────────────── */
body.p-online-auction-software__self-hosted .il-section {
    padding: 72px 40px;
    background: var(--white);
}
body.p-online-auction-software__self-hosted .il-inner {
    max-width: var(--max);
    margin: 0 auto;
}
body.p-online-auction-software__self-hosted .il-title {
    font-family: var(--serif);
    font-weight: 800;
    font-size: 1.4rem;
    color: var(--ink);
    margin: 0 0 28px;
}
body.p-online-auction-software__self-hosted .il-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 16px;
}
body.p-online-auction-software__self-hosted .il-card {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    background: var(--bg);
    border: 1px solid var(--pale);
    border-radius: 10px;
    padding: 18px 20px;
    text-decoration: none;
    transition: box-shadow 0.2s, border-color 0.2s;
}
body.p-online-auction-software__self-hosted .il-card:hover {
    box-shadow: 0 4px 16px rgba(30, 45, 77, 0.09);
    border-color: var(--blue2);
}
body.p-online-auction-software__self-hosted .il-card-icon {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    background: var(--pale);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
}
body.p-online-auction-software__self-hosted .il-card-text strong {
    display: block;
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 2px;
}
body.p-online-auction-software__self-hosted .il-card-text span {
    font-size: 0.8rem;
    color: var(--mid);
}

/* ── responsive ───────────────────────────────────── */
@media (max-width: 768px) {
    body.p-online-auction-software__self-hosted .section {
        padding: 52px 20px;
    }

    body.p-online-auction-software__self-hosted .feature-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__self-hosted .persona-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__self-hosted .steps-grid {
        grid-template-columns: 1fr 1fr;
    }

    body.p-online-auction-software__self-hosted .cost-table {
        font-size: 0.8rem;
    }

    body.p-online-auction-software__self-hosted .cost-table thead tr th,
    body.p-online-auction-software__self-hosted .cost-row td,
    body.p-online-auction-software__self-hosted .cost-total td {
        padding: 10px 12px;
    }

    body.p-online-auction-software__self-hosted .cta-band {
        padding: 52px 20px;
    }

    body.p-online-auction-software__self-hosted .il-section {
        padding: 52px 20px;
    }

    body.p-online-auction-software__self-hosted .il-grid {
        grid-template-columns: 1fr 1fr;
    }
}
@media (max-width: 480px) {
    body.p-online-auction-software__self-hosted .steps-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__self-hosted .il-grid {
        grid-template-columns: 1fr;
    }

    body.p-online-auction-software__self-hosted .hero-cta-row {
        flex-direction: column;
        align-items: center;
    }
}

/* ── PAGE: order-software--original ──────────────────────────── */
/* ── PAGE SHELL ── */
body.p-order-software--original .page {
    max-width: 960px;
    margin: 0 auto;
    padding: 100px 32px 80px;
}

/* ── TOP ── */
body.p-order-software--original .page-top {
    text-align: center;
    margin-bottom: 52px;
}
body.p-order-software--original .page-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 16px;
}
body.p-order-software--original .page-eyebrow::before {
    content: '';
    width: 14px;
    height: 2px;
    background: var(--blue);
}
body.p-order-software--original .page-eyebrow::after {
    content: '';
    width: 14px;
    height: 2px;
    background: var(--blue);
}
body.p-order-software--original h1 {
    font-family: var(--serif);
    font-size: clamp(2rem, 3.5vw, 2.8rem);
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1.12;
    color: var(--ink);
    margin-bottom: 14px;
}
body.p-order-software--original .page-sub {
    font-size: 1rem;
    color: var(--mid);
    max-width: 500px;
    margin: 0 auto;
    line-height: 1.65;
}

/* ── PLAN TOGGLE ── */
body.p-order-software--original .toggle-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 36px;
}
body.p-order-software--original .toggle-label {
    font-size: 0.83rem;
    color: var(--mid);
}
body.p-order-software--original .toggle-label.active {
    color: var(--ink);
    font-weight: 600;
}
body.p-order-software--original .toggle-track {
    width: 44px;
    height: 24px;
    background: var(--blue);
    border-radius: 12px;
    position: relative;
    cursor: pointer;
    transition: background 0.2s;
    flex-shrink: 0;
}
body.p-order-software--original .toggle-thumb {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: white;
    position: absolute;
    top: 3px;
    left: 3px;
    transition: left 0.2s;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
}
body.p-order-software--original .toggle-track.monthly .toggle-thumb {
    left: 23px;
}
body.p-order-software--original .save-badge {
    font-size: 0.65rem;
    font-weight: 700;
    color: var(--green);
    background: var(--green-pale);
    padding: 3px 7px;
    border-radius: 4px;
    letter-spacing: 0.04em;
}

/* ── PLAN CARDS ── */
body.p-order-software--original .plans {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 56px;
}

body.p-order-software--original .plan-card {
    background: var(--white);
    border: 1.5px solid rgba(30, 45, 77, 0.1);
    border-radius: 16px;
    padding: 32px 28px 28px;
    display: flex;
    flex-direction: column;
    gap: 0;
    position: relative;
    transition: box-shadow 0.2s, border-color 0.2s;
}
body.p-order-software--original .plan-card:hover {
    box-shadow: 0 8px 32px rgba(30, 45, 77, 0.08);
}

body.p-order-software--original .plan-card.featured {
    background: var(--ink);
    border-color: var(--ink);
    box-shadow: 0 16px 48px rgba(30, 45, 77, 0.22);
    transform: translateY(-8px);
}
body.p-order-software--original .plan-card.featured:hover {
    box-shadow: 0 20px 56px rgba(30, 45, 77, 0.28);
}

body.p-order-software--original .plan-badge {
    position: absolute;
    top: -11px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--blue);
    color: white;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: 20px;
    white-space: nowrap;
}

body.p-order-software--original .plan-name {
    font-family: var(--serif);
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 4px;
}
body.p-order-software--original .plan-card.featured .plan-name {
    color: var(--white);
}

body.p-order-software--original .plan-tagline {
    font-size: 0.78rem;
    color: var(--mid);
    margin-bottom: 24px;
    line-height: 1.4;
}
body.p-order-software--original .plan-card.featured .plan-tagline {
    color: rgba(255, 255, 255, 0.5);
}

body.p-order-software--original .plan-price {
    display: flex;
    align-items: baseline;
    gap: 4px;
    margin-bottom: 4px;
}
body.p-order-software--original .plan-currency {
    font-family: var(--serif);
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--ink);
}
body.p-order-software--original .plan-card.featured .plan-currency {
    color: var(--white);
}
body.p-order-software--original .plan-amount {
    font-family: var(--serif);
    font-size: 3rem;
    font-weight: 800;
    line-height: 1;
    color: var(--ink);
    letter-spacing: -0.03em;
}
body.p-order-software--original .plan-card.featured .plan-amount {
    color: var(--white);
}
body.p-order-software--original .plan-period {
    font-size: 0.8rem;
    color: var(--mid);
    align-self: flex-end;
    padding-bottom: 6px;
}
body.p-order-software--original .plan-card.featured .plan-period {
    color: rgba(255, 255, 255, 0.45);
}

body.p-order-software--original .plan-billing {
    font-size: 0.75rem;
    color: var(--light);
    margin-bottom: 28px;
    min-height: 18px;
}
body.p-order-software--original .plan-card.featured .plan-billing {
    color: rgba(255, 255, 255, 0.3);
}

body.p-order-software--original .plan-divider {
    height: 1px;
    background: rgba(30, 45, 77, 0.07);
    margin-bottom: 32px;
}
body.p-order-software--original .plan-card.featured .plan-divider {
    background: rgba(255, 255, 255, 0.1);
}

body.p-order-software--original .plan-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: var(--ink);
    color: var(--white);
    font-weight: 700;
    font-size: 0.92rem;
    padding: 14px 20px;
    border-radius: 9px;
    text-decoration: none;
    transition: background 0.2s, transform 0.15s;
    text-align: center;
}
body.p-order-software--original .plan-cta:hover {
    background: var(--ink2);
    transform: translateY(-1px);
}
body.p-order-software--original .plan-card.featured .plan-cta {
    background: var(--white);
    color: var(--ink);
}
body.p-order-software--original .plan-card.featured .plan-cta:hover {
    background: var(--pale);
}

body.p-order-software--original .plan-cta-note {
    text-align: center;
    font-size: 0.7rem;
    color: var(--light);
    margin-top: 10px;
}
body.p-order-software--original .plan-card.featured .plan-cta-note {
    color: rgba(255, 255, 255, 0.3);
}

/* ── WHAT HAPPENS NEXT ── */
body.p-order-software--original .next-section {
    margin-bottom: 56px;
}
body.p-order-software--original .next-label {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--light);
    text-align: center;
    margin-bottom: 28px;
}
body.p-order-software--original .next-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2px;
    background: rgba(30, 45, 77, 0.07);
    border-radius: 14px;
    overflow: hidden;
}
body.p-order-software--original .next-card {
    background: var(--white);
    padding: 28px 24px;
    position: relative;
}
body.p-order-software--original .next-num {
    font-family: var(--serif);
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--pale);
    line-height: 1;
    margin-bottom: 14px;
}
body.p-order-software--original .next-card h3 {
    font-family: var(--serif);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 6px;
}
body.p-order-software--original .next-card p {
    font-size: 0.8rem;
    color: var(--mid);
    line-height: 1.6;
}
body.p-order-software--original .next-card p strong {
    color: var(--ink);
    font-weight: 600;
}

/* ── OBJECTION ROW ── */
body.p-order-software--original .objections {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-bottom: 56px;
}
body.p-order-software--original .obj-card {
    background: var(--white);
    border: 1px solid rgba(30, 45, 77, 0.07);
    border-radius: 12px;
    padding: 20px 22px;
    display: flex;
    gap: 14px;
    align-items: flex-start;
}
body.p-order-software--original .obj-icon {
    width: 36px;
    height: 36px;
    border-radius: 9px;
    background: var(--pale);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
body.p-order-software--original .obj-content h4 {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 4px;
    line-height: 1.3;
}
body.p-order-software--original .obj-content p {
    font-size: 0.78rem;
    color: var(--mid);
    line-height: 1.55;
}
body.p-order-software--original .obj-content p strong {
    color: var(--ink);
    font-weight: 600;
}
body.p-order-software--original .obj-content a {
    color: var(--blue);
    text-decoration: none;
}
body.p-order-software--original .obj-content a:hover {
    text-decoration: underline;
}

/* ── COMPARE LINK ── */
body.p-order-software--original .compare-row {
    text-align: center;
    margin-bottom: 56px;
}
body.p-order-software--original .compare-row p {
    font-size: 0.85rem;
    color: var(--mid);
}
body.p-order-software--original .compare-row a {
    color: var(--blue);
    text-decoration: none;
    font-weight: 600;
}
body.p-order-software--original .compare-row a:hover {
    text-decoration: underline;
}

/* ── TRUST ROW ── */
body.p-order-software--original .trust-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
    padding: 24px 32px;
    background: var(--white);
    border-radius: 12px;
    border: 1px solid rgba(30, 45, 77, 0.07);
    flex-wrap: wrap;
}
body.p-order-software--original .trust-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.8rem;
    color: var(--mid);
}
body.p-order-software--original .trust-item svg {
    color: var(--green);
    flex-shrink: 0;
}
body.p-order-software--original .trust-div {
    width: 1px;
    height: 20px;
    background: rgba(30, 45, 77, 0.1);
}

/* ── PAGE FOOTER (mini) ── */
body.p-order-software--original .page-footer {
    text-align: center;
    margin-top: 40px;
    padding-top: 32px;
    border-top: 1px solid rgba(30, 45, 77, 0.08);
}
body.p-order-software--original .page-footer p {
    font-size: 0.75rem;
    color: var(--light);
}
body.p-order-software--original .page-footer a {
    color: var(--light);
    text-decoration: none;
    transition: color 0.15s;
}
body.p-order-software--original .page-footer a:hover {
    color: var(--mid);
}

@media (max-width: 800px) {
    body.p-order-software--original .plans {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    body.p-order-software--original .plan-card.featured {
        transform: none;
    }

    body.p-order-software--original .next-grid {
        grid-template-columns: 1fr;
    }

    body.p-order-software--original .objections {
        grid-template-columns: 1fr;
    }

    body.p-order-software--original .trust-row {
        gap: 16px;
    }

    body.p-order-software--original .trust-div {
        display: none;
    }
}
@media (max-width: 500px) {
    body.p-order-software--original .page {
        padding: 88px 20px 60px;
    }
}

/* ── PAGE: order-software ──────────────────────────── */
/* ── PROGRESS BAR ── */
body.p-order-software .progress-wrap {
    position: sticky;
    top: 68px;
    z-index: 80;
    background: var(--white);
    border-bottom: 1px solid var(--pale);
    padding: 14px 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
body.p-order-software .prog-track {
    display: flex;
    align-items: center;
    gap: 0;
    flex: 1;
    max-width: 480px;
}
body.p-order-software .prog-step {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid var(--pale);
    background: var(--white);
    color: var(--light);
    font-size: 0.7rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all .2s;
    position: relative;
}
body.p-order-software .prog-step.is-done {
    border-color: var(--blue);
    background: var(--blue);
    color: var(--white);
}
body.p-order-software .prog-step.is-active {
    border-color: var(--blue);
    color: var(--blue);
    font-weight: 800;
    box-shadow: 0 0 0 3px rgba(59, 125, 232, .15);
}
body.p-order-software .prog-line {
    flex: 1;
    height: 2px;
    background: var(--pale);
}
body.p-order-software .prog-line.is-done {
    background: var(--blue);
}
body.p-order-software #prog-label {
    font-size: 0.75rem;
    color: var(--mid);
    white-space: nowrap;
}
body.p-order-software #running-total {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--blue);
    white-space: nowrap;
}

/* ── SHELL ── */
body.p-order-software .order-shell {
    max-width: 840px;
    margin: 0 auto;
    padding: 40px 32px 100px;
}

/* ── STEP HEADER ── */
body.p-order-software .step-eyebrow {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 8px;
}
body.p-order-software .step-title {
    font-family: var(--serif);
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    font-weight: 800;
    letter-spacing: -.03em;
    color: var(--ink);
    margin-bottom: 8px;
}
body.p-order-software .step-sub {
    font-size: .9rem;
    color: var(--mid);
    margin-bottom: 32px;
    max-width: 520px;
}

/* ── PLAN CARDS (Step 1) ── */
body.p-order-software .plan-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 28px;
}
body.p-order-software .plan-card {
    border: 2px solid var(--pale);
    border-radius: 16px;
    padding: 24px;
    cursor: pointer;
    transition: all .15s;
    background: var(--white);
    position: relative;
}
body.p-order-software .plan-card:hover {
    border-color: #b3cdf5;
}
body.p-order-software .plan-card.sel {
    border-color: var(--blue);
    box-shadow: 0 0 0 3px rgba(59, 125, 232, .12);
}
body.p-order-software .plan-badge {
    display: inline-block;
    font-size: .6rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 3px 8px;
    border-radius: 4px;
    margin-bottom: 12px;
}
body.p-order-software .badge-popular {
    background: var(--blue);
    color: var(--white);
}
body.p-order-software .badge-own {
    background: var(--pale);
    color: var(--blue);
}
body.p-order-software .badge-managed {
    background: #1e2d4d;
    color: var(--white);
}
body.p-order-software .plan-name {
    font-family: var(--serif);
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--ink);
    margin-bottom: 4px;
}
body.p-order-software .plan-price {
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--ink);
    line-height: 1;
    margin-bottom: 2px;
}
body.p-order-software .plan-price span {
    font-size: .8rem;
    font-weight: 400;
    color: var(--mid);
}
body.p-order-software .plan-desc {
    font-size: .78rem;
    color: var(--mid);
    margin: 10px 0 14px;
    line-height: 1.5;
}
body.p-order-software .plan-features {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 5px;
}
body.p-order-software .plan-features li {
    font-size: .75rem;
    color: var(--mid);
    display: flex;
    align-items: flex-start;
    gap: 6px;
}
body.p-order-software .plan-features li::before {
    content: '✓';
    color: var(--blue);
    font-weight: 700;
    flex-shrink: 0;
    margin-top: 1px;
}
body.p-order-software .plan-card.sel .plan-features li::before {
    color: var(--blue);
}

/* ── OPTION CARDS (Steps 2–5) ── */
body.p-order-software .option-grid {
    display: grid;
    gap: 12px;
    margin-bottom: 20px;
}
body.p-order-software .option-grid.cols-2 {
    grid-template-columns: 1fr 1fr;
}
body.p-order-software .option-grid.cols-3 {
    grid-template-columns: repeat(3, 1fr);
}
body.p-order-software .opt-card {
    border: 2px solid var(--pale);
    border-radius: 12px;
    padding: 18px 20px;
    cursor: pointer;
    transition: all .15s;
    background: var(--white);
    display: flex;
    flex-direction: column;
    gap: 4px;
    position: relative;
}
body.p-order-software .opt-card:hover {
    border-color: #b3cdf5;
}
body.p-order-software .opt-card.sel {
    border-color: var(--blue);
    background: #f0f5ff;
}
body.p-order-software .opt-card.recommended::after {
    content: 'Recommended';
    position: absolute;
    top: -1px;
    right: 16px;
    font-size: .58rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    background: var(--blue);
    color: var(--white);
    padding: 2px 8px;
    border-radius: 0 0 6px 6px;
}
body.p-order-software .opt-name {
    font-size: .9rem;
    font-weight: 700;
    color: var(--ink);
}
body.p-order-software .opt-price {
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--ink);
}
body.p-order-software .opt-price small {
    font-size: .75rem;
    font-weight: 400;
    color: var(--mid);
}
body.p-order-software .opt-desc {
    font-size: .77rem;
    color: var(--mid);
    line-height: 1.45;
    margin-top: 4px;
}
body.p-order-software .opt-saving {
    font-size: .7rem;
    font-weight: 700;
    color: var(--green);
    background: var(--green-pale);
    display: inline-block;
    padding: 2px 7px;
    border-radius: 4px;
    margin-top: 4px;
}

/* Checkbox style for add-ons */
body.p-order-software .opt-card.checkbox {
    padding-left: 48px;
}
body.p-order-software .opt-card.checkbox::before {
    content: '';
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border: 2px solid var(--pale);
    border-radius: 5px;
    background: var(--white);
    transition: all .15s;
}
body.p-order-software .opt-card.checkbox.sel::before {
    background: var(--blue);
    border-color: var(--blue);
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 8l3.5 3.5L13 4' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* ── WHITELABEL CHECKBOX ── */
body.p-order-software .wl-row {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 18px;
    border: 1.5px solid var(--pale);
    border-radius: 10px;
    cursor: pointer;
    margin-bottom: 24px;
    background: var(--white);
}
body.p-order-software .wl-row input {
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: var(--blue);
}
body.p-order-software .wl-label {
    flex: 1;
}
body.p-order-software .wl-label strong {
    font-size: .88rem;
    color: var(--ink);
    display: block;
}
body.p-order-software .wl-label span {
    font-size: .76rem;
    color: var(--mid);
}
body.p-order-software .wl-price {
    font-size: .9rem;
    font-weight: 700;
    color: var(--ink);
}

/* ── BUNDLE TRIGGER ── */
body.p-order-software .bundle-trigger {
    background: #fff8e6;
    border: 1.5px solid #f5d07a;
    border-radius: 10px;
    padding: 12px 16px;
    font-size: .8rem;
    color: #7a5200;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 8px;
}

/* ── NAV BUTTONS ── */
body.p-order-software .step-nav {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 8px;
    flex-wrap: wrap;
}
body.p-order-software .btn-next {
    background: var(--blue);
    color: var(--white);
    border: none;
    border-radius: 10px;
    padding: 13px 28px;
    font-size: .9rem;
    font-weight: 700;
    cursor: pointer;
    font-family: var(--sans);
    transition: background .15s;
}
body.p-order-software .btn-next:hover {
    background: var(--ink);
}
body.p-order-software .btn-next:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}
body.p-order-software .btn-back {
    background: none;
    border: 1.5px solid var(--pale);
    border-radius: 10px;
    padding: 12px 20px;
    font-size: .88rem;
    font-weight: 600;
    color: var(--mid);
    cursor: pointer;
    font-family: var(--sans);
    transition: all .15s;
}
body.p-order-software .btn-back:hover {
    border-color: var(--mid);
    color: var(--ink);
}
body.p-order-software .btn-skip {
    background: none;
    border: none;
    font-size: .82rem;
    color: var(--light);
    cursor: pointer;
    font-family: var(--sans);
    text-decoration: underline;
    margin-left: auto;
    padding: 4px;
}
body.p-order-software .btn-skip:hover {
    color: var(--mid);
}

/* ── CLOUD CROSS-SELL ── */
body.p-order-software .crosssell {
    background: var(--pale);
    border-radius: 10px;
    padding: 12px 16px;
    font-size: .8rem;
    color: var(--ink3);
    margin-top: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
}
body.p-order-software .crosssell a {
    color: var(--blue);
    font-weight: 600;
}

/* ── STEP 6: REVIEW ── */
body.p-order-software .review-box {
    background: var(--white);
    border: 1.5px solid var(--pale);
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 24px;
}
body.p-order-software .review-box-head {
    padding: 16px 20px;
    border-bottom: 1px solid var(--pale);
    font-size: .75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--mid);
    display: flex;
    justify-content: space-between;
    align-items: center;
}
body.p-order-software .review-box-head button {
    font-size: .75rem;
    color: var(--blue);
    background: none;
    border: none;
    cursor: pointer;
    font-family: var(--sans);
    font-weight: 600;
}
body.p-order-software .review-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    padding: 14px 20px;
    border-bottom: 1px solid var(--pale);
}
body.p-order-software .review-row:last-child {
    border-bottom: none;
}
body.p-order-software .review-name {
    font-size: .88rem;
    font-weight: 600;
    color: var(--ink);
}
body.p-order-software .review-note {
    font-size: .74rem;
    color: var(--mid);
    margin-top: 2px;
}
body.p-order-software .review-price {
    font-size: .9rem;
    font-weight: 700;
    color: var(--ink);
    white-space: nowrap;
}
body.p-order-software .review-totals-wrap {
    background: var(--ink);
    border-radius: 12px;
    padding: 20px 24px;
    margin-bottom: 20px;
}
body.p-order-software .total-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}
body.p-order-software .total-row:last-child {
    border-bottom: none;
    padding-top: 10px;
}
body.p-order-software .total-row span {
    font-size: .85rem;
    color: rgba(255, 255, 255, .55);
}
body.p-order-software .total-row strong {
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--white);
}
body.p-order-software .trust-bar {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    margin-bottom: 24px;
}
body.p-order-software .trust-item {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: .78rem;
    color: var(--mid);
}
body.p-order-software .trust-item i {
    color: var(--ink);
}
body.p-order-software .btn-pay {
    width: 100%;
    background: var(--blue);
    color: var(--white);
    border: none;
    border-radius: 12px;
    padding: 16px;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
    font-family: var(--sans);
    transition: background .15s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
body.p-order-software .btn-pay:hover {
    background: var(--ink);
}
body.p-order-software .pay-note {
    font-size: .74rem;
    color: var(--light);
    text-align: center;
    margin-top: 10px;
}

/* ── RESPONSIVE ── */
@media (max-width: 640px) {
    body.p-order-software .plan-grid {
        grid-template-columns: 1fr;
    }

    body.p-order-software .option-grid.cols-2, body.p-order-software .option-grid.cols-3 {
        grid-template-columns: 1fr;
    }

    body.p-order-software .progress-wrap {
        padding: 12px 16px;
    }

    body.p-order-software .order-shell {
        padding: 24px 16px 80px;
    }
}

/* ── PAGE: pricing ──────────────────────────── */
/* ── BREADCRUMB ── */

/* HERO */
body.p-pricing .hero {
    max-width: var(--max);
    margin: 0 auto;
    padding: 32px 40px 56px;
    text-align: center
}

body.p-pricing .hero h1 {
    font-family: var(--serif);
    font-size: clamp(2.6rem, 4.5vw, 3.8rem);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -.03em;
    color: var(--ink2);
    margin-bottom: 16px
}
body.p-pricing .hero h1 em {
    font-style: italic;
    color: var(--blue)
}
body.p-pricing .hero-sub {
    font-size: 1rem;
    color: var(--mid);
    max-width: 540px;
    margin: 0 auto 32px;
    line-height: 1.65
}

/* BILLING TOGGLE */
body.p-pricing .toggle-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin-bottom: 48px
}
body.p-pricing .toggle-label {
    font-size: .82rem;
    font-weight: 500;
    color: var(--mid)
}
body.p-pricing .toggle-label.active {
    color: var(--ink);
    font-weight: 600
}
body.p-pricing .toggle {
    position: relative;
    width: 48px;
    height: 26px;
    cursor: pointer
}
body.p-pricing .toggle input {
    opacity: 0;
    width: 0;
    height: 0;
    position: absolute
}
body.p-pricing .toggle-track {
    position: absolute;
    inset: 0;
    background: #d0d8e8;
    border-radius: 13px;
    transition: background .2s
}
body.p-pricing .toggle input:checked ~ .toggle-track {
    background: var(--blue)
}
body.p-pricing .toggle-thumb {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 20px;
    height: 20px;
    background: white;
    border-radius: 50%;
    transition: transform .2s;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .15)
}
body.p-pricing .toggle input:checked ~ .toggle-track ~ .toggle-thumb {
    transform: translateX(22px)
}
body.p-pricing .save-pill {
    background: var(--green-pale);
    color: var(--green);
    font-size: .7rem;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 10px;
    border: 1px solid #a8d9bc
}

/* PRICING GRID */
body.p-pricing .pricing-grid {
    max-width: var(--max);
    margin: 0 auto;
    padding: 0 40px 80px;
    display: grid;
    grid-template-columns:1fr 1.08fr 1fr;
    gap: 0;
    align-items: stretch
}

/* BASE CARD */
body.p-pricing .plan-card {
    background: var(--bg);
    border: 1.5px solid var(--pale);
    padding: 32px 28px 28px;
    display: flex;
    flex-direction: column;
    gap: 0;
    position: relative;
    transition: box-shadow .2s
}
body.p-pricing .plan-card:first-child {
    border-radius: 16px 0 0 16px;
    border-right: none
}
body.p-pricing .plan-card:last-child {
    border-radius: 0 16px 16px 0;
    border-left: none
}

/* CLOUD CARD — elevated middle */
body.p-pricing .plan-card.is-featured {
    background: var(--ink2);
    border-color: var(--blue);
    border-width: 2px;
    border-radius: 16px;
    z-index: 2;
    box-shadow: 0 20px 60px rgba(26, 38, 64, .25);
    margin-top: -12px;
    margin-bottom: -12px;
    padding-top: 44px;
    padding-bottom: 40px;
}
body.p-pricing .plan-card.is-featured:hover {
    box-shadow: 0 28px 72px rgba(26, 38, 64, .35)
}

/* POPULAR BADGE */
body.p-pricing .popular-badge {
    position: absolute;
    top: -14px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--blue);
    color: white;
    font-size: .65rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 5px 14px;
    border-radius: 20px;
    white-space: nowrap;
    box-shadow: 0 4px 12px rgba(45, 107, 228, .4)
}

/* PLAN NAME */
body.p-pricing .plan-name {
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 8px
}
body.p-pricing .is-featured .plan-name {
    color: rgba(255, 255, 255, .4)
}

body.p-pricing .plan-title {
    font-family: var(--serif);
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--ink2);
    margin-bottom: 4px;
    letter-spacing: -.02em
}
body.p-pricing .is-featured .plan-title {
    color: var(--white)
}

body.p-pricing .plan-tagline {
    font-size: .8rem;
    color: var(--mid);
    line-height: 1.4;
    margin-bottom: 24px;
    min-height: 36px
}
body.p-pricing .is-featured .plan-tagline {
    color: rgba(255, 255, 255, .5)
}

/* PRICE BLOCK */
body.p-pricing .price-block {
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--pale)
}
body.p-pricing .is-featured .price-block {
    border-color: rgba(255, 255, 255, .1)
}
body.p-pricing .price-main {
    display: flex;
    align-items: flex-end;
    gap: 4px;
    line-height: 1
}
body.p-pricing .price-currency {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--mid);
    margin-bottom: 4px
}
body.p-pricing .is-featured .price-currency {
    color: rgba(255, 255, 255, .5)
}
body.p-pricing .price-amount {
    font-family: var(--serif);
    font-size: 2.8rem;
    font-weight: 700;
    color: var(--ink2);
    letter-spacing: -.03em
}
body.p-pricing .is-featured .price-amount {
    color: var(--white)
}
body.p-pricing .price-period {
    font-size: .78rem;
    color: var(--mid);
    margin-bottom: 6px;
    margin-left: 2px
}
body.p-pricing .is-featured .price-period {
    color: rgba(255, 255, 255, .4)
}
body.p-pricing .price-note {
    font-size: .72rem;
    color: var(--light);
    margin-top: 6px;
    line-height: 1.4
}
body.p-pricing .is-featured .price-note {
    color: rgba(255, 255, 255, .35)
}
body.p-pricing .price-annual {
    font-size: .75rem;
    font-weight: 600;
    color: var(--green);
    margin-top: 4px
}
body.p-pricing .price-monthly-equiv {
    font-size: .72rem;
    color: var(--mid);
    margin-top: 2px
}
body.p-pricing .is-featured .price-monthly-equiv {
    color: rgba(255, 255, 255, .35)
}
body.p-pricing .price-save {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: .68rem;
    font-weight: 700;
    background: rgba(26, 200, 100, .12);
    color: #1ac864;
    padding: 3px 8px;
    border-radius: 4px;
    margin-top: 8px
}

/* CTA BUTTON */
body.p-pricing .plan-cta {
    display: block;
    text-align: center;
    padding: 13px;
    border-radius: 8px;
    font-size: .88rem;
    font-weight: 700;
    text-decoration: none;
    margin-bottom: 24px;
    transition: all .15s
}
body.p-pricing .plan-cta.cta-default {
    background: var(--white);
    color: var(--ink);
    border: 1.5px solid var(--pale)
}
body.p-pricing .plan-cta.cta-default:hover {
    border-color: var(--blue);
    color: var(--blue)
}
body.p-pricing .plan-cta.cta-featured {
    background: var(--blue);
    color: var(--white);
    box-shadow: 0 4px 16px rgba(45, 107, 228, .4)
}
body.p-pricing .plan-cta.cta-featured:hover {
    background: var(--blue2);
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(45, 107, 228, .5)
}
body.p-pricing .plan-cta.cta-outline {
    background: var(--ink);
    color: var(--white);
    border: 1.5px solid var(--ink)
}
body.p-pricing .plan-cta.cta-outline:hover {
    background: var(--blue2);
    border-color: var(--blue2);
    transform: translateY(-1px)
}

/* FEATURE LIST */
body.p-pricing .plan-features {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0
}
body.p-pricing .feature-group-label {
    font-size: .6rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--light);
    margin: 16px 0 8px;
    padding-top: 14px;
    border-top: 1px solid var(--pale)
}
body.p-pricing .is-featured .feature-group-label {
    color: rgba(255, 255, 255, .25);
    border-color: rgba(255, 255, 255, .08)
}
body.p-pricing .feature-row {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 5px 0;
    font-size: .8rem;
    color: var(--mid);
    line-height: 1.4
}
body.p-pricing .is-featured .feature-row {
    color: rgba(255, 255, 255, .55)
}
body.p-pricing .feature-row i[data-lucide].check {
    flex-shrink: 0;
    margin-top: 2px;
    color: var(--blue)
}
body.p-pricing .is-featured .feature-row i[data-lucide].check {
    color: #4da8ff
}
body.p-pricing .feature-row i[data-lucide].cross {
    flex-shrink: 0;
    margin-top: 2px;
    color: #ccd4e0
}
body.p-pricing .feature-row strong {
    color: var(--ink);
    font-weight: 600
}
body.p-pricing .is-featured .feature-row strong {
    color: var(--white)
}
body.p-pricing .feature-row .tag {
    font-size: .62rem;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    background: var(--blue-pale);
    color: var(--blue);
    padding: 1px 6px;
    border-radius: 3px;
    margin-left: 4px;
    white-space: nowrap
}
body.p-pricing .is-featured .feature-row .tag {
    background: rgba(45, 107, 228, .25);
    color: #90b8ff
}

/* COMPARISON TABLE */
body.p-pricing .compare-section {
    max-width: var(--max);
    margin: 0 auto;
    padding: 0 40px 80px
}
body.p-pricing .compare-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 32px
}
body.p-pricing .compare-toggle-btn {
    background: none;
    border: none;
    cursor: pointer;
    font-family: var(--sans);
    font-size: .85rem;
    font-weight: 600;
    color: var(--blue);
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 20px;
    border: 1.5px solid var(--pale);
    border-radius: 8px;
    transition: all .15s
}
body.p-pricing .compare-toggle-btn:hover {
    border-color: var(--blue);
    background: var(--blue-pale)
}
body.p-pricing .compare-table-wrap {
    display: none
}
body.p-pricing .compare-table-wrap.visible {
    display: block
}
body.p-pricing .compare-table {
    width: 100%;
    border-collapse: collapse;
    font-size: .82rem
}
body.p-pricing .compare-table th {
    padding: 14px 18px;
    text-align: left;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--light);
    border-bottom: 2px solid var(--pale)
}
body.p-pricing .compare-table th:not(:first-child) {
    text-align: center;
    width: 20%
}
body.p-pricing .compare-table th.col-featured {
    color: var(--blue)
}
body.p-pricing .compare-table td {
    padding: 10px 18px;
    border-bottom: 1px solid var(--pale);
    color: var(--mid);
    vertical-align: middle
}
body.p-pricing .compare-table td:not(:first-child) {
    text-align: center
}
body.p-pricing .compare-table tr:last-child td {
    border-bottom: none
}
body.p-pricing .compare-table .group-header td {
    background: var(--bg);
    font-size: .65rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--light);
    padding: 10px 18px 6px
}
body.p-pricing .compare-table .check-yes {
    color: var(--blue)
}
body.p-pricing .compare-table .check-no {
    color: #ccd4e0
}
body.p-pricing .compare-table .col-featured-cell {
    background: rgba(45, 107, 228, .04);
    font-weight: 600;
    color: var(--ink)
}

/* FAQ */
body.p-pricing .faq-section {
    background: var(--bg);
    padding: 72px 40px
}
body.p-pricing .faq-inner {
    max-width: 720px;
    margin: 0 auto
}

body.p-pricing .section-heading {
    font-family: var(--serif);
    font-size: clamp(2rem, 3.5vw, 2.9rem);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -.03em;
    color: var(--ink2);
    margin-bottom: 40px;
    text-align: center
}
body.p-pricing .faq-list {
    display: flex;
    flex-direction: column;
    gap: 0
}

/* TRUST STRIP */
body.p-pricing .trust-strip {
    max-width: var(--max);
    margin: 0 auto;
    padding: 56px 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
    flex-wrap: wrap;
    border-top: 1px solid var(--pale)
}
body.p-pricing .trust-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: .8rem;
    color: var(--mid)
}
body.p-pricing .trust-item i[data-lucide] {
    color: var(--blue);
    flex-shrink: 0
}
body.p-pricing .trust-divider {
    width: 1px;
    height: 20px;
    background: var(--pale)
}

/* ANNUAL/MONTHLY TOGGLE LOGIC */
body.p-pricing .price-yearly {
    display: block
}
body.p-pricing .price-monthly {
    display: none
}
body.p-pricing.show-monthly .price-yearly {
    display: none
}
body.p-pricing.show-monthly .price-monthly {
    display: block
}

/* REVEAL */
body.p-pricing .reveal {
    opacity: 0;
    transform: translateY(16px);
    transition: opacity .5s, transform .5s
}
body.p-pricing .reveal.visible {
    opacity: 1;
    transform: translateY(0)
}

@media (max-width: 860px) {
    body.p-pricing .pricing-grid {
        grid-template-columns:1fr;
        gap: 16px;
        padding: 0 20px 60px
    }

    body.p-pricing .plan-card:first-child, body.p-pricing .plan-card:last-child {
        border-radius: 12px;
        border: 1.5px solid var(--pale)
    }

    body.p-pricing .plan-card.is-featured {
        margin: 0;
        border-radius: 12px
    }

    body.p-pricing .hero, body.p-pricing .compare-section, body.p-pricing .faq-section, body.p-pricing .trust-strip {
        padding-left: 20px;
        padding-right: 20px
    }
}
@media (max-width: 700px) {
    body.p-pricing .fees-grid {
        grid-template-columns:1fr !important
    }
}

/* ── PAGE: support ──────────────────────────── */
/* ── FORK CARDS ── */
body.p-support .fork {
    max-width: 860px;
    margin: 0 auto 72px;
    padding: 0 40px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
body.p-support .fork-card {
    border-radius: 14px;
    padding: 36px 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    border: 1.5px solid rgba(30, 45, 77, 0.09);
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
    text-decoration: none;
    color: inherit;
}
body.p-support .fork-card:hover {
    border-color: rgba(59, 125, 232, 0.3);
    box-shadow: 0 6px 28px rgba(30, 45, 77, 0.08);
    transform: translateY(-2px);
}
body.p-support .fork-card.customer {
    background: var(--ink);
    border-color: var(--ink);
}
body.p-support .fork-card.presale {
    background: var(--bg);
}

body.p-support .fork-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}
body.p-support .fork-card.presale .fork-icon {
    background: var(--pale);
    color: var(--blue);
}
body.p-support .fork-card.customer .fork-icon {
    background: rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.8);
}

body.p-support .fork-label {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}
body.p-support .fork-card.presale .fork-label {
    color: var(--blue);
}
body.p-support .fork-card.customer .fork-label {
    color: rgba(255, 255, 255, 0.5);
}

body.p-support .fork-card h2 {
    font-family: var(--serif);
    font-size: 1.2rem;
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.25;
}
body.p-support .fork-card.presale h2 {
    color: var(--ink);
}
body.p-support .fork-card.customer h2 {
    color: var(--white);
}

body.p-support .fork-card p {
    font-size: 0.83rem;
    line-height: 1.6;
    flex: 1;
}
body.p-support .fork-card.presale p {
    color: var(--mid);
}
body.p-support .fork-card.customer p {
    color: rgba(255, 255, 255, 0.55);
}

body.p-support .fork-action {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 0.83rem;
    font-weight: 600;
    padding: 11px 22px;
    border-radius: 8px;
    transition: background 0.2s, transform 0.15s;
    align-self: flex-start;
}
body.p-support .fork-card.presale .fork-action {
    background: var(--ink);
    color: var(--white);
}
body.p-support .fork-card.presale .fork-action:hover {
    background: var(--blue);
}
body.p-support .fork-card.customer .fork-action {
    background: var(--white);
    color: var(--ink);
}
body.p-support .fork-card.customer .fork-action:hover {
    background: var(--pale);
}

/* ── CUSTOMER SUPPORT SECTION ── */
body.p-support .customer-section {
    max-width: 1100px;
    margin: 0 auto 80px;
    padding: 0 40px;
    scroll-margin-top: 88px;
}
body.p-support .section-title {
    font-family: var(--serif);
    font-size: 1.3rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.02em;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1.5px solid rgba(30, 45, 77, 0.08);
    display: flex;
    align-items: center;
    gap: 10px;
}
body.p-support .section-title i[data-lucide] {
    color: var(--blue);
    flex-shrink: 0;
}

body.p-support .selfserve-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin-bottom: 32px;
}
body.p-support .selfserve-card {
    background: var(--bg);
    border-radius: 10px;
    padding: 20px 22px;
    border: 1px solid rgba(30, 45, 77, 0.07);
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    gap: 8px;
    transition: border-color 0.2s, background 0.2s, transform 0.15s;
}
body.p-support .selfserve-card:hover {
    border-color: rgba(59, 125, 232, 0.25);
    background: var(--pale);
    transform: translateY(-1px);
}
body.p-support .selfserve-card i[data-lucide] {
    color: var(--blue);
}
body.p-support .selfserve-card h4 {
    font-family: var(--serif);
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--ink);
}
body.p-support .selfserve-card p {
    font-size: 0.76rem;
    color: var(--mid);
    line-height: 1.5;
}
body.p-support .selfserve-arrow {
    margin-top: auto;
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--blue);
    display: flex;
    align-items: center;
    gap: 4px;
}

body.p-support .ticket-callout {
    background: var(--ink);
    border-radius: 12px;
    padding: 32px 36px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
}
body.p-support .ticket-callout-left h3 {
    font-family: var(--serif);
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--white);
    margin-bottom: 6px;
    letter-spacing: -0.02em;
}
body.p-support .ticket-callout-left p {
    font-size: 0.82rem;
    color: rgba(255, 255, 255, 0.5);
    line-height: 1.55;
    max-width: 420px;
}
body.p-support .ticket-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--white);
    color: var(--ink);
    font-family: var(--serif);
    font-weight: 700;
    font-size: 0.875rem;
    padding: 13px 28px;
    border-radius: 8px;
    text-decoration: none;
    white-space: nowrap;
    flex-shrink: 0;
    transition: background 0.2s, transform 0.15s;
}
body.p-support .ticket-btn:hover {
    background: var(--pale);
    transform: translateY(-1px);
}

/* ── FAQ SECTION ── */
body.p-support .faq-section {
    max-width: 1100px;
    margin: 0 auto 80px;
    padding: 0 40px;
    scroll-margin-top: 88px;
}
body.p-support .faq-intro {
    margin-bottom: 36px;
}
body.p-support .faq-intro h2 {
    font-family: var(--serif);
    font-size: 1.3rem;
    font-weight: 800;
    color: var(--ink);
    letter-spacing: -0.02em;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding-bottom: 16px;
    border-bottom: 1.5px solid rgba(30, 45, 77, 0.08);
}
body.p-support .faq-intro h2 i[data-lucide] {
    color: var(--blue);
}

body.p-support .faq-layout {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 40px;
    align-items: start;
}

/* sticky category nav */
body.p-support .faq-cat-nav {
    position: sticky;
    top: 88px;
}
body.p-support .faq-cat-nav ul {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
body.p-support .faq-cat-nav li a {
    display: block;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--mid);
    text-decoration: none;
    padding: 7px 12px;
    border-radius: 6px;
    border-left: 2px solid transparent;
    transition: color 0.15s, background 0.15s, border-color 0.15s;
}
body.p-support .faq-cat-nav li a:hover {
    color: var(--ink);
    background: var(--bg);
}
body.p-support .faq-cat-nav li a.active {
    color: var(--blue);
    border-left-color: var(--blue);
    background: var(--pale);
    font-weight: 600;
}

/* FAQ groups */
body.p-support .faq-groups {
    display: flex;
    flex-direction: column;
    gap: 48px;
}
body.p-support .faq-group {
}
body.p-support .faq-group-title {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--light);
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(30, 45, 77, 0.07);
}
body.p-support .faq-list {
    display: flex;
    flex-direction: column;
}
body.p-support .faq-item:last-child {
    border-bottom: none;
}
body.p-support .faq-q.open {
    color: var(--blue);
}
body.p-support .faq-chevron {
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--bg);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s, transform 0.25s;
    color: var(--mid);
}
body.p-support .faq-q.open .faq-chevron {
    background: var(--pale);
    transform: rotate(180deg);
}
body.p-support .faq-a.open {
    max-height: 400px;
}
body.p-support .faq-a-inner {
    padding: 0 0 18px;
    font-size: 0.84rem;
    color: var(--mid);
    line-height: 1.7;
}
body.p-support .faq-a-inner a {
    color: var(--blue);
    text-decoration: none;
    font-weight: 500;
}
body.p-support .faq-a-inner a:hover {
    text-decoration: underline;
}
body.p-support .faq-a-inner ul {
    margin: 10px 0 0 18px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
body.p-support .faq-a-inner ul li {
    font-size: 0.83rem;
}

/* ── RESPONSIVE ── */
@media (max-width: 860px) {
    body.p-support .fork {
        grid-template-columns: 1fr;
    }

    body.p-support .selfserve-grid {
        grid-template-columns: 1fr 1fr;
    }

    body.p-support .faq-layout {
        grid-template-columns: 1fr;
    }

    body.p-support .faq-cat-nav {
        position: static;
    }

    body.p-support .faq-cat-nav ul {
        flex-direction: row;
        flex-wrap: wrap;
    }

    body.p-support .ticket-callout {
        flex-direction: column;
    }
}
@media (max-width: 560px) {
    body.p-support .fork, body.p-support .customer-section, body.p-support .faq-section {
        padding-left: 20px;
        padding-right: 20px;
    }

    body.p-support .selfserve-grid {
        grid-template-columns: 1fr;
    }
}

