@property --service-edge-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@property --service-stem-flow{syntax:"<percentage>";inherits:false;initial-value:-70%}.services{background:linear-gradient(180deg, var(--band-seam) 0, var(--band-a) var(--band-fade), var(--band-a) calc(100% - var(--band-fade)), var(--band-seam) 100%);color:var(--ink);padding-block:clamp(74px,9vw,132px)}.services-inner{--services-gutter:clamp(20px, 4.2vw, 72px);width:min(100%,1376px);padding-inline:var(--services-gutter);margin-inline:auto}.services-head{text-align:center;border-bottom:1px solid #cbd3dd;justify-items:center;gap:clamp(16px,1.6vw,22px);padding-bottom:clamp(28px,3.7vw,52px);display:grid}.services-eyebrow{margin:0 0 clamp(18px,2vw,28px)}.services-title{max-width:23ch;color:var(--ink);font-family:var(--font-serif), Georgia, serif;letter-spacing:-.055em;text-wrap:balance;margin:0;font-size:clamp(39px,4.4vw,60px);font-weight:400;line-height:1.02}.services-title em{color:#687785;font-style:normal;display:block}.services-lede{color:#53616d;letter-spacing:-.01em;max-width:48ch;margin:0;font-size:clamp(14px,1.18vw,17px);line-height:1.65}.service-grid{--service-gap:clamp(12px, 1.3vw, 20px);grid-template-columns:repeat(var(--trade-count,3), minmax(0, 1fr));gap:var(--service-gap);margin:clamp(22px,2.4vw,34px) 0 0;padding:0;list-style:none;display:grid}.service-card{min-width:0;transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);position:relative}.service-card[data-shown=false]{opacity:0;transform:translateY(22px)}.service-card-inner{--service-card-surface:#fff;--service-card-inset:clamp(24px, 2.9vw, 42px);--service-card-floor:clamp(28px, 3vw, 42px);--service-arrow-size:48px;z-index:1;isolation:isolate;background:var(--service-card-surface);height:100%;color:inherit;cursor:pointer;border:1px solid #d8dfe6;border-radius:18px;flex-direction:column;text-decoration:none;transition:border-color .35s,box-shadow .35s,transform .45s cubic-bezier(.2,.7,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 16px 45px -42px #21354b75}:is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible){border-color:#a9c3c8;transform:translateY(-4px);box-shadow:0 26px 48px -36px #21354b70,0 0 22px -12px #1f5a6659}.service-card-inner:before{content:"";z-index:3;border-radius:inherit;pointer-events:none;background:conic-gradient(from var(--service-edge-angle), transparent 0deg, #3f7d8855 35deg, #3f7d88 65deg, #d7eaec 80deg, #1f5a66b3 100deg, transparent 135deg, transparent 190deg, #789ca955 230deg, #d6e5e6cc 255deg, transparent 290deg);opacity:0;padding:1.5px;transition:opacity .4s;animation:4.5s linear infinite paused service-edge-orbit;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}:is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible):before{opacity:1;animation-play-state:running}.service-card-inner:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@keyframes service-edge-orbit{to{--service-edge-angle:360deg}}.service-card-media{isolation:isolate;aspect-ratio:16/9;background:#e6eaee;flex:none;margin-bottom:-1px;position:relative;overflow:hidden}.service-card-image{object-fit:cover;object-position:center;transition:transform .75s cubic-bezier(.2,.7,.2,1)}.service-card-video{width:100%;height:100%;display:block;position:absolute;inset:0}:is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible) .service-card-image{transform:scale(1.035)}.service-card-media:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(180deg, transparent, var(--service-card-surface));height:16%;position:absolute;inset:auto 0 0}.service-card-foundation-label{z-index:2;color:var(--accent);letter-spacing:.08em;text-transform:uppercase;background:#e2edefef;border:1px solid #c2d6d9;border-radius:8px;padding:11px 13px;font-size:10px;font-weight:600;line-height:1;position:absolute;top:clamp(18px,2.2vw,30px);right:clamp(18px,2.2vw,30px)}.service-card-copy{min-height:206px;padding:10px var(--service-card-inset) var(--service-card-floor);background:var(--service-card-surface);flex-direction:column;flex:1;display:flex;position:relative}.service-card-audience{color:var(--accent);letter-spacing:.13em;text-transform:uppercase;margin:0 0 15px;font-size:10px;font-weight:600;line-height:1.4}.service-card-title{color:#17252d;max-width:20ch;font-family:var(--font-serif), Georgia, serif;letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(26px,2.55vw,38px);font-weight:400;line-height:1.08}.service-card-message{max-width:min(48ch, calc(100% - var(--service-arrow-size) - 20px));color:#53616d;margin:auto 0 0;padding-top:clamp(20px,2vw,29px);font-size:clamp(13px,1.04vw,15px);line-height:1.6}.service-card-arrow{right:var(--service-card-inset);bottom:var(--service-card-floor);width:var(--service-arrow-size);height:var(--service-arrow-size);background:var(--accent-tint);color:var(--accent);border:1px solid #c2d6d9;border-radius:50%;place-items:center;transition:background .35s,color .35s,border-color .35s,box-shadow .35s;display:grid;position:absolute;overflow:hidden;box-shadow:inset 0 1px #ffffffb3}.service-card-arrow-track{width:22px;height:22px;position:relative;overflow:hidden}.service-card-arrow svg{stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%;transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .35s;position:absolute;inset:0}.service-card-arrow-in{opacity:0;transform:translate(-115%,115%)}:is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible) .service-card-arrow{border-color:var(--accent-deep);background:var(--accent-fill);color:#f2f6f6;box-shadow:inset 0 1px #ffffff24,0 8px 20px -12px #15353e80}:is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible) .service-card-arrow-out{opacity:0;transform:translate(115%,-115%)}:is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible) .service-card-arrow-in{opacity:1;transform:translate(0)}.service-card[data-kind=foundation] .service-card-inner{--service-card-surface:#eef4f5;border-color:#c8dade}.service-card[data-kind=foundation] .service-card-message{color:#3c5b62}@media (min-width:761px){.service-card[data-kind=foundation]{grid-column:1/-1}.service-card[data-kind=foundation] .service-card-inner{grid-template-columns:repeat(var(--trade-count,3), minmax(0, 1fr));column-gap:var(--service-gap);display:grid}.service-card[data-kind=foundation] .service-card-media{grid-column:1;margin:0}.service-card[data-kind=foundation] .service-card-media:after{background:linear-gradient(90deg, transparent, var(--service-card-surface));width:10%;height:auto;inset:0 0 0 auto}.service-card[data-kind=foundation] .service-card-foundation-label{display:none}.service-card[data-kind=foundation] .service-card-copy{min-height:0;padding:var(--service-card-floor) var(--service-card-inset);grid-column:2/-1}.service-card[data-kind=foundation] .service-card-title{max-width:none}}@media (min-width:761px) and (max-width:1023px){.service-card-inner{--service-card-inset:20px;--service-card-floor:22px;--service-arrow-size:40px}.service-card-copy{min-height:0;padding-top:6px}.service-card-audience{margin-bottom:10px;font-size:9px}.service-card-title{font-size:clamp(20px,2.6vw,25px)}.service-card-message{padding-top:16px;font-size:13px;line-height:1.5}}@media (min-width:1024px){.services{align-content:center;min-height:100svh;padding-block:clamp(20px,3svh,56px);display:grid}.services-head{gap:clamp(10px,1.6svh,16px);padding-bottom:clamp(18px,2.6svh,28px)}.services-eyebrow{margin-bottom:clamp(8px,1.4svh,16px)}.services-title{font-size:clamp(34px,min(4.4vw,4.7svh),60px)}.services-lede{max-width:64ch;font-size:clamp(14px,1.1vw,16px);line-height:1.55}.service-grid{width:min(100%,128svh);margin:clamp(16px,2.4svh,26px) auto 0}.service-card-inner{--service-card-inset:clamp(20px, 1.8vw, 28px);--service-card-floor:clamp(18px, 2.4svh, 26px);--service-arrow-size:42px;border-radius:16px}.service-card-copy{min-height:0;padding-top:6px}.service-card-audience{margin-bottom:10px;font-size:9.5px}.service-card-title{max-width:none;font-size:clamp(22px,min(1.9vw,3.4svh),30px)}.service-card-message{padding-top:clamp(12px,1.8svh,18px);font-size:clamp(13px,.95vw,15px);line-height:1.5}}@media (max-width:760px){.services{padding-block:72px}.services-head{border-bottom:0;gap:16px;padding-bottom:28px}.services-title{max-width:14ch;font-size:clamp(38px,8vw,56px)}.services-lede{max-width:44ch}.service-grid{grid-template-columns:1fr;gap:16px;margin-top:20px}.service-card-inner{--service-card-inset:26px;--service-card-floor:30px;--service-arrow-size:44px}.service-card-copy{min-height:0;padding-top:8px}.service-card-title{font-size:clamp(30px,6.5vw,38px)}.service-card-message{margin-top:0}}@media (max-width:440px){.services{padding-block:62px}.service-card-inner{--service-card-inset:21px;--service-card-floor:27px;border-radius:14px}.service-card-foundation-label{padding:11px 9px;font-size:8px;top:16px;right:16px}.service-card-copy{padding-top:5px}.service-card-audience{margin-bottom:12px}.service-card-title{font-size:clamp(27px,8vw,34px)}.service-card-message{padding-top:18px}}.services[data-variant=glass] .service-card-inner{--service-card-surface:var(--service-card-tone,#c0c8d1);--service-glass-gap:clamp(8px, .8vw, 12px);padding-bottom:var(--service-glass-gap);border-color:#b3bec8;box-shadow:0 18px 44px -34px #21354b99}.services[data-variant=glass] :is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible){border-color:#98b4ba}.services[data-variant=glass] .service-card-copy{z-index:2;margin:var(--service-glass-gap) var(--service-glass-gap) 0;background:linear-gradient(#ffffffb8,#ffffff8c);border-radius:12px;padding-top:clamp(16px,2svh,22px);box-shadow:inset 0 1px #ffffffe6,inset 0 -1px #21354b14,0 14px 30px -22px #21354b8c}.services[data-variant=glass] .service-card-copy:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(#fff,#ffffff59 45%,#ffffff1f);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.services[data-variant=glass] .service-card-media{background:0 0;-webkit-mask-image:linear-gradient(#000 92%,#0000);mask-image:linear-gradient(#000 92%,#0000)}.services[data-variant=glass] .service-card-media:after{display:none}.services[data-variant=glass] .service-card[data-kind=foundation] .service-card-inner{--service-card-surface:var(--service-card-tone,#bec9cd);border-color:#b3bec8}@media (min-width:761px){.services[data-variant=glass] .service-card[data-kind=foundation] .service-card-inner{column-gap:var(--service-glass-gap);padding:var(--service-glass-gap)}.services[data-variant=glass] .service-card[data-kind=foundation] .service-card-media{border-radius:12px;box-shadow:0 14px 30px -22px #21354b8c;-webkit-mask-image:none;mask-image:none}.services[data-variant=glass] .service-card[data-kind=foundation] .service-card-media:after{border-radius:inherit;background:0 0;width:auto;height:auto;display:block;inset:0;box-shadow:inset 0 0 0 1px #ffffff59}.services[data-variant=glass] .service-card[data-kind=foundation] .service-card-copy{margin:0}.service-grid{--service-stem:clamp(22px, 3.2svh, 40px);row-gap:var(--service-stem)}.service-card[data-kind=trade]:after{content:"";z-index:0;width:1px;height:calc(var(--service-stem) + 16px);pointer-events:none;background:linear-gradient(180deg, transparent, var(--accent-mid), transparent) 0 var(--service-stem-flow) / 100% 40% no-repeat, #b4c6cc;background-size:100% 0%,auto;transition:background-color .35s;position:absolute;top:calc(100% - 8px);left:50%;translate:-50%}.service-card[data-kind=trade]:before{content:"";z-index:2;top:calc(100% + var(--service-stem) - 3.5px);pointer-events:none;background:var(--band-a,#f4f5f8);border:1px solid #a9bcc3;border-radius:50%;width:7px;height:7px;transition:background-color .35s,border-color .35s;position:absolute;left:50%;translate:-50%}.service-card[data-kind=trade]:has(:is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible)):after{background-color:#8fb3b9;background-size:100% 40%,auto;animation:1.4s linear infinite service-stem-flow}.service-grid:has([data-kind=foundation] :is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible)) .service-card[data-kind=trade]:after{background-color:#8fb3b9;background-size:100% 40%,auto;animation:1.4s linear infinite service-stem-flow}.service-card[data-kind=trade]:has(:is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible)):before{border-color:var(--accent);background:var(--accent)}.service-grid:has([data-kind=foundation] :is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible)) .service-card[data-kind=trade]:before{border-color:var(--accent);background:var(--accent)}.service-grid:has([data-kind=trade] :is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible)) [data-kind=foundation] .service-card-inner{border-color:#98b4ba}}@keyframes service-stem-flow{0%{--service-stem-flow:-70%}to{--service-stem-flow:170%}}@media (prefers-reduced-motion:reduce){.service-card[data-shown=false]{opacity:1;transform:none}.service-card,.service-card-inner,.service-card-inner:before,.service-card-image,.service-card-arrow,.service-card-arrow svg{transition:none}.service-card-inner:before,.service-card:after{animation:none!important}:is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible),:is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible) .service-card-image{transform:none}}.service-card-scene{transition:transform .75s cubic-bezier(.2,.7,.2,1);position:absolute;inset:2% 4% 4%}.service-card-scene[data-paused] *{animation-play-state:paused!important}.service-card-scene svg{width:100%;height:100%;display:block;overflow:visible}:is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible) .service-card-scene{transform:scale(1.03)}.services[data-scenes] .service-card-inner{--service-card-surface:#c6ced6;background:radial-gradient(ellipse 70% 46% at 50% 26%, #f1f4f6, #f1f4f600 100%), linear-gradient(180deg, #dce2e7 0%, var(--service-card-surface) 58%)}.services[data-scenes] .service-card-media{background:0 0;-webkit-mask-image:none;mask-image:none}@media (min-width:761px){.services[data-scenes] .service-card[data-kind=foundation] .service-card-media{background:radial-gradient(70% 60% at 50% 45%,#f1f4f6,#f1f4f600 100%),#d3dae0}.services[data-scenes] .service-card[data-kind=foundation] .service-card-media:after{box-shadow:inset 0 0 0 1px #ffffff8c}}.services[data-scenes] .service-card-scene [data-tone=stone] .hx-top{fill:url(#sc-m-top)}.services[data-scenes] .service-card-scene [data-tone=stone] .hx-front{fill:url(#sc-m-front)}.services[data-scenes] .service-card-scene [data-tone=stone] .hx-side{fill:url(#sc-m-side)}.services[data-scenes] .service-card-scene [data-tone=petrol] .hx-top{fill:url(#sc-p-top)}.services[data-scenes] .service-card-scene [data-tone=petrol] .hx-front{fill:url(#sc-p-front)}.services[data-scenes] .service-card-scene [data-tone=petrol] .hx-side{fill:url(#sc-p-side)}.services[data-scenes] .service-card-scene [data-tone=glass] .hx-top{fill:url(#sc-m-top)}.services[data-scenes] .service-card-scene [data-tone=glass] .hx-front{fill:url(#sc-glass)}.services[data-scenes] .service-card-scene [data-tone=glass] .hx-side{fill:url(#sc-glass-side)}.services[data-scenes] .service-card-scene [data-tone=product] .hx-top{fill:url(#sc-c-top)}.services[data-scenes] .service-card-scene [data-tone=product] .hx-front{fill:url(#sc-c-front)}.services[data-scenes] .service-card-scene [data-tone=product] .hx-side{fill:url(#sc-c-side)}.services[data-scenes] .service-card-scene [data-tone=dark] .hx-top{fill:url(#sc-g-top)}.services[data-scenes] .service-card-scene [data-tone=dark] .hx-front{fill:url(#sc-g-front)}.services[data-scenes] .service-card-scene [data-tone=dark] .hx-side{fill:url(#sc-g-side)}.services[data-scenes] .service-card-scene .hx-hi{stroke:#fff;stroke-opacity:.8}.services[data-scenes] .service-card-scene .hx-lo{stroke:#8a9192;stroke-opacity:.55}.services[data-scenes] .service-card-scene :is([data-tone=petrol],[data-tone=dark]) .hx-hi{stroke-opacity:.45}.services[data-scenes] .service-card-scene .hx-roof{fill:url(#sc-m-top);stroke:#b3b8b9}.services[data-scenes] .service-card-scene .hx-roof-back{fill:#b6bbbc}.services[data-scenes] .service-card-scene .hx-gable{fill:url(#sc-m-side)}.services[data-scenes] .service-card-scene .hx-front-fill{fill:url(#sc-m-front)}.services[data-scenes] .service-card-scene .hx-window{fill:#5a94a0}.services[data-scenes] .service-card-scene .hx-floorline{stroke:#e3f1f3;stroke-opacity:.6}.services[data-scenes] .service-card-scene .hx-door{fill:#3a4950}.services[data-scenes] .service-card-scene .hx-led{fill:#c7e6ea;filter:drop-shadow(0 0 1.5px #3f7d88)}.services[data-scenes] .service-card-scene .hx-awning{fill:#fbfbfa}.services[data-scenes] .service-card-scene .hx-awning-alt{fill:#2f7180}.services[data-scenes] .service-card-scene .hx-label-glow{fill:#4f8e99}.services[data-scenes] .service-card-scene .hx-tape{fill:#cfd4d3}.services[data-scenes] .service-card-scene .hx-contact{fill:#2b3d4c;opacity:.22}.services[data-scenes] .service-card-scene .hx-tag rect{fill:#fff;stroke:#d2d9df;filter:drop-shadow(0 3px 5px #21354b24)}.services[data-scenes] .service-card-scene .hx-tag circle{fill:var(--accent-mid)}.services[data-scenes] .service-card-scene .hx-tag text{fill:#2f3d48}.services[data-scenes] .service-card-scene .hx-tag[data-hub] rect{fill:var(--accent);stroke:#2c6a76}.services[data-scenes] .service-card-scene .hx-tag[data-hub] circle{fill:#cfe8eb}.services[data-scenes] .service-card-scene .hx-tag[data-hub] text{fill:#f2f6f6}.services[data-scenes] .service-card-scene :is(.hx-tag:not([data-card]),.hx-origin){display:none}.services[data-scenes] .service-card-scene .hx-tag[data-card]{transform-box:fill-box;transform-origin:0 0;translate:-64px -2px;scale:1.76}.services[data-scenes] .service-card-scene [fill="url(#hx-slab-top)"]{fill:url(#sc-land-top)}.services[data-scenes] .service-card-scene [fill="url(#hx-slab-side)"]{fill:url(#sc-land-side)}.services[data-scenes] .service-card-scene .hx-slab-shadow{fill:#21354b;opacity:.2}.services[data-scenes] .service-card-scene .hx-slab-rim{stroke-opacity:.9}.services[data-scenes] .service-card-scene .hx-engrave{fill:#d2d8dc}.services[data-scenes] .service-card-scene .hx-engrave-shade{fill:#fff;opacity:.9}.services[data-scenes] .service-card-scene .hx-route-bed{stroke:#b4bdc3}.services[data-scenes] .service-card-scene .hx-route-edge{stroke:#f7f8f8}.services[data-scenes] .service-card-scene .hx-float-shadow{fill:#21354b;opacity:.2}.services[data-scenes] .service-card-scene .hx-plinth-led{stroke:#2c6a76;filter:drop-shadow(0 0 3px #8fbcc3)}.services[data-scenes] .service-card-scene .hx-origin{fill:#5b6a76}.services[data-scenes] .service-card-scene .hx-pier-top{fill:url(#sc-p-top)}.services[data-scenes] .service-card-scene .hx-pier-side{fill:#1a4c57}.services[data-scenes] .service-card-scene .hx-pier-front{fill:url(#sc-p-front)}.services[data-scenes] .service-card-scene .hx-pier-groove{stroke:#2c6a76;stroke-opacity:.5}.services[data-scenes] .service-card-scene .hx-gate-light{stroke:#2c6a76;filter:drop-shadow(0 0 3px #8fbcc3)}.services[data-scenes] .service-card-scene .hx-port{fill:#2c6a76;filter:drop-shadow(0 0 3px #8fbcc3)}.services[data-scenes] .service-card-scene [fill="url(#hx-shore-top)"]{fill:url(#sc-shore-top)}.services[data-scenes] .service-card-scene .hx-shore-side{fill:#5d8189}.services[data-scenes] .service-card-scene .hx-shore-rim{stroke:#fff;stroke-opacity:.55}.services[data-scenes] .service-card-scene .hx-shore-name{fill:#6c8f97}.services[data-scenes] .service-card-scene .hx-shore-name-shade{fill:#e4eef0;opacity:.5}.services[data-scenes] .service-card-scene .sx-scanline{stroke:#2c6a76;filter:drop-shadow(0 0 4px #8fbcc3)}.services[data-scenes] .service-card-scene rect[fill="url(#sx-curtain)"]{fill:url(#sc-curtain)}.services[data-scenes] .service-card-scene .sx-ping{stroke:#2c6a76}.services[data-scenes] .service-card-scene .hx-match{fill:#3f7d88;opacity:.25}.services[data-scenes] .service-card-scene .sp-shadow{fill:#21354b;opacity:.18}.services[data-scenes] .service-card-scene .sp-island-side{fill:url(#sc-land-side)}.services[data-scenes] .service-card-scene .sp-island-top{fill:url(#sc-land-top)}.services[data-scenes] .service-card-scene .sp-island-glow{opacity:.3}.services[data-scenes] .service-card[data-kind=foundation] .service-card-inner{--service-card-surface:#c6ced6}@media (prefers-reduced-motion:reduce){.service-card-scene{transition:none}:is(.service-card:hover>.service-card-inner,.service-card-inner:focus-visible) .service-card-scene{transform:none}}.service-scene-defs{pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.service-grid-split>.service-track{display:contents}.service-index{display:none}@media (max-width:760px){.service-grid-split{display:block}.service-grid-split>.service-track{margin:0 calc(-1 * var(--services-gutter));padding:4px var(--services-gutter) 26px;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--services-gutter);scrollbar-width:none;gap:12px;list-style:none;display:flex;overflow-x:auto}.service-track::-webkit-scrollbar{display:none}.service-track>.service-card{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 86%}.service-track>.service-card[data-shown=false]{transform:none}.service-track .service-card-inner{--service-arrow-size:38px}.service-track .service-card-foundation-label{display:none}.service-track .service-card-title{font-size:clamp(24px,6.6vw,29px)}.service-track .service-card-message{padding-top:14px;font-size:13.5px;line-height:1.55}.service-index{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:10px;margin-bottom:14px;display:grid}.service-index-item{color:#8593a0;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-content:start;gap:5px;padding:13px 0 6px;transition:color .3s;display:grid;position:relative}.service-index-item:before,.service-index-item:after{content:"";background:#c2ccd4;border-radius:2px;height:2px;position:absolute;inset:0 0 auto}.service-index-item:after{background:var(--accent);transform-origin:0;transition:transform .45s cubic-bezier(.2,.7,.2,1);transform:scaleX(0)}.service-index-item[aria-current=true]{color:var(--ink)}.service-index-item[aria-current=true]:after{transform:none}.service-index-no{letter-spacing:.14em;font-variant-numeric:tabular-nums;font-size:10px;font-weight:600}.service-index-name{letter-spacing:-.01em;font-size:clamp(11px,3.2vw,12.5px);font-weight:600;line-height:1.25}.service-index-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}}@media (max-width:760px) and (prefers-reduced-motion:reduce){.service-index-item,.service-index-item:after{transition:none}}
.hx-scene [data-tone=stone] .hx-top{fill:url(#hx-stone-top)}.hx-scene [data-tone=stone] .hx-front{fill:url(#hx-stone-front)}.hx-scene [data-tone=stone] .hx-side{fill:url(#hx-stone-side)}.hx-scene [data-tone=petrol] .hx-top{fill:#6d939b}.hx-scene [data-tone=petrol] .hx-front{fill:url(#hx-petrol-front)}.hx-scene [data-tone=petrol] .hx-side{fill:url(#hx-petrol-side)}.hx-scene [data-tone=glass] .hx-top{fill:url(#hx-stone-top)}.hx-scene [data-tone=glass] .hx-front{fill:url(#hx-glass)}.hx-scene [data-tone=glass] .hx-side{fill:url(#hx-glass-side)}.hx-scene [data-tone=dark] .hx-top{fill:url(#hx-dark-top)}.hx-scene [data-tone=dark] .hx-front{fill:url(#hx-dark-front)}.hx-scene [data-tone=dark] .hx-side{fill:url(#hx-dark-side)}.hx-scene [data-tone=product] .hx-top{fill:url(#hx-product-top)}.hx-scene [data-tone=product] .hx-front{fill:url(#hx-product-front)}.hx-scene [data-tone=product] .hx-side{fill:url(#hx-product-side)}.hx-hi{fill:none;stroke:#fff;stroke-opacity:.7;stroke-width:.6px;stroke-linejoin:round}.hx-lo{fill:none;stroke:#6f6858;stroke-opacity:.5;stroke-width:.6px;stroke-linejoin:round}.hx-scene [data-tone=dark] .hx-hi,.hx-scene [data-tone=petrol] .hx-hi{stroke-opacity:.28}.hx-roof{fill:url(#hx-stone-top);stroke:#b3ab9b;stroke-width:.4px}.hx-roof-back{fill:#b9b1a2}.hx-gable{fill:url(#hx-stone-side)}.hx-front-fill{fill:url(#hx-stone-front)}.hx-window{fill:#5e8a93}.hx-floorline{fill:none;stroke:#a9d2d8;stroke-opacity:.45;stroke-width:.5px}.hx-door{fill:#2b3f44}.hx-led{fill:#cfe8eb;filter:drop-shadow(0 0 1.5px #8fbcc3)}.hx-awning{fill:#f4f0e8}.hx-awning-alt{fill:#3f7d88}.hx-label-glow{fill:#6fa3ac}.hx-tape{fill:#d6cebd}.hx-contact{fill:#2b3a3c;opacity:.28;filter:blur(3px)}.hx-slab-shadow{fill:#000;opacity:.55}.hx-slab-rim{fill:none;stroke:#fff;stroke-opacity:.6;stroke-width:1.2px;vector-effect:non-scaling-stroke}.hx-engrave,.hx-engrave-shade{font-family:var(--font-sans), sans-serif;letter-spacing:.34em;font-size:66px;font-weight:600}.hx-engrave{fill:#cbc4b5}.hx-engrave-shade{fill:#fff;opacity:.7}.hx-route-bed{fill:none;stroke:#9a9282;stroke-width:5px;stroke-linejoin:bevel}.hx-route-edge{fill:none;stroke:#e7e2d7;stroke-width:3px;stroke-linejoin:bevel}.hx-signal{fill:none;stroke:#3f7d88;stroke-width:2px;stroke-linecap:square;stroke-dasharray:.06 .94;opacity:0}.hx-tag rect{fill:#f7f4ee;stroke:#cfc8b8;stroke-width:.6px;filter:drop-shadow(0 3px 5px #0b1d2266)}.hx-tag circle{fill:#3f7d88}.hx-tag text{fill:#2f3d44;font:500 10px var(--font-sans), sans-serif;letter-spacing:.03em}.hx-tag[data-hub] rect{fill:#1f5a66;stroke:#8fbcc3}.hx-tag[data-hub] circle{fill:#cfe8eb}.hx-tag[data-hub] text{fill:#f2f6f6;font-weight:600}.hx-float-shadow{fill:#000;opacity:.4;filter:blur(10px)}.hx-plinth-led{fill:none;stroke:#cfe8eb;stroke-width:1.2px;filter:drop-shadow(0 0 3px #8fbcc3)}.hx-origin{fill:#a3b3b4;font:600 9px var(--font-sans), sans-serif;letter-spacing:.2em;text-transform:uppercase}.hx-pier-top{fill:#3b5c64}.hx-pier-side{fill:#1a3238}.hx-pier-front{fill:#24434b}.hx-pier-groove{fill:none;stroke:#8fbcc3;stroke-opacity:.55;stroke-width:1px;stroke-dasharray:3 4}.hx-port{fill:#e6f4f5;filter:drop-shadow(0 0 3px #8fbcc3)}.hx-port-glow{fill:#8fbcc3;opacity:.28}.hx-shore-side{fill:#173238}.hx-shore-rim{fill:none;stroke:#8fbcc3;stroke-opacity:.5;stroke-width:.8px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.hx-shore-name,.hx-shore-name-shade{font-family:var(--font-sans), sans-serif;letter-spacing:.3em;font-size:46px;font-weight:600}.hx-shore-name{fill:#2f4f56}.hx-shore-name-shade{fill:#a9cdd2;opacity:.4}.sx-card-line{fill:none;stroke:#cfe8eb;stroke-width:1.1px;stroke-linecap:round}.sx-card-line[data-head]{stroke:#e6f4f5;stroke-width:2.2px}.sx-card-bullet{fill:#cfe8eb;opacity:.8}.sx-card-edge{fill:none;stroke:#e6f4f5;stroke-width:1.6px;filter:drop-shadow(0 0 4px #8fbcc3)}.sx-scanline{fill:none;stroke:#e6f4f5;stroke-width:2.4px;filter:drop-shadow(0 0 4px #8fbcc3)}.sx-sweep{opacity:0}.sx-dim{opacity:.34}.sx-ping{fill:none;stroke:#cfe8eb;stroke-width:1.2px;opacity:0;transform-box:fill-box;transform-origin:50%}.hx-match{fill:#8fbcc3;opacity:.3;filter:blur(2px)}.sx-sweep{animation:sx-sweep var(--period) linear var(--d) infinite}.sx-dim{animation:sx-dim .6s ease var(--d) backwards}.sx-ping{animation:sx-ping var(--period) ease-out var(--d) infinite}.sx-lift{animation:sx-lift .8s cubic-bezier(.2, .85, .25, 1) var(--d) backwards}@keyframes sx-sweep{0%{opacity:0;transform:translate(0)}4%,36%{opacity:1}40%,to{opacity:0;transform:translate(var(--tx), var(--ty))}}@keyframes sx-dim{0%{opacity:1}}@keyframes sx-ping{0%{opacity:.9;transform:scale(.5)}14%,to{opacity:0;transform:scale(1.7)}}@keyframes sx-lift{0%{transform:translateY(var(--drop))}}.sp-shadow{fill:#000;opacity:.3;filter:blur(8px)}.sp-side{fill:url(#sp-steel-side)}.sp-top{fill:url(#sp-steel-top)}.sp-face{fill:url(#sp-steel-face)}.sp-edge{fill:none;stroke:#121a1e;stroke-opacity:.55;stroke-width:.8px;stroke-linejoin:round}.sp-shine{fill:none;stroke:#eef3f4;stroke-opacity:.5;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.sp-glint{fill:none;stroke:#fff;stroke-width:2px;stroke-linecap:round;stroke-dasharray:.05 .95;filter:drop-shadow(0 0 3px #fffa);opacity:0;animation:sp-glint var(--period) linear var(--glint) infinite}.sp-island-side{fill:url(#hx-slab-side)}.sp-island-top{fill:url(#hx-slab-top);filter:url(#hx-grain)}.sp-island-rim{fill:none;stroke:#fff;stroke-opacity:.6;stroke-width:1px}.sp-island-glow{fill:#8fbcc3;opacity:.16;filter:blur(10px)}.sp-rise{animation:sp-rise .6s cubic-bezier(.2, .8, .3, 1) var(--d) backwards}.sp-drop{animation:sp-drop .5s cubic-bezier(.3, 1.3, .5, 1) var(--d) backwards}.sp-icon{transform-box:fill-box;transform-origin:50% 100%;animation:hx-pop .5s cubic-bezier(.3, 1.4, .5, 1) var(--m) backwards}@keyframes sp-rise{0%{opacity:0;transform:translateY(14px)}}@keyframes sp-drop{0%{opacity:0;transform:translateY(-30px)}50%{opacity:1}}@keyframes sp-glint{0%{opacity:0;stroke-dashoffset:.05px}4%{opacity:1}22%{opacity:1;stroke-dashoffset:-.95px}25%,to{opacity:0;stroke-dashoffset:-.95px}}.hx-tag.sp-label text{font:600 14px var(--font-sans), sans-serif;letter-spacing:.04em}.hx-gate-light{fill:none;stroke:#e6f4f5;stroke-width:1.6px;filter:drop-shadow(0 0 4px #8fbcc3)}.hx-gate-beam{opacity:.7}.hx-travel{opacity:0;transform:translate(var(--ax), var(--ay));animation:hx-travel var(--hx-travel,3.9s) linear infinite}.hx-rise,.hx-pop{transform-box:fill-box;transform-origin:50% 100%}.hx-slab{animation:hx-slab .9s cubic-bezier(.2, .7, .2, 1) calc(50ms + var(--hx-lead,0s)) backwards}.hx-fade{animation:hx-fade .7s ease calc(var(--d) + var(--hx-lead,0s)) backwards}.hx-rise{animation:hx-rise .75s cubic-bezier(.2, .85, .25, 1) calc(var(--d) + var(--hx-lead,0s)) backwards}.hx-pop{animation:hx-pop .5s cubic-bezier(.3, 1.4, .5, 1) calc(var(--d) + var(--hx-lead,0s)) backwards}.hx-tag{animation:hx-fade .6s ease calc(var(--d) + var(--hx-lead,0s)) backwards}.hx-tag circle{animation:hx-light 4.4s ease-in-out calc(var(--d) + .6s + var(--hx-lead,0s)) infinite}.hx-route-bed,.hx-route-edge{stroke-dasharray:1;animation:hx-draw .8s cubic-bezier(.4, 0, .2, 1) calc(var(--d) + var(--hx-lead,0s)) backwards}.hx-signal{animation:4.2s linear infinite hx-signal}.hx-gate-beam{animation:hx-beam var(--hx-travel,3.9s) ease-in-out calc(1.6s + var(--hx-lead,0s)) infinite}@keyframes hx-slab{0%{opacity:0;transform:translateY(18px)}}@keyframes hx-fade{0%{opacity:0}}@keyframes hx-rise{0%{opacity:0;transform:scaleY(0)}30%{opacity:1}}@keyframes hx-pop{0%{opacity:0;transform:scale(.3)}}@keyframes hx-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes hx-signal{0%{opacity:1;stroke-dashoffset:.06px}to{opacity:1;stroke-dashoffset:-.94px}}@keyframes hx-light{0%,to{opacity:.4}50%{opacity:1}}@keyframes hx-travel{0%{opacity:0;transform:translate(var(--ax), var(--ay))}10%{opacity:1}82%{opacity:1}to{opacity:0;transform:translate(var(--bx), var(--by))}}@keyframes hx-beam{0%,to{opacity:.45}85%{opacity:1}}.svc-hero-media:has(>[data-arrived]){animation:none}:is(.svc-hero-scene,.service-card-scene)[data-arrived] :is(.hx-slab,.hx-fade,.hx-rise,.hx-pop,.hx-tag,.hx-route-bed,.hx-route-edge,.sx-dim,.sx-lift,.sp-rise,.sp-drop,.sp-icon){animation:none}::view-transition-group(.scene-morph){animation-duration:.75s;animation-timing-function:cubic-bezier(.3,.7,.15,1)}::view-transition-image-pair(.scene-morph){animation:.75s both scene-morph-soften}::view-transition-old(.scene-morph){animation:.5s both scene-morph-out}::view-transition-new(.scene-morph){animation:.75s both scene-morph-in}@media (max-width:760px){:is(.service-card-scene,.svc-hero-scene) *{view-transition-name:none!important}}@keyframes scene-morph-soften{40%{filter:blur(2px)}}@keyframes scene-morph-out{to{opacity:0}}@keyframes scene-morph-in{0%{opacity:0}30%{opacity:.4}}@media (prefers-reduced-motion:reduce){::view-transition-group(.scene-morph){animation-duration:0s!important;animation-delay:0s!important}::view-transition-image-pair(.scene-morph){animation-duration:0s!important;animation-delay:0s!important}::view-transition-old(.scene-morph){animation-duration:0s!important;animation-delay:0s!important}::view-transition-new(.scene-morph){animation-duration:0s!important;animation-delay:0s!important}}
