/* Evidence-led portfolio and useful project briefs. */
.experience-strip { max-width:1200px; margin:0 auto; padding:38px 22px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; border-block:1px solid #ffffff1c; }
.experience-strip strong { display:block; font-size:19px; line-height:1.35; color:#f2eafa; }
.experience-strip span { display:block; margin-top:10px; font-size:14px; line-height:1.6; color:#bcb5c8; }
.case-grid { max-width:1200px; margin:0 auto 48px; padding:0 22px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.case-card { display:flex; flex-direction:column; min-width:0; padding:28px; border:1px solid #ffffff24; border-radius:22px; background:linear-gradient(145deg,#1b1426,#100e16); scroll-margin-top:90px; }
.case-meta { display:flex; flex-wrap:wrap; gap:8px 14px; justify-content:space-between; font-size:12px; line-height:1.5; color:#c5a5ed; }
.case-card h3 { margin:24px 0 10px; color:#fff; font-size:25px; line-height:1.2; letter-spacing:-.5px; overflow-wrap:anywhere; }
.case-summary { margin:0 0 24px; font-size:17px; line-height:1.45; color:#e2d9eb; }
.case-card dl { margin:0 0 28px; }
.case-card dt { margin:18px 0 6px; text-transform:uppercase; letter-spacing:.08em; font-size:11px; font-weight:700; color:#c5a5ed; }
.case-card dd { margin:0; font-size:14px; line-height:1.7; color:#c8c2d0; }
.case-link { display:flex; justify-content:space-between; gap:10px; align-items:center; margin-top:auto; padding-top:20px; border-top:1px solid #ffffff24; color:#eee2fc; font-size:14px; line-height:1.5; text-decoration:none; min-height:44px; }
.case-link:hover { color:#d0a5ff; }
.case-link:focus-visible { outline:2px solid #c5a5ed; outline-offset:6px; border-radius:4px; }
.service-brief { max-width:1100px; margin:0 auto; padding:30px 24px; border-bottom:1px solid #ffffff20; }
.service-brief strong { display:block; font-size:17px; line-height:1.45; color:#d3b2f2; }
.service-brief p { margin:10px 0 0; max-width:800px; font-size:15px; line-height:1.65; color:#c8c2d0; }
@media(max-width:1000px) { .case-grid { grid-template-columns:1fr; max-width:760px; } .case-card { padding:28px; } .case-card h3 { overflow-wrap:normal; } }
@media(max-width:600px) { .experience-strip { grid-template-columns:1fr; gap:24px; padding:30px 22px; } .experience-strip strong { font-size:18px; } .case-grid { padding:0 16px; gap:16px; } .case-card { padding:24px; } .case-card h3 { font-size:24px; overflow-wrap:anywhere; } .service-brief { padding:26px 22px; } }

@media(min-width:1001px) { .case-summary { min-height:50px; } }

.service-terms { max-width:1156px; margin:28px auto; padding:24px; border:1px solid #bb8ee443; border-radius:18px; display:grid; grid-template-columns:1fr 1fr 2fr; gap:24px; align-items:center; background:#16101e; }
.service-terms strong { display:block; font-size:25px; color:#e0c6fa; }
.service-terms span { display:block; margin-top:7px; font-size:14px; color:#e0dbe6; }
.service-terms p { margin:0; color:#bfb5cc; font-size:13px; line-height:1.6; }
@media(max-width:700px) { .service-terms { margin:24px 16px; grid-template-columns:1fr 1fr; gap:20px; } .service-terms p { grid-column:1/-1; } }
.case-diagram { margin:0 0 24px; padding:0 0 12px; border-bottom:1px solid #ffffff1a; }
.case-diagram img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:12px; background:#211a2a; }
.case-diagram figcaption { margin-top:10px; font-size:11px; line-height:1.4; letter-spacing:.02em; color:#bfb1ca; text-align:left; }
.crm-case,.demo-story { max-width:1100px; margin:64px auto; padding:36px; border:1px solid #ffffff24; border-radius:24px; background:#15111c; scroll-margin-top:80px; }
.crm-case h2,.demo-story h2 { font-size:40px; line-height:1.2; margin:20px 0; color:#fff; letter-spacing:-1px; }
.crm-case-lead,.demo-story-lead { max-width:800px; color:#d3c9df; font-size:18px; line-height:1.65; }
.crm-case-details { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin:36px 0; }
.crm-case h3,.demo-story h3 { font-size:18px; color:#e5d4f4; margin:0 0 12px; }
.crm-case p,.crm-case li,.demo-story li p { color:#c8bfce; font-size:15px; line-height:1.7; }
.crm-case ul { padding-left:18px; }
.crm-case li+li { margin-top:8px; }
.crm-screen { min-width:0; margin:0; }
.crm-screen img { display:block; width:100%; height:auto; border-radius:12px; }
.crm-screen figcaption { font-size:12px; line-height:1.6; color:#b5a8c2; margin-top:12px; }
.crm-case-bottom { display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:start; margin-top:32px; }
.crm-feature { max-width:1156px; margin:48px auto; padding:32px; border:1px solid #ffffff24; border-radius:22px; background:#141019; display:grid; grid-template-columns:1fr 1.3fr; align-items:center; gap:36px; }
.crm-feature h2 { font-size:28px; line-height:1.2; color:#fff; margin:16px 0; }
.crm-feature p { font-size:15px; line-height:1.6; color:#c8bfce; margin-bottom:24px; }
.crm-feature img { width:100%; height:auto; display:block; border-radius:10px; }
.story-grid { list-style:none; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:32px 0 0; }
.story-grid li { padding:24px; background:linear-gradient(135deg,#281a3d,#18131e); border:1px solid #ffffff1c; border-radius:16px; }
.story-number { display:block; font-size:46px; line-height:1; color:#c094ec; margin-bottom:40px; }
.story-format { display:block; margin-top:24px; font-size:12px; color:#b9a1ce; }
@media(max-width:800px) { .crm-case,.demo-story { margin:40px 16px; padding:24px; } .crm-case-details,.crm-case-bottom,.story-grid { grid-template-columns:1fr; } .crm-case h2,.demo-story h2 { font-size:30px; } .crm-feature { margin:32px 16px; padding:24px; grid-template-columns:1fr; } .story-number { margin-bottom:24px; } }
