/* Scoped to the logo page; original logo files and shared site styles are untouched. */
.lg-page { --lg-muted:#465c79; }
.lg-page .es-section { padding-block:72px; }
.lg-page .lg-section-head { max-width:880px; margin-bottom:32px; }
.lg-page .lg-section-head .es-intro { margin-top:18px; }
.lg-page .lg-heading-phrase { display:inline-block; max-width:100%; }
.lg-page .es-hero-grid { grid-template-columns:1.1fr 1fr; gap:60px; }
.lg-page .es-hero-art { max-width:520px; }
.lg-page .es-hero-art img { aspect-ratio:1; object-fit:contain; }
.lg-page .es-hero-art figcaption { font-size:16px; line-height:1.7; text-align:left; color:#bed1e9; }
.lg-page .lg-caption-phrase { display:inline-block; max-width:100%; }
.lg-page .es-demo { font-size:16px; }
.lg-page .es-hero h1 { font-size:clamp(35px,3.8vw,55px); }
.lg-page .es-hero-link { font-size:16px; }
.lg-page .button { color:#fff; background:linear-gradient(105deg,#7833a6,#454bc9 55%,#0759a2); }
.lg-page .es-page-nav > div { grid-template-columns:repeat(4,minmax(0,1fr)); }
.lg-page .es-page-nav a { font-size:16px; }
.lg-page .lg-support { padding-block:42px; }
.lg-page .lg-support .lg-section-head { margin-bottom:21px; }
.lg-page .lg-support h2 { font-size:clamp(24px,2.1vw,29px); }
.lg-page .lg-consult-reasons { display:grid; gap:10px; list-style:none; margin:0; padding:0; }
.lg-page .lg-consult-reasons li { display:flex; align-items:flex-start; gap:13px; font-size:17px; }
.lg-page .lg-consult-reasons .icon { color:#29579f; width:20px; height:20px; margin-top:6px; }
.lg-page .lg-works { background:#f8fafc; }
.lg-page .lg-featured-grid,.lg-page .lg-works-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.lg-page .lg-work { margin:0; min-width:0; }
.lg-page .lg-work-art { height:240px; display:flex; align-items:center; justify-content:center; padding:26px; background:#fff; border:1px solid #dbe4ef; border-radius:10px; }
.lg-page .lg-work-art img { display:block; width:auto; height:auto; max-width:100%; max-height:100%; object-fit:contain; }
.lg-page .lg-work figcaption { margin-top:17px; }
.lg-page .lg-work h3 { font-size:21px; line-height:1.6; margin:0; }
.lg-page .lg-work p { font-size:16px; color:var(--lg-muted); margin-top:10px; }
.lg-page .lg-work .lg-work-industry { color:#29579f; font-size:16px; margin:0 0 7px; }
.lg-page .lg-work .es-text-link { margin-top:12px; font-size:16px; gap:9px; }
.lg-page .lg-gallery { margin-top:32px; border-block:1px solid #cbd9e9; }
.lg-page .lg-gallery > summary { display:flex; align-items:center; gap:16px; min-height:64px; padding:18px 0; font-size:18px; font-weight:700; cursor:pointer; list-style:none; }
.lg-page .lg-gallery > summary::-webkit-details-marker { display:none; }
.lg-page .lg-gallery-count { font-size:16px; font-weight:400; color:var(--lg-muted); }
.lg-page .lg-gallery .es-disclosure { margin-left:auto; flex:none; }
.lg-page .lg-gallery[open] > summary .es-disclosure:after { display:none; }
.lg-page .lg-works-grid { padding:10px 0 28px; gap:28px; }
.lg-page .lg-works-grid .lg-work-art { height:180px; padding:22px; }
.lg-page .lg-works-grid .lg-work h3 { font-size:17px; }
.lg-page .lg-works-grid .lg-work figcaption { margin-top:12px; }
.lg-page .lg-points { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px; }
.lg-page .lg-points article { border-top:2px solid #8ca9cc; padding-top:21px; }
.lg-page .lg-points h3 { font-size:21px; margin:0 0 12px; line-height:1.65; }
.lg-page .lg-points p { font-size:16px; color:var(--lg-muted); }
.lg-page .lg-design-flow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; list-style:none; margin:28px 0 0; padding:0; }
.lg-page .lg-design-flow li { position:relative; display:grid; place-items:center; text-align:center; min-height:74px; padding:14px; font-size:16px; font-weight:600; line-height:1.6; border:1px solid #c5d5e9; border-radius:8px; background:#fff; }
.lg-page .lg-design-arrow { position:absolute; right:-28px; top:calc(50% - 11px); width:24px; height:24px; color:#476b9b; }
.lg-page .lg-design-arrow .icon { width:22px; height:22px; }
.lg-page .lg-usage-group { margin-top:35px; padding-top:28px; border-top:1px solid #d1deec; }
.lg-page .lg-own-logo { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.lg-page .lg-own-logo h3 { font-size:20px; line-height:1.65; margin:0; }
.lg-page .lg-own-logo > img { display:block; width:230px; max-width:100%; height:auto; object-fit:contain; }
.lg-page .lg-example-note { color:#526785; font-size:16px; margin-top:13px; }
.lg-page .lg-use-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; margin-top:24px; }
.lg-page .lg-use-example { margin:0; min-width:0; }
.lg-page .lg-use-example h4 { font-size:20px; line-height:1.6; margin:0 0 16px; }
.lg-page .lg-use-display { height:240px; display:flex; align-items:center; justify-content:center; padding:24px; background:#e6eef8; border-radius:10px; }
.lg-page .lg-web-frame { width:100%; max-width:450px; background:#fff; border:1px solid #acc3dc; border-radius:8px; overflow:hidden; }
.lg-page .lg-window-bar { display:flex; align-items:center; gap:6px; padding:10px 14px; background:#e1eaf4; }
.lg-page .lg-window-bar i { width:6px; height:6px; border-radius:50%; background:#91aac4; }
.lg-page .lg-web-content { padding:22px 24px; }
.lg-page .lg-web-header { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.lg-page .lg-web-header img { display:block; width:164px; max-width:68%; height:auto; object-fit:contain; }
.lg-page .lg-web-nav { height:4px; width:65px; background:#d4dfec; border-radius:3px; }
.lg-page .lg-web-body { display:grid; grid-template-columns:1.1fr .8fr; gap:24px; align-items:center; margin-top:30px; }
.lg-page .lg-layout-lines { display:grid; gap:9px; width:100%; }
.lg-page .lg-layout-lines i { height:6px; display:block; background:#d4dfec; border-radius:3px; }
.lg-page .lg-layout-lines i:last-child { width:70%; }
.lg-page .lg-web-picture { display:block; height:65px; background:#e8eff7; border-radius:5px; }
.lg-page .lg-card-frame { width:100%; max-width:330px; height:194px; display:flex; flex-direction:column; justify-content:center; gap:34px; padding:28px; background:#fff; border:1px solid #c2cfdf; box-shadow:0 7px 17px #243d6010; }
.lg-page .lg-card-frame img { display:block; width:200px; max-width:100%; height:auto; object-fit:contain; }
.lg-page .lg-card-frame .lg-layout-lines { max-width:130px; margin-left:auto; gap:7px; }
.lg-page .lg-card-frame .lg-layout-lines i { height:4px; }
.lg-page .lg-use-example figcaption { margin-top:17px; font-size:16px; color:var(--lg-muted); }
.lg-page .lg-use-example figcaption strong { display:block; color:#244f7c; margin-bottom:7px; font-size:17px; }
.lg-page .lg-use-example figcaption > span { display:block; }
.lg-page .lg-delivery-list { margin:0; }
.lg-page .lg-delivery-list > div { display:grid; grid-template-columns:230px 1fr; gap:32px; padding:23px 0; border-top:1px solid #d5dfed; }
.lg-page .lg-delivery-list > div:last-child { border-bottom:1px solid #d5dfed; }
.lg-page .lg-delivery-list dt { font-size:19px; font-weight:700; line-height:1.65; }
.lg-page .lg-delivery-list dd { margin:0; font-size:16px; color:var(--lg-muted); max-width:53em; }
.lg-page .lg-pricing-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; }
.lg-page .lg-pricing .lg-section-head { margin-bottom:0; }
.lg-page .lg-note { font-size:16px; color:#526785; margin-top:20px; }
.lg-page .lg-pricing .button { margin-top:25px; }
.lg-page .lg-estimate { border-top:2px solid #8ca9cc; padding-top:22px; }
.lg-page .lg-estimate h3 { font-size:20px; margin:0 0 20px; line-height:1.6; }
.lg-page .lg-estimate ul { list-style:none; margin:0; padding:0; display:grid; gap:16px; }
.lg-page .lg-estimate li { display:flex; align-items:flex-start; gap:12px; font-size:17px; }
.lg-page .lg-estimate .icon { color:#29579f; width:20px; height:20px; margin-top:6px; }
.lg-page .lg-process-list { list-style:none; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; margin:0; padding:0; }
.lg-page .lg-process-list > li { position:relative; min-width:0; padding:23px 22px; background:#f5f8fc; border-top:2px solid #7b9fc9; }
.lg-page .lg-step-top { display:flex; align-items:center; justify-content:space-between; gap:16px; color:#36669e; margin-bottom:18px; }
.lg-page .lg-step-number { font:500 28px/1.2 Arial,sans-serif; }
.lg-page .lg-step-top > .icon { width:29px; height:29px; }
.lg-page .lg-process-list h3 { font-size:20px; line-height:1.65; margin:0 0 13px; }
.lg-page .lg-step-company { font-size:16px; color:var(--lg-muted); }
.lg-page .lg-step-request { margin-top:20px; padding-top:16px; border-top:1px solid #d6e1ed; font-size:16px; color:var(--lg-muted); }
.lg-page .lg-step-request .lg-request-label { font-size:16px; font-weight:700; line-height:1.6; color:#244f7c; margin-bottom:7px; }
.lg-page .lg-flow-connector { position:absolute; right:-29px; top:45px; display:grid; place-items:center; width:25px; height:25px; color:#476b9b; }
.lg-page .lg-flow-connector .icon { width:23px; height:23px; }
.lg-page .lg-faq .es-faq { max-width:1050px; }
.lg-page .lg-related-grid { display:grid; grid-template-columns:1fr 1fr; gap:45px; }
.lg-page .lg-related-grid > article { padding-top:21px; border-top:1px solid #cbd9ed; }
.lg-page .lg-related-grid h3 { font-size:22px; margin:0 0 12px; line-height:1.65; }
.lg-page .lg-related-grid p { color:var(--lg-muted); font-size:16px; }
.lg-page .lg-related-grid .es-text-link { margin-top:12px; }
.lg-page .site-contact .site-contact-note { font-size:16px; }
.lg-page :is(.lg-points,.lg-pricing-grid,.lg-featured-grid,.lg-works-grid,.lg-related-grid,.lg-use-grid) > * { min-width:0; }

@media(max-width:1100px) {
  .lg-page .es-hero-grid { grid-template-columns:1.2fr 1fr; gap:32px; }
  .lg-page .es-hero h1 { font-size:40px; }
  .lg-page .lg-featured-grid { grid-template-columns:1fr; gap:28px; }
  .lg-page .lg-featured-grid .lg-work { display:grid; grid-template-columns:1fr 1.1fr; gap:28px; align-items:center; }
  .lg-page .lg-featured-grid .lg-work figcaption { margin:0; }
  .lg-page .lg-work-art { height:220px; }
  .lg-page .lg-points { gap:26px; }
  .lg-page .lg-points h3 { font-size:20px; }
  .lg-page .lg-pricing-grid { gap:32px; }
  .lg-page .lg-process-list { grid-template-columns:1fr; gap:43px; }
  .lg-page .lg-process-list > li { padding:23px 27px; }
  .lg-page .lg-flow-connector { top:auto; bottom:-35px; right:auto; left:calc(50% - 12px); transform:rotate(90deg); }
}
@media(max-width:800px) {
  .lg-page .es-section { padding-block:56px; }
  .lg-page .es-hero-grid { grid-template-columns:1fr; gap:28px; }
  .lg-page .es-hero-art { max-width:440px; justify-self:center; }
  .lg-page .lg-support { padding-block:32px; }
  .lg-page .lg-points,.lg-page .lg-pricing-grid,.lg-page .lg-use-grid { grid-template-columns:1fr; gap:26px; }
  .lg-page .lg-works-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lg-page .lg-design-flow { grid-template-columns:1fr; gap:28px; }
  .lg-page .lg-design-flow li { min-height:58px; padding:12px 18px; }
  .lg-page .lg-design-arrow { right:auto; left:calc(50% - 12px); top:auto; bottom:-26px; transform:rotate(90deg); }
  .lg-page .lg-own-logo { flex-direction:column; align-items:flex-start; gap:16px; }
  .lg-page .lg-delivery-list > div { grid-template-columns:1fr; gap:10px; padding-block:21px; }
  .lg-page .lg-pricing-grid { gap:30px; }
  .lg-page .lg-related-grid { grid-template-columns:1fr; gap:24px; }
}
@media(max-width:600px) {
  .lg-page .es-section { padding-block:46px; }
  .lg-page .es-breadcrumb { padding-bottom:21px; }
  .lg-page .es-service-name { font-size:17px; }
  .lg-page .es-hero h1 { font-size:clamp(29px,8vw,36px); }
  .lg-page .es-lead { font-size:16px; line-height:1.85; margin-top:18px!important; }
  .lg-page .es-hero-actions { margin-top:20px; }
  .lg-page .es-hero-art { max-width:320px; }
  .lg-page .es-hero-art figcaption { font-size:16px; }
  .lg-page .es-page-nav > div { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lg-page .es-page-nav a { min-height:56px; font-size:16px; }
  .lg-page .lg-support { padding-block:29px; }
  .lg-page .lg-support h2 { font-size:24px; }
  .lg-page .lg-consult-reasons li { font-size:16px; }
  .lg-page .lg-section-head { margin-bottom:26px; }
  .lg-page .lg-featured-grid .lg-work { display:block; }
  .lg-page .lg-featured-grid .lg-work figcaption { margin-top:18px; }
  .lg-page .lg-work-art { height:230px; padding:24px; }
  .lg-page .lg-work h3 { font-size:20px; }
  .lg-page .lg-works-grid { gap:24px 16px; }
  .lg-page .lg-works-grid .lg-work-art { height:145px; padding:14px; border-radius:6px; }
  .lg-page .lg-works-grid .lg-work h3 { font-size:16px; line-height:1.65; overflow-wrap:anywhere; }
  .lg-page .lg-works-grid .lg-work p { font-size:16px; }
  .lg-page .lg-gallery > summary { font-size:17px; gap:11px; }
  .lg-page .lg-gallery-count { font-size:16px; white-space:nowrap; }
  .lg-page .lg-points h3 { font-size:20px; }
  .lg-page .lg-use-example h4 { font-size:19px; }
  .lg-page .lg-use-display { height:220px; padding:18px; }
  .lg-page .lg-web-content { padding:22px 18px; }
  .lg-page .lg-web-body { gap:18px; }
  .lg-page .lg-card-frame { height:178px; padding:23px; }
  .lg-page .lg-process-list > li { padding:22px; }
  .lg-page .lg-step-request { margin-top:17px; }
  .lg-page .lg-pricing .button { width:100%; }
}
