/* SmartCRM - product landing page (page scoped) */
.crm-page {
    --crm-ink-900: #1e1b4b;
    --crm-ink-800: #312e81;
    --crm-ink-700: #3730a3;
    --crm-blue: #4f46e5;
    --crm-blue-2: #6366f1;
    --crm-teal: #0ea5e9;
    --crm-teal-2: #38bdf8;
    --crm-teal-deep: #0369a1;
    --crm-ink: #0f172a;
    --crm-text: #334155;
    --crm-muted: #5b6577;
    --crm-line: rgba(15, 23, 42, 0.12);
    --crm-line-soft: rgba(100, 116, 139, 0.28);
    --crm-card: #ffffff;
    --crm-soft: #f1f5f9;
    --crm-soft-2: #e9eef5;
    --crm-radius: 26px;
    --crm-radius-sm: 16px;
    --crm-shadow: 0 24px 60px rgba(30, 27, 75, 0.16);
    --crm-shadow-soft: 0 14px 34px rgba(30, 27, 75, 0.10);
    color: var(--crm-text);
    background:
        radial-gradient(900px 520px at 8% 0%, rgba(79, 70, 229, 0.10), transparent 70%),
        radial-gradient(720px 520px at 96% 2%, rgba(14, 165, 233, 0.12), transparent 66%),
        linear-gradient(180deg, #f8fafc 0%, #f4f7fb 44%, #eef2f8 100%);
    padding-bottom: 64px;
}

.crm-page, .crm-page * { box-sizing: border-box; }
.crm-page img { max-width: 100%; height: auto; display: block; }
.crm-page a { color: var(--crm-teal-deep); }
.crm-shell { width: min(1140px, calc(100% - 40px)); margin: 0 auto; }

/* ===== Hero ===== */
.crm-hero {
    position: relative;
    overflow: hidden;
    padding: 88px 0 64px;
    background:
        radial-gradient(620px 360px at 84% 12%, rgba(56, 189, 248, 0.26), transparent 70%),
        linear-gradient(135deg, var(--crm-ink-900) 0%, var(--crm-ink-800) 52%, var(--crm-ink-700) 100%);
    color: #eef4fb;
}
.crm-hero-grid {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: 40px;
    align-items: center;
}
.crm-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    color: #a5f3fc;
    font-size: 0.82rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}
.crm-eyebrow:before {
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--crm-teal-2), #818cf8);
    box-shadow: 0 0 0 6px rgba(56, 189, 248, 0.18);
}
.crm-hero h1 {
    margin: 0 0 16px;
    color: #fff;
    font-size: clamp(2.2rem, 5vw, 3.9rem);
    line-height: 1.08;
    letter-spacing: -0.03em;
}
.crm-hero h1 .crm-accent {
    background: linear-gradient(135deg, #67e8f9, #38bdf8 60%, #818cf8);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.crm-hero-sub {
    margin: 0 0 18px;
    font-size: 1.1rem;
    font-weight: 700;
    color: #cfe0f5;
}
.crm-hero-lead {
    margin: 0;
    font-size: 1.02rem;
    line-height: 1.95;
    color: #dde7f5;
    max-width: 620px;
}
.crm-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
.crm-btn, .crm-btn-ghost {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 24px;
    border-radius: 999px;
    font-size: 0.97rem;
    font-weight: 900;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.crm-btn {
    color: #06243b !important;
    background: linear-gradient(135deg, #67e8f9, #38bdf8);
    box-shadow: 0 18px 36px rgba(56, 189, 248, 0.34);
}
.crm-btn-ghost {
    color: #eef4fb !important;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.34);
}
.crm-btn:hover, .crm-btn-ghost:hover { transform: translateY(-2px); }

.crm-hero-visual {
    position: relative;
    padding: 16px;
    border-radius: var(--crm-radius);
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 30px 70px rgba(8, 20, 38, 0.5);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.crm-hero-visual img {
    width: 100%;
    height: 320px;
    object-fit: contain;
    border-radius: 16px;
    background: #f8fafc;
    border: 1px solid rgba(255, 255, 255, 0.16);
    padding: 10px;
}

/* ===== Section base ===== */
.crm-section { padding: 56px 0; scroll-margin-top: 110px; }
.crm-section--soft {
    background: linear-gradient(180deg, rgba(241, 245, 249, 0.7), rgba(233, 238, 245, 0.7));
}
.crm-section-head { max-width: 820px; margin: 0 auto 36px; text-align: center; }
.crm-section-label {
    display: inline-block;
    margin-bottom: 12px;
    padding: 5px 14px;
    border-radius: 999px;
    background: rgba(79, 70, 229, 0.12);
    color: var(--crm-blue);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.10em;
    text-transform: uppercase;
}
.crm-section-head h2 {
    margin: 0 0 12px;
    color: var(--crm-ink);
    font-size: clamp(1.7rem, 3vw, 2.7rem);
    line-height: 1.2;
    letter-spacing: -0.02em;
}
.crm-section-head p { margin: 0; color: var(--crm-text); font-size: 1rem; line-height: 1.9; }

/* ===== Features ===== */
.crm-feature-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}
.crm-feature-card {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 18px;
    align-items: start;
    padding: 28px;
    border-radius: var(--crm-radius-sm);
    background: var(--crm-card);
    border: 1px solid var(--crm-line-soft);
    box-shadow: var(--crm-shadow-soft);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.crm-feature-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--crm-shadow);
    border-color: rgba(79, 70, 229, 0.4);
}
.crm-feature-icon {
    width: 54px;
    height: 54px;
    border-radius: 15px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    background: linear-gradient(135deg, var(--crm-blue), var(--crm-teal-deep));
    color: #fff;
}
.crm-feature-card h3 { margin: 0 0 8px; color: var(--crm-ink); font-size: 1.18rem; }
.crm-feature-card p { margin: 0; color: var(--crm-muted); line-height: 1.8; font-size: 0.95rem; }

/* ===== Domains / Functions ===== */
.crm-domain-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}
.crm-domain-card {
    padding: 26px 24px;
    border-radius: var(--crm-radius-sm);
    background: var(--crm-card);
    border: 1px solid var(--crm-line-soft);
    box-shadow: var(--crm-shadow-soft);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.crm-domain-card:hover { transform: translateY(-4px); box-shadow: var(--crm-shadow); }
.crm-domain-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-bottom: 14px;
    border-radius: 13px;
    font-size: 1.45rem;
    background: linear-gradient(135deg, rgba(79, 70, 229, 0.14), rgba(14, 165, 233, 0.14));
}
.crm-domain-card h3 { margin: 0 0 8px; color: var(--crm-ink); font-size: 1.1rem; }
.crm-domain-card p { margin: 0; color: var(--crm-muted); line-height: 1.75; font-size: 0.92rem; }

/* ===== Gallery / Screens ===== */
.crm-gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}
.crm-screen-card {
    margin: 0;
    background: var(--crm-card);
    border: 1px solid var(--crm-line-soft);
    border-radius: var(--crm-radius-sm);
    overflow: hidden;
    box-shadow: var(--crm-shadow-soft);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.crm-screen-card:hover { transform: translateY(-4px); box-shadow: var(--crm-shadow); }
.crm-shot-frame {
    margin: 0;
    background: linear-gradient(180deg, var(--crm-soft), var(--crm-soft-2));
    padding: 14px;
}
.crm-screen-card img {
    width: 100%;
    height: 260px;
    object-fit: contain;
    background: #f8fafc;
    border-radius: 16px;
    padding: 12px;
    border: 1px solid var(--crm-line);
}
.crm-screen-card figcaption { padding: 16px 18px 18px; }
.crm-shot-tag {
    display: inline-block;
    margin-bottom: 8px;
    padding: 3px 10px;
    border-radius: 999px;
    background: rgba(14, 165, 233, 0.12);
    color: var(--crm-teal-deep);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.03em;
}
.crm-screen-card figcaption strong {
    display: block;
    color: var(--crm-ink);
    font-size: 1.02rem;
    margin-bottom: 4px;
}
.crm-shot-desc {
    display: block;
    color: var(--crm-muted);
    font-size: 0.88rem;
    line-height: 1.7;
}

/* ===== Industry customization ===== */
.crm-industry-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}
.crm-industry-card {
    padding: 26px 24px;
    border-radius: var(--crm-radius-sm);
    background: var(--crm-card);
    border: 1px solid var(--crm-line-soft);
    box-shadow: var(--crm-shadow-soft);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.crm-industry-card:hover { transform: translateY(-4px); box-shadow: var(--crm-shadow); }
.crm-industry-head {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}
.crm-industry-code {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--crm-blue), var(--crm-teal));
    color: #fff;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.04em;
}
.crm-industry-card h3 { margin: 0; color: var(--crm-ink); font-size: 1.08rem; }
.crm-industry-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.crm-industry-chips span {
    display: inline-block;
    padding: 5px 12px;
    border-radius: 999px;
    background: rgba(79, 70, 229, 0.08);
    border: 1px solid rgba(79, 70, 229, 0.18);
    color: var(--crm-ink-700);
    font-size: 0.82rem;
    font-weight: 700;
}

/* ===== Demo / Contact CTA ===== */
.crm-demo {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    align-items: center;
    padding: 36px;
    border-radius: var(--crm-radius);
    background: var(--crm-card);
    border: 1px solid var(--crm-line-soft);
    box-shadow: var(--crm-shadow-soft);
}
.crm-demo-copy h2 { margin: 8px 0 12px; color: var(--crm-ink); font-size: clamp(1.5rem, 2.4vw, 2.1rem); }
.crm-demo-copy p { color: var(--crm-text); line-height: 1.9; margin: 0 0 20px; }
.crm-demo-copy .crm-btn { color: #06243b !important; }
.crm-demo-note {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 16px 0 0;
    padding: 10px 16px;
    border-radius: 12px;
    background: rgba(14, 165, 233, 0.10);
    border: 1px solid rgba(14, 165, 233, 0.22);
    color: var(--crm-teal-deep);
    font-size: 0.9rem;
    font-weight: 700;
}
.crm-demo-url {
    margin: 14px 0 0 !important;
    font-size: 0.84rem !important;
    color: var(--crm-muted) !important;
    word-break: break-all;
}
.crm-demo-visual {
    border-radius: var(--crm-radius-sm);
    overflow: hidden;
    border: 1px solid var(--crm-line);
    background: #f8fafc;
}
.crm-demo-visual img {
    width: 100%;
    height: 300px;
    object-fit: contain;
    background: #f8fafc;
    padding: 12px;
}

/* ===== Pricing / Contact ===== */
.crm-pricing {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    align-items: center;
    padding: 40px 36px;
    border-radius: var(--crm-radius);
    background: linear-gradient(135deg, var(--crm-ink-900) 0%, var(--crm-teal-deep) 100%);
    color: #eafdff;
    box-shadow: var(--crm-shadow);
}
.crm-pricing-head h2 { margin: 8px 0 12px; color: #fff; font-size: clamp(1.5rem, 2.4vw, 2.1rem); }
.crm-pricing-head p { color: #d6ecf8; line-height: 1.9; margin: 0; }
.crm-pricing-head .crm-section-label {
    background: rgba(255, 255, 255, 0.16);
    color: #d7f4ff;
}
.crm-pricing-card {
    padding: 28px;
    border-radius: var(--crm-radius-sm);
    background: rgba(255, 255, 255, 0.10);
    border: 1px solid rgba(255, 255, 255, 0.22);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}
.crm-pricing-tag {
    display: inline-block;
    margin-bottom: 12px;
    padding: 6px 16px;
    border-radius: 999px;
    background: linear-gradient(135deg, #67e8f9, #38bdf8);
    color: #06243b;
    font-size: 1.1rem;
    font-weight: 900;
}
.crm-pricing-card > p { color: #eafdff; line-height: 1.8; margin: 0 0 20px; }
.crm-pricing-card .crm-actions { margin-top: 0; }
.crm-btn-ghost--dark {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.10);
    border-color: rgba(255, 255, 255, 0.4);
}
.crm-btn-ghost--dark:hover { background: rgba(255, 255, 255, 0.18); }

/* ===== Responsive ===== */
@media (max-width: 1024px) {
    .crm-hero-grid { grid-template-columns: 1fr; }
    .crm-hero-visual { order: -1; }
    .crm-feature-grid { grid-template-columns: 1fr; }
    .crm-domain-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .crm-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .crm-industry-grid { grid-template-columns: 1fr; }
    .crm-demo, .crm-pricing { grid-template-columns: 1fr; }
    .crm-demo-visual { order: -1; }
}
@media (max-width: 720px) {
    .crm-hero { padding: 60px 0 44px; }
    .crm-shell { width: min(94%, 1140px); }
    .crm-section { padding: 40px 0; }
    .crm-domain-grid, .crm-gallery-grid { grid-template-columns: 1fr; }
    .crm-actions { flex-direction: column; }
    .crm-btn, .crm-btn-ghost { width: 100%; }
    .crm-demo, .crm-pricing { padding: 26px; }
}
