/* Ecommerce-specific composition over the shared service page styles. */
.shop-service-page .web-hero{grid-template-columns:1fr 1.04fr;gap:0 35px}
.shop-service-page .web-hero h1{font-size:clamp(48px,5vw,72px)}
.shop-hero-art{position:relative;isolation:isolate;align-self:center;min-width:0;padding:8px 8px 64px 15px;margin:0}
.shop-hero-art:before{content:'';position:absolute;z-index:-1;inset:-35px -20px 15px;background:radial-gradient(ellipse at 55% 40%,#0886983b,transparent 68%);pointer-events:none}
.shop-project-window{border:1px solid #376978;border-radius:12px;overflow:hidden;background:#0c2633;box-shadow:0 24px 75px #0006;transform:rotate(-2deg);transition:transform .6s var(--ease)}
.shop-hero-art:hover .shop-project-window{transform:rotate(0)}
.shop-window-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 18px;color:#8fb2c2;font-size:8px;letter-spacing:.16em;background:#0b2331}
.shop-window-bar>[data-icon]{width:18px;height:18px;color:var(--cyan)}
.shop-window-dots{display:flex;gap:5px}.shop-window-dots i{display:block;width:5px;height:5px;border-radius:50%;background:#356277}.shop-window-dots i:first-child{background:#13dce2}
.shop-project-window>img{width:100%;aspect-ratio:1.25;object-fit:cover;object-position:50% 50%;filter:brightness(.83);border-block:1px solid #294957}
.shop-window-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;background:linear-gradient(100deg,#113947,#0a2331)}
.shop-window-caption strong{display:block;font-size:17px;letter-spacing:-.03em;line-height:1.4}.shop-window-caption div>span{font-size:10px;color:#9fbdcc}.shop-window-caption>a{display:grid;place-items:center;border:1px solid #417688;color:var(--cyan);height:32px;width:32px;border-radius:50%;font-size:20px}.shop-window-caption>a:hover{background:var(--cyan);color:var(--bg)}
.shop-hero-badge{position:absolute;bottom:29px;left:0;display:flex;align-items:center;gap:13px;border:1px solid #386f7c;border-radius:8px;background:#0d2b39f2;backdrop-filter:blur(16px);padding:14px 19px;box-shadow:0 10px 35px #0005;font-size:11px;color:#adc4d0;line-height:1.75}
.shop-hero-badge>[data-icon]{width:29px;height:29px;color:var(--cyan)}.shop-hero-badge strong{display:block;color:var(--text);font-size:12px}
.shop-platform-note{display:flex;align-items:center;gap:7px;justify-content:flex-end;margin-top:25px;font-size:9px;color:#91acbb;letter-spacing:.02em;padding-right:7px}.shop-platform-note>span{width:5px;height:5px;border-radius:50%;background:var(--cyan)}
.shop-connections{background:radial-gradient(ellipse at 100% 0%,#12445444,transparent 65%),#0b1e2a;border-block:1px solid #274451}
.shop-connections-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.shop-connections h2{font-size:38px;line-height:1.2}.shop-connections-inner>div>p:not(.eyebrow){font-size:14px;line-height:1.9;max-width:410px;margin-top:23px}.shop-connections .text-link{font-size:12px;margin-top:28px}
.shop-connection-list article{display:flex;align-items:flex-start;gap:22px;padding:25px 0;border-bottom:1px solid #294451}.shop-connection-list article:first-child{padding-top:0}.shop-connection-list article>[data-icon]{display:block;width:30px;height:30px;flex:0 0 30px;color:var(--cyan);margin-top:2px}.shop-connection-list h3{font-size:18px;letter-spacing:-.02em;margin-bottom:10px}.shop-connection-list p{font-size:13px;line-height:1.85}.shop-connection-list .shop-integration-note{font-size:11px!important;max-width:none!important;margin-top:18px!important;color:#7999ac}
.shop-service-page .web-work{background:var(--bg);border:0;border-bottom:1px solid #1e3644}
.shop-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px}.shop-projects .project-image{aspect-ratio:1.45}.shop-projects .project-image img{object-position:50% 46%}
.shop-case-visual{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:40px;text-align:left;width:100%;height:100%;background:radial-gradient(ellipse at 100% 0%,#1b637459,transparent 65%),#0d2636;overflow:hidden}
.shop-case-visual:after{content:'';position:absolute;z-index:-1;border:1px solid #3fe3e61c;width:370px;height:370px;border-radius:50%;right:-150px;bottom:-175px;box-shadow:0 0 0 25px #3fe3e605,0 0 0 50px #3fe3e604}
.shop-case-kicker{font-size:9px;letter-spacing:.18em;color:#82cdd0;margin-bottom:24px}.shop-case-name{font-size:clamp(32px,4.2vw,57px);font-weight:750;line-height:1;letter-spacing:-.05em}.shop-case-name>span:not(.accent){font-weight:400;color:#b7ccd9}.shop-case-line{height:2px;background:var(--cyan);width:39px;margin:24px 0 18px}.shop-case-description{font-size:13px;color:#a2bacb;line-height:1.8}.shop-case-icon{position:absolute;right:37px;bottom:41px;width:50px;height:50px;color:#56c8d260}
@media(min-width:1500px){.shop-service-page .web-hero h1{font-size:76px}.shop-hero-art{padding-bottom:70px}.shop-hero-badge{bottom:35px}}
@media(max-width:1100px){.shop-service-page .web-hero{gap:0 22px}.shop-service-page .web-hero h1{font-size:55px}.shop-hero-art{padding-left:5px}.shop-hero-badge{padding:12px 14px;left:-5px;bottom:20px}.shop-platform-note{font-size:8px;margin-top:23px}.shop-connections-inner{gap:40px}.shop-connections h2{font-size:33px}.shop-case-visual{padding:32px}}
@media(min-width:641px) and (max-width:850px){.shop-service-page .web-hero{grid-template-columns:1.05fr 1fr;gap:0 20px}.shop-service-page .web-hero h1{font-size:45px}.shop-service-page .web-hero .eyebrow{font-size:8px}.shop-hero-art{padding:5px 0 84px}.shop-window-bar{padding:10px 13px;font-size:7px;gap:9px}.shop-window-caption{padding:13px 14px}.shop-window-caption strong{font-size:14px}.shop-window-caption div>span{font-size:9px}.shop-window-caption>a{flex-shrink:0;width:27px;height:27px}.shop-hero-badge{bottom:29px;font-size:9px;left:0;gap:9px;padding:11px 13px}.shop-hero-badge strong{font-size:10px}.shop-hero-badge>[data-icon]{width:23px;height:23px}.shop-platform-note{position:absolute;bottom:4px;right:0;margin:0}.shop-connections h2{font-size:28px}.shop-connections-inner{gap:35px}.shop-connections-inner>div>p:not(.eyebrow){font-size:13px}.shop-connection-list p{font-size:12px}.shop-case-visual{padding:26px}.shop-case-kicker{font-size:7px;margin-bottom:18px}.shop-case-description{font-size:11px}.shop-case-icon{width:36px;height:36px;right:23px;bottom:32px}}
@media(max-width:640px){.shop-service-page .web-hero{gap:0;overflow:clip}.shop-service-page .web-hero h1{font-size:clamp(43px,11.9vw,65px)}.shop-service-page .web-hero .eyebrow{font-size:8px;letter-spacing:.12em}.shop-service-page .web-lead{font-size:17px}.shop-hero-art{align-self:stretch;margin:35px 0 0;padding:5px 7px 24px}.shop-project-window{transform:rotate(-1.5deg)}.shop-window-bar{padding:12px 14px}.shop-window-caption{padding:15px 16px}.shop-window-caption strong{font-size:16px}.shop-window-caption div>span{font-size:9px}.shop-hero-badge{position:relative;left:auto;bottom:auto;width:fit-content;margin-top:19px;padding:11px 13px;gap:11px;font-size:9px}.shop-hero-badge strong{font-size:11px}.shop-hero-badge>[data-icon]{width:25px;height:25px}.shop-platform-note{justify-content:flex-start;margin-top:13px;padding-left:3px;font-size:8px}.shop-connections-inner{display:block}.shop-connections h2{font-size:31px}.shop-connections-inner>div>p:not(.eyebrow){font-size:13px}.shop-connection-list{margin-top:35px}.shop-connection-list article{gap:18px;padding:22px 0}.shop-connection-list h3{font-size:17px}.shop-connection-list p{font-size:13px}.shop-connection-list article>[data-icon]{width:27px;height:27px;flex-basis:27px}.shop-projects{grid-template-columns:1fr;gap:29px}.shop-case-visual{padding:30px}.shop-case-name{font-size:44px}.shop-case-kicker{font-size:8px;margin-bottom:20px}.shop-case-line{margin:19px 0 14px}.shop-case-description{font-size:12px}.shop-case-icon{height:40px;width:40px;right:28px;bottom:36px}.shop-service-page .web-options .section-heading h2{font-size:30px}}
@media(max-width:360px){.shop-service-page .web-hero h1{font-size:40px}.shop-service-page .web-lead{font-size:15px}.shop-case-name{font-size:38px}.shop-case-visual{padding:25px}.shop-case-icon{right:20px}.shop-window-caption div>span{font-size:8px}}

