.services-showcase,
.services-hero-visual {
    position: relative;
    margin: 0;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--primary) 30%, var(--border));
    background: #05091a;
    box-shadow: 0 30px 80px rgba(2, 6, 23, .35);
}

.services-showcase::after,
.services-hero-visual::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    box-shadow: inset 0 0 70px rgba(6, 9, 19, .38);
}

.services-showcase {
    height: clamp(280px, 38vw, 460px);
    margin-bottom: 32px;
    border-radius: 22px;
}

.services-showcase img,
.services-hero-visual img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.services-showcase img {
    object-position: center 54%;
}

.services-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(480px, 1.2fr);
    align-items: center;
    gap: clamp(40px, 6vw, 90px);
}

.services-page-hero h1 {
    font-size: clamp(3rem, 5vw, 5.3rem);
}

.services-hero-visual {
    min-height: 390px;
    border-radius: 24px;
}

.services-hero-visual img {
    object-position: 64% center;
}

html[data-theme="light"] .services-showcase,
html[data-theme="light"] .services-hero-visual {
    box-shadow: 0 28px 70px rgba(32, 46, 75, .2);
}

@media (max-width: 980px) {
    .services-hero-grid {
        grid-template-columns: 1fr;
    }

    .services-hero-visual {
        min-height: 340px;
    }
}

@media (max-width: 640px) {
    .services-showcase {
        height: 250px;
        margin-bottom: 22px;
        border-radius: 16px;
    }

    .services-hero-visual {
        min-height: 250px;
        border-radius: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .services-showcase,
    .services-hero-visual {
        scroll-behavior: auto;
    }
}

/* AI consulting — primary commercial story */
.ai-consulting-highlight { position:relative; overflow:hidden; border-block:1px solid var(--border); background:radial-gradient(circle at 82% 16%,rgba(79,124,255,.2),transparent 32%),radial-gradient(circle at 12% 88%,rgba(139,92,246,.12),transparent 30%),linear-gradient(180deg,color-mix(in srgb,var(--surface) 88%,var(--bg)),var(--bg)); }
.ai-consulting-highlight::before { content:""; position:absolute; width:420px; height:420px; top:-260px; left:42%; border-radius:50%; background:rgba(92,124,250,.16); filter:blur(70px); pointer-events:none; }
.ai-consulting-grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr); align-items:center; gap:clamp(44px,7vw,96px); }
.ai-consulting-copy h2,.ai-detail-heading h2 { margin:18px 0 24px; font-size:clamp(2.45rem,4.5vw,4.75rem); line-height:1.02; letter-spacing:-.05em; }
.ai-consulting-lead,.ai-detail-heading p { max-width:680px; color:var(--muted); font-size:1.06rem; line-height:1.75; }
.ai-consulting-actions { display:flex; flex-wrap:wrap; align-items:center; gap:22px; margin-top:32px; }
.ai-value-map { display:grid; gap:10px; padding:24px; border:1px solid color-mix(in srgb,var(--primary) 32%,var(--border)); border-radius:24px; background:color-mix(in srgb,var(--surface) 86%,transparent); box-shadow:0 32px 80px rgba(2,6,23,.25); backdrop-filter:blur(16px); }
.ai-value-core { padding:28px; border:1px solid rgba(255,255,255,.14); border-radius:17px; color:#fff; background:linear-gradient(135deg,#315df5,#6d3ce8 62%,#111a45); }
.ai-value-core span,.ai-value-core small,.ai-value-step span,.ai-value-step small { display:block; }
.ai-value-core span,.ai-value-step span { margin-bottom:7px; font-size:.7rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; opacity:.76; }
.ai-value-core strong { display:block; margin-bottom:7px; font-size:1.42rem; }
.ai-value-core small,.ai-value-step small { line-height:1.55; opacity:.78; }
.ai-value-step { display:grid; grid-template-columns:42px 1fr; gap:15px; align-items:center; padding:16px 18px; border:1px solid var(--border); border-radius:14px; background:var(--bg); }
.ai-value-step b { display:grid; width:42px; height:42px; place-items:center; border-radius:12px; color:var(--primary); background:color-mix(in srgb,var(--primary) 13%,var(--surface)); }
.ai-value-step span { color:var(--primary); }
.ai-value-step strong { display:block; margin-bottom:4px; }
.ai-value-step small { color:var(--muted); }
.ai-outcome-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-top:34px; overflow:hidden; border:1px solid var(--border); border-radius:18px; background:var(--border); }
.ai-outcome-grid article,.ai-capability-grid article { padding:28px; background:var(--bg); }
.ai-outcome-grid span,.ai-capability-grid span { color:var(--primary); font-size:.75rem; font-weight:800; letter-spacing:.1em; }
.ai-outcome-grid h3,.ai-capability-grid h3 { margin:18px 0 10px; font-size:1.12rem; }
.ai-outcome-grid p,.ai-capability-grid p { margin:0; color:var(--muted); line-height:1.65; }
.ai-consulting-detail { padding-top:clamp(78px,10vw,132px); background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 5%,var(--bg)),var(--bg)); }
.ai-detail-heading { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); align-items:end; gap:clamp(36px,7vw,100px); margin-bottom:48px; }
.ai-detail-heading h2 { margin-bottom:0; }
.ai-capability-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.ai-capability-grid article { border:1px solid var(--border); border-radius:16px; background:color-mix(in srgb,var(--surface) 82%,var(--bg)); }
.ai-engagement { display:grid; grid-template-columns:minmax(180px,.75fr) minmax(360px,1.35fr) auto; align-items:center; gap:clamp(28px,5vw,64px); margin-top:28px; padding:clamp(30px,5vw,56px); overflow:hidden; border:1px solid rgba(255,255,255,.15); border-radius:22px; color:#fff; background:linear-gradient(125deg,#172554,#284fd8 55%,#6d28d9); box-shadow:0 28px 70px rgba(23,37,84,.28); }
.ai-engagement h3 { margin:10px 0 0; font-size:clamp(1.75rem,3vw,2.65rem); line-height:1.08; }
.ai-engagement ol { display:grid; gap:12px; margin:0; padding:0; list-style:none; }
.ai-engagement li { display:grid; grid-template-columns:34px 1fr; gap:13px; align-items:center; }
.ai-engagement li b { display:grid; width:34px; height:34px; place-items:center; border-radius:50%; background:rgba(255,255,255,.14); }
.ai-engagement li span,.ai-engagement li strong,.ai-engagement li small { display:block; }
.ai-engagement li strong { margin-bottom:3px; }
.ai-engagement li small { color:rgba(255,255,255,.7); line-height:1.4; }
.ai-engagement .button { white-space:nowrap; }
html[data-theme="light"] .ai-value-map { box-shadow:0 28px 65px rgba(38,55,95,.13); }

@media (max-width:980px) {
    .ai-consulting-grid,.ai-detail-heading,.ai-engagement { grid-template-columns:1fr; }
    .ai-outcome-grid,.ai-capability-grid { grid-template-columns:repeat(2,1fr); }
    .ai-engagement .button { justify-self:start; }
}

@media (max-width:640px) {
    .ai-consulting-copy h2,.ai-detail-heading h2 { font-size:clamp(2.15rem,12vw,3.1rem); }
    .ai-consulting-actions { align-items:flex-start; flex-direction:column; }
    .ai-value-map { padding:14px; border-radius:18px; }
    .ai-value-core { padding:22px; }
    .ai-outcome-grid,.ai-capability-grid { grid-template-columns:1fr; }
    .ai-outcome-grid article,.ai-capability-grid article { padding:24px; }
    .ai-engagement { padding:28px 22px; border-radius:17px; }
}

.technology-page-hero { background:radial-gradient(circle at 70% 20%,rgba(79,124,255,.13),transparent 32%); }
.ai-toolkit-section { border-block:1px solid var(--border); background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 5%,var(--bg)),var(--bg)); }
.ai-tool-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.ai-tool-card { display:grid; grid-template-columns:62px 1fr; gap:20px; padding:28px; border:1px solid var(--border); border-radius:18px; background:color-mix(in srgb,var(--surface) 84%,var(--bg)); transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.ai-tool-card:hover { transform:translateY(-4px); border-color:color-mix(in srgb,var(--primary) 52%,var(--border)); box-shadow:0 22px 48px rgba(2,6,23,.13); }
.ai-tool-monogram { display:grid; width:62px; height:62px; place-items:center; border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border)); border-radius:16px; color:#fff; background:linear-gradient(145deg,#315df5,#7138dc); font-size:.78rem; font-weight:850; letter-spacing:.04em; }
.ai-tool-card small { color:var(--primary); font-size:.68rem; font-weight:800; letter-spacing:.12em; }
.ai-tool-card h3 { margin:8px 0 10px; font-size:1.28rem; }
.ai-tool-card p { margin:0; color:var(--muted); line-height:1.65; }
.ai-tech-principles { display:grid; grid-template-columns:minmax(180px,.75fr) minmax(400px,1.5fr) auto; align-items:center; gap:clamp(28px,5vw,60px); margin-top:28px; padding:clamp(30px,5vw,52px); border-radius:22px; color:#fff; background:linear-gradient(125deg,#121d43,#284fd8 58%,#6427c8); }
.ai-tech-principles h3 { margin:10px 0 0; font-size:clamp(1.65rem,2.8vw,2.5rem); line-height:1.08; }
.ai-tech-principles ul { display:grid; gap:13px; margin:0; padding:0; list-style:none; }
.ai-tech-principles li { padding-left:17px; border-left:2px solid rgba(255,255,255,.28); }
.ai-tech-principles li strong,.ai-tech-principles li span { display:block; }
.ai-tech-principles li span { margin-top:3px; color:rgba(255,255,255,.7); font-size:.9rem; line-height:1.45; }
.ai-tech-principles .button { white-space:nowrap; }
.technology-stack-section { background:var(--bg); }

@media (max-width:980px) {
    .ai-tech-principles { grid-template-columns:1fr; }
    .ai-tech-principles .button { justify-self:start; }
}

@media (max-width:700px) {
    .ai-tool-grid { grid-template-columns:1fr; }
    .ai-tool-card { grid-template-columns:50px 1fr; padding:22px; gap:16px; }
    .ai-tool-monogram { width:50px; height:50px; border-radius:13px; }
    .ai-tech-principles { padding:28px 22px; border-radius:17px; }
}
