/* Alectis-Lab — commercial service pages and homepage offer links */
:root { --offer-blue:#0071bc; --offer-deep:#004d8a; --offer-orange:#f8931f; --offer-ink:#17364a; --offer-line:#d9e7ef; }
.services .service-commercial-card { display:flex; flex-direction:column; height:100%; width:100%; padding:32px; border:1px solid var(--offer-line); border-radius:8px; background:#fff; box-shadow:none; transition:border-color .2s ease,transform .2s ease; }
.services .service-commercial-card:hover { border-color:#a6cfe7; transform:translateY(-3px); }
.services .service-commercial-card h3 { font-size:1.3rem; line-height:1.3; margin:0 0 14px; color:var(--offer-ink); }
.services .service-commercial-card h3 a { color:var(--offer-ink); text-decoration:none; }
.services .service-commercial-card h3 a:hover { color:var(--offer-blue); }
.services .service-commercial-card p { flex-grow:1; font-size:.95rem; line-height:1.7; margin:0 0 25px; }
.services .service-commercial-card .service-more-link { align-self:flex-start; display:inline-flex; gap:.55rem; align-items:center; color:var(--offer-deep); font-weight:700; text-decoration:none; border-bottom:2px solid var(--offer-orange); padding-bottom:4px; }
.services .service-commercial-card .service-more-link:hover { color:var(--offer-blue); }
.services .service-commercial-card a:focus-visible { outline:3px solid var(--offer-orange); outline-offset:4px; }
.services .assistant-commercial-teaser { display:flex; justify-content:space-between; align-items:center; gap:30px; padding:35px 38px; border:1px solid var(--offer-line); border-left:5px solid var(--offer-blue); border-radius:6px; background:#fff; }
.services .assistant-commercial-teaser h3 { color:var(--offer-deep); font-size:clamp(1.3rem,2.1vw,1.7rem); margin:0 0 12px; }
.services .assistant-commercial-teaser p { margin:0; max-width:740px; line-height:1.7; color:var(--offer-ink); }
.services .assistant-commercial-teaser .btn-contact-style { flex-shrink:0; text-align:center; }
.offer-page { color:var(--offer-ink); }
.offer-page .offer-hero { padding:134px 0 85px; background:#fff; }
.offer-page .offer-breadcrumbs { margin:0 0 30px; font-size:.85rem; color:#516b7a; }
.offer-page .offer-breadcrumbs a { color:var(--offer-deep); text-underline-offset:3px; }
.offer-page .offer-breadcrumbs span { margin:0 9px; color:#9bb1bf; }
.offer-page .offer-eyebrow { text-transform:uppercase; letter-spacing:.1em; font-size:.76rem; font-weight:800; color:var(--offer-blue); margin:0 0 17px; }
.offer-page h1 { font-size:clamp(2.05rem,3.65vw,3.4rem); line-height:1.13; letter-spacing:-.025em; margin-bottom:24px; color:var(--offer-ink); }
.offer-page h2 { font-size:clamp(1.65rem,2.65vw,2.35rem); line-height:1.22; letter-spacing:-.015em; margin-bottom:24px; color:var(--offer-deep); }
.offer-page h3 { font-size:1.22rem; color:var(--offer-ink); line-height:1.35; margin-bottom:12px; }
.offer-page p { line-height:1.78; }
.offer-page .offer-lead { font-size:1.12rem; color:#425e70; max-width:63ch; }
.offer-page .offer-hero-art { margin:0; width:100%; }
.offer-page .offer-hero-art img { width:100%; max-width:550px; height:auto; display:block; margin-inline:auto; }
.offer-page .offer-hero-copy { max-width:710px; }
.offer-page .offer-cta { display:inline-flex; align-items:center; justify-content:center; gap:.65rem; background:var(--offer-orange); color:#17364a; font-weight:800; padding:14px 22px; border-radius:4px; border:2px solid var(--offer-orange); text-decoration:none; margin-top:18px; }
.offer-page .offer-cta:hover { background:#ffb65f; border-color:#ffb65f; color:#17364a; }
.offer-page a:focus-visible { outline:3px solid #b75600; outline-offset:4px; }
.offer-page .offer-section { padding:80px 0; background:#fff; }
.offer-page .offer-section.soft { background:#f5f9fc; }
.offer-page .offer-section .offer-intro { max-width:780px; margin:0 0 32px; }
.offer-page .offer-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.offer-page .offer-card { background:#fff; padding:25px; border:1px solid var(--offer-line); border-radius:6px; height:100%; }
.offer-page .offer-card .offer-card-icon { display:inline-grid; width:46px; height:46px; place-items:center; background:var(--offer-deep); color:#fff; border-radius:4px; margin-bottom:20px; font-size:22px; }
.offer-page .offer-card p { margin-bottom:0; font-size:.96rem; }
.offer-page .offer-split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:start; }
.offer-page .offer-example { padding:27px 30px; background:#fff; border-left:4px solid var(--offer-blue); box-shadow:0 1px 0 var(--offer-line); }
.offer-page .offer-example strong { display:block; color:var(--offer-deep); margin-bottom:8px; }
.offer-page .offer-example p { margin:0; }
.offer-page .offer-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; counter-reset:step; }
.offer-page .offer-step { counter-increment:step; padding:0 20px 20px 0; border-top:2px solid var(--offer-line); }
.offer-page .offer-step::before { content:'0' counter(step); display:block; color:var(--offer-blue); font-weight:800; padding-top:18px; margin-bottom:12px; }
.offer-page .offer-links a { font-weight:700; color:var(--offer-deep); }
.offer-page .offer-final { padding:65px 0; background:var(--offer-deep); color:#fff; }
.offer-page .offer-final h2 { color:#fff; margin-bottom:16px; }
.offer-page .offer-final p { max-width:720px; }
.offer-page .offer-final .offer-cta { margin-top:8px; }
.offer-page .offer-points { padding-left:1.2rem; line-height:1.9; }
.offer-page .offer-points li { margin-bottom:.55rem; }
@media(max-width:991px) {
 .services .assistant-commercial-teaser { flex-direction:column;align-items:flex-start; }
 .offer-page .offer-hero { padding:114px 0 62px; }
 .offer-page .offer-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .offer-page .offer-split { grid-template-columns:1fr;gap:28px; }
}
@media(max-width:767px) {
 .services .service-commercial-card { padding:24px; }
 .services .assistant-commercial-teaser { padding:24px; }
 .offer-page .offer-hero { padding:104px 0 48px; }
 .offer-page .offer-section { padding:55px 0; }
 .offer-page .offer-cards, .offer-page .offer-steps { grid-template-columns:1fr; }
 .offer-page .offer-hero-art img { max-width:420px; }
 .offer-page .offer-final { padding:55px 0; }
}
@media(prefers-reduced-motion:reduce) { .services .service-commercial-card { transition:none; transform:none !important; } }
