/* Device images use the existing shared source; every presentation fits the same square. */
.home-services{margin-top:64px;border-top:3px solid transparent}
.home-service{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(28px,6vw,88px);margin-inline:auto;border-bottom:3px solid transparent}
.home-services,.home-service{border-image:linear-gradient(90deg,#ffce32 0 28%,#18232f 28% 74%,#e5b927 74% 88%,#101820 88%) 1}
.home-service .service-image{grid-column:1;grid-row:1}
.home-service .service-copy{grid-column:2;grid-row:1;min-width:0}
.home-service.image-right .service-image{grid-column:2}
.home-service.image-right .service-copy{grid-column:1}
.service-image{width:100%;max-width:360px;aspect-ratio:1;margin-inline:auto;background:#fff;display:grid;place-items:center}
.service-image .device-image{width:100%;height:100%;max-width:360px;max-height:360px;aspect-ratio:1;object-fit:contain;background:#fff}
.service-copy h2{font-size:clamp(24px,3vw,32px);line-height:1.3;letter-spacing:-.025em;margin:0 0 18px}
.service-copy p,.service-page p{line-height:1.85;color:var(--muted);overflow-wrap:anywhere}
.service-link{display:inline-flex;align-items:center;gap:14px;margin-top:10px;padding:8px 0;border-bottom:2px solid var(--yellow);font-weight:700}
/* Extend the existing semantic link over its entire service section. */
.home-service{position:relative;cursor:pointer}
.home-service .service-link::after{content:"";position:absolute;inset:0;z-index:1}
.home-service .service-link:focus-visible::after{outline:2px solid var(--ink);outline-offset:4px}
@media(hover:hover) and (pointer:fine){.home-service:hover{background-color:#fafbfc}}
.home-service.space-top-small{padding-top:24px}.home-service.space-top-normal{padding-top:48px}.home-service.space-top-large{padding-top:80px}
.home-service.space-bottom-small{padding-bottom:24px}.home-service.space-bottom-normal{padding-bottom:48px}.home-service.space-bottom-large{padding-bottom:80px}
.home-service.width-narrow{max-width:860px}.home-service.width-normal{max-width:1040px}.home-service.width-wide{max-width:100%}
.service-page{max-width:1120px;margin-block:48px}
.service-page-intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:48px;align-items:center}
.service-page h1{font-size:clamp(30px,4vw,44px);overflow-wrap:anywhere}
.service-text-section{max-width:820px;margin-block:48px}.service-text-section h2{font-size:25px}
.service-text-section.service-regions{max-width:100%;padding:32px;background:#f7f8f9;border-radius:8px}
.service-regions::before{content:"";display:block;width:36px;height:3px;margin-bottom:16px;background:var(--yellow)}
.service-regions h2{max-width:820px;margin:0 0 18px;font-size:clamp(23px,2.4vw,30px);line-height:1.35;letter-spacing:-.02em;overflow-wrap:break-word}
.service-regions p{max-width:820px;margin:0 0 14px;line-height:1.85}
.service-region-chips{display:flex;flex-wrap:wrap;gap:8px;max-width:900px;list-style:none;margin:22px 0 0;padding:0}
.service-region-chips li{display:flex;align-items:center;justify-content:center;min-width:0;height:34px;padding:0 12px;border:1px solid #e1e4e8;border-radius:5px;background:#fff;color:#253044;font-size:13px;font-weight:500;line-height:1.2;box-shadow:none}
@media(max-width:700px){
 .service-text-section.service-regions{padding:24px 16px}
 .service-regions h2{font-size:23px;line-height:1.4}
 .service-region-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .service-region-chips li{padding-inline:6px}
}
@media(max-width:380px){.service-region-chips{grid-template-columns:repeat(2,minmax(0,1fr))}}
.service-resources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;border-top:1px solid var(--line);padding-top:28px;margin-top:48px}
.service-resources h2{font-size:18px}.service-resources ul{padding-left:20px}.service-resources li{padding-block:7px;overflow-wrap:anywhere}.service-resources a{text-decoration:underline;text-underline-offset:3px}
.service-editor{max-width:850px;margin:24px 0;padding:24px;border:1px solid var(--line);border-radius:8px}
.service-editor textarea{min-height:130px}.service-editor label{overflow-wrap:anywhere}
.service-image-editor{max-width:850px;margin-block:24px;padding:24px;background:#fafbfc;border:1px solid var(--line);border-radius:8px}
.service-image-editor .service-image{max-width:180px;margin-left:0}.service-image-editor .device-image{max-width:180px;max-height:180px}
.service-block-editor{max-width:850px;border:1px solid var(--line);border-radius:8px;margin-block:14px}.service-block-editor summary{padding:16px;cursor:pointer;font-weight:650;overflow-wrap:anywhere}.service-block-editor .service-editor{border:0;margin:0;padding-top:0}
@media(max-width:700px){
 .home-services{margin-top:40px}.home-service{grid-template-columns:minmax(0,1fr);gap:24px}
 .home-service .service-image,.home-service.image-right .service-image{grid-column:1;grid-row:1}
 .home-service .service-copy,.home-service.image-right .service-copy{grid-column:1;grid-row:2}
 .service-image,.service-image .device-image{max-width:280px;max-height:280px}
 .home-service.space-top-large{padding-top:48px}.home-service.space-bottom-large{padding-bottom:48px}
 .home-service.space-top-normal{padding-top:32px}.home-service.space-bottom-normal{padding-bottom:32px}
 .service-page-intro,.service-resources{grid-template-columns:minmax(0,1fr);gap:24px}
 .service-intro-image-after-title .service-intro-text{display:contents}
 .service-intro-image-after-title h1{order:1;margin-bottom:0}
 .service-intro-image-after-title>.service-image{order:2}
 .service-intro-image-after-title .service-intro-description{order:3}
 .service-intro-image-after-title .service-intro-description>p:first-child{margin-top:0}
 .service-page{margin-block:30px}.service-text-section{margin-block:32px}
 .service-editor,.service-image-editor{padding:16px}.service-editor .grid{grid-template-columns:minmax(0,1fr)}
}

.home-service:last-child{border-bottom:0}
