/* Service pages: native blocks with service-specific content and visual hierarchy. */
.service-experience-page{--service-accent:#5368e8;--service-soft:#edf0ff}
.kind-maintenance{--service-accent:#4a9d89;--service-soft:#e6f4ee}
.kind-local{--service-accent:#548e83;--service-soft:#e8f2ed}
.kind-aio{--service-accent:#8e67cf;--service-soft:#f0e8fb}
.kind-maintenance .service-page-hero-rich{background:linear-gradient(120deg,#fff,#eef8f4)}
.kind-local .service-page-hero-rich{background:linear-gradient(120deg,#fff,#edf5f2)}
.kind-aio .service-page-hero-rich{background:linear-gradient(120deg,#fff,#f3edfc)}
.service-page-hero-rich{padding:37px 0 78px;overflow:hidden}
.service-breadcrumb{display:flex;flex-wrap:wrap;gap:11px;align-items:center;font-size:10px;color:#9097ab;margin-bottom:44px}
.service-breadcrumb a:hover{color:var(--blue)}
.service-breadcrumb span{color:#c1c7d8}
.service-hero-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:65px;align-items:center}
.service-hero-copy>.eyebrow{font-size:9px;line-height:1.7;letter-spacing:.13em;margin-bottom:22px}
.service-page-hero-rich h1{font-size:clamp(45px,4.7vw,65px);line-height:1.08;letter-spacing:-.055em;max-width:650px}
.service-page-hero-rich .service-page-intro{font-size:15px;line-height:1.9;margin-top:25px;max-width:550px}
.service-page-hero-rich .wp-block-buttons{margin-top:28px;gap:11px}
.service-page-hero-rich .wp-block-button__link{font-size:11px;gap:17px;padding:14px 17px}
.service-jump-nav{display:flex;gap:35px;align-items:center;flex-wrap:wrap;padding-block:23px;border-bottom:1px solid var(--line);font-size:11px;color:#778099}
.service-jump-nav>span{font-size:8px;color:#a0a8bc;letter-spacing:.1em;margin-right:auto}
.service-jump-nav a:hover{color:var(--blue)}
.service-introduction-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:100px;align-items:center}
.service-introduction-copy>.eyebrow{font-size:9px;color:#8c96b5;margin-bottom:21px}
.service-introduction-copy>h2{font-size:40px;margin-bottom:24px;max-width:600px}
.service-introduction-copy>p:not(.eyebrow){font-size:14px;line-height:1.95;color:#768096;max-width:610px}
.service-features{background:#f8f9fc;border-block:1px solid var(--line)}
.service-section-heading{margin-bottom:39px}
.service-section-heading>.eyebrow{font-size:9px;color:#8b95b3;margin-bottom:19px}
.service-section-heading>h2{font-size:43px;max-width:780px}
.service-process{background:#191e35;color:#fff;position:relative;overflow:hidden}
.service-process::after{content:"";position:absolute;width:500px;height:500px;border:1px solid #65719d22;border-radius:50%;right:-310px;bottom:-330px;pointer-events:none}
.service-process .service-section-heading>.eyebrow{color:#a1afd9}
.service-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}
.service-process-step{border-top:1px solid #3b435d;padding-top:25px}
.service-step-number{font-size:11px;color:#93a4e4;letter-spacing:.1em;margin-bottom:25px}
.service-process-step h3{font-size:22px;line-height:1.2;margin-bottom:16px;max-width:300px}
.service-process-step>p:last-child{color:#abb3cb;font-size:12px;line-height:1.95;max-width:330px}
.process-5{grid-template-columns:repeat(5,1fr);gap:25px}
.process-5 .service-process-step h3{font-size:19px}
.service-detail-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:start}
.service-detail-heading>.eyebrow{font-size:9px;color:#8b95b2;margin-bottom:21px}
.service-detail-heading h2{font-size:41px;line-height:1.15;margin-bottom:25px}
.service-detail-heading>p:last-child{font-size:14px;line-height:1.9;color:#7d879d;max-width:400px}
.service-detail-row{padding:0 0 26px;margin-bottom:26px;border-bottom:1px solid var(--line)}
.service-detail-row:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}
.service-detail-row h3{font-size:22px;margin-bottom:14px}
.service-detail-row p{font-size:13px;line-height:1.95;color:#7e899e}
.service-faq .faq-heading h2{font-size:41px}
.service-faq .faq-heading>.eyebrow{color:#929cb7}
.service-local-section{background:#f8f9fc;border-top:1px solid var(--line)}
.service-local-grid{display:grid;grid-template-columns:1fr 1fr;gap:115px;align-items:start}
.service-local-copy>.eyebrow,.service-related>.eyebrow{font-size:9px;color:#8c97b3;margin-bottom:22px}
.service-local-copy>h2{font-size:39px;margin-bottom:24px}
.service-local-copy>p:not(.eyebrow){font-size:14px;line-height:1.95;color:#7f899e}
.service-local-copy .text-link{margin-top:10px}
.service-related-row{padding:21px 0;border-bottom:1px solid var(--line)}
.service-related-row:first-of-type{padding-top:0}
.service-related-row h3{font-size:19px;letter-spacing:-.025em}
.service-related-row h3 a{display:flex;justify-content:space-between;gap:25px}
.service-related-row h3 span{color:#8d98b2;font-weight:400}
.service-related-row p{font-size:11px;color:#919aaf;margin-top:8px;line-height:1.7}
.service-cta-contact{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;font-size:11px;color:#7b86a1;margin-top:24px}
.service-cta-contact>span{color:#b6c0d9}
@media(max-width:1100px){
 .service-hero-grid{gap:40px;grid-template-columns:1.2fr 1fr}
 .service-page-hero-rich h1{font-size:53px}
 .service-page-hero-rich .wp-block-button__link{font-size:10px;gap:12px;padding:13px 15px}
 .service-introduction-grid,.service-detail-grid{gap:65px}
 .service-process-grid{gap:30px}
 .process-5{grid-template-columns:repeat(3,1fr);gap:35px}
 .service-local-grid{gap:75px}
}
@media(max-width:800px){
 .service-page-hero-rich{padding-bottom:65px}
 .service-breadcrumb{margin-bottom:35px}
 .service-hero-grid{gap:30px;grid-template-columns:1.1fr 1fr}
 .service-page-hero-rich h1{font-size:43px}
 .service-page-hero-rich .service-page-intro{font-size:13px;line-height:1.9}
 .service-hero-copy>.eyebrow{font-size:7px}
 .service-jump-nav{gap:20px;font-size:10px}
 .service-jump-nav>span{font-size:7px}
 .service-introduction-grid{grid-template-columns:1.3fr 1fr;gap:40px}
 .service-introduction-copy>h2{font-size:33px}
 .service-introduction-copy>p:not(.eyebrow){font-size:13px}
 .service-section-heading>h2{font-size:36px}
 .service-process-grid{gap:25px}
 .service-process-step h3{font-size:19px}
 .service-process-step>p:last-child{font-size:11px}
 .service-detail-grid{gap:40px}
 .service-detail-heading h2{font-size:34px}
 .service-detail-heading>p:last-child{font-size:13px}
 .service-detail-row h3{font-size:20px}
 .service-detail-row p{font-size:12px}
 .service-faq .faq-heading h2{font-size:33px}
 .service-local-grid{gap:50px}
 .service-local-copy>h2{font-size:33px}
 .service-local-copy>p:not(.eyebrow){font-size:13px}
 .service-related-row h3{font-size:17px}
}
@media(max-width:600px){
 .service-page-hero-rich{padding-top:25px;padding-bottom:50px}
 .service-breadcrumb{font-size:9px;gap:8px;margin-bottom:33px}
 .service-hero-grid{grid-template-columns:1fr;gap:39px}
 .service-hero-copy>.eyebrow{font-size:8px;margin-bottom:21px}
 .service-page-hero-rich h1{font-size:44px;line-height:1.08}
 .service-page-hero-rich .service-page-intro{font-size:14px;line-height:1.85;margin-top:24px}
 .service-page-hero-rich .wp-block-buttons{gap:10px}
 .service-page-hero-rich .wp-block-button__link{font-size:11px;padding:14px 15px;gap:12px}
 .service-jump-nav{gap:13px 23px;padding-block:22px;font-size:11px}
 .service-jump-nav>span{width:100%;font-size:8px}
 .service-introduction-grid{grid-template-columns:1fr;gap:35px}
 .service-introduction-copy>.eyebrow{font-size:8px}
 .service-introduction-copy>h2{font-size:33px}
 .service-introduction-copy>p:not(.eyebrow){font-size:14px}
 .service-section-heading{margin-bottom:30px}
 .service-section-heading>.eyebrow{font-size:8px}
 .service-section-heading>h2{font-size:34px}
 .service-process-grid,.process-5{grid-template-columns:1fr;gap:30px;margin-top:32px}
 .service-step-number{margin-bottom:20px}
 .service-process-step h3,.process-5 .service-process-step h3{font-size:23px}
 .service-process-step>p:last-child{font-size:13px;max-width:420px}
 .service-detail-grid{grid-template-columns:1fr;gap:35px}
 .service-detail-heading>.eyebrow{font-size:8px}
 .service-detail-heading h2{font-size:34px}
 .service-detail-heading>p:last-child{font-size:14px}
 .service-detail-row h3{font-size:23px}
 .service-detail-row p{font-size:13px}
 .service-faq .faq-heading h2{font-size:34px}
 .service-local-grid{grid-template-columns:1fr;gap:40px}
 .service-local-copy>.eyebrow,.service-related>.eyebrow{font-size:8px}
 .service-local-copy>h2{font-size:34px}
 .service-local-copy>p:not(.eyebrow){font-size:14px}
 .service-related-row h3{font-size:21px}
 .service-related-row p{font-size:12px}
 .service-cta-contact{font-size:11px;gap:10px}
}

/* Visual service direction: illustrations, diagrams, editorial text and timelines. */
.service-hero-grid{gap:48px;grid-template-columns:1.14fr 1fr}
.service-page-hero-rich{padding-bottom:65px}
.service-art-stage{position:relative;min-width:0;height:510px;display:flex;align-items:center;justify-content:center}
.service-hero-illustration{width:600px;max-width:124%;height:auto;flex-shrink:0;position:relative;z-index:1;animation:service-float 8s ease-in-out infinite}
.service-art-orbit{position:absolute;width:410px;height:280px;border:1px solid #b7c4e73b;border-radius:50%;transform:rotate(-24deg);left:10px;top:150px}
.service-design-art{position:relative;height:490px;min-width:0}
.service-design-window{display:block;position:absolute;left:-18px;top:84px;width:108%;border:6px solid white;border-radius:14px;overflow:hidden;transform:rotate(-5deg);box-shadow:0 28px 55px #4e61ac26;background:white}
.design-window-bar{height:25px;display:flex;align-items:center;gap:4px;padding:0 9px;color:#a1abc2;background:#fbfcff}
.design-window-bar>i{height:4px;width:4px;border-radius:50%;background:#d7ddec}
.design-window-bar>span{margin:auto;font-size:7px}
.design-window-bar>b{font-weight:400;font-size:11px}
.service-design-window>img{width:100%;height:auto}
.design-palette{position:absolute;right:-5px;bottom:35px;width:174px;padding:19px;border:1px solid white;border-radius:13px;background:#fffffff2;box-shadow:0 16px 45px #4c579723;transform:rotate(5deg);z-index:2}
.design-palette>strong{font-size:51px;font-weight:600;letter-spacing:-.07em;line-height:1;color:#0c2d47;display:block}
.design-palette>span{display:block;font-size:6px;letter-spacing:.12em;color:#98a0b0;margin-top:11px}
.design-palette>div{display:flex;gap:5px;margin-top:15px}
.design-palette i{width:25px;height:25px;border-radius:50%;background:#0b2b46}
.design-palette i:nth-child(2){background:#98b9e4}.design-palette i:nth-child(3){background:#f79129}.design-palette i:nth-child(4){background:#eaf2fa}
.design-work-label{position:absolute;bottom:19px;left:0;font-size:8px;letter-spacing:.11em;color:#8d98b8}
.service-introduction-grid{grid-template-columns:1fr 1.15fr;gap:100px;align-items:start}
.service-introduction-heading>.eyebrow{font-size:9px;letter-spacing:.1em;color:#8c97b2;margin-bottom:22px}
.service-introduction-heading>h2{font-size:40px;line-height:1.15;max-width:510px}
.service-introduction-copy{padding-top:5px}
.service-features{background:#fafbfe}
.service-capability-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:90px;align-items:center}
.service-capability-visual{position:relative;background:var(--service-soft);border-radius:24px;min-width:0;padding:18px 24px 30px;overflow:hidden}
.service-connection-visual{position:relative;height:330px;max-width:450px;margin:auto}
.connection-rings{position:absolute;left:50%;top:50%;width:260px;height:260px;border:1px solid #a9b9e45c;border-radius:50%;transform:translate(-50%,-50%)}
.connection-rings::before{content:"";position:absolute;inset:33px;border:1px dashed #9caed85f;border-radius:50%}
.connection-center{position:absolute;left:50%;top:50%;width:105px;height:105px;transform:translate(-50%,-50%) rotate(-7deg);border:1px solid #ffffffad;border-radius:27px;background:linear-gradient(135deg,#95a7f2,var(--service-accent));display:grid;place-items:center;box-shadow:12px 18px 30px #5769ae22;color:#fff}
.connection-center>svg{width:49px;height:49px;stroke-width:1.1}
.connection-node{position:absolute;background:#fffffff0;border:1px solid #fff;border-radius:9px;padding:11px 13px;color:#536384;font-size:10px;box-shadow:0 10px 20px #5c6f9b0c;max-width:165px;font-weight:550}
.connection-node>i{font-size:8px;color:#9caac8;font-style:normal;margin-right:9px}
.node-1{left:0;top:40px;transform:rotate(-4deg)}
.node-2{right:0;top:91px;transform:rotate(3deg)}
.node-3{left:0;bottom:69px;transform:rotate(2deg)}
.node-4{right:0;bottom:19px;transform:rotate(-3deg)}
.service-capability-visual>h3{font-size:27px;line-height:1.2;letter-spacing:-.04em;text-align:center;max-width:310px;margin:0 auto}
.service-capability-list{border-top:1px solid #dfe5f0}
.service-capability{padding:24px 0;border-bottom:1px solid #dfe5f0}
.service-capability>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:18px;padding-right:30px;position:relative;line-height:1.4}
.service-capability>summary::-webkit-details-marker{display:none}
.service-capability>summary::after{content:"+";position:absolute;right:2px;top:0;color:#8d99b8;font-size:20px;font-weight:300}
.service-capability[open]>summary::after{content:"−"}
.service-capability summary>strong{font-size:18px;font-weight:550;letter-spacing:-.025em}
.capability-number{font-size:10px;min-width:21px;color:#9aa6c7}
.service-capability>p{font-size:13px;line-height:1.95;color:#7c879e;padding-left:39px;margin-top:16px;max-width:550px}
.service-process-grid{position:relative;gap:45px}
.service-process-grid::before{content:"";position:absolute;height:1px;top:32px;left:32px;right:32px;background:linear-gradient(90deg,#6278bb,#6278bb30)}
.service-process-step{border:0;padding:0;position:relative}
.process-node{position:relative;width:65px;height:65px;display:grid;place-items:center;border-radius:50%;background:#252e4a;border:1px solid #596f9d;margin-bottom:28px;box-shadow:0 0 0 10px #191e35}
.process-node>span{font-size:15px;letter-spacing:-.04em;color:#b7c6ff}
.service-process-step h3{position:relative}
.process-light{background:var(--service-soft);color:var(--ink)}
.process-light::after{border-color:#a9b7e542}
.process-light .service-section-heading>.eyebrow{color:#8b98ba}
.process-light .process-node{background:var(--service-accent);border-color:#ffffffbd;box-shadow:0 0 0 10px var(--service-soft)}
.process-light .process-node>span{color:white}
.process-light .service-process-step>p:last-child{color:#7c87a0}
.process-light .service-process-grid::before{background:#bdc8e8}
.service-detail-grid{display:block}
.service-detail-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:18px 80px;align-items:end;margin-bottom:40px}
.service-detail-heading>.eyebrow{grid-column:1/-1;margin-bottom:0}
.service-detail-heading>h2{margin-bottom:0;font-size:40px;max-width:700px}
.service-detail-heading>p:last-child{margin:0;max-width:480px}
.service-detail-rows{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.service-detail-row{padding:30px;border:1px solid #e2e7f2;border-radius:16px;background:#fafbfe;margin:0}
.service-detail-row:last-child{border:1px solid #e2e7f2;padding:30px;margin:0}
.detail-symbol{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:13px;background:var(--service-soft);color:var(--service-accent);font-size:28px;margin-bottom:28px}
.service-detail-row>h3{font-size:23px;line-height:1.2}
.service-detail-row>p{font-size:12px;line-height:1.9}
.detail-hosting .service-detail-row{border:0;border-radius:0;border-top:3px solid #a8b8ed;background:#f3f5fc}
.detail-hosting .service-detail-row:nth-child(2){background:#eaeefe;border-color:#647ce5}
.detail-hosting .detail-symbol{background:white}
.detail-maintenance{background:#182d31;color:#fff}
.detail-maintenance .service-detail-heading h2{font-size:57px}
.detail-maintenance .service-detail-heading>.eyebrow{color:#8fbcb2}
.detail-maintenance .service-detail-heading>p:last-child{color:#a0bdb7}
.detail-maintenance .service-detail-row{background:#ffffff08;border-color:#ffffff1f}
.detail-maintenance .service-detail-row>p{color:#a4bfb8}
.detail-maintenance .detail-symbol{background:#3e7167;color:#c8f1df}
.detail-design .service-detail-row:nth-child(2){background:#f0edfc;transform:translateY(-8px)}
.detail-aio .service-detail-row:nth-child(1){background:#eaf2fc;transform:rotate(-2deg)}
.detail-aio .service-detail-row:nth-child(2){background:#f0e9fc;transform:translateY(-10px)}
.detail-aio .service-detail-row:nth-child(3){background:#f9f0e8;transform:rotate(2deg)}
.detail-consulting .service-detail-row:first-child{background:#4258ed;color:white;border-color:#4258ed}
.detail-consulting .service-detail-row:first-child>p{color:#d4dcff}
.detail-consulting .service-detail-row:first-child .detail-symbol{background:#ffffff20;color:white}
@keyframes service-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@media(max-width:1100px){
 .service-hero-grid{gap:30px}.service-art-stage{height:460px}
 .service-design-art{height:440px}.service-design-window{top:75px}.design-palette{bottom:40px;width:152px;padding:16px}
 .service-art-orbit{width:340px;left:-5px}.service-capability-layout{gap:50px}
 .service-introduction-grid{gap:65px}.service-detail-heading{gap:18px 50px}
 .service-detail-row,.service-detail-row:last-child{padding:25px}.service-detail-row>h3{font-size:21px}
 .process-5::before{display:none}
 .detail-maintenance .service-detail-heading h2{font-size:49px}
}
@media(max-width:800px){
 .service-art-stage{height:400px}.service-art-orbit{width:290px;height:230px;top:110px;left:0}
 .service-design-art{height:375px}.service-design-window{top:70px;left:-5px;width:108%;border-width:4px}
 .design-palette{width:128px;padding:13px;right:-10px;bottom:37px}.design-palette>strong{font-size:40px}.design-palette>span{font-size:5px}.design-palette i{width:21px;height:21px}.design-work-label{font-size:6px}
 .service-introduction-grid{gap:40px}.service-introduction-heading>h2{font-size:33px}
 .service-capability-layout{gap:30px;grid-template-columns:1fr 1.2fr}
 .service-capability-visual{padding:12px 18px 25px}.service-connection-visual{height:280px}
 .connection-rings{width:220px;height:220px}.connection-center{width:85px;height:85px;border-radius:22px}.connection-center>svg{width:42px;height:42px}
 .connection-node{padding:9px 10px;font-size:8px;max-width:140px}.connection-node>i{font-size:6px;margin-right:6px}
 .service-capability-visual>h3{font-size:23px}.service-capability summary>strong{font-size:15px}.service-capability{padding:21px 0}
 .service-capability>p{font-size:12px;padding-left:31px}.service-capability>summary{gap:10px}
 .service-detail-heading{gap:18px 35px}.service-detail-heading>h2{font-size:33px}
 .service-detail-rows{gap:15px}.service-detail-row,.service-detail-row:last-child{padding:22px}
 .service-detail-row>h3{font-size:20px}.service-detail-row>p{font-size:11px}
 .detail-maintenance .service-detail-heading h2{font-size:40px}
 .detail-symbol{width:42px;height:42px;font-size:25px}
}
@media(max-width:600px){
 .service-hero-grid{grid-template-columns:1fr;gap:12px}
 .service-art-stage{height:350px;max-width:420px;width:100%;margin:auto}
 .service-hero-illustration{width:410px;max-width:115%}
 .service-art-orbit{width:290px;height:220px;left:25px;top:90px}
 .service-page-hero-rich{padding-bottom:32px}
 .service-design-art{height:355px;margin-top:18px}
 .service-design-window{width:100%;left:0;top:45px;transform:rotate(-3deg)}
 .design-palette{width:135px;bottom:25px;right:5px;padding:14px}.design-work-label{bottom:7px;font-size:7px}
 .service-introduction-grid{grid-template-columns:1fr;gap:25px}
 .service-introduction-heading>.eyebrow{font-size:8px}.service-introduction-heading>h2{font-size:34px}.service-introduction-copy{padding-top:0}
 .service-capability-layout{grid-template-columns:1fr;gap:32px}
 .service-capability-visual{padding:15px 20px 29px}.service-connection-visual{height:295px}
 .connection-node{font-size:9px;max-width:155px}.connection-rings{width:240px;height:240px}
 .connection-center{width:95px;height:95px}.connection-center>svg{width:43px;height:43px}
 .service-capability-visual>h3{font-size:26px}.service-capability{padding:23px 0}
 .service-capability summary>strong{font-size:18px}.service-capability>summary{gap:13px}
 .service-capability>p{font-size:13px;padding-left:34px}
 .service-process-grid::before{top:32px;bottom:50px;left:31px;right:auto;width:1px;height:auto}
 .process-5::before{display:block}
 .service-process-step{padding-left:90px;min-height:95px}
 .process-node{position:absolute;left:0;top:0;width:63px;height:63px;margin:0}
 .service-process-step h3,.process-5 .service-process-step h3{font-size:21px;margin-top:7px}
 .service-process-step>p:last-child{font-size:12px}
 .service-detail-heading{display:block;margin-bottom:32px}
 .service-detail-heading>.eyebrow{margin-bottom:20px}.service-detail-heading>h2{font-size:34px;margin-bottom:22px}.service-detail-heading>p:last-child{font-size:14px}
 .service-detail-rows{grid-template-columns:1fr;gap:17px}
 .service-detail-row,.service-detail-row:last-child{padding:28px}.service-detail-row>h3{font-size:25px}.service-detail-row>p{font-size:13px}
 .detail-symbol{width:48px;height:48px;font-size:28px;margin-bottom:23px}
 .detail-design .service-detail-row:nth-child(2),.detail-aio .service-detail-row{transform:none!important}
 .detail-maintenance .service-detail-heading h2{font-size:44px}
}
@media(prefers-reduced-motion:reduce){.service-hero-illustration{animation:none}}
