/* The three service hubs share a light, readable layout and the site's brand tokens. */
.smh{--smh-ink:#101a3b;--smh-copy:#45577c;--smh-line:#dce7fb;--smh-surface:#f2f7ff;--smh-accent:#2bc8df;color:var(--smh-ink);background:#fff;overflow:clip}
.smh--marketing{--smh-accent:#2bc8df}
.smh--it{--smh-accent:#75aaff}
.smh--ai{--smh-accent:#d59aff}
.smh *, .smh *::before, .smh *::after{box-sizing:border-box}
.smh .da-wrap{width:min(1240px,calc(100% - 40px));max-width:none;margin-inline:auto}
.smh h1,.smh h2,.smh h3,.smh h4,.smh p,.smh figure{margin-top:0}
.smh p{line-height:1.65}
.smh-section{padding:clamp(64px,7vw,100px) 0}
.smh-eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 18px;color:#1266cc;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.smh-eyebrow::before{content:"";width:34px;height:3px;flex:none;background:linear-gradient(90deg,#1677e8,#d633a6)}
.smh h2{max-width:18ch;margin-bottom:20px;font-size:clamp(30px,3.4vw,46px);line-height:1.13;letter-spacing:-.045em}
.smh h3,.smh h4{line-height:1.24;letter-spacing:-.025em}
.smh-hero{position:relative;isolation:isolate;padding:clamp(36px,5.2vw,76px) 0 clamp(72px,7vw,104px);background:radial-gradient(circle at 72% 25%,rgba(37,118,235,.32),transparent 38%),radial-gradient(circle at 90% 90%,rgba(211,49,166,.22),transparent 37%),linear-gradient(115deg,#071630 0%,#102758 58%,#201b48 100%);color:#fff}
.smh-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(ellipse at 8% 10%,rgba(64,133,255,.13),transparent 62%),radial-gradient(ellipse at 94% 90%,rgba(190,58,178,.1),transparent 60%);mask-image:none}
.smh-hero__grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);align-items:center;gap:clamp(36px,5vw,80px)}
.smh-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:clamp(42px,5vw,72px);font-size:13px;color:#b9d7ff}
.smh-breadcrumb a{color:#fff;text-decoration:none}
.smh-breadcrumb a:hover,.smh-breadcrumb a:focus-visible{text-decoration:underline}
.smh-hero .smh-eyebrow{color:#a8d5ff}
.smh .smh-hero h1{max-width:13ch;margin:0 0 24px;color:#fff!important;font-size:clamp(46px,5.8vw,76px);line-height:1.04;letter-spacing:-.055em}
.smh .smh-hero__lead{max-width:59ch;margin:0 0 30px;color:#d3e2fb;font-size:clamp(17px,1.6vw,20px);line-height:1.65}
.smh-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.smh-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:50px;padding:12px 22px;border:1px solid transparent;border-radius:999px;font-size:15px;font-weight:800;line-height:1.2;text-decoration:none;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}
.smh-button:hover{transform:translateY(-2px)}
.smh-button:focus-visible,.smh-group-nav a:focus-visible,.smh-card__link:focus-visible{outline:3px solid #62c9ff;outline-offset:3px}
.smh-button--primary{background:linear-gradient(110deg,#1677e8,#5146c7 58%,#d633a6);color:#fff!important;box-shadow:0 12px 25px rgba(33,88,198,.22)}
.smh-button--primary:hover{color:#fff!important;box-shadow:0 16px 30px rgba(33,88,198,.3)}
.smh-button--ghost{border-color:#5b9af4;background:rgba(3,20,54,.32);color:#fff!important}
.smh-button--ghost:hover{background:rgba(255,255,255,.11);color:#fff!important}
.smh-hero__pillars{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:30px 0 0;padding:0}
.smh .smh-hero__pillars li{border:1px solid rgba(159,198,255,.34);border-radius:999px;background:rgba(255,255,255,.07);padding:9px 13px;color:#e0ebff;font-size:12px;font-weight:700}
.smh-hero__visual{position:relative;display:grid;place-items:center;min-width:0;min-height:390px;margin:0;overflow:hidden;border:1px solid rgba(123,183,255,.48);border-radius:32px;background:linear-gradient(150deg,rgba(104,152,239,.28),rgba(77,55,142,.3));box-shadow:0 26px 60px rgba(0,12,43,.25)}
.smh-hero__visual::before{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.12);border-radius:22px;pointer-events:none}
.smh-hero__visual img{display:block;width:100%;height:100%;min-height:390px;max-height:490px;object-fit:contain;padding:clamp(24px,4vw,58px)}
.smh-hero__visual figcaption{position:absolute;left:24px;bottom:24px;display:grid;gap:2px;max-width:calc(100% - 48px);padding:12px 18px;border:1px solid rgba(178,211,255,.35);border-radius:15px;background:rgba(5,21,54,.88);color:#fff;box-shadow:0 12px 28px rgba(0,0,0,.16)}
.smh-hero__visual figcaption span{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#add5ff}
.smh-hero__visual figcaption strong{font-size:14px}
.smh-intro{background:linear-gradient(140deg,#eef5ff,#fff 72%)}
.smh-intro__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:clamp(24px,6vw,90px)}
.smh-intro__grid>p{max-width:59ch;margin:0;color:var(--smh-copy);font-size:18px}
.smh-catalogue{background:#fff}
.smh-section-heading{display:flex;align-items:end;justify-content:space-between;gap:26px;margin-bottom:30px}
.smh-section-heading>div{max-width:760px}
.smh-section-heading h2{max-width:23ch}
.smh-section-heading p:last-child{max-width:65ch;margin-bottom:0;color:var(--smh-copy);font-size:17px}
.smh-count{flex:none;padding:10px 15px;border:1px solid var(--smh-line);border-radius:999px;background:#f4f8ff;color:#315a9a;font-size:13px;font-weight:800}
.smh-group-nav{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 54px}
.smh-group-nav a{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:8px 15px;border:1px solid #cbdcf8;border-radius:999px;background:#f6f9ff;color:#18478a;font-size:13px;font-weight:800;text-decoration:none;transition:background .2s ease,border-color .2s ease}
.smh-group-nav a:hover{border-color:#7bacf1;background:#eaf3ff;color:#123b75}
.smh-group-nav span{display:inline-grid;place-items:center;min-width:23px;height:23px;padding:0 5px;border-radius:999px;background:#dceaff;color:#164b93;font-size:11px}
.smh-catalogue__group{scroll-margin-top:120px;margin-top:clamp(42px,5vw,70px)}
.smh-group-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid var(--smh-line)}
.smh-group-heading h3{margin:0;font-size:clamp(22px,2.3vw,30px)}
.smh-group-heading span{color:#5b7197;font-size:13px;font-weight:700;white-space:nowrap}
.smh-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.smh-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--smh-line);border-radius:24px;background:#fff;box-shadow:0 14px 32px rgba(26,62,121,.075);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.smh-card:hover,.smh-card:focus-within{transform:translateY(-4px);border-color:#9fc4f7;box-shadow:0 22px 38px rgba(26,62,121,.13)}
.smh-card__media{display:block;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(135deg,#e9f3ff,#f6f8ff 58%,#eee8ff)}
.smh--ai .smh-card__media{background:linear-gradient(135deg,#0d2555,#251c58)}
.smh-card__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.smh-card__body{display:flex;flex:1;min-width:0;flex-direction:column;padding:25px}
.smh-card__kicker{margin:0 0 10px;color:#235da7;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.smh-card h4{margin:0 0 11px;color:var(--smh-ink);font-size:clamp(19px,1.7vw,23px);overflow-wrap:anywhere}
.smh-card__body>p:not(.smh-card__kicker){flex:1;margin:0 0 20px;color:var(--smh-copy);font-size:15px;line-height:1.6}
.smh-card__link{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;align-self:flex-start;min-height:44px;padding:10px 15px;border:1px solid #bdd5ff;border-radius:999px;background:#f0f6ff;color:#165bc2;font-size:14px;font-weight:800;text-decoration:none}
.smh-card__link:hover{border-color:#1677e8;background:#e0efff;color:#124f9d}
.smh-needs{background:linear-gradient(145deg,#eef4ff,#f9fbff)}
.smh-needs__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.smh-needs__grid article{display:flex;flex-direction:column;min-width:0;min-height:260px;padding:30px;border:1px solid var(--smh-line);border-radius:24px;background:#fff;box-shadow:0 12px 26px rgba(25,62,125,.06)}
.smh-needs__grid article>span,.smh-process__grid li>span{display:grid;place-items:center;width:42px;height:42px;margin-bottom:26px;border-radius:14px;background:linear-gradient(135deg,#1677e8,#5146c7 62%,#d633a6);color:#fff;font-size:12px;font-weight:800}
.smh-needs__grid h3,.smh-process__grid h3{margin:0 0 10px;font-size:21px}
.smh-needs__grid p,.smh-process__grid p{margin:0 0 18px;color:var(--smh-copy);font-size:15px}
.smh-needs__grid small{margin-top:auto;color:#285eab;font-size:12px;font-weight:800}
.smh-process__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0}
.smh-process__grid li{min-width:0;padding:24px;border:1px solid var(--smh-line);border-radius:22px;background:#fff}
.smh-process__grid li>span{margin-bottom:24px}
.smh-process__grid p{margin-bottom:0}
.smh-faq{background:#eef4ff}
.smh-faq .dm-faq__layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(30px,5vw,80px);align-items:start}
.smh-faq .dm-faq__aside{position:static}
.smh-faq .dm-faq__aside p:not(.smh-eyebrow){max-width:36ch;color:var(--smh-copy);font-size:17px}
.smh-faq .dm-faq__list{display:grid;gap:12px;min-width:0}
.smh-faq .dm-faq__native-list details>div{padding:0 24px 20px}
.smh-faq .dm-faq__native-list details p{margin:0;color:var(--smh-copy);font-size:15px}
.smh-faq .dm-faq__native-list summary:focus-visible{outline:3px solid #1677e8;outline-offset:-3px}
.smh-enquiry-anchor,#service-catalogue{scroll-margin-top:96px}
.smh-enquiry-anchor .da-home-contact-section{margin:0}
@media(max-width:1023px){.smh-hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:30px}.smh-hero h1{font-size:clamp(44px,5vw,62px)}.smh-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.smh-process__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.smh .da-wrap{width:min(100% - 32px,640px)}.smh-section{padding:58px 0}.smh-hero{padding:24px 0 64px}.smh-hero__grid,.smh-intro__grid,.smh-faq .dm-faq__layout{grid-template-columns:1fr}.smh-breadcrumb{margin-bottom:42px}.smh-hero h1{font-size:clamp(42px,11vw,62px)}.smh-hero__visual{min-height:300px}.smh-hero__visual img{min-height:300px;max-height:380px;padding:24px}.smh-hero__visual figcaption{left:16px;bottom:16px}.smh-section-heading{align-items:flex-start;flex-direction:column}.smh-count{align-self:flex-start}.smh-card-grid,.smh-needs__grid{grid-template-columns:1fr}.smh-needs__grid article{min-height:0}.smh-group-heading{align-items:flex-start;flex-direction:column;gap:4px}.smh-group-nav{margin-bottom:38px}.smh-faq .dm-faq__aside p:not(.smh-eyebrow){max-width:none}}
@media(max-width:420px){.smh-actions{align-items:stretch;flex-direction:column}.smh-actions .smh-button{width:100%}.smh-process__grid{grid-template-columns:1fr}.smh-hero__pillars{gap:7px}.smh-hero__pillars li{font-size:11px}.smh-card__body{padding:21px}.smh-faq .dm-faq__native-list summary{padding:16px 18px}}
@media(prefers-reduced-motion:reduce){.smh-button,.smh-card,.smh-group-nav a{transition:none}.smh-button:hover,.smh-card:hover,.smh-card:focus-within{transform:none}}
