/* Shared reading layout for service and solution detail pages. */
.detail-page{background:#fafaf8;color:#202421}
.detail-page .pageNavigate{max-width:1280px;padding:0 48px;margin:126px auto 0;gap:10px;align-items:center}
.detail-page .pageNavigate a,.detail-page .pageNavigate span{font-size:13px;line-height:1.5;color:#71766f}
.detail-page .serviceInside-hero{max-width:1280px;padding:0 48px;margin:44px auto 0}
.detail-page .backToPage{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #dedfd8;border-radius:50%;background:white;transition:background .2s}
.detail-page .backToPage:hover{background:#f3bb26}
.detail-page .backToPage svg{width:25px;height:25px}
.detail-eyebrow{display:inline-flex;align-items:center;gap:10px;margin-left:16px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#676d63;vertical-align:middle}
.detail-eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:#efb91f}
.detail-page .serviceInside-hero .title{max-width:1000px;margin:24px 0 20px;font-size:clamp(38px,5.3vw,66px);font-weight:800;line-height:1.1;letter-spacing:-.035em;overflow-wrap:break-word}
.detail-page .detail-hero-lead{max-width:790px;margin:0!important;font-size:20px;line-height:1.7;color:#636b62;letter-spacing:-.01em}
.detail-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:28px}
.detail-action{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:13px 23px;border:1px solid #dedfd8;border-radius:12px;font-size:15px;font-weight:800;line-height:1.4;color:#202421;background:#fff}
.detail-action--primary{background:#f3bb26;border-color:#f3bb26}
.detail-action:hover{background:#ebeadf}
.detail-action--primary:hover{background:#e7ae0c}
.detail-page .serviceInside-body{display:grid;grid-template-columns:260px minmax(0,1fr);align-items:start;gap:56px;max-width:1280px;padding:48px 48px 0;margin:48px auto 0;border-top:1px solid #e0e3d9}
.detail-page .serviceInside-body .serviceInside-category{width:auto;min-width:0;position:sticky;top:116px;max-height:calc(100vh - 140px);overflow:auto;scrollbar-width:thin;border:1px solid #e0e3d9;border-radius:18px;background:#fff;padding:22px 16px}
.detail-page .detail-sidebar-label{margin:0 12px 18px!important;font-size:11px;line-height:1.5;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#777e72}
.detail-page .serviceInside-body .serviceInside-category-items{gap:5px;padding-bottom:20px;border-color:#eaede5}
.detail-page .serviceInside-body .serviceInside-category .websiteDev-category{width:100%;padding:11px 12px;border-radius:10px;font-size:14px;font-weight:600;line-height:1.5;gap:11px;color:#596052}
.detail-page .serviceInside-body .serviceInside-category .websiteDev-category img{width:23px!important;height:23px!important;flex-shrink:0;object-fit:contain}
.detail-page .serviceInside-body .serviceInside-category .websiteDev-category:hover{background:#f5f6f0}
.detail-page .serviceInside-body .serviceInside-category .websiteDev-category.active{background:#fff4cd;color:#22281f;font-weight:800}
.detail-page .service-cta-buttons{margin-top:20px;gap:9px}
.detail-page .service-cta-buttons .cta-button{padding:12px 16px;border-radius:10px;min-height:44px;font-size:14px;line-height:1.4}
.detail-page .serviceInside-body .serviceInside-main{min-width:0;width:100%;max-width:100%;padding:0 0 16px}
.detail-page .serviceInside-main p,.detail-page .serviceInside-main li{line-height:1.8}
.detail-page .serviceInside-main h2{font-size:27px!important;line-height:1.3!important;font-weight:800!important;letter-spacing:-.02em;margin-left:0!important;overflow-wrap:break-word}
.detail-page .serviceInside-main h3{line-height:1.4!important;overflow-wrap:break-word}
.detail-page .serviceInside-main>section{margin-top:48px!important;padding-top:32px!important}
.detail-page .serviceInside-main>section>h2{margin-bottom:22px!important}
.detail-page .serviceInside-body .serviceInside-main .serviceInsideEntry-text{font-size:17px;line-height:1.85;color:#41493f;overflow-wrap:break-word}
.detail-page .serviceInside-main .serviceInsideEntry-text p{font-size:17px!important;line-height:1.85!important;font-weight:400;margin:0 0 20px!important;color:#41493f!important;text-align:left!important}
.detail-page .serviceInside-main .serviceInsideEntry-text span{font-size:inherit!important;line-height:inherit!important;color:inherit!important;letter-spacing:normal!important}
.detail-page .serviceInside-main .serviceInsideEntry-text strong,.detail-page .serviceInside-main .serviceInsideEntry-text b{font-weight:800!important;color:#20281e}
.detail-page .serviceInside-main .serviceInsideEntry-text h2{font-size:28px!important;line-height:1.3!important;font-weight:800!important;margin:44px 0 18px!important;color:#20281e!important}
.detail-page .serviceInside-main .serviceInsideEntry-text>h2:first-child{margin-top:0!important}
.detail-page .serviceInside-main .serviceInsideEntry-text h3{font-size:21px!important;line-height:1.4!important;font-weight:800!important;margin:30px 0 14px!important;color:#20281e!important}
.detail-page .serviceInside-main .serviceInsideEntry-text h4{font-size:18px!important;line-height:1.5!important;margin:24px 0 12px!important;font-weight:800!important}
.detail-page .serviceInside-main .serviceInsideEntry-text h2 span,.detail-page .serviceInside-main .serviceInsideEntry-text h3 span{font-weight:inherit!important}
.detail-page .serviceInside-main .serviceInsideEntry-text ul,.detail-page .serviceInside-main .serviceInsideEntry-text ol{padding:0 0 0 23px!important;margin:18px 0 28px!important;display:block!important}
.detail-page .serviceInside-main .serviceInsideEntry-text ul{list-style:disc!important}
.detail-page .serviceInside-main .serviceInsideEntry-text ol{list-style:decimal!important}
.detail-page .serviceInside-main .serviceInsideEntry-text li{font-size:17px!important;line-height:1.8!important;margin:9px 0!important;padding-left:5px;color:#41493f}
.detail-page .serviceInside-main .serviceInsideEntry-text li p{margin-bottom:8px!important}
.detail-page .serviceInside-main .serviceInsideEntry-text li::marker{color:#a87b09;font-weight:800}
.detail-page .serviceInside-main .serviceInsideEntry-text a{color:#765900!important;text-decoration:underline!important;text-underline-offset:4px;font-weight:700}
.detail-page .serviceInside-main .serviceInsideEntry-text img{display:block;width:100%!important;max-width:100%!important;height:auto!important;margin:28px auto!important;border-radius:14px;border:1px solid #e3e6dc;background:#fff;object-fit:contain}
.detail-page .serviceInside-main .serviceInsideEntry-text iframe{display:block;width:100%!important;max-width:100%!important;aspect-ratio:16/9;height:auto!important;border:0;border-radius:14px;margin:28px 0}
.detail-page .serviceInside-main .serviceInsideEntry-text blockquote{border-left:3px solid #f3bb26;padding:16px 24px;margin:24px 0;background:#fff5d5;border-radius:0 12px 12px 0}
.detail-page .serviceInside-main .serviceInsideEntry-text table{border-collapse:collapse;margin:24px 0;width:100%;font-size:15px}
.detail-page .serviceInside-main .serviceInsideEntry-text th,.detail-page .serviceInside-main .serviceInsideEntry-text td{padding:14px;border:1px solid #e1e5d9;line-height:1.6;vertical-align:top}
.detail-page .serviceInside-main .serviceInsideEntry-text th{background:#f2f4eb}
.detail-page .serviceInside-main .serviceInsideEntry-text section[data-project-brief]{padding:28px!important;margin:36px 0!important;background:#fff;border:1px solid #e0e3d9;border-radius:16px}
.detail-page .serviceInside-main .serviceInsideEntry-text section[data-project-brief]>h2:first-child{margin-top:0!important}
.detail-toc{padding:20px 24px;background:#f1f3eb;border:1px solid #e1e5d7;border-radius:14px;margin:0 0 36px}
.detail-toc summary{font-size:14px;font-weight:800;line-height:1.6;cursor:pointer;color:#394231}
.detail-toc ol{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;padding:18px 0 0 18px!important;margin:0;list-style:decimal!important}
.detail-toc li{font-size:13px;line-height:1.6!important;margin:0;color:#5e6656;padding-left:4px}
.detail-toc a{font-size:13px;font-weight:600;color:#424c39;line-height:1.6}
.detail-page [id^="detail-section-"]{scroll-margin-top:120px}
.detail-page .serviceInside-main .faq{gap:12px;margin-top:40px}
.detail-page .serviceInside-main .faq-item{border:1px solid #e0e3d9;border-radius:14px;overflow:hidden;background:#fff}
.detail-page .serviceInside-main .faq .question{padding:20px 22px;gap:18px;background:#fff;border-radius:0;text-align:left}
.detail-page .serviceInside-main .faq .question p{font-size:16px!important;line-height:1.6!important;font-weight:700;width:auto!important;margin:0!important;color:#293124}
.detail-page .serviceInside-main .faq .question svg{flex:0 0 22px;width:22px;height:22px}
.detail-page .serviceInside-main .faq .answer{padding:0 22px 22px;background:#fff;font-size:16px!important;line-height:1.8!important;border-radius:0}
.detail-page .serviceInside-main .faq .answer p{font-size:16px!important;line-height:1.8!important;margin:0 0 14px!important}
.detail-page .serviceInside-main .faq .active{background:#fff!important}
.detail-page .related-service-link{border-radius:12px;padding:16px;background:#fff}
.detail-page .related-service-link span{font-size:14px!important;font-weight:700;line-height:1.6!important}
.detail-page :is(.svc-bottom-cta,.sol-bottom-cta){max-width:1184px!important;margin:64px auto 80px!important}
.detail-page :is(.svc-cta-grid,.sol-cta-grid){border-radius:20px!important}
.detail-page :is(.svc-cta-grid,.sol-cta-grid) h3{line-height:1.25!important}
.detail-page a:focus-visible,.detail-page button:focus-visible,.detail-page summary:focus-visible{outline:3px solid #d7a51d;outline-offset:4px}
@media(min-width:1600px){.detail-page .serviceInsideEntry-text{max-width:800px}}
@media(max-width:1100px){.detail-page .serviceInside-body{grid-template-columns:225px minmax(0,1fr);gap:36px}.detail-page .pageNavigate,.detail-page .serviceInside-hero,.detail-page .serviceInside-body{padding-left:32px;padding-right:32px}.detail-page :is(.svc-bottom-cta,.sol-bottom-cta){margin-left:32px!important;margin-right:32px!important}.detail-page .serviceInside-hero .title{font-size:52px}}
@media(max-width:800px){.detail-page .serviceInside-body{display:block;padding-top:32px;margin-top:36px}.detail-page .serviceInside-body .serviceInside-category{display:none}.detail-page .serviceInside-hero .title{font-size:44px}.detail-page .detail-hero-lead{font-size:18px}.detail-page .serviceInside-body .serviceInside-main .service-cta-buttons-mobile{display:none}.detail-page :is(.svc-cta-grid,.sol-cta-grid){grid-template-columns:1fr!important}.detail-page :is(.svc-cta-grid,.sol-cta-grid)>div{padding:32px!important}}
@media(max-width:540px){.detail-page .pageNavigate{margin-top:112px;gap:7px}.detail-page .pageNavigate,.detail-page .serviceInside-hero,.detail-page .serviceInside-body{padding-left:20px;padding-right:20px}.detail-page .serviceInside-hero{margin-top:30px}.detail-page .serviceInside-hero .title{font-size:38px;line-height:1.12;letter-spacing:-.035em;margin-top:22px}.detail-page .detail-hero-lead{font-size:17px;line-height:1.75}.detail-hero-actions{gap:10px}.detail-action{font-size:14px;padding:12px 16px;min-height:46px}.detail-eyebrow{font-size:10px;margin-left:10px}.detail-page .serviceInside-main .serviceInsideEntry-text p,.detail-page .serviceInside-main .serviceInsideEntry-text li{font-size:16px!important;line-height:1.85!important}.detail-page .serviceInside-main .serviceInsideEntry-text h2{font-size:25px!important;margin-top:34px!important}.detail-page .serviceInside-main .serviceInsideEntry-text h3{font-size:20px!important}.detail-page .serviceInside-main .serviceInsideEntry-text section[data-project-brief]{padding:22px!important}.detail-toc{padding:17px 19px}.detail-toc ol{grid-template-columns:1fr}.detail-page .serviceInside-main>section{margin-top:36px!important;padding-top:26px!important}.detail-page .serviceInside-main .faq .question{padding:18px}.detail-page :is(.svc-bottom-cta,.sol-bottom-cta){margin:44px 20px 72px!important}.detail-page :is(.svc-cta-grid,.sol-cta-grid)>div{padding:28px 24px!important}}
@media(prefers-reduced-motion:reduce){.detail-page *{scroll-behavior:auto!important;transition:none!important}}

.detail-page :is(.svc-bottom-cta,.sol-bottom-cta){padding:0!important}
.detail-page #detail-content{scroll-margin-top:124px}
