/**
 * Agent — skin light (ritmo LP Base44-like: badge UI, mock prodotti, fondo chiaro).
 * Palette soft slate + cyan/emerald/coral — niente dark cinematic, niente purple wash.
 */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap');

.ct-home,
.ct-contact,
.ct-page,
.ct-site-mode {
    --ct-bg: #f7f8fc;
    --ct-bg-muted: #eef1f7;
    --ct-bg-elevated: #ffffff;
    --ct-surface: #ffffff;
    --ct-border: rgba(15, 23, 42, 0.08);
    --ct-text: #0f172a;
    --ct-muted: #64748b;
    --ct-primary: #0ea5e9;
    --ct-primary-deep: #0284c7;
    --ct-accent: #10b981;
    --ct-accent-2: #fb7185;
    --ct-success: #22c55e;
    --ct-warning: #f59e0b;
    --ct-radius: 20px;
    --ct-shadow: 0 18px 50px rgba(15, 23, 42, 0.08);
    --ct-font: 'DM Sans', system-ui, sans-serif;
    --ct-mono: ui-monospace, monospace;
    --ct-hero-img-opacity: 0;

    font-family: var(--ct-font);
    color: var(--ct-text);
    background:
        radial-gradient(900px 480px at 50% -10%, rgba(14, 165, 233, 0.12), transparent 55%),
        radial-gradient(700px 420px at 100% 10%, rgba(251, 113, 133, 0.1), transparent 50%),
        radial-gradient(600px 360px at 0% 30%, rgba(16, 185, 129, 0.08), transparent 45%),
        var(--ct-bg);
}

.ct-header {
    background: rgba(247, 248, 252, 0.86);
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
    backdrop-filter: blur(12px);
}

.ct-nav a,
.ct-header-cta .ct-btn-ghost {
    color: #334155;
}

.ct-btn-primary {
    background: linear-gradient(105deg, #0ea5e9, #10b981);
    color: #ffffff;
    border: 0;
    box-shadow: 0 12px 30px rgba(14, 165, 233, 0.28);
}

.ct-btn-primary:hover {
    filter: brightness(1.04);
    color: #fff;
}

.ct-btn-outline {
    border-color: rgba(15, 23, 42, 0.14);
    color: #0f172a;
    background: #fff;
}

.ct-btn-outline:hover {
    border-color: rgba(14, 165, 233, 0.45);
    background: rgba(14, 165, 233, 0.06);
}

.ct-btn-ghost {
    color: #334155;
}

.ct-kicker {
    color: #0284c7;
    border-color: rgba(14, 165, 233, 0.22);
    background: rgba(14, 165, 233, 0.08);
}

.ct-hero-agent {
    background: transparent;
}

.ct-hero-agent .ct-hero-roller,
.ct-hero-agent .ct-hero-mesh,
.ct-hero-agent .ct-hero-orbs {
    display: none !important;
}

.ct-hero-wash {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(60% 50% at 70% 20%, rgba(251, 113, 133, 0.16), transparent 60%),
        radial-gradient(50% 45% at 20% 70%, rgba(16, 185, 129, 0.14), transparent 55%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.2), transparent 40%);
    pointer-events: none;
}

.ct-hero-agent h1 {
    color: #0f172a;
    background: none;
    -webkit-background-clip: initial;
    background-clip: initial;
}

.ct-section-muted {
    background: #ffffff;
}

.ct-power {
    background: #fff;
    box-shadow: var(--ct-shadow);
    border-color: rgba(15, 23, 42, 0.06);
}

.ct-job {
    background: #fff;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.05);
}

.ct-channel-strip li {
    background: #fff;
    border-color: rgba(15, 23, 42, 0.08);
    color: #334155;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04);
}

.ct-faq-item {
    background: #fff;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.ct-cta-finale {
    background:
        radial-gradient(500px 220px at 50% 0%, rgba(14, 165, 233, 0.14), transparent 70%),
        #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: var(--ct-shadow);
}

.ct-footer {
    background: #ffffff;
    border-top: 1px solid rgba(15, 23, 42, 0.06);
    color: #64748b;
}

.ct-footer a {
    color: #334155;
}

.ct-brand img,
.ct-footer .ct-brand img {
    background: none !important;
}
