.home-landing{position:relative;background:var(--ink);color:var(--paper);overflow:hidden;isolation:isolate}.home-landing-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;z-index:-2}.home-landing:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--ink) 55%,transparent),transparent 65%)}.home-landing-inner{min-height:640px;display:flex;align-items:center;padding-block:64px}.home-landing-copy{width:55%}.home-landing-copy .eyebrow{color:var(--paper);font-size:11px;letter-spacing:.13em;margin-bottom:26px}.home-landing h1{font-size:var(--display-xl);font-weight:400;line-height:1;letter-spacing:var(--display-tracking)}.home-landing-deck{font-size:19px;line-height:1.55;color:var(--paper);margin:28px 0 30px;max-width:480px}.home-location{font-size:14px;color:var(--paper);margin-top:24px!important}
.home-services{padding-block:76px 88px}.home-services>h2{font-size:var(--heading-2);font-weight:400;line-height:1.08;letter-spacing:-.045em;margin-bottom:40px}
.service-index{position:relative;padding-left:51%;min-height:570px}
.service-choice{display:flex;align-items:center;min-height:114px;border-top:1px solid var(--line);padding:23px 6px 23px 0;text-decoration:none}
.service-choice:last-child{border-bottom:1px solid var(--line)}
.service-choice-copy h3{font-weight:400;font-size:clamp(26px,2.7vw,39px);line-height:1.12;letter-spacing:-.045em;margin:0 0 9px}
.service-choice-copy>span{font-size:14px;line-height:1.5;color:var(--slate)}
.service-choice:hover h3,.service-choice:focus-visible h3{color:var(--copper)}
.service-choice:focus-visible{outline:2px solid var(--copper);outline-offset:5px}
.service-preview{position:absolute;inset:0 auto 0 0;width:45%;overflow:hidden;opacity:0;pointer-events:none;transition:opacity .3s ease;background:var(--paper-2)}
.service-preview>img{width:100%;height:100%;object-fit:cover}.preview-workplace>img{object-position:77% center}.preview-security>img{object-position:73% center}.preview-software>img{object-position:62% center}
.service-choice:first-child .service-preview{opacity:1}
.service-index:has(.service-choice:hover) .service-preview,.service-index:has(.service-choice:focus-visible) .service-preview{opacity:0}
.service-index .service-choice:hover .service-preview,.service-index .service-choice:focus-visible .service-preview{opacity:1}
.preview-web>img{object-position:61% center}.preview-web-name{position:absolute;left:28px;top:27px;font:36px/1 Georgia,serif;color:var(--ink)}.preview-web-name sup{font-size:12px;vertical-align:top}.preview-web-title{position:absolute;left:28px;top:105px;font:clamp(37px,4vw,60px)/1 Georgia,serif;letter-spacing:-.055em;color:var(--ink)}
.preview-automation{display:grid;place-items:center;background:#ebe2d1}.preview-orbit{position:relative;width:78%;aspect-ratio:1;border:1px solid #c19a79;border-radius:50%;display:grid;place-items:center;transform:rotate(-9deg)}.preview-orbit:before{content:'';position:absolute;inset:22px;border:1px solid #c19a7980;border-radius:50%}.orbit-inner{width:56%;aspect-ratio:1;border-radius:50%;background:var(--paper);display:grid;place-items:center;box-shadow:0 15px 35px #102f3b12}.orbit-inner img{width:75%;height:auto;transform:rotate(9deg)}.orbit-note{position:absolute;background:var(--paper);border:1px solid #c5b9a8;padding:22px;font-size:18px;line-height:1.4;box-shadow:0 8px 22px #102f3b0d}.note-in{top:-25px;left:-12px;transform:rotate(3deg)}.note-out{bottom:-30px;right:-13px;transform:rotate(14deg)}.orbit-note small{font-size:12px;color:var(--slate)}
.home-enquiry{background:var(--ink-deep);color:var(--paper);padding-block:54px}.home-enquiry-row{display:flex;align-items:center;justify-content:space-between;gap:30px}.home-enquiry h2{font-size:clamp(34px,4vw,54px);line-height:1.05;letter-spacing:-.045em;font-weight:400}.home-enquiry .button{flex-shrink:0}
@media(max-width:1000px){.service-index{padding-left:49%;min-height:530px}.service-choice{min-height:106px}.service-choice-copy h3{font-size:29px}.service-choice-copy>span{font-size:13px}.preview-web-title{font-size:42px}.orbit-note{padding:16px;font-size:14px}}
@media(max-width:760px){.home-landing-inner{min-height:730px;align-items:start;padding-block:43px 280px}.home-landing-copy{width:100%}.home-landing-copy .eyebrow{font-size:10px;letter-spacing:.12em;max-width:320px;margin-bottom:24px}.home-landing h1{font-size:var(--display-xl)}.home-landing-deck{font-size:17px;max-width:360px;margin-block:25px}.home-landing-deck br{display:none}.home-location{font-size:14px}.home-landing-photo{top:auto;bottom:0;height:380px;object-position:79% center;mask-image:linear-gradient(transparent,black 33%)}.home-landing:after{background:linear-gradient(180deg,var(--ink) 0%,var(--ink) 48%,transparent 83%)}
.home-services{padding-block:48px}.home-services>h2{margin-bottom:28px;font-size:39px}.service-index{padding:0;min-height:0}.service-choice{position:relative;gap:20px;min-height:132px;padding:20px 0}.service-preview{position:relative;inset:auto;flex:0 0 110px;width:110px;height:92px;opacity:1!important;transition:none}.service-choice-copy h3{font-size:25px}.service-choice-copy>span{font-size:13px;display:block}.preview-web-name{font-size:12px;left:7px;top:7px}.preview-web-name sup{font-size:5px}.preview-web-title{font-size:16px;left:7px;top:29px}.preview-orbit{width:66%}.preview-orbit:before{inset:6px}.orbit-note{font-size:5px;padding:4px}.orbit-note small{font-size:4px}.note-in{left:-7px;top:-4px}.note-out{right:-7px;bottom:-4px}.home-enquiry{padding-block:38px}.home-enquiry-row{align-items:start;flex-direction:column;gap:23px}.home-enquiry h2{font-size:38px}}
@media(max-width:420px){.service-choice{gap:16px}.service-preview{flex-basis:82px;width:82px;height:90px}.service-choice-copy h3{font-size:24px}.service-choice-copy>span{font-size:12px}.home-services>h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){.service-preview{transition:none}}

.service-index:has(.service-choice:focus-visible) .service-choice .service-preview{opacity:0}
.service-index:has(.service-choice:focus-visible) .service-choice:focus-visible .service-preview{opacity:1}
@media(max-width:420px){.preview-web-title{font-size:12px}}
