:root{--brand:#3c50e0;--brand-hover:#2f42c7;--text:#20243b;--text-muted:#65697e;--surface:#fff;--surface-soft:#f7f8fd;--surface-brand:#eef0ff;--border:#d8dcea;--control-border:#777f94;--focus:#2437ad;--success:#1b683b;--danger:#94391f;--radius-control:8px;--radius-card:12px}
body{font-size:15px;line-height:1.6}
h1{font-size:clamp(32px,3.4vw,48px)}
h2{font-size:clamp(26px,2.5vw,36px)}
h3{font-size:21px}
.hero-copy h1{font-size:clamp(34px,3.4vw,48px)}
.hero-description,.section-description{font-size:15px;line-height:1.65}
.section{padding-block:64px}
.block-hero{padding-block:48px 56px}
.block-intro,.block-faq{padding-block:48px}
.block-pricing{padding-top:0}
.section-top{margin-bottom:30px}
.solution-card h3{font-size:22px}
.article-card h3{font-size:19px}
.article-detail header h1{font-size:clamp(30px,3vw,42px)}
.article-detail>header.readable{width:min(760px,calc(100% - 290px));margin-left:290px;margin-right:0}
.article-detail:has(>.article-main-image) .article-byline{margin-bottom:22px}
.article-detail>.article-main-image.readable{max-height:440px;margin-bottom:16px;object-fit:contain;object-position:left center}
.article-detail>.article-main-image+.article-reading-layout{margin-top:20px}
.article-lead{font-size:16px}
.prose{font-size:16px;line-height:1.75}
.prose h2{font-size:24px}
.prose h3{font-size:19px}
.pricing-grid h2{font-size:32px}
.cta-box{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:32px;padding:46px 50px;border:1px solid #394dc4;border-radius:22px;background:radial-gradient(circle at 92% 10%,#6979ed 0,transparent 34%),linear-gradient(115deg,#252d68 0%,#3448c2 100%);box-shadow:0 18px 45px #2635832e;color:#fff}
.cta-box::before{content:"";position:absolute;inset:0 0 0 45%;z-index:-1;background-image:radial-gradient(circle,#ffffff38 1px,transparent 1.5px);background-size:20px 20px;opacity:.65;mask-image:linear-gradient(90deg,transparent,#000)}
.cta-box::after{content:"";position:absolute;z-index:-1;width:360px;height:360px;right:-135px;top:-205px;border:1px solid #ffffff35;border-radius:50%;box-shadow:0 0 0 48px #ffffff0c,0 0 0 96px #ffffff08}
.cta-box h2{color:#fff;max-width:720px}
.cta-box p:not(.eyebrow){color:#e0e5ff;max-width:620px}
.cta-box .eyebrow{color:#fff;background:#ffffff21}
.cta-box .actions{margin:0;justify-content:flex-end}
.cta-box>.button{margin-top:0}
.cta-box .button{flex-shrink:0;background:#fff;border-color:#fff;color:#293dae;box-shadow:0 10px 24px #111a592d}
.cta-box .button:hover{background:#eef1ff;border-color:#eef1ff;color:#2436a3;box-shadow:0 14px 28px #111a5938}
.cta-box .button-outline{background:transparent;border-color:#ffffff9c;color:#fff;box-shadow:none}
.cta-box .button-outline:hover{background:#ffffff1c;border-color:#fff;color:#fff;box-shadow:none}
.hero-grid-no-art{grid-template-columns:1fr}
.hero-grid-no-art .hero-copy{max-width:780px}
.hero-art.has-upload{display:flex;align-items:center;justify-content:center;align-self:center;width:100%;max-width:none;min-height:0;padding:0;border:0;border-radius:0;background:transparent;overflow:visible}
.hero-art.has-upload .hero-upload{display:block;width:auto;height:auto;max-width:100%;max-height:min(70vh,640px);object-fit:contain;border-radius:8px}
.photo-card-flow.is-single,.flow-grid.is-single{grid-template-columns:1fr}
.pricing-grid.is-solo{grid-template-columns:1fr}
@media(max-width:800px){.cta-box{display:flex;flex-direction:column;align-items:flex-start;gap:22px;padding:36px}.cta-box .actions{margin:0;justify-content:flex-start}}
@media(max-width:480px){.cta-box{padding:30px 24px;border-radius:18px}.cta-box::before{inset:0 0 0 20%}.cta-box .actions{width:100%}.cta-box .button{min-height:44px}}
.contact-line{margin-top:20px}
.contact-line>span{margin-bottom:4px}
label{margin-bottom:12px}
input,textarea,select{font-size:14px;font-weight:400;padding:9px 11px;margin-top:5px}
input::placeholder,textarea::placeholder{font-weight:400}
.button,.button-small{font-size:13px;padding:10px 16px;gap:9px}
.button-small{padding:8px 13px}
.text-link{font-size:13px}
.breadcrumbs,.article-byline,.article-toc{font-size:13px}
.article-byline p{font-size:12px}
.article-toc strong{font-size:13px}
.article-card p{font-size:14px}
.article-meta{font-size:11px}
.article-card .text-link{font-size:13px}
.solution-card p,.step p,.values-grid p,.faq-list details p,.contact-line address{font-size:14px}
.footer-grid p:not(.eyebrow),.footer-grid>div>a:not(.footer-brand){font-size:13px}
.footer-brand{display:inline-flex;align-items:center}
.footer-brand img{width:auto;max-width:min(100%,180px);height:auto;max-height:70px;object-fit:contain;object-position:left center}
.footer-company-name{display:block;margin-top:14px;font-size:18px;font-weight:700;line-height:1.35;letter-spacing:-.025em}
.footer-bottom{font-size:12px}
.contact-line>span,.footer-grid .eyebrow{font-size:11px}
.product-point p,.check-list li{font-size:14px}
.article-grid>.empty-state{grid-column:1/-1}
.editorial-topic{display:flex;flex-direction:column;justify-content:space-between;gap:16px;padding:24px;background:#eef0ff;min-height:200px;color:var(--ink)}
.editorial-topic span{font-size:10px;color:var(--teal);letter-spacing:.05em}
.editorial-topic strong{font-size:22px;line-height:1.3;max-width:24ch}
.product-art{padding:28px;min-height:0;display:block}
.product-outline-logo{width:230px;max-width:100%;height:auto;margin-bottom:20px}
.product-outline{list-style:none;padding:0;margin:0;counter-reset:product}
.product-outline li{display:flex;gap:12px;align-items:baseline;padding:12px 0;border-bottom:1px solid #bfc5e2;font-size:14px;counter-increment:product}
.product-outline li:before{content:counter(product,decimal-leading-zero);font-size:11px;color:var(--teal);font-weight:700}
.product-art .illustration-note{display:block;margin-top:20px;font-size:11px}
.product-art>img:not(.product-outline-logo){width:100%;height:auto;object-fit:contain}
.product-slides{display:grid}
.product-slide{grid-area:1/1;display:grid;align-items:center;min-width:0;visibility:hidden;pointer-events:none}
.product-slide[data-active]{visibility:visible;pointer-events:auto}
.product-slide.is-entering .product-art{animation:product-media-in .55s cubic-bezier(.22,1,.36,1) both}
.product-slide.is-entering .product-grid>div:last-child{animation:product-copy-in .55s .08s cubic-bezier(.22,1,.36,1) both}
@keyframes product-media-in{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:translateX(0)}}
@keyframes product-copy-in{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}
.product-controls{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:18px}
.product-controls [data-product-position]{font-size:12px;color:var(--muted);overflow-wrap:anywhere;min-width:0;text-align:center}
.product-type-cover{min-height:220px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;overflow-wrap:anywhere}
.product-type-cover span{color:var(--teal);font-size:12px}
.product-type-cover strong{font-size:clamp(26px,3vw,36px);line-height:1.2}
.field-error{display:block;color:var(--danger);font-size:12px;margin-top:5px}
[aria-invalid="true"]{border-color:var(--danger)}
@media(prefers-reduced-motion:reduce){.product-slide.is-entering .product-art,.product-slide.is-entering .product-grid>div:last-child{animation:none}}
@media(max-width:1050px){.article-detail>header.readable{width:min(760px,calc(100% - 215px));margin-left:215px}}
@media(max-width:1050px) and (min-width:801px){.header-inner{gap:14px;flex-wrap:wrap;padding-block:10px}.site-header nav{flex-wrap:wrap;gap:12px}}
@media(max-width:800px){.article-detail>header.readable{width:100%;margin-inline:0}.section{padding-block:44px}.block-hero{padding-block:30px 40px}.block-pricing{padding-top:0}.hero-grid-photo{gap:24px}.hero-photo-stage{max-width:640px;padding:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:center}.collaboration-photo{width:100%;max-height:280px;object-fit:contain;filter:none}.photo-orbit{display:none}.photo-workflow-card{width:auto;margin:0;padding:16px;box-shadow:none}.photo-caption{position:static;grid-column:1/-1;margin:0;text-align:left;max-width:none}.photo-card-flow{grid-template-columns:1fr;gap:8px;margin-top:12px}.photo-card-plus,.photo-card-flow .flow-icon{display:none}.photo-card-flow small{font-size:10px;margin-top:0}.photo-card-flow strong{font-size:12px}.photo-card-result{font-size:11px;margin-top:12px}.hero-art{min-height:0;padding:20px}.site-footer{padding-bottom:96px}.floating-contact{bottom:12px;right:12px}body:has(input:focus,textarea:focus,select:focus) .floating-contact{display:none}}
@media(max-width:480px){h1,.hero-copy h1{font-size:32px}h2{font-size:27px}.article-detail header h1{font-size:30px}.hero-photo-stage{grid-template-columns:1fr}.collaboration-photo{max-height:190px}.photo-card-flow{grid-template-columns:1fr 1fr;gap:12px}.hero-photo-stage .photo-caption{display:none}.steps-grid{grid-template-columns:1fr}.step:not(:last-child):after{display:none}.flow-grid{grid-template-columns:1fr}.flow-result{flex-wrap:wrap}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{padding-bottom:0}.product-art{padding:20px}.article-filters label{min-width:0;flex-basis:100%}input,select,textarea{font-size:16px}}
.block-service_detail .service-detail-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.block-service_detail .service-detail-item{min-width:0;padding:25px;border:1px solid #dde2f0;border-radius:16px;background:#fff;box-shadow:0 8px 24px #2638610a}
.block-service_detail .service-detail-number{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#e9edff;color:#4054c5;font-size:12px;font-weight:700}
.block-service_detail .service-detail-item h3{font-size:20px;margin:20px 0 0}
.block-service_detail .service-detail-item p{font-size:14px;line-height:1.7;color:var(--muted);margin-top:9px}
.block-service_detail.detail-style-split{background:#f7f8fe}
.block-service_detail.detail-style-split .service-detail-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.block-service_detail.detail-style-split .service-detail-item{display:flex;align-items:flex-start;gap:17px;padding:22px;border-radius:11px;box-shadow:none}
.block-service_detail.detail-style-split .service-detail-item h3{margin:1px 0 0;font-size:18px}
.block-service_detail.detail-style-split .service-detail-number{flex:0 0 34px}
.block-service_detail.detail-style-timeline .service-detail-list{grid-template-columns:1fr;max-width:780px;gap:0}
.block-service_detail.detail-style-timeline .service-detail-item{display:flex;align-items:flex-start;gap:23px;border:0;border-left:2px solid #dce2fb;border-radius:0;padding:9px 0 27px 25px;box-shadow:none}
.block-service_detail.detail-style-timeline .service-detail-item:last-child{border-left-color:transparent}
.block-service_detail.detail-style-timeline .service-detail-number{flex:0 0 38px;width:38px;height:38px;margin-left:-45px;border-radius:50%;background:#3c50e0;color:#fff}
.block-service_detail.detail-style-timeline .service-detail-item h3{margin:3px 0 0;font-size:19px}
.block-service_detail .service-detail-media{margin:0;overflow:hidden;border:0;background:transparent}
.block-service_detail .service-detail-media img{display:block;width:100%;height:160px;object-fit:cover;border-radius:8px}
.block-service_detail .service-detail-media.is-vector img{object-fit:contain;padding:0}
.block-service_detail.detail-style-cards .service-detail-item.has-media{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:16px;padding:12px}
.block-service_detail.detail-style-cards .service-detail-media{width:96px;height:96px;margin:0}
.block-service_detail.detail-style-cards .service-detail-media img{width:100%;height:100%;object-fit:cover}
.block-service_detail.detail-style-cards .has-media .service-detail-copy{min-width:0;overflow-wrap:anywhere}
.block-service_detail.detail-style-cards .has-media h3{margin-top:0}
.block-service_detail.detail-style-split .service-detail-item.has-media{display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;align-items:start}
.block-service_detail.detail-style-split .service-detail-media{grid-column:1;grid-row:1}
.block-service_detail.detail-style-split .service-detail-media img{height:96px}
.block-service_detail.detail-style-split .has-media .service-detail-copy{grid-column:2;grid-row:1}
.block-service_detail.detail-style-timeline .service-detail-item.has-media{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:20px}
.block-service_detail.detail-style-timeline .has-media .service-detail-copy{grid-column:1;grid-row:1}
.block-service_detail.detail-style-timeline .service-detail-media{grid-column:2;grid-row:1}
.block-service_detail.detail-style-timeline .service-detail-media img{height:112px}
@media(max-width:800px){.block-service_detail .service-detail-list{grid-template-columns:1fr 1fr}.block-service_detail.detail-style-split .service-detail-list{grid-template-columns:1fr}}
@media(max-width:560px){.block-service_detail .service-detail-list{grid-template-columns:1fr}.block-service_detail .service-detail-item{padding:20px}.block-service_detail.detail-style-timeline .service-detail-item{padding-left:25px}.block-service_detail.detail-style-timeline .service-detail-item.has-media{grid-template-columns:minmax(0,1fr)}.block-service_detail.detail-style-timeline .service-detail-media{grid-column:1;grid-row:2}.block-service_detail.detail-style-timeline .service-detail-media img{height:150px}}
@media(max-width:380px){.block-service_detail.detail-style-cards .service-detail-item.has-media{grid-template-columns:80px minmax(0,1fr);gap:12px;padding:12px}.block-service_detail.detail-style-cards .service-detail-media{width:80px;height:80px}}
.section-admin-tools{display:flex;justify-content:flex-end;margin:0 0 10px}
.section-admin-tools a{display:inline-flex;align-items:center;min-height:32px;padding:5px 10px;border:1px solid #d7def6;border-radius:7px;background:#eef1ff;color:#3044ae;font-size:12px;font-weight:600;line-height:1.35}
.section-admin-tools a:hover{background:#dfe6ff;color:#243793}
.section-admin-tools a:focus-visible{outline:2px solid #3044ae;outline-offset:2px}
.solution-icon .card-icon-svg{display:block;width:30px;height:30px}
@media(min-width:801px){.hero-photo-stage{padding-bottom:20px}}
.contact-card [aria-invalid="true"]{border-color:#b54c35;box-shadow:0 0 0 2px #b54c3522}
.contact-card .field-error{font-size:12px;font-weight:500;line-height:1.4}
.contact-card button[type="submit"]:disabled{opacity:.7;cursor:wait}
body:not(.admin-body) a,body:not(.admin-body) a:hover{text-decoration:none}
body:not(.admin-body) a.text-link{border-bottom:0;padding-bottom:0;gap:7px}
.site-header nav>a.button:hover,.site-header nav>a.button:focus-visible{color:#fff}
