:root {
    --crm-ink: #211820;
    --crm-ink-soft: #40343e;
    --crm-copy: #655c64;
    --crm-muted: #8b838a;
    --crm-plum: #714b67;
    --crm-plum-deep: #332534;
    --crm-plum-soft: #f3edf2;
    --crm-teal: #00a09d;
    --crm-teal-light: #8ee8df;
    --crm-canvas: #fbfafb;
    --crm-surface: #ffffff;
    --crm-line: #e9e4e8;
    --crm-shadow: 0 24px 70px rgba(48, 34, 48, .11);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }

.public-page {
    margin: 0;
    overflow-x: hidden;
    color: var(--crm-copy);
    background: var(--crm-canvas);
    font-family: "DM Sans", sans-serif;
    -webkit-font-smoothing: antialiased;
}

.public-page h1,
.public-page h2,
.public-page h3,
.public-page h4,
.public-page strong {
    color: var(--crm-ink);
    font-family: "Manrope", sans-serif;
}

.public-page a { text-decoration: none; }
.public-page .container { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.material-symbols-outlined { font-size: 20px; line-height: 1; }

/* Navigation */
.public-navbar {
    position: fixed;
    inset: 0 0 auto;
    z-index: 100;
    border-bottom: 1px solid transparent;
    transition: background .35s ease, border-color .35s ease, box-shadow .35s ease;
}

.public-navbar.is-scrolled {
    border-color: rgba(231, 226, 230, .9);
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 10px 35px rgba(43, 30, 42, .06);
    backdrop-filter: blur(18px);
}

.public-navbar-inner {
    min-height: 82px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 34px;
}

.public-brand { display: inline-flex; align-items: center; gap: 11px; color: var(--crm-ink); }
.public-logo { width: 42px; height: 42px; flex: 0 0 auto; }
.public-wordmark { display: grid; grid-template-columns: auto auto; align-items: baseline; column-gap: 4px; line-height: 1; }
.public-wordmark strong { font-size: 17px; letter-spacing: -.04em; }
.public-wordmark b {
    position: relative;
    top: 2px;
    color: var(--crm-plum);
    font-family: "Caveat", cursive;
    font-size: 28px;
    font-weight: 700;
    letter-spacing: -.08em;
    transform: rotate(-4deg);
}
.public-wordmark small {
    grid-column: 1 / -1;
    margin-top: 5px;
    color: var(--crm-muted);
    font-family: "DM Sans", sans-serif;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.public-nav-links { display: flex; align-items: center; gap: 31px; }
.public-nav-links a { position: relative; padding: 29px 0; color: #615760; font-size: 13px; font-weight: 600; }
.public-nav-links a::after {
    content: "";
    position: absolute;
    right: 50%;
    bottom: 20px;
    left: 50%;
    height: 2px;
    border-radius: 2px;
    background: var(--crm-plum);
    transition: left .25s ease, right .25s ease;
}
.public-nav-links a:hover,
.public-nav-links a.active { color: var(--crm-plum); }
.mobile-nav-actions { display:none; }
.public-nav-links a:hover::after,
.public-nav-links a.active::after { right: 0; left: 0; }

.public-nav-actions { display: flex; align-items: center; gap: 14px; }
.public-language-switcher {
    display: flex;
    align-items: center;
    gap: 2px;
    padding: 3px;
    border: 1px solid rgba(113, 75, 103, .12);
    border-radius: 8px;
    background: rgba(255, 255, 255, .55);
}
.public-language-switcher a {
    min-width: 25px;
    padding: 5px 4px;
    border-radius: 5px;
    color: #8b8289;
    text-align: center;
    font-size: 7px;
    font-weight: 800;
    letter-spacing: .04em;
}
.public-language-switcher a:hover,
.public-language-switcher a.active { color: #fff; background: var(--crm-plum); }
.nav-login { color: var(--crm-ink); font-size: 13px; font-weight: 700; }
.nav-demo {
    min-height: 43px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 0 16px;
    border-radius: 10px;
    color: #fff;
    background: var(--crm-plum-deep);
    font-size: 12px;
    font-weight: 700;
    box-shadow: 0 9px 24px rgba(51, 37, 52, .18);
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}
.nav-demo:hover { color: #fff; background: var(--crm-plum); transform: translateY(-2px); box-shadow: 0 15px 30px rgba(51, 37, 52, .22); }
.nav-demo .material-symbols-outlined { font-size: 17px; }
.public-nav-toggle { display: none; width: 42px; height: 42px; padding: 0; border: 0; border-radius: 10px; background: var(--crm-plum-soft); }
.public-nav-toggle span { display: block; width: 18px; height: 2px; margin: 5px auto; border-radius: 2px; background: var(--crm-ink); transition: transform .25s ease; }

/* Shared */
.crm-section { position: relative; padding: clamp(90px, 10vw, 150px) 0; }
.section-heading { max-width: 760px; margin-bottom: 58px; }
.section-heading.centered { margin-right: auto; margin-left: auto; text-align: center; }
.section-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
    color: var(--crm-plum);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.section-kicker::before { content: ""; width: 20px; height: 1px; background: currentColor; }
.section-kicker.light { color: var(--crm-teal-light); }
.section-heading h2,
.split-heading h2 {
    margin: 0;
    color: var(--crm-ink);
    font-size: clamp(2rem, 4.4vw, 3.75rem);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -.052em;
}
.section-heading h2 span,
.split-heading h2 span { color: var(--crm-plum); }
.section-heading p {
    max-width: 650px;
    margin: 22px auto 0;
    color: var(--crm-copy);
    font-size: 16px;
    line-height: 1.75;
}
.split-heading {
    max-width: none;
    display: grid;
    grid-template-columns: 1fr .74fr;
    align-items: end;
    gap: 80px;
}
.split-heading p { margin: 0 0 6px; font-size: 16px; line-height: 1.75; }

.crm-button {
    min-height: 51px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 20px;
    border: 1px solid transparent;
    border-radius: 11px;
    font-size: 13px;
    font-weight: 750;
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}
.crm-button:hover { transform: translateY(-2px); }
.crm-button-primary { color: #fff; background: var(--crm-plum); box-shadow: 0 13px 28px rgba(113, 75, 103, .22); }
.crm-button-primary:hover { color: #fff; background: var(--crm-plum-deep); box-shadow: 0 18px 36px rgba(51, 37, 52, .24); }
.crm-button-secondary { color: var(--crm-ink); border-color: #dcd5da; background: #fff; }
.crm-button-secondary:hover { color: var(--crm-plum); border-color: #c9bdc6; box-shadow: 0 12px 28px rgba(44, 31, 43, .08); }
.crm-button-dark { color: #fff; background: var(--crm-ink); }
.crm-button-dark:hover { color: #fff; background: var(--crm-plum); }
.crm-button-light { color: var(--crm-plum-deep); background: #fff; }
.crm-button-outline-light { color: #fff; border-color: rgba(255,255,255,.28); background: rgba(255,255,255,.06); }
.crm-button-outline-light:hover { color: #fff; background: rgba(255,255,255,.12); }

/* Hero */
.crm-hero {
    position: relative;
    min-height: 880px;
    display: flex;
    align-items: center;
    overflow: hidden;
    padding: 145px 0 80px;
    background:
        linear-gradient(180deg, rgba(249,246,248,.68), rgba(255,255,255,.98)),
        radial-gradient(circle at 13% 18%, rgba(113,75,103,.15), transparent 28rem),
        radial-gradient(circle at 87% 24%, rgba(0,160,157,.12), transparent 27rem);
}
.crm-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .42;
    pointer-events: none;
    background-image: linear-gradient(rgba(72,55,70,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(72,55,70,.045) 1px, transparent 1px);
    background-size: 52px 52px;
    mask-image: linear-gradient(to bottom, #000, transparent 76%);
}
.crm-orbit { position: absolute; border: 1px solid rgba(113,75,103,.12); border-radius: 50%; pointer-events: none; }
.crm-orbit-one { width: 580px; height: 580px; top: -360px; left: -180px; animation: orbitFloat 14s ease-in-out infinite; }
.crm-orbit-two { width: 420px; height: 420px; right: -250px; bottom: -180px; animation: orbitFloat 11s ease-in-out -4s infinite reverse; }
.crm-hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: .82fr 1.18fr; align-items: center; gap: clamp(50px, 6vw, 92px); }
.crm-hero-copy h1 {
    max-width: 590px;
    margin: 0 0 24px;
    font-size: clamp(3rem, 5.6vw, 5.2rem);
    font-weight: 700;
    line-height: .98;
    letter-spacing: -.068em;
}
.crm-hero-copy h1 span { color: var(--crm-plum); }
.hero-eyebrow {
    width: fit-content;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 8px 11px;
    border: 1px solid #ded4db;
    border-radius: 9px;
    color: var(--crm-plum);
    background: rgba(255,255,255,.72);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
    backdrop-filter: blur(8px);
}
.eyebrow-pulse { position: relative; width: 7px; height: 7px; border-radius: 50%; background: var(--crm-teal); }
.eyebrow-pulse::after { content:""; position:absolute; inset:-4px; border:1px solid var(--crm-teal); border-radius:50%; animation: pulseRing 2s ease-out infinite; }
.hero-lead { max-width: 565px; margin: 0 0 31px; color: #635961; font-size: 16px; line-height: 1.8; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.hero-trust { display: flex; align-items: center; gap: 14px; margin-top: 32px; }
.trust-avatars { display: flex; padding-left: 8px; }
.trust-avatars span {
    width: 31px; height: 31px; display:grid; place-items:center; margin-left:-8px;
    border: 2px solid #fff; border-radius:50%; color:#fff; background: var(--crm-plum-deep);
    font-size: 8px; font-weight: 800;
}
.trust-avatars span:nth-child(2) { background:#577a82; }
.trust-avatars span:nth-child(3) { background:#9b7656; }
.trust-avatars span:nth-child(4) { color:var(--crm-plum); background:var(--crm-plum-soft); }
.hero-trust > div:last-child { display:grid; gap:3px; }
.hero-trust strong { font-size: 11px; }
.hero-trust > div:last-child span { color:var(--crm-muted); font-size:10px; }

/* Product visual */
.crm-product-scene { position: relative; transform: perspective(1600px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)); transition: transform .16s ease-out; }
.scene-glow { position:absolute; inset:9% 0 -4% 16%; border-radius:45%; background:linear-gradient(135deg, rgba(113,75,103,.24), rgba(0,160,157,.16)); filter:blur(45px); }
.crm-app-window {
    position:relative; overflow:hidden; min-width: 710px;
    border:1px solid rgba(91,65,86,.17); border-radius:18px; background:#fff;
    box-shadow:0 42px 95px rgba(45,31,44,.19), 0 7px 20px rgba(45,31,44,.08);
    animation: stageFloat 7s ease-in-out infinite;
}
.app-window-bar { height:43px; display:flex; align-items:center; justify-content:space-between; padding:0 14px; border-bottom:1px solid #ebe7ea; background:#fcfbfc; }
.window-controls { display:flex; gap:6px; }
.window-controls i { width:7px; height:7px; border-radius:50%; background:#d1c9cf; }
.window-address { min-width:205px; display:flex; align-items:center; justify-content:center; gap:5px; padding:6px 12px; border-radius:7px; color:#827a80; background:#f4f1f3; font-size:8px; }
.window-address .material-symbols-outlined { font-size:10px; }
.window-more { color:#aaa1a8; font-size:16px; }
.app-preview { min-height:486px; display:grid; grid-template-columns:137px 1fr; }
.preview-sidebar { position:relative; display:flex; flex-direction:column; padding:17px 11px; color:rgba(255,255,255,.68); background:#2c202c; }
.preview-brand { display:flex; align-items:center; gap:8px; margin-bottom:22px; color:#fff; font-size:10px; font-weight:800; }
.preview-brand img { width:25px; height:25px; }
.preview-caption { margin:0 8px 8px; color:rgba(255,255,255,.35); font-size:6px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.preview-nav { min-height:29px; display:flex; align-items:center; gap:7px; margin-bottom:4px; padding:0 8px; border-radius:6px; font-size:7px; font-weight:600; }
.preview-nav .material-symbols-outlined { font-size:13px; }
.preview-nav.active { color:#fff; background:linear-gradient(90deg, rgba(150,104,139,.52), rgba(150,104,139,.23)); box-shadow:inset 2px 0 var(--crm-teal-light); }
.preview-profile { display:flex; align-items:center; gap:7px; margin-top:auto; padding:10px 7px 0; border-top:1px solid rgba(255,255,255,.08); }
.preview-avatar { width:24px; height:24px; display:grid; place-items:center; border-radius:7px; color:#2c202c; background:var(--crm-teal-light); font-size:7px; font-weight:900; }
.preview-profile div { display:grid; gap:2px; }
.preview-profile strong { color:#fff; font-size:6px; }
.preview-profile small { color:rgba(255,255,255,.4); font-size:5px; }
.preview-main { padding:20px 20px 16px; background:#f8f7f8; }
.preview-topbar { display:flex; align-items:center; justify-content:space-between; margin-bottom:17px; }
.preview-topbar > div:first-child { display:grid; gap:3px; }
.preview-topbar small { color:#948b92; font-size:6px; }
.preview-topbar strong { font-size:11px; }
.preview-tools { display:flex; align-items:center; gap:9px; color:#81787f; }
.preview-tools > span { font-size:14px; }
.preview-tools button { display:flex; align-items:center; gap:3px; padding:6px 8px; border:0; border-radius:6px; color:#fff; background:var(--crm-plum); font-size:6px; font-weight:700; }
.preview-tools button span { font-size:10px; }
.preview-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; margin-bottom:11px; }
.preview-kpis article { min-height:70px; display:flex; align-items:center; gap:9px; padding:11px; border:1px solid #ebe7ea; border-radius:10px; background:#fff; box-shadow:0 5px 14px rgba(44,31,43,.035); }
.kpi-icon { width:29px; height:29px; display:grid; place-items:center; flex:0 0 auto; border-radius:8px; font-size:14px; }
.kpi-icon.violet { color:#77526f; background:#f2e9f0; }
.kpi-icon.teal { color:#008b88; background:#e4f7f5; }
.kpi-icon.blue { color:#426a91; background:#e9f0f7; }
.preview-kpis article div { min-width:0; display:grid; gap:2px; }
.preview-kpis small { color:#948c92; font-size:5px; white-space:nowrap; }
.preview-kpis strong { font-size:8px; white-space:nowrap; }
.preview-kpis em { color:#15926e; font-size:5px; font-style:normal; }
.preview-content-grid { display:grid; grid-template-columns:1.45fr .8fr; gap:10px; }
.preview-card { min-height:272px; padding:13px; border:1px solid #ebe7ea; border-radius:11px; background:#fff; box-shadow:0 5px 14px rgba(44,31,43,.035); }
.card-head { display:flex; align-items:flex-start; justify-content:space-between; }
.card-head > div { display:grid; gap:2px; }
.card-head small { color:#989096; font-size:5px; }
.card-head strong { font-size:8px; }
.card-head > span { display:flex; align-items:center; gap:2px; padding:4px 5px; border:1px solid #e8e3e7; border-radius:5px; color:#7c737a; font-size:5px; }
.card-head i { font-size:8px; }
.chart-card { position:relative; overflow:hidden; }
.chart-y { position:absolute; top:64px; bottom:38px; left:12px; display:flex; flex-direction:column; justify-content:space-between; color:#aaa2a8; font-size:5px; }
.chart-area { position:absolute; inset:61px 13px 27px 36px; background:repeating-linear-gradient(to bottom, #eee9ed 0 1px, transparent 1px 42px); }
.chart-area svg { width:100%; height:100%; overflow:visible; }
.chart-fill { fill:url(#chartFill); }
.chart-line { fill:none; stroke:var(--crm-plum); stroke-width:3; stroke-linecap:round; filter:drop-shadow(0 4px 4px rgba(113,75,103,.18)); stroke-dasharray:800; stroke-dashoffset:800; animation:drawChart 2.3s ease .6s forwards; }
.chart-area circle { fill:#fff; stroke:var(--crm-plum); stroke-width:3; }
.chart-labels { position:absolute; right:0; bottom:-16px; left:0; display:flex; justify-content:space-between; color:#aaa2a8; font-size:5px; }
.activity-card { display:flex; flex-direction:column; gap:3px; }
.activity-card .card-head { margin-bottom:8px; }
.activity-card .card-head b { width:6px; height:6px; border-radius:50%; background:#3ebf93; box-shadow:0 0 0 3px rgba(62,191,147,.14); }
.activity-row { flex:1; display:grid; grid-template-columns:25px 1fr auto; align-items:center; gap:7px; border-top:1px solid #f0edf0; }
.activity-icon { width:24px; height:24px; display:grid; place-items:center; border-radius:7px; color:var(--crm-plum); background:var(--crm-plum-soft); font-size:12px; }
.activity-row div { display:grid; gap:2px; }
.activity-row strong { font-size:6px; }
.activity-row small, .activity-row time { color:#9a9298; font-size:5px; font-style:normal; }
.floating-insight {
    position:absolute; z-index:4; display:flex; align-items:center; gap:9px; padding:10px 12px;
    border:1px solid rgba(113,75,103,.14); border-radius:11px; background:rgba(255,255,255,.93);
    box-shadow:0 15px 38px rgba(43,30,42,.15); backdrop-filter:blur(12px);
    animation:floatBadge 5s ease-in-out infinite;
}
.floating-insight > span.material-symbols-outlined { width:29px; height:29px; display:grid; place-items:center; border-radius:8px; color:var(--crm-plum); background:var(--crm-plum-soft); font-size:16px; }
.floating-insight div { display:grid; gap:2px; }
.floating-insight small { color:#948b92; font-size:6px; }
.floating-insight strong { font-size:7px; }
.insight-ai { right:-22px; bottom:76px; }
.insight-goal { left:-31px; top:105px; animation-delay:-2.5s; }
.insight-goal > span { width:37px; height:37px; display:grid; place-items:center; border-radius:50%; color:#fff; background:conic-gradient(var(--crm-teal) 92%, #e8eeee 0); font-size:8px; font-weight:800; box-shadow:inset 0 0 0 5px #fff; }

.proof-strip { border-top:1px solid var(--crm-line); border-bottom:1px solid var(--crm-line); background:#fff; }
.proof-strip-inner { min-height:92px; display:flex; align-items:center; justify-content:space-between; gap:22px; overflow:hidden; }
.proof-strip-inner > span { color:var(--crm-muted); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; white-space:nowrap; }
.proof-strip-inner div { display:flex; align-items:center; gap:8px; color:#6e656c; font-size:11px; font-weight:700; white-space:nowrap; }
.proof-strip-inner i { width:6px; height:6px; border:1px solid #c6bbc3; border-radius:50%; }

/* Editorial brand statement */
.brand-manifesto {
    padding: 30px 0;
    background: #fff;
}

.brand-manifesto-shell {
    position: relative;
    min-height: 660px;
    overflow: hidden;
    border-radius: 28px;
    background: var(--crm-plum-deep);
    box-shadow: 0 36px 90px rgba(45, 31, 44, .18);
}

.brand-manifesto-shell > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.025);
    transition: transform 1.2s cubic-bezier(.2, .7, .2, 1);
}

.brand-manifesto-shell:hover > img { transform: scale(1.065); }

.brand-manifesto-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(31, 22, 31, .96) 0%, rgba(31, 22, 31, .82) 35%, rgba(31, 22, 31, .18) 72%, transparent 100%),
        linear-gradient(0deg, rgba(31, 22, 31, .22), transparent 45%);
}

.brand-manifesto-copy {
    position: relative;
    z-index: 2;
    max-width: 520px;
    padding: 92px 72px;
}

.brand-manifesto-copy h2 {
    margin: 0 0 24px;
    color: #fff;
    font-size: clamp(3.1rem, 6vw, 5.8rem);
    line-height: .94;
    letter-spacing: -.07em;
}

.brand-manifesto-copy > p {
    max-width: 430px;
    margin: 0;
    color: rgba(255, 255, 255, .64);
    font-size: 15px;
    line-height: 1.75;
}

.manifesto-metrics {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 55px;
    padding-top: 25px;
    border-top: 1px solid rgba(255, 255, 255, .14);
}

.manifesto-metrics span { display: grid; gap: 7px; }
.manifesto-metrics strong { color: var(--crm-teal-light); font-size: 11px; letter-spacing: .12em; }
.manifesto-metrics small { color: rgba(255, 255, 255, .58); font-size: 8px; line-height: 1.45; }

/* Ecosystem */
.ecosystem-section { background:#fff; }
.ecosystem-grid { display:grid; grid-template-columns:1.2fr .8fr; grid-template-areas:"large formation" "commerce finance"; gap:17px; }
.ecosystem-card {
    position:relative; overflow:hidden; min-height:320px; padding:31px;
    border:1px solid var(--crm-line); border-radius:20px; background:#fbfafb;
    transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.ecosystem-card:hover { transform:translateY(-5px); border-color:#d7ccd4; box-shadow:var(--crm-shadow); }
.ecosystem-large { grid-area:large; min-height:535px; background:linear-gradient(145deg,#f5f0f4,#fbfafb 55%); }
.formation-card { grid-area:formation; }
.commerce-card { grid-area:commerce; background:#2f2330; }
.finance-card { grid-area:finance; }
.module-tag { display:flex; align-items:center; gap:7px; margin-bottom:45px; color:var(--crm-plum); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.module-tag .material-symbols-outlined { font-size:17px; }
.ecosystem-card h3 { max-width:570px; margin:0 0 13px; font-size:clamp(1.4rem,2.3vw,2.15rem); line-height:1.16; letter-spacing:-.04em; }
.ecosystem-card > p { max-width:570px; margin:0; font-size:13px; line-height:1.72; }
.pipeline-demo { position:absolute; right:31px; bottom:31px; left:31px; padding:17px; border:1px solid #e7dfe5; border-radius:13px; background:rgba(255,255,255,.83); box-shadow:0 13px 35px rgba(56,39,54,.08); backdrop-filter:blur(8px); }
.pipeline-head { display:flex; justify-content:space-between; margin-bottom:13px; }
.pipeline-head strong { font-size:9px; }
.pipeline-head span { color:var(--crm-muted); font-size:7px; }
.pipeline-columns { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.pipeline-columns > div { padding:8px; border-radius:8px; background:#f5f2f4; }
.pipeline-columns small { display:block; margin-bottom:7px; color:#817780; font-size:6px; font-weight:700; }
.pipeline-columns span { display:flex; justify-content:space-between; margin-top:5px; padding:6px; border-radius:5px; color:#5e535c; background:#fff; font-size:6px; box-shadow:0 2px 7px rgba(50,35,49,.05); }
.pipeline-columns b { color:var(--crm-plum); font-size:5px; }
.formation-stack { display:grid; gap:9px; margin-top:28px; }
.formation-stack > div { display:grid; grid-template-columns:37px 1fr auto; align-items:center; gap:10px; padding:10px; border:1px solid #ece7eb; border-radius:10px; background:#fff; }
.date-tile { display:grid; place-items:center; padding:5px; border-radius:7px; color:var(--crm-plum); background:var(--crm-plum-soft); font-size:5px; text-transform:uppercase; }
.date-tile b { font-size:11px; }
.formation-stack p { display:grid; gap:2px; margin:0; }
.formation-stack p strong { font-size:7px; }
.formation-stack p small, .formation-stack em { color:var(--crm-muted); font-size:5px; font-style:normal; }
.commerce-card .module-tag { color:var(--crm-teal-light); }
.commerce-card h3 { color:#fff; }
.stock-visual { display:flex; align-items:center; gap:18px; margin-top:27px; }
.stock-ring { width:83px; height:83px; display:grid; place-items:center; border-radius:50%; background:conic-gradient(var(--crm-teal-light) 87%,rgba(255,255,255,.11) 0); box-shadow:inset 0 0 0 9px #2f2330; }
.stock-ring span { color:#fff; font-family:"Manrope"; font-size:19px; font-weight:800; }
.stock-ring small { font-size:9px; }
.stock-visual > div:last-child { display:grid; gap:5px; }
.stock-visual strong { color:#fff; font-size:10px; }
.stock-visual small { color:rgba(255,255,255,.54); font-size:7px; }
.stock-visual button { width:fit-content; margin-top:5px; padding:5px 8px; border:1px solid rgba(255,255,255,.15); border-radius:5px; color:#fff; background:rgba(255,255,255,.07); font-size:6px; }
.finance-bars { height:104px; display:flex; align-items:end; gap:9px; margin-top:30px; padding:0 9px; border-bottom:1px solid #e6e0e4; }
.finance-bars i { flex:1; height:var(--bar); border-radius:5px 5px 0 0; background:linear-gradient(180deg,var(--crm-plum),#b99cb1); transform-origin:bottom; animation:growBar 1.1s ease both; }
.finance-summary { display:flex; gap:35px; margin-top:15px; }
.finance-summary span { display:grid; gap:2px; }
.finance-summary small { color:var(--crm-muted); font-size:6px; }
.finance-summary strong { font-size:12px; }

/* Workflows */
.workflows-section { background:#f6f3f5; }
.workflow-tabs { display:flex; gap:8px; margin-bottom:18px; }
.workflow-tabs button { min-height:46px; display:flex; align-items:center; gap:7px; padding:0 16px; border:1px solid #ded7dc; border-radius:10px; color:#716870; background:rgba(255,255,255,.64); font-family:inherit; font-size:11px; font-weight:700; cursor:pointer; }
.workflow-tabs button.active { color:#fff; border-color:var(--crm-plum); background:var(--crm-plum); box-shadow:0 10px 24px rgba(113,75,103,.18); }
.workflow-panel { min-height:500px; display:none; grid-template-columns:.78fr 1.22fr; overflow:hidden; border:1px solid #e1dadd; border-radius:23px; background:#fff; box-shadow:0 20px 65px rgba(45,32,44,.08); }
.workflow-panel.active { display:grid; animation:panelEnter .48s ease both; }
.workflow-copy { position:relative; z-index:2; padding:55px; }
.workflow-number { display:block; margin-bottom:52px; color:#c0b5bd; font-family:"Manrope"; font-size:11px; font-weight:800; letter-spacing:.16em; }
.workflow-copy h3 { margin:0 0 28px; font-size:clamp(1.65rem,3vw,2.55rem); line-height:1.16; letter-spacing:-.045em; }
.workflow-copy ul { display:grid; gap:12px; margin:0 0 30px; padding:0; list-style:none; }
.workflow-copy li { display:flex; gap:9px; color:#685f67; font-size:11px; line-height:1.5; }
.workflow-copy li span { width:19px; height:19px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; color:#007d79; background:#dff4f2; font-size:12px; }
.workflow-copy > a { display:inline-flex; align-items:center; gap:7px; color:var(--crm-plum); font-size:11px; font-weight:800; }
.workflow-copy > a span { font-size:16px; transition:transform .2s; }
.workflow-copy > a:hover span { transform:translateX(4px); }
.workflow-canvas { position:relative; min-height:500px; overflow:hidden; background:linear-gradient(145deg,#332534,#221922); }
.workflow-canvas::before { content:""; position:absolute; inset:0; opacity:.14; background-image:radial-gradient(rgba(255,255,255,.8) 1px,transparent 1px); background-size:23px 23px; }
.flow-node { position:absolute; z-index:2; width:130px; min-height:112px; display:grid; place-items:center; align-content:center; gap:6px; border:1px solid rgba(255,255,255,.13); border-radius:16px; color:rgba(255,255,255,.57); background:rgba(255,255,255,.08); box-shadow:0 18px 35px rgba(0,0,0,.16); backdrop-filter:blur(10px); }
.flow-node .material-symbols-outlined { width:35px; height:35px; display:grid; place-items:center; border-radius:10px; color:var(--crm-teal-light); background:rgba(142,232,223,.12); }
.flow-node strong { color:#fff; font-size:10px; }
.flow-node small { font-size:7px; }
.flow-node.start { top:90px; left:48px; }
.flow-node.middle { top:90px; left:50%; transform:translateX(-50%); }
.flow-node.end { top:90px; right:48px; }
.flow-line { position:absolute; z-index:1; top:144px; height:2px; background:rgba(142,232,223,.25); }
.flow-line.line-one { left:178px; width:calc(50% - 243px); }
.flow-line.line-two { right:178px; width:calc(50% - 243px); }
.flow-line i { position:absolute; top:-2px; width:6px; height:6px; border-radius:50%; background:var(--crm-teal-light); box-shadow:0 0 12px var(--crm-teal-light); animation:flowDot 2.4s linear infinite; }
.flow-stat { position:absolute; right:48px; bottom:53px; left:48px; display:grid; grid-template-columns:1fr auto; gap:8px; padding:19px; border:1px solid rgba(255,255,255,.11); border-radius:14px; background:rgba(255,255,255,.07); }
.flow-stat small { color:rgba(255,255,255,.55); font-size:8px; }
.flow-stat strong { color:#fff; font-size:13px; }
.flow-stat > span { grid-column:1/-1; height:5px; overflow:hidden; border-radius:4px; background:rgba(255,255,255,.1); }
.flow-stat i { display:block; width:94%; height:100%; border-radius:4px; background:linear-gradient(90deg,var(--crm-teal),var(--crm-teal-light)); animation:growProgress 1.5s ease both; }
.service-canvas,.commerce-canvas { display:flex; flex-direction:column; justify-content:center; gap:16px; padding:70px; }
.project-progress,.kanban-mini,.profit-card,.order-line,.stock-alert { position:relative; z-index:2; border:1px solid rgba(255,255,255,.12); border-radius:14px; background:rgba(255,255,255,.08); backdrop-filter:blur(10px); }
.project-progress { padding:20px; }
.project-progress > div { display:flex; justify-content:space-between; }
.project-progress small,.project-progress strong { color:#fff; }
.project-progress > span { display:block; height:7px; margin-top:14px; border-radius:7px; background:rgba(255,255,255,.09); }
.project-progress i { display:block; width:78%; height:100%; border-radius:7px; background:var(--crm-teal-light); }
.kanban-mini { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; padding:14px; }
.kanban-mini p { display:flex; justify-content:space-between; margin:0; padding:13px; border-radius:8px; color:rgba(255,255,255,.6); background:rgba(255,255,255,.06); font-size:8px; }
.kanban-mini b { color:#fff; }
.profit-card,.stock-alert { display:flex; align-items:center; gap:13px; padding:17px; }
.profit-card > span,.stock-alert > span { width:38px; height:38px; display:grid; place-items:center; border-radius:10px; color:var(--crm-teal-light); background:rgba(142,232,223,.11); }
.profit-card div,.stock-alert div { display:grid; gap:3px; }
.profit-card small,.stock-alert small { color:rgba(255,255,255,.5); font-size:7px; }
.profit-card strong,.stock-alert strong { color:#fff; font-size:12px; }
.order-line { display:grid; grid-template-columns:42px 1fr auto; align-items:center; gap:13px; padding:18px; }
.order-line > span { width:42px; height:42px; display:grid; place-items:center; border-radius:11px; color:var(--crm-teal-light); background:rgba(142,232,223,.11); }
.order-line div { display:grid; gap:4px; }
.order-line strong,.order-line b { color:#fff; font-size:10px; }
.order-line small { color:rgba(255,255,255,.5); font-size:7px; }
.order-track { position:relative; z-index:2; display:flex; justify-content:space-between; padding:20px 30px; }
.order-track::before { content:""; position:absolute; top:24px; right:35px; left:35px; height:2px; background:rgba(255,255,255,.13); }
.order-track i { position:relative; z-index:2; width:10px; height:10px; border:2px solid #60515f; border-radius:50%; background:#332534; }
.order-track i.done { border-color:var(--crm-teal-light); background:var(--crm-teal-light); }
.order-track i.active { border-color:#fff; box-shadow:0 0 0 5px rgba(255,255,255,.1); }

/* Intelligence */
.intelligence-section { padding:0; color:rgba(255,255,255,.66); background:#211820; }
.intelligence-shell { min-height:720px; display:grid; grid-template-columns:.78fr 1.22fr; align-items:center; gap:90px; padding-top:95px; padding-bottom:95px; }
.intelligence-section::before { content:""; position:absolute; inset:0; opacity:.16; background:radial-gradient(circle at 70% 50%,rgba(0,160,157,.45),transparent 31rem),linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:auto,45px 45px,45px 45px; }
.intelligence-copy,.ai-console { position:relative; z-index:2; }
.intelligence-copy h2 { margin:0 0 23px; color:#fff; font-size:clamp(2.3rem,4vw,3.7rem); line-height:1.07; letter-spacing:-.052em; }
.intelligence-copy h2 span { color:var(--crm-teal-light); }
.intelligence-copy > p { margin:0 0 30px; font-size:14px; line-height:1.8; }
.ai-capabilities { display:grid; gap:12px; }
.ai-capabilities span { display:flex; align-items:center; gap:10px; color:rgba(255,255,255,.78); font-size:10px; font-weight:600; }
.ai-capabilities i { color:var(--crm-teal-light); font-size:17px; }
.ai-console { padding:19px; border:1px solid rgba(255,255,255,.12); border-radius:23px; background:rgba(255,255,255,.07); box-shadow:0 35px 75px rgba(0,0,0,.28); backdrop-filter:blur(18px); }
.ai-console-head { display:flex; align-items:center; justify-content:space-between; padding:3px 3px 17px; border-bottom:1px solid rgba(255,255,255,.09); }
.ai-console-head > div { display:flex; align-items:center; gap:10px; }
.ai-console-head img { border-radius:9px; }
.ai-console-head span { display:grid; gap:3px; }
.ai-console-head strong { color:#fff; font-size:9px; }
.ai-console-head small { color:rgba(255,255,255,.42); font-size:6px; }
.ai-console-head > i { width:7px; height:7px; border-radius:50%; background:#3dd49f; box-shadow:0 0 0 4px rgba(61,212,159,.12); }
.ai-message { max-width:85%; margin-top:19px; padding:14px 16px; border-radius:14px; font-size:9px; line-height:1.6; }
.user-message { margin-left:auto; color:#fff; background:var(--crm-plum); border-bottom-right-radius:4px; }
.assistant-message { color:rgba(255,255,255,.72); background:rgba(255,255,255,.075); border-bottom-left-radius:4px; }
.assistant-label { display:flex; align-items:center; gap:6px; margin-bottom:9px; color:var(--crm-teal-light); font-size:7px; font-weight:800; text-transform:uppercase; }
.assistant-label span { font-size:13px; }
.assistant-message p { margin:0 0 12px; }
.assistant-message p strong { color:#fff; }
.assistant-message > small { display:block; margin-top:10px; color:rgba(255,255,255,.34); font-size:6px; }
.ai-actions { display:flex; gap:6px; }
.ai-actions button { display:flex; align-items:center; gap:5px; padding:7px 8px; border:1px solid rgba(255,255,255,.11); border-radius:7px; color:#fff; background:rgba(255,255,255,.07); font-size:6px; }
.ai-actions span { font-size:10px; }
.ai-input { min-height:47px; display:flex; align-items:center; justify-content:space-between; margin-top:20px; padding:6px 7px 6px 15px; border:1px solid rgba(255,255,255,.12); border-radius:12px; color:rgba(255,255,255,.32); background:rgba(0,0,0,.15); font-size:7px; }
.ai-input button { width:34px; height:34px; display:grid; place-items:center; border:0; border-radius:8px; color:#211820; background:var(--crm-teal-light); }

/* Roles, time, integrations, assurance */
.roles-section { background:#fff; }
.roles-grid { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--crm-line); border-radius:20px; overflow:hidden; }
.roles-grid article { position:relative; min-height:390px; padding:31px 27px; border-right:1px solid var(--crm-line); background:#fff; transition:background .3s ease,transform .3s ease; }
.roles-grid article:last-child { border-right:0; }
.roles-grid article:hover { z-index:2; background:#f7f2f6; transform:translateY(-5px); }
.role-index { position:absolute; top:26px; right:26px; color:#c3bac1; font-size:8px; font-weight:800; }
.roles-grid article > i { width:49px; height:49px; display:grid; place-items:center; margin:55px 0 31px; border-radius:13px; color:var(--crm-plum); background:var(--crm-plum-soft); font-size:24px; }
.roles-grid h3 { margin:0 0 12px; font-size:18px; }
.roles-grid p { min-height:62px; margin:0 0 25px; font-size:11px; line-height:1.65; }
.roles-grid ul { display:grid; gap:9px; margin:0; padding:0; list-style:none; }
.roles-grid li { position:relative; padding-left:13px; color:#716870; font-size:9px; }
.roles-grid li::before { content:""; position:absolute; top:5px; left:0; width:4px; height:4px; border-radius:50%; background:var(--crm-teal); }
.time-section { background:#f5f2f4; }
.time-grid { display:grid; grid-template-columns:.7fr 1.3fr; align-items:center; gap:90px; }
.time-copy h2 { margin:0 0 20px; font-size:clamp(2.1rem,4vw,3.6rem); line-height:1.08; letter-spacing:-.05em; }
.time-copy > p { font-size:14px; line-height:1.75; }
.time-switch { width:fit-content; display:flex; gap:4px; margin-top:25px; padding:4px; border:1px solid #ded7dc; border-radius:10px; background:#fff; }
.time-switch button { min-width:67px; padding:8px 12px; border:0; border-radius:7px; color:#746b72; background:transparent; font:700 9px inherit; cursor:pointer; }
.time-switch button.active { color:#fff; background:var(--crm-plum); }
.time-dashboard { padding:27px; border:1px solid #e0d8de; border-radius:20px; background:#fff; box-shadow:0 25px 70px rgba(47,33,46,.1); }
.time-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:25px; }
.time-head > div { display:grid; gap:4px; }
.time-head small,.time-head > span { color:var(--crm-muted); font-size:7px; }
.time-head strong { font-size:12px; }
.time-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }
.time-metrics div { display:grid; gap:4px; padding:14px; border:1px solid #eee9ed; border-radius:10px; background:#fbfafb; }
.time-metrics small { color:var(--crm-muted); font-size:6px; }
.time-metrics strong { font-size:11px; }
.time-metrics em { color:#13876a; font-size:6px; font-style:normal; }
.time-chart { height:210px; display:flex; align-items:end; justify-content:space-around; gap:17px; margin-top:20px; padding:20px 16px 24px; border-top:1px solid #f0ecf0; }
.time-chart i { position:relative; width:10%; height:var(--h); border-radius:7px 7px 2px 2px; background:#d9ccd5; transform-origin:bottom; animation:growBar 1.1s ease both; }
.time-chart i.active { background:linear-gradient(180deg,var(--crm-plum),#9d758f); box-shadow:0 8px 16px rgba(113,75,103,.2); }
.time-chart span { position:absolute; bottom:-19px; left:50%; color:#9b9399; font-size:6px; font-style:normal; transform:translateX(-50%); }
.integrations-section { background:#fff; }
.integration-map { position:relative; height:430px; max-width:1000px; margin:0 auto; }
.integration-core,.integration-item { position:absolute; z-index:2; display:grid; place-items:center; align-content:center; text-align:center; border:1px solid var(--crm-line); background:#fff; box-shadow:0 17px 40px rgba(47,33,46,.09); }
.integration-core { top:50%; left:50%; width:155px; height:155px; border-radius:38px; transform:translate(-50%,-50%); box-shadow:0 25px 65px rgba(47,33,46,.15); }
.integration-core img { margin-bottom:9px; }
.integration-core strong { font-size:13px; }
.integration-core small,.integration-item small { color:var(--crm-muted); font-size:7px; }
.integration-item { width:120px; height:100px; border-radius:20px; transition:transform .3s ease,border-color .3s ease; }
.integration-item:hover { border-color:#cbbec8; transform:translateY(-5px); }
.integration-item > span { width:34px; height:34px; display:grid; place-items:center; margin-bottom:7px; border-radius:10px; color:var(--crm-plum); background:var(--crm-plum-soft); }
.integration-item strong { font-size:9px; }
.integration-item > .integration-wordmark {
    width: auto;
    height: auto;
    min-height: 25px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 9px;
    padding: 0;
    border-radius: 0;
    color: var(--crm-ink);
    background: transparent;
    font-size: 12px;
    font-weight: 750;
    letter-spacing: -.025em;
}
.chatgpt-wordmark { font-family: "Manrope", sans-serif; }
.canva-wordmark {
    color: #7b4dc7 !important;
    font-family: "Caveat", cursive;
    font-size: 20px !important;
    font-weight: 700 !important;
}
.drive-wordmark i {
    width: 15px;
    height: 14px;
    display: inline-block;
    clip-path: polygon(50% 0,100% 88%,78% 100%,50% 53%,22% 100%,0 88%);
    background: conic-gradient(from 30deg,#4285f4 0 33%,#34a853 0 66%,#fbbc04 0);
}
.outlook-wordmark::before {
    content: "O";
    width: 19px;
    height: 19px;
    display: grid;
    place-items: center;
    border-radius: 4px;
    color: #fff;
    background: #1778d2;
    font-size: 9px;
}
.claude-wordmark {
    font-family: Georgia, serif;
    font-weight: 600 !important;
}
.claude-wordmark i {
    position: relative;
    width: 18px;
    height: 18px;
    display: inline-block;
}
.claude-wordmark i::before,
.claude-wordmark i::after {
    content: "";
    position: absolute;
    top: 8px;
    left: 1px;
    width: 16px;
    height: 2px;
    border-radius: 2px;
    background: #d97757;
}
.claude-wordmark i::after { transform: rotate(90deg); }
.claude-wordmark i { background: linear-gradient(45deg, transparent 44%, #d97757 45% 55%, transparent 56%), linear-gradient(-45deg, transparent 44%, #d97757 45% 55%, transparent 56%); }
.int-chat { top:15px; left:85px; }
.int-canva { top:15px; right:85px; }
.int-drive { bottom:0; left:30px; }
.int-mail { bottom:0; right:30px; }
.int-calendar { bottom:-18px; left:50%; transform:translateX(-50%); }
.int-calendar:hover { transform:translateX(-50%) translateY(-5px); }
.integration-lines { position:absolute; inset:0; z-index:1; width:100%; height:100%; overflow:visible; }
.integration-lines path { fill:none; stroke:#d9cfd6; stroke-width:1.4; stroke-dasharray:5 6; animation:dashFlow 16s linear infinite; }
.assurance-section { border-top:1px solid var(--crm-line); background:#fbfafb; }
.assurance-grid { display:grid; grid-template-columns:.82fr 1.18fr; align-items:center; gap:110px; }
.assurance-copy h2 { margin:0 0 20px; font-size:clamp(2rem,3.8vw,3.45rem); line-height:1.1; letter-spacing:-.048em; }
.assurance-copy p { font-size:14px; line-height:1.8; }
.assurance-copy a { display:inline-flex; align-items:center; gap:7px; margin-top:14px; color:var(--crm-plum); font-size:10px; font-weight:800; }
.assurance-list { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.assurance-list article { min-height:155px; display:flex; align-items:flex-start; gap:13px; padding:22px; border:1px solid var(--crm-line); border-radius:15px; background:#fff; }
.assurance-list article > span { width:39px; height:39px; display:grid; place-items:center; flex:0 0 auto; border-radius:11px; color:var(--crm-plum); background:var(--crm-plum-soft); }
.assurance-list div { display:grid; gap:7px; }
.assurance-list strong { font-size:10px; }
.assurance-list small { color:var(--crm-muted); font-size:8px; line-height:1.6; }

.startup-partnership {
    padding: 26px 0 70px;
    background: #fbfafb;
}

.startup-partnership-inner {
    min-height: 190px;
    display: grid;
    grid-template-columns: 74px 1fr auto;
    align-items: center;
    gap: 29px;
    padding: 35px 39px;
    border: 1px solid #dfd6dd;
    border-radius: 22px;
    background:
        radial-gradient(circle at 85% 20%, rgba(0,160,157,.1), transparent 20rem),
        linear-gradient(135deg, #f3edf2, #fff);
}

.startup-monogram {
    width: 74px;
    height: 74px;
    display: grid;
    place-items: center;
    border-radius: 20px;
    color: #fff;
    background: var(--crm-plum-deep);
    font-family: "Manrope";
    font-size: 20px;
    font-weight: 800;
    letter-spacing: -.06em;
    box-shadow: 0 15px 30px rgba(51,37,52,.17);
}

.startup-partnership-inner > div:nth-child(2) { display: grid; gap: 6px; }
.startup-partnership-inner span { color: var(--crm-plum); font-size: 8px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.startup-partnership-inner h2 { margin: 0; font-size: 20px; letter-spacing: -.035em; }
.startup-partnership-inner p { max-width: 700px; margin: 0; color: var(--crm-copy); font-size: 10px; line-height: 1.65; }
.startup-partnership-inner .crm-button { min-width: 200px; }

.final-cta { padding:40px 0 100px; background:#fbfafb; }
.final-cta-shell { position:relative; overflow:hidden; padding:85px 70px; border-radius:28px; text-align:center; background:linear-gradient(135deg,#2d212e,#493249); box-shadow:0 35px 85px rgba(45,31,44,.22); }
.cta-grid-lines { position:absolute; inset:0; opacity:.09; background-image:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px); background-size:40px 40px; mask-image:radial-gradient(circle at center,#000,transparent 73%); }
.final-cta-shell > *:not(.cta-grid-lines) { position:relative; z-index:2; }
.final-cta h2 { max-width:850px; margin:0 auto 20px; color:#fff; font-size:clamp(2.2rem,4.7vw,4.2rem); line-height:1.05; letter-spacing:-.055em; }
.final-cta p { max-width:650px; margin:0 auto 28px; color:rgba(255,255,255,.61); font-size:14px; line-height:1.7; }
.final-cta .hero-actions { justify-content:center; }

/* Footer */
.public-footer { color:rgba(255,255,255,.55); background:#1d161e; }
.footer-main { display:grid; grid-template-columns:1.65fr repeat(3,1fr); gap:75px; padding-top:80px; padding-bottom:65px; }
.footer-brand .public-wordmark strong,.footer-brand .public-wordmark b { color:#fff; }
.footer-brand .public-wordmark small { color:rgba(255,255,255,.35); }
.footer-brand-column > p { max-width:320px; margin:22px 0; font-size:11px; line-height:1.75; }
.initiative-label { display:inline-flex; align-items:center; gap:5px; padding:8px 11px; border:1px solid rgba(255,255,255,.1); border-radius:8px; color:rgba(255,255,255,.55); font-size:8px; letter-spacing:.08em; text-transform:uppercase; }
.initiative-label strong { color:var(--crm-teal-light); font-size:8px; }
.initiative-label .brand-signature {
    position: relative;
    top: 1px;
    font-family: "Caveat", cursive;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -.03em;
    text-transform: none;
}
.footer-column { display:flex; flex-direction:column; gap:12px; }
.footer-column h4 { margin:3px 0 10px; color:#fff; font-size:10px; }
.footer-column a { color:rgba(255,255,255,.52); font-size:9px; transition:color .2s,transform .2s; }
.footer-column a:hover { color:#fff; transform:translateX(3px); }
.footer-bottom { min-height:72px; display:flex; align-items:center; justify-content:space-between; border-top:1px solid rgba(255,255,255,.08); }
.footer-bottom p,.footer-bottom span { margin:0; color:rgba(255,255,255,.32); font-size:8px; }
.footer-bottom div { display:flex; align-items:center; gap:9px; }
.footer-bottom i { width:3px; height:3px; border-radius:50%; background:var(--crm-teal); }

/* Pricing */
.pricing-hero { padding:170px 0 75px; background:radial-gradient(circle at 50% 5%,rgba(113,75,103,.13),transparent 32rem); }
.pricing-hero .section-heading { max-width:880px; margin-bottom:28px; }
.pricing-hero h1 { margin:0; font-size:clamp(2.5rem,5.5vw,5rem); line-height:1.05; letter-spacing:-.06em; }
.pricing-hero h1 span { color:var(--crm-plum); }
.billing-switch { width:fit-content; display:flex; gap:4px; margin:0 auto; padding:4px; border:1px solid var(--crm-line); border-radius:11px; background:#fff; box-shadow:0 8px 25px rgba(45,31,44,.06); }
.billing-switch button { min-height:36px; padding:0 14px; border:0; border-radius:8px; color:#786f76; background:transparent; font:700 9px inherit; }
.billing-switch button.active { color:#fff; background:var(--crm-plum); }
.billing-switch span { margin-left:4px; color:var(--crm-teal-light); font-size:7px; }
.pricing-section { padding:15px 0 100px; }
.pricing-grid-advanced { display:grid; grid-template-columns:repeat(4,1fr); gap:13px; }
.price-card { position:relative; min-height:660px; display:flex; flex-direction:column; padding:26px 23px; border:1px solid var(--crm-line); border-radius:18px; background:#fff; transition:transform .32s ease,box-shadow .32s ease; }
.price-card:hover { transform:translateY(-7px); box-shadow:var(--crm-shadow); }
.price-card.ai-plan { border-color:#d8cad4; background:linear-gradient(180deg,#f8f2f7,#fff 37%); }
.price-card.premium-plan { border-color:var(--crm-plum); background:linear-gradient(180deg,#f1e8ef,#fff 41%); box-shadow:0 20px 55px rgba(113,75,103,.13); }
.popular-ribbon { position:absolute; top:-13px; left:50%; padding:7px 13px; border-radius:20px; color:#fff; background:var(--crm-plum); font-size:7px; font-weight:800; letter-spacing:.05em; white-space:nowrap; transform:translateX(-50%); box-shadow:0 8px 18px rgba(113,75,103,.2); }
.price-card-head { min-height:135px; }
.plan-label { width:fit-content; display:flex; align-items:center; gap:5px; margin-bottom:17px; padding:6px 8px; border-radius:6px; color:#796f77; background:#f2eff1; font-size:7px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.plan-label .material-symbols-outlined { font-size:11px; }
.plan-label-ai { color:var(--crm-plum); background:#eee4eb; }
.plan-label-premium { color:#007d79; background:#dff4f2; }
.price-card h2 { margin:0 0 9px; font-size:20px; }
.price-card-head p { margin:0; color:var(--crm-muted); font-size:9px; line-height:1.6; }
.plan-price { min-height:76px; display:flex; align-items:center; gap:7px; margin:5px 0 17px; }
.plan-price strong { font-size:40px; line-height:1; letter-spacing:-.05em; }
.plan-price > span { color:var(--crm-copy); font-size:10px; font-weight:700; line-height:1.15; }
.plan-price small { color:var(--crm-muted); font-size:7px; font-weight:500; }
.trial-price { display:flex; align-items:baseline; gap:6px; margin-top:5px; }
.trial-price strong { color:var(--crm-plum); font-size:22px; }
.trial-price span { color:var(--crm-muted); font-size:8px; }
.after-trial { min-height:47px; margin:0 0 10px; }
.after-trial strong { font-size:27px; }
.price-card .crm-button { width:100%; min-height:45px; padding:0 10px; font-size:10px; }
.trial-note { margin-top:8px; color:var(--crm-muted); text-align:center; font-size:6px; line-height:1.5; }
.plan-divider { height:1px; margin:23px 0; background:var(--crm-line); }
.includes-title { margin-bottom:16px; font-size:9px; }
.plan-features { display:grid; gap:12px; margin:0; padding:0; list-style:none; }
.plan-features li { display:flex; align-items:flex-start; gap:8px; color:#665d64; font-size:8px; line-height:1.5; }
.plan-features span { width:17px; height:17px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; color:#007f7b; background:#e0f4f2; font-size:11px; }
.enterprise-banner { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-top:18px; padding:25px 29px; border:1px solid var(--crm-line); border-radius:17px; background:#f7f3f6; }
.enterprise-banner > div { display:flex; align-items:center; gap:15px; }
.enterprise-banner > div > span { width:44px; height:44px; display:grid; place-items:center; border-radius:12px; color:var(--crm-plum); background:#e9dde6; }
.enterprise-banner div div { display:grid; gap:3px; }
.enterprise-banner strong { font-size:11px; }
.enterprise-banner p { margin:0; font-size:8px; }
.enterprise-banner .crm-button { min-height:43px; white-space:nowrap; }
.pricing-note { display:flex; align-items:flex-start; gap:10px; max-width:900px; margin:22px auto 0; color:var(--crm-muted); }
.pricing-note span { font-size:15px; }
.pricing-note p { margin:0; font-size:7px; line-height:1.6; }
.pricing-faq { background:#f5f2f4; }
.faq-grid { max-width:850px; display:grid; gap:9px; margin:0 auto; }
.faq-grid details { padding:0 20px; border:1px solid #e0d9de; border-radius:13px; background:#fff; }
.faq-grid summary { min-height:70px; display:flex; align-items:center; justify-content:space-between; color:var(--crm-ink); font-family:"Manrope"; font-size:15px; font-weight:700; cursor:pointer; list-style:none; }
.faq-grid summary::-webkit-details-marker { display:none; }
.faq-grid summary span { color:var(--crm-plum); transition:transform .25s; }
.faq-grid details[open] summary span { transform:rotate(45deg); }
.faq-grid details p { margin:0; padding:0 35px 22px 0; color:var(--crm-copy); font-size:14px; line-height:1.75; }

/* Motion */
.crm-motion-ready .crm-reveal { opacity:0; transform:translateY(32px); transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1); transition-delay:calc(var(--reveal-order,0) * 70ms); }
.crm-motion-ready .crm-reveal.is-visible { opacity:1; transform:translateY(0); }
@keyframes pulseRing { 0%{transform:scale(.5);opacity:1} 100%{transform:scale(1.7);opacity:0} }
@keyframes orbitFloat { 0%,100%{transform:translate3d(0,0,0) rotate(0)} 50%{transform:translate3d(25px,18px,0) rotate(7deg)} }
@keyframes stageFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }
@keyframes floatBadge { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-9px)} }
@keyframes drawChart { to{stroke-dashoffset:0} }
@keyframes growBar { from{transform:scaleY(0)} to{transform:scaleY(1)} }
@keyframes growProgress { from{width:0} }
@keyframes panelEnter { from{opacity:.3;transform:translateY(12px)} to{opacity:1;transform:none} }
@keyframes flowDot { from{left:0} to{left:100%} }
@keyframes dashFlow { to{stroke-dashoffset:-200} }

/* Responsive */
@media (max-width: 1120px) {
    .public-nav-links { gap:20px; }
    .crm-hero-grid { grid-template-columns:1fr; }
    .crm-hero-copy { max-width:760px; text-align:center; margin:0 auto; }
    .crm-hero-copy h1,.hero-lead,.hero-eyebrow { margin-right:auto; margin-left:auto; }
    .hero-actions,.hero-trust { justify-content:center; }
    .crm-product-scene { max-width:790px; margin:20px auto 0; }
    .crm-app-window { min-width:0; }
    .pricing-grid-advanced { grid-template-columns:repeat(2,1fr); }
    .roles-grid { grid-template-columns:repeat(2,1fr); }
    .roles-grid article:nth-child(2) { border-right:0; }
    .roles-grid article:nth-child(-n+2) { border-bottom:1px solid var(--crm-line); }
}

@media (max-width: 900px) {
    .public-navbar { background:rgba(255,255,255,.94); backdrop-filter:blur(15px); }
    .public-navbar-inner { min-height:70px; }
    .public-nav-toggle { display:block; }
    .nav-login { display:none; }
    .public-nav-links {
        position:absolute; top:70px; right:24px; left:24px; display:none; flex-direction:column; align-items:stretch; gap:0;
        padding:13px; border:1px solid var(--crm-line); border-radius:15px; background:#fff; box-shadow:0 25px 55px rgba(45,31,44,.15);
    }
    .public-nav-links.is-open { display:flex; animation:panelEnter .25s ease; }
    .public-nav-links a { padding:13px; border-radius:8px; }
    .public-nav-links a:hover { background:var(--crm-plum-soft); }
    .public-nav-links a::after { display:none; }
    .mobile-nav-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:8px; padding-top:11px; border-top:1px solid var(--crm-line); }
    .mobile-nav-actions a { display:flex; align-items:center; justify-content:center; min-height:42px; padding:8px!important; text-align:center; }
    .mobile-nav-actions a:last-child { color:#fff; background:var(--crm-plum-deep); }
    .public-nav-toggle[aria-expanded="true"] span:first-child { transform:translateY(3.5px) rotate(45deg); }
    .public-nav-toggle[aria-expanded="true"] span:last-child { transform:translateY(-3.5px) rotate(-45deg); }
    .crm-hero { min-height:auto; }
    .ecosystem-grid { grid-template-columns:1fr; grid-template-areas:"large" "formation" "commerce" "finance"; }
    .ecosystem-card { min-height:360px; }
    .brand-manifesto-shell { min-height: 590px; }
    .brand-manifesto-copy { padding: 70px 50px; }
    .split-heading { grid-template-columns:1fr; gap:25px; }
    .workflow-panel { grid-template-columns:1fr; }
    .workflow-canvas { min-height:430px; }
    .intelligence-shell { grid-template-columns:1fr; gap:55px; }
    .time-grid,.assurance-grid { grid-template-columns:1fr; gap:55px; }
    .startup-partnership-inner { grid-template-columns: 74px 1fr; }
    .startup-partnership-inner .crm-button { grid-column: 1 / -1; width: 100%; }
    .footer-main { grid-template-columns:1.5fr 1fr 1fr; gap:45px; }
    .footer-brand-column { grid-column:1/-1; }
}

@media (max-width: 650px) {
    .public-page .container { width:min(100% - 30px,1180px); }
    .public-wordmark small { display:none; }
    .public-language-switcher { display:none; }
    .nav-demo { min-height:39px; padding:0 10px; font-size:9px; }
    .nav-demo .material-symbols-outlined { display:none; }
    .crm-hero { padding:120px 0 60px; }
    .crm-hero-copy h1 { font-size:clamp(2.65rem,14vw,4rem); }
    .hero-actions .crm-button { width:100%; }
    .hero-trust { align-items:flex-start; text-align:left; }
    .crm-product-scene { width:780px; transform:scale(.47); transform-origin:top left; margin-bottom:-280px; }
    .floating-insight { display:none; }
    .proof-strip-inner { justify-content:flex-start; overflow-x:auto; min-height:76px; }
    .proof-strip-inner > span { display:none; }
    .crm-section { padding:80px 0; }
    .brand-manifesto { padding: 15px 0; }
    .brand-manifesto-shell { min-height: 610px; }
    .brand-manifesto-shell > img { object-position: 67% center; }
    .brand-manifesto-overlay {
        background: linear-gradient(0deg, rgba(31,22,31,.98) 0%, rgba(31,22,31,.83) 54%, rgba(31,22,31,.2) 100%);
    }
    .brand-manifesto-copy { position:absolute; right:0; bottom:0; left:0; padding:38px 27px; }
    .brand-manifesto-copy h2 { font-size: 3.4rem; }
    .brand-manifesto-copy > p { font-size: 12px; }
    .manifesto-metrics { gap: 10px; margin-top: 28px; }
    .section-heading { margin-bottom:40px; }
    .section-heading h2,.split-heading h2 { font-size:2.35rem; }
    .ecosystem-card { min-height:390px; padding:24px; }
    .ecosystem-large { min-height:510px; }
    .pipeline-demo { right:20px; bottom:20px; left:20px; }
    .pipeline-columns > div:nth-child(3) { display:none; }
    .pipeline-columns { grid-template-columns:repeat(2,1fr); }
    .workflow-tabs { overflow-x:auto; }
    .workflow-tabs button { white-space:nowrap; }
    .workflow-copy { padding:35px 25px; }
    .workflow-number { margin-bottom:30px; }
    .workflow-canvas { min-height:380px; }
    .flow-node { width:90px; min-height:95px; }
    .flow-node.start { left:18px; }
    .flow-node.end { right:18px; }
    .flow-line.line-one { left:108px; width:calc(50% - 153px); }
    .flow-line.line-two { right:108px; width:calc(50% - 153px); }
    .flow-stat { right:20px; bottom:35px; left:20px; }
    .service-canvas,.commerce-canvas { padding:30px 20px; }
    .roles-grid { grid-template-columns:1fr; }
    .roles-grid article { min-height:300px; border-right:0; border-bottom:1px solid var(--crm-line); }
    .roles-grid article:last-child { border-bottom:0; }
    .roles-grid article > i { margin-top:25px; }
    .time-metrics { grid-template-columns:1fr; }
    .time-chart { height:160px; }
    .integration-map { height:520px; }
    .integration-item { width:102px; height:86px; }
    .int-chat { top:0; left:0; }
    .int-canva { top:0; right:0; }
    .int-drive { bottom:55px; left:0; }
    .int-mail { right:0; bottom:55px; }
    .integration-lines { display:none; }
    .assurance-list { grid-template-columns:1fr; }
    .startup-partnership { padding-bottom: 45px; }
    .startup-partnership-inner { grid-template-columns: 1fr; padding: 28px; }
    .startup-partnership-inner .crm-button { grid-column: auto; }
    .final-cta { padding-bottom:50px; }
    .final-cta-shell { padding:60px 23px; }
    .footer-main { grid-template-columns:1fr 1fr; gap:42px 28px; padding-top:60px; }
    .footer-brand-column { grid-column:1/-1; }
    .footer-bottom { flex-direction:column; justify-content:center; gap:8px; text-align:center; }
    .pricing-hero { padding:125px 0 55px; }
    .pricing-grid-advanced { grid-template-columns:1fr; }
    .price-card { min-height:0; }
    .enterprise-banner { align-items:flex-start; flex-direction:column; }
    .enterprise-banner .crm-button { width:100%; white-space:normal; text-align:center; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior:auto; }
    *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
    .crm-motion-ready .crm-reveal { opacity:1; transform:none; }
}

/* Precision pass from visual review */
.public-wordmark {
    position: relative;
    min-width: 104px;
    display: flex;
    grid-template-columns: none;
    align-items: baseline;
    gap: 3px;
    padding-bottom: 11px;
}
.public-wordmark small { position: absolute; bottom: 0; left: 0; margin: 0; }

.public-language-menu { position: relative; }
.public-language-menu summary {
    min-width: 68px; min-height: 39px; display: flex; align-items: center; justify-content: center; gap: 6px;
    padding: 0 9px; border: 1px solid #ddd5db; border-radius: 10px; color: var(--crm-ink);
    background: rgba(255,255,255,.78); font-size: 9px; font-weight: 800; cursor: pointer; list-style: none;
}
.public-language-menu summary::-webkit-details-marker { display: none; }
.public-language-menu summary > span:first-child { color: var(--crm-plum); font-size: 16px; }
.public-language-menu .language-chevron { font-size: 14px; transition: transform .2s; }
.public-language-menu[open] .language-chevron { transform: rotate(180deg); }
.language-options {
    position: absolute; top: calc(100% + 9px); right: 0; width: 180px; display: grid; gap: 3px; padding: 8px;
    border: 1px solid var(--crm-line); border-radius: 12px; background: #fff; box-shadow: 0 20px 50px rgba(42,29,41,.16);
}
.language-options a { display: grid; grid-template-columns: 29px 1fr 15px; align-items: center; padding: 10px; border-radius: 8px; color: var(--crm-copy); font-size: 10px; }
.language-options a:hover,.language-options a.active { color: var(--crm-plum); background: var(--crm-plum-soft); }
.language-options a > span { font-size: 7px; font-weight: 900; letter-spacing: .08em; }
.language-options i { font-size: 13px; }

.crm-hero-grid { grid-template-columns: .96fr 1.04fr; align-items: start; gap: clamp(42px,5vw,72px); }
.crm-hero-copy h1 { font-size: clamp(3rem,4.4vw,4.35rem); }
.crm-hero-copy h1 span,
.section-heading h2 span,
.split-heading h2 span,
.time-copy h2 span {
    display: inline-block; color: var(--crm-plum); font-family: "Caveat",cursive;
    font-size: 1.1em; font-weight: 700; letter-spacing: -.04em; line-height: .9; transform: rotate(-1.3deg);
}
.crm-product-scene { align-self: start; margin-top: 30px; }

.calendar-wordmark i { width:20px; height:20px; display:grid; place-items:center; border-radius:5px; color:#fff; background:#4285f4; font-size:7px; font-style:normal; }
.startup-partnership-inner { grid-template-columns: 275px 1fr auto; }
.startup-cobrand { display:flex; align-items:center; gap:13px; padding:17px; border-radius:16px; background:var(--crm-plum-deep); box-shadow:0 15px 30px rgba(51,37,52,.17); }
.startup-cobrand > i { width:1px; height:28px; background:rgba(255,255,255,.19); }
.startup-cobrand .teamelghazi-mark { display:flex; align-items:center; gap:9px; color:#fff; text-transform:none; }
.startup-cobrand .teamelghazi-mark img { width:39px; height:39px; object-fit:contain; border-radius:50%; }
.startup-cobrand .teamelghazi-mark strong { color:#fff; font-family:"Caveat",cursive; font-size:21px; font-weight:700; letter-spacing:-.04em; }
.claude-startup-mark { min-width:91px; display:grid; grid-template-columns:21px 1fr; align-items:center; color:#fff!important; text-transform:none!important; }
.claude-startup-mark svg { grid-row:1/3; width:17px; height:17px; margin-right:5px; overflow:visible; fill:none; stroke:#d97757; stroke-width:1.9; stroke-linecap:round; }
.claude-startup-mark strong { color:#fff; font:700 14px Georgia,serif; letter-spacing:-.03em; white-space:nowrap; }
.claude-startup-mark small { color:rgba(255,255,255,.58); font:600 6px "DM Sans"; letter-spacing:.04em; white-space:nowrap; }

/* Contact */
.contact-page { min-height: 100vh; padding: 155px 0 100px; background: radial-gradient(circle at 10% 15%,rgba(113,75,103,.11),transparent 28rem),#faf9fa; }
.contact-layout { display:grid; grid-template-columns:.82fr 1.18fr; align-items:start; gap:90px; }
.contact-intro { position:sticky; top:130px; padding-top:24px; }
.contact-intro h1 { margin:0 0 25px; font-size:clamp(2.8rem,5vw,4.8rem); line-height:1.02; letter-spacing:-.06em; }
.contact-intro h1 span { display:inline-block; color:var(--crm-plum); font-family:"Caveat",cursive; font-size:1.08em; line-height:.88; transform:rotate(-1.2deg); }
.contact-intro > p { max-width:540px; font-size:14px; line-height:1.8; }
.contact-promises { display:grid; gap:0; margin-top:38px; border-top:1px solid var(--crm-line); }
.contact-promises article { display:grid; grid-template-columns:35px 1fr; gap:14px; padding:18px 0; border-bottom:1px solid var(--crm-line); }
.contact-promises article > span { color:var(--crm-plum); font-size:8px; font-weight:900; letter-spacing:.1em; }
.contact-promises article div { display:grid; gap:4px; }
.contact-promises strong { font-size:10px; }
.contact-promises small { color:var(--crm-muted); font-size:8px; line-height:1.5; }
.contact-signature { display:flex; align-items:center; gap:11px; margin-top:26px; }
.contact-signature div { display:grid; gap:2px; }
.contact-signature strong { font-size:9px; }
.contact-signature b { color:var(--crm-plum); font-family:"Caveat",cursive; font-size:17px; }
.contact-signature small { color:var(--crm-muted); font-size:7px; }
.contact-form-shell { overflow:hidden; border:1px solid #ddd5db; border-radius:24px; background:#fff; box-shadow:0 32px 80px rgba(44,31,43,.12); }
.contact-success,
.contact-error {
    display:flex;
    margin:18px 18px 0;
    padding:14px 16px;
    align-items:flex-start;
    gap:10px;
    border-radius:14px;
}
.contact-success { color:#226a62; background:#e8f8f5; }
.contact-error { color:#963d48; background:#fff0f1; }
.contact-success .material-symbols-outlined,
.contact-error .material-symbols-outlined { font-size:20px; }
.contact-success strong,
.contact-error strong { display:block; font:800 .78rem/1.2 "Manrope",sans-serif; }
.contact-success p,
.contact-error p { margin:4px 0 0; font-size:.7rem; line-height:1.45; }
.contact-form-head { display:flex; align-items:flex-start; justify-content:space-between; padding:31px 34px 25px; border-bottom:1px solid var(--crm-line); background:#f7f3f6; }
.contact-form-head span { color:var(--crm-plum); font-size:7px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.contact-form-head h2 { margin:7px 0 0; font-size:18px; }
.contact-form-head i { width:8px; height:8px; border-radius:50%; background:var(--crm-teal); box-shadow:0 0 0 5px rgba(0,160,157,.1); }
.contact-form { display:grid; gap:19px; padding:34px; }
.contact-form .form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.contact-form label { display:grid; gap:8px; }
.contact-form label > span { color:#463d45; font-size:9px; font-weight:750; }
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea { width:100%; min-height:48px; padding:12px 14px; border:1px solid #dcd6da; border-radius:10px; color:var(--crm-ink); background:#fdfcfd; font:500 11px "DM Sans"; outline:none; transition:border-color .2s,box-shadow .2s; }
.contact-form textarea { min-height:125px; resize:vertical; line-height:1.6; }
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus { border-color:var(--crm-plum); box-shadow:0 0 0 4px rgba(113,75,103,.09); background:#fff; }
.contact-consent { display:grid!important; grid-template-columns:17px 1fr; align-items:start; gap:9px!important; }
.contact-consent input { width:17px; height:17px; accent-color:var(--crm-plum); }
.contact-consent span { color:var(--crm-muted)!important; font-size:7px!important; line-height:1.55; }
.contact-submit { min-height:52px; display:flex; align-items:center; justify-content:center; gap:9px; border:0; border-radius:11px; color:#fff; background:var(--crm-plum-deep); font:750 11px "DM Sans"; cursor:pointer; box-shadow:0 13px 27px rgba(51,37,52,.2); }
.contact-submit:hover { background:var(--crm-plum); transform:translateY(-1px); }
.contact-form-note { display:flex; align-items:center; justify-content:center; gap:6px; margin:0; color:var(--crm-muted); font-size:7px; }
.contact-form-note span { font-size:12px; }

@media(max-width:900px){
  .contact-layout{grid-template-columns:1fr;gap:45px}.contact-intro{position:static}.startup-partnership-inner{grid-template-columns:1fr}.startup-partnership-inner .crm-button{width:100%}
}
@media(max-width:650px){
  .crm-hero-grid{grid-template-columns:1fr}.crm-hero-copy h1{font-size:3.15rem}.nav-demo{display:none}.public-language-menu{display:block}
  .contact-page{padding:110px 0 65px}.contact-form{padding:24px}.contact-form .form-row{grid-template-columns:1fr}.contact-form-head{padding:25px 24px}
}

@media (max-width: 650px) {
    .public-nav-actions { gap: 7px; }
    .public-language-menu summary { min-width: 51px; padding: 0 6px; }
    .public-language-menu summary > span:first-child { display: none; }
    .language-options { right: -48px; }
    .crm-product-scene {
        width: 100%;
        height: 455px;
        margin: 26px 0 0;
        overflow: hidden;
        transform: none;
    }
    .crm-app-window {
        width: 720px;
        min-width: 720px;
        transform: scale(.82);
        transform-origin: top left;
        animation: none;
    }
    .time-dashboard { padding: 20px 15px; }
    .time-switch { width: 100%; }
    .time-switch button { flex: 1; min-width: 0; }
}

@media (max-width: 520px) {
    .crm-product-scene { height: 375px; }
    .crm-app-window { transform: scale(.66); }
    .hero-trust { display: flex; }
    .public-navbar-inner { gap: 8px; }
    .public-brand { gap: 7px; }
    .public-logo { width: 36px; height: 36px; }
    .public-wordmark { min-width: 76px; }
    .public-wordmark small { display: none; }
}

@media(max-width:650px){
    .pipeline-columns > div:nth-child(3){display:block}
    .pipeline-columns{grid-template-columns:1fr}
    .role-label{font-size:7px}
    .crm-motion-ready .crm-reveal{transform:translateY(20px)}
}

@media (max-width: 420px) {
    .crm-product-scene { height: 310px; }
    .crm-app-window { transform: scale(.53); }
    .crm-hero-copy h1 { font-size: 2.75rem; }
    .crm-hero-copy h1 span { white-space: normal; }
    .public-wordmark { min-width: 67px; }
    .public-wordmark strong { font-size: 14px; }
    .public-wordmark b { font-size: 23px; }
    .language-options { right: -48px; width: 160px; }
    .time-chart { gap: 8px; padding-right: 5px; padding-left: 5px; }
    .startup-cobrand { flex-wrap: wrap; }
}

/* Features page */
.features-hero { padding: 170px 0 82px; background: radial-gradient(circle at 50% 0,rgba(113,75,103,.13),transparent 34rem); }
.features-hero .section-heading { max-width: 920px; margin-bottom: 0; }
.features-hero h1 { margin:0; font-size:clamp(2.7rem,5.5vw,5.2rem); line-height:1.04; letter-spacing:-.06em; }
.features-hero h1 span { display:inline-block; color:var(--crm-plum); font-family:"Caveat",cursive; font-size:1.1em; line-height:.88; transform:rotate(-1.2deg); }
.feature-catalog { padding: 20px 0 110px; background:#fff; }
.feature-catalog-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--crm-line); border-left:1px solid var(--crm-line); border-radius:20px; overflow:hidden; }
.feature-catalog article { position:relative; min-height:410px; padding:34px 30px; border-right:1px solid var(--crm-line); border-bottom:1px solid var(--crm-line); background:#fff; transition:background .3s,transform .3s; }
.feature-catalog article:hover { z-index:2; background:#f7f2f6; transform:translateY(-4px); }
.feature-catalog article.catalog-ai { color:rgba(255,255,255,.67); background:var(--crm-plum-deep); }
.feature-catalog article > .material-symbols-outlined { width:48px; height:48px; display:grid; place-items:center; margin:53px 0 26px; border-radius:13px; color:var(--crm-plum); background:var(--crm-plum-soft); font-size:24px; }
.catalog-number { position:absolute; top:27px; right:28px; color:#b9afb6; font-size:8px; font-weight:900; letter-spacing:.12em; }
.feature-catalog h2 { margin:0 0 13px; font-size:21px; letter-spacing:-.04em; }
.feature-catalog p { min-height:62px; margin:0 0 23px; font-size:11px; line-height:1.7; }
.feature-catalog ul { display:grid; gap:9px; margin:0; padding:0; list-style:none; }
.feature-catalog li { position:relative; padding-left:13px; color:#786f76; font-size:9px; }
.feature-catalog li::before { content:""; position:absolute; top:5px; left:0; width:4px; height:4px; border-radius:50%; background:var(--crm-teal); }
.catalog-ai h2 { color:#fff; }
.catalog-ai .catalog-number { color:rgba(255,255,255,.3); }
.catalog-ai p,.catalog-ai li { color:rgba(255,255,255,.57); }
.catalog-ai > .material-symbols-outlined { color:var(--crm-teal-light)!important; background:rgba(142,232,223,.1)!important; }
.feature-roles { padding:100px 0; background:#211820; }
.feature-roles-inner { display:grid; grid-template-columns:.85fr 1.15fr; align-items:center; gap:100px; }
.feature-roles h2 { margin:0 0 20px; color:#fff; font-size:clamp(2.2rem,4vw,3.7rem); line-height:1.08; letter-spacing:-.05em; }
.feature-roles p { color:rgba(255,255,255,.55); font-size:13px; line-height:1.8; }
.role-orbit { position:relative; min-height:360px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.1); border-radius:50%; }
.role-orbit::before { content:""; position:absolute; inset:17%; border:1px dashed rgba(142,232,223,.3); border-radius:50%; animation:spinOrbit 24s linear infinite; }
.role-orbit b { width:105px; height:105px; display:grid; place-items:center; border-radius:28px; color:#211820; background:var(--crm-teal-light); font-size:15px; }
.role-orbit span { position:absolute; padding:9px 12px; border:1px solid rgba(255,255,255,.11); border-radius:9px; color:#fff; background:rgba(255,255,255,.06); font-size:8px; }
.role-orbit span:nth-child(1){top:16px;left:50%;transform:translateX(-50%)}.role-orbit span:nth-child(2){right:5px;top:50%;transform:translateY(-50%)}.role-orbit span:nth-child(3){bottom:16px;left:50%;transform:translateX(-50%)}.role-orbit span:nth-child(4){left:5px;top:50%;transform:translateY(-50%)}
.feature-cta { padding-top:80px; }
.role-network-visual { position:relative; min-height:430px; overflow:hidden; border:1px solid rgba(255,255,255,.1); border-radius:25px; background:#171118; box-shadow:0 30px 70px rgba(0,0,0,.25); }
.role-network-visual > img { position:absolute; inset:14px; width:calc(100% - 28px); height:calc(100% - 28px); object-fit:contain; object-position:center; border-radius:18px; opacity:.92; transform:scale(.96); transition:transform 1s ease; }
.role-network-visual:hover > img { transform:scale(.99); }
.role-network-visual > b { position:absolute; top:48%; left:51%; padding:8px 11px; border-radius:8px; color:#211820; background:var(--crm-teal-light); font-size:9px; transform:translate(-50%,-50%); box-shadow:0 8px 20px rgba(0,0,0,.2); }
.role-label { position:absolute; padding:7px 10px; border:1px solid rgba(255,255,255,.17); border-radius:8px; color:#fff; background:rgba(26,18,27,.72); font-size:7px; font-weight:700; backdrop-filter:blur(8px); }
.role-direction{top:12%;right:22%}.role-operations{top:49%;right:8%}.role-finance{right:36%;bottom:9%}.role-trainers{top:21%;left:20%}.role-participants{bottom:25%;left:10%}
@keyframes spinOrbit { to{transform:rotate(360deg)} }

@media(max-width:900px){.feature-catalog-grid{grid-template-columns:repeat(2,1fr)}.feature-roles-inner{grid-template-columns:1fr;gap:50px}}
@media(max-width:650px){.features-hero{padding:125px 0 60px}.feature-catalog-grid{grid-template-columns:1fr}.feature-catalog article{min-height:340px}.role-network-visual{min-height:330px}.role-label{font-size:6px;padding:5px 7px}}

/* Legal pages */
.legal-hero { padding:165px 0 80px; border-bottom:1px solid var(--crm-line); background:radial-gradient(circle at 82% 10%,rgba(0,160,157,.09),transparent 27rem),radial-gradient(circle at 12% 0,rgba(113,75,103,.12),transparent 28rem); }
.legal-hero h1 { max-width:900px; margin:0 0 24px; font-size:clamp(2.8rem,5.5vw,5.2rem); line-height:1.04; letter-spacing:-.06em; }
.legal-hero h1 span { display:inline-block; color:var(--crm-plum); font-family:"Caveat",cursive; font-size:1.08em; line-height:.88; transform:rotate(-1.1deg); }
.legal-hero > .container > p { max-width:650px; margin:0; font-size:14px; line-height:1.75; }
.legal-meta { display:flex; align-items:center; gap:10px; margin-top:32px; color:var(--crm-muted); font-size:8px; }
.legal-meta i { width:4px; height:4px; border-radius:50%; background:var(--crm-teal); }
.legal-page { padding:85px 0 120px; background:#fff; }
.legal-layout { display:grid; grid-template-columns:230px 1fr; align-items:start; gap:80px; }
.legal-summary { position:sticky; top:115px; display:grid; gap:5px; padding:18px; border:1px solid var(--crm-line); border-radius:15px; background:#faf8fa; }
.legal-summary strong { padding:7px 9px 13px; font-size:9px; }
.legal-summary a { padding:10px; border-radius:7px; color:var(--crm-muted); font-size:12px; line-height:1.45; }
.legal-summary a:hover { color:var(--crm-plum); background:var(--crm-plum-soft); }
.legal-document { max-width:790px; }
.legal-notice { display:flex; gap:13px; margin-bottom:38px; padding:18px; border:1px solid #ded5dc; border-radius:13px; background:#f7f2f6; }
.legal-notice > span { color:var(--crm-plum); }
.legal-notice p { margin:0; font-size:13px; line-height:1.7; }
.legal-document > section { display:grid; grid-template-columns:45px 1fr; gap:20px; padding:33px 0; border-bottom:1px solid var(--crm-line); scroll-margin-top:110px; }
.legal-document > section > span { color:var(--crm-plum); font-size:8px; font-weight:900; letter-spacing:.12em; }
.legal-document section h2 { margin:0 0 16px; font-size:25px; }
.legal-document section p { margin:0 0 14px; font-size:15px; line-height:1.85; }
.legal-contact { display:flex; align-items:center; justify-content:space-between; gap:25px; margin-top:42px; padding:24px; border-radius:16px; color:rgba(255,255,255,.6); background:var(--crm-plum-deep); }
.legal-contact div { display:grid; gap:4px; }
.legal-contact strong { color:#fff; font-size:11px; }
.legal-contact p { margin:0; font-size:12px; }
.legal-contact a { display:flex; align-items:center; gap:6px; color:var(--crm-teal-light); font-size:13px; font-weight:800; }
@media(max-width:760px){.legal-hero{padding:125px 0 60px}.legal-layout{grid-template-columns:1fr;gap:35px}.legal-summary{position:static;grid-template-columns:repeat(2,1fr)}.legal-summary strong{grid-column:1/-1}.legal-contact{align-items:flex-start;flex-direction:column}}

/* Readability system — real content only, product miniatures keep their scale */
.public-page {
    font-size: 16px;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

.public-nav-links a,
.nav-login {
    font-size: 14px;
}

.nav-demo,
.crm-button,
.workflow-tabs button,
.time-switch button {
    font-size: 14px;
}

.public-language-menu summary {
    min-width: 74px;
    font-size: 13px;
}

.language-options a {
    font-size: 14px;
}

.language-options a > span {
    font-size: 11px;
}

.hero-lead,
.manifesto-copy p,
.ecosystem-card > p,
.split-heading p,
.intelligence-copy > p,
.roles-grid p,
.time-copy > p,
.assurance-copy p,
.startup-partnership-copy p,
.features-hero p,
.feature-roles p,
.contact-intro > p,
.legal-hero > .container > p {
    font-size: 16px;
    line-height: 1.75;
}

.proof-strip-inner > span,
.proof-strip-inner div,
.module-tag,
.workflow-number,
.section-kicker,
.contact-form-head span,
.catalog-number,
.legal-meta,
.legal-document > section > span {
    font-size: 13px;
}

.ecosystem-card h3,
.feature-catalog h2 {
    text-wrap: balance;
}

.workflow-copy li,
.workflow-copy > a,
.feature-catalog p,
.feature-catalog li,
.price-card-head p,
.plan-features li,
.faq-item p,
.public-footer p,
.public-footer a,
.initiative-label {
    font-size: 15px;
    line-height: 1.65;
}

.contact-promises strong,
.contact-signature strong,
.legal-contact strong {
    font-size: 14px;
}

.contact-promises small,
.contact-signature small,
.contact-form-note,
.contact-consent span,
.legal-contact p,
.legal-notice p {
    font-size: 14px !important;
    line-height: 1.65;
}

.contact-form label > span,
.contact-form input:not([type=checkbox]),
.contact-form select,
.contact-form textarea,
.contact-submit {
    font-size: 15px;
}

.contact-form input:not([type=checkbox]),
.contact-form select {
    min-height: 54px;
}

.feature-catalog p {
    min-height: 76px;
}

.feature-catalog li {
    padding-left: 17px;
}

.legal-summary strong,
.legal-summary a,
.legal-document section p,
.legal-contact a {
    font-size: 15px;
}

.legal-document section p {
    line-height: 1.85;
}

@media (max-width: 650px) {
    .public-page {
        font-size: 15px;
    }

    .hero-lead,
    .manifesto-copy p,
    .ecosystem-card > p,
    .split-heading p,
    .intelligence-copy > p,
    .roles-grid p,
    .time-copy > p,
    .assurance-copy p,
    .startup-partnership-copy p,
    .features-hero p,
    .feature-roles p,
    .contact-intro > p,
    .legal-hero > .container > p {
        font-size: 15px;
    }

    .workflow-copy li,
    .feature-catalog p,
    .feature-catalog li,
    .price-card-head p,
    .plan-features li,
    .faq-item p,
    .public-footer p,
    .public-footer a {
        font-size: 14px;
    }

    .feature-catalog p {
        min-height: 0;
    }

    .legal-document > section {
        grid-template-columns: 1fr;
        gap: 10px;
    }
}

/* Navigation must never compress or hide its labels */
.nav-demo,
.nav-login,
.public-nav-links a {
    white-space: nowrap;
}

@media (max-width: 1020px) {
    .nav-demo {
        display: none;
    }
}

/* Final responsive authority — prevents late desktop rules from cancelling breakpoints */
@media (max-width: 1120px) {
    .crm-hero-grid {
        grid-template-columns: 1fr;
        align-items: center;
    }

    .crm-hero-copy {
        max-width: 760px;
        margin-inline: auto;
        text-align: center;
    }

    .crm-hero-copy h1,
    .hero-lead {
        margin-right: auto;
        margin-left: auto;
    }

    .hero-actions,
    .hero-trust {
        justify-content: center;
    }

    .crm-product-scene {
        width: 100%;
        max-width: 790px;
        margin: 30px auto 0;
    }

    .startup-partnership-inner {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .crm-hero {
        padding: 118px 0 64px;
    }

    .crm-hero-copy {
        width: 100%;
    }

    .crm-hero-copy h1 {
        font-size: clamp(2.8rem, 11vw, 4rem);
    }

    .hero-lead {
        max-width: 560px;
    }

    .hero-trust {
        width: 100%;
        max-width: 540px;
        align-items: center;
        margin-right: auto;
        margin-left: auto;
        text-align: left;
    }

    .hero-trust strong {
        font-size: 14px;
        line-height: 1.35;
    }

    .hero-trust > div:last-child span {
        font-size: 13px;
        line-height: 1.45;
    }

    .trust-avatars {
        flex: 0 0 auto;
    }

    .trust-avatars span {
        font-size: 10px;
    }

    .crm-product-scene {
        width: 100%;
        height: 445px;
        margin: 28px 0 0;
        overflow: hidden;
        transform: none !important;
    }

    .crm-app-window {
        width: 710px;
        min-width: 710px;
        transform: scale(.8);
        transform-origin: top left;
        animation: none;
    }

    .floating-insight {
        display: none;
    }

    .proof-strip-inner {
        min-height: 78px;
        justify-content: flex-start;
        gap: 24px;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .proof-strip-inner::-webkit-scrollbar {
        display: none;
    }

    .proof-strip-inner > span {
        display: none;
    }

    .proof-strip-inner div {
        flex: 0 0 auto;
        font-size: 14px;
    }

    .contact-layout,
    .feature-roles-inner {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    .crm-product-scene {
        height: 365px;
    }

    .crm-app-window {
        transform: scale(.65);
    }

    .hero-trust {
        align-items: flex-start;
    }
}

@media (max-width: 420px) {
    .crm-product-scene {
        height: 295px;
    }

    .crm-app-window {
        transform: scale(.51);
    }
}
