.content-shell.quote-shell { display: block; }
.quote-page { padding-top: 55px; }
.quote-shell .prose { max-width: none; }
.quote-shell .smdq { width: 100%; max-width: none; margin: 0; }
.primary-nav .menu-item-has-children { position: relative; }
.primary-nav .menu-item-has-children > a { display: flex; align-items: center; gap: 7px; }
.primary-nav .menu-item-has-children > a:after { content: ""; width: 6px; height: 6px; border-left: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(-45deg) translateY(-1px); transition: transform .2s ease; }
.primary-nav .sub-menu { position: absolute; z-index: 20; top: calc(100% - 2px); right: 0; display: block; width: 270px; margin: 0; padding: 9px; visibility: hidden; opacity: 0; transform: translateY(8px); background: #fff; border: 1px solid var(--line); border-radius: 13px; box-shadow: 0 22px 55px rgba(7,27,43,.16); list-style: none; transition: opacity .18s ease, transform .18s ease, visibility .18s; }
.primary-nav .menu-item-has-children:hover > .sub-menu,
.primary-nav .menu-item-has-children:focus-within > .sub-menu,
.primary-nav .menu-item-has-children.submenu-open > .sub-menu { visibility: visible; opacity: 1; transform: translateY(0); }
.primary-nav .sub-menu:before { content: ""; position: absolute; top: -6px; right: 28px; width: 11px; height: 11px; background: #fff; border-top: 1px solid var(--line); border-right: 1px solid var(--line); transform: rotate(-45deg); }
.primary-nav .sub-menu li + li { border-top: 1px solid #edf2f4; }
.primary-nav .sub-menu a { position: relative; padding: 11px 13px; color: var(--ink); border-radius: 8px; font-size: 12px; line-height: 1.7; }
.primary-nav .sub-menu a:hover,.primary-nav .sub-menu .current-menu-item > a { color: var(--blue); background: #eef8fc; }
.primary-nav .sub-menu .sub-menu { top: -9px; right: calc(100% + 8px); }
.primary-nav .sub-menu .sub-menu:before { top: 24px; right: -6px; border: 0; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.engineering-tools-empty { margin-top: 30px; padding: 26px; background: var(--cloud); border: 1px solid var(--line); border-radius: 13px; }
.engineering-tools-empty strong { display: block; margin-bottom: 7px; color: var(--navy); font-size: 18px; }
.engineering-tools-empty p { margin: 0; }
@media (max-width: 1080px) {
  .primary-nav .menu-item-has-children > a { justify-content: space-between; }
  .primary-nav .menu-item-has-children > a:after { margin-left: 7px; }
  .primary-nav .menu-item-has-children.submenu-open > a:after { transform: rotate(135deg) translateY(-1px); }
  .primary-nav .sub-menu,.primary-nav .sub-menu .sub-menu { position: static; display: none; width: auto; margin: 0 18px 5px 0; padding: 0 10px 0 0; visibility: visible; opacity: 1; transform: none; border: 0; border-right: 2px solid #dcecf2; border-radius: 0; box-shadow: none; transition: none; }
  .primary-nav .submenu-open > .sub-menu { display: block; }
  .primary-nav .sub-menu:before { display: none; }
  .primary-nav .sub-menu li + li { border: 0; }
}

/* Knowledge base */
.knowledge-archive-hero p{max-width:780px;margin-bottom:0;font-size:16px}.knowledge-archive{background:#f7fafb}.knowledge-categories{display:flex;flex-wrap:wrap;gap:9px;margin:-35px 0 34px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 35px rgba(7,27,43,.06)}.knowledge-categories a{padding:7px 13px;color:#4d626d;border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:700}.knowledge-categories a:hover,.knowledge-categories a.is-active{color:#fff;background:var(--blue);border-color:var(--blue)}.knowledge-grid .post-card{display:flex;flex-direction:column}.knowledge-grid .post-card-body{display:flex;flex:1;flex-direction:column}.knowledge-grid .post-card-body>p{flex:1}.post-meta{display:flex;justify-content:space-between;gap:12px;color:var(--blue);font-size:10px}.article-hero{padding-block:72px}.article-hero-inner{max-width:980px}.article-hero h1{max-width:960px;font-size:clamp(32px,4.2vw,52px)}.article-meta{display:flex;gap:26px;margin-top:20px;color:#a9c0cb;font-size:12px}.article-layout{display:grid;grid-template-columns:minmax(0,820px) 280px;justify-content:center;align-items:start;gap:55px}.article-prose{min-width:0;font-size:16px}.article-prose h2{margin:54px 0 18px;padding-top:12px;font-size:clamp(25px,3vw,32px)}.article-prose h3{margin:36px 0 12px;font-size:21px}.article-prose p,.article-prose li{color:#405662;line-height:2}.article-prose strong{color:var(--navy)}.article-cover-wrap{margin:0 0 42px}.article-cover{display:block;width:100%;margin:0;border:1px solid var(--line);border-radius:16px}.article-cover-wrap figcaption{padding:11px 4px 0;color:var(--muted);font-size:11px}.knowledge-summary{margin:0 0 35px;padding:22px 24px;color:#173b4c!important;background:#edf8fb;border-right:4px solid var(--cyan);border-radius:10px;font-size:17px}.article-prose ul,.article-prose ol{padding-right:25px}.article-prose li::marker{color:var(--blue);font-weight:800}.knowledge-checklist{padding:0!important;list-style:none}.knowledge-checklist li{position:relative;margin:8px 0;padding:12px 45px 12px 15px;background:#f6fafb;border:1px solid var(--line);border-radius:9px}.knowledge-checklist li:before{content:"✓";position:absolute;right:15px;top:11px;display:grid;place-items:center;width:21px;height:21px;color:#fff;background:var(--green);border-radius:50%;font-size:12px}.knowledge-table-wrap{max-width:100%;margin:25px 0;overflow-x:auto;border:1px solid var(--line);border-radius:10px;-webkit-overflow-scrolling:touch}.knowledge-table-wrap table{width:100%;min-width:590px;border-collapse:collapse;background:#fff;font-size:13px}.knowledge-table-wrap th,.knowledge-table-wrap td{padding:13px 15px;text-align:right;border-bottom:1px solid var(--line)}.knowledge-table-wrap th{color:var(--navy);background:#eef5f7}.knowledge-table-wrap tr:last-child td{border-bottom:0}.article-prose pre{direction:ltr;max-width:100%;padding:18px;overflow-x:auto;color:#d9edf5;background:#071b2b;border-radius:10px;text-align:left}.knowledge-cta{margin-top:55px;padding:28px;color:#fff;background:linear-gradient(120deg,var(--navy),#0b3d55);border-radius:15px}.knowledge-cta strong{color:#fff;font-size:21px}.knowledge-cta p{margin:6px 0 18px;color:#b9cbd4}.knowledge-cta a{display:inline-flex;padding:10px 18px;color:#fff;background:var(--blue);border-radius:8px;text-decoration:none;font-weight:800}.article-side{position:sticky;top:115px;display:grid;gap:15px}.article-side-card{display:grid;gap:10px;padding:22px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 12px 35px rgba(7,27,43,.06)}.article-side-card strong{color:var(--navy);font-size:17px}.article-side-card p{margin:0;color:var(--muted);font-size:12px}.article-side-card>a:not(.button){padding-top:8px;color:var(--blue);border-top:1px solid var(--line);font-size:12px;font-weight:700}
@media(max-width:900px){.article-layout{grid-template-columns:minmax(0,1fr);gap:35px}.article-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.knowledge-archive-hero p{font-size:14px}.knowledge-archive{padding-top:55px}.knowledge-categories{flex-wrap:nowrap;margin-top:-25px;overflow-x:auto;white-space:nowrap}.knowledge-grid{grid-template-columns:1fr}.post-image{height:205px}.post-card>div{padding:20px}.article-hero{padding-block:48px}.article-hero h1{font-size:30px}.article-meta{flex-direction:column;gap:3px}.article-content{padding-top:32px}.article-prose{font-size:15px}.article-prose h2{margin-top:42px;font-size:24px}.article-prose h3{font-size:19px}.knowledge-summary{padding:18px;font-size:15px}.article-side{grid-template-columns:1fr}.knowledge-cta{padding:22px}}

.confidence { background: #fff; }
.confidence-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.confidence-grid article { min-height: 245px; padding: 28px 24px; background: var(--cloud); border: 1px solid var(--line); border-radius: var(--radius); }
.confidence-grid article > span { color: var(--blue); font: 800 12px "Segoe UI", Arial, sans-serif; }
.confidence-grid h3 { margin: 24px 0 10px; color: var(--navy); font-size: 18px; line-height: 1.7; }
.confidence-grid p { margin: 0; color: var(--muted); font-size: 13px; }
.start-ready { background: var(--navy); color: #fff; }
.start-ready-grid { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 80px; }
.start-ready h2 { margin: 12px 0 18px; color: #fff; font-size: clamp(29px, 4vw, 44px); line-height: 1.5; }
.start-ready p { color: #adc0ca; }
.start-ready ul { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin: 0; padding: 0; list-style: none; }
.start-ready li { padding: 21px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.13); border-radius: 12px; }
.start-ready li b,.start-ready li span { display: block; }
.start-ready li b { margin-bottom: 7px; color: #fff; }
.start-ready li span { color: #a9bdc8; font-size: 12px; line-height: 1.8; }
@media (max-width: 900px) {
  .confidence-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .start-ready-grid { grid-template-columns: 1fr; gap: 35px; }
}
@media (max-width: 520px) {
  .confidence-grid,.start-ready ul { grid-template-columns: 1fr; }
  .confidence-grid article { min-height: auto; }
}

.service-page-hero p { max-width: 720px; margin: 10px 0 20px; color: #b6cbd5; }
.service-intro { display: grid; grid-template-columns: minmax(0,1fr) 330px; align-items: center; gap: 70px; }
.service-intro h2,.service-two-col h2 { margin: 12px 0 18px; color: var(--navy); font-size: clamp(29px,4vw,44px); line-height: 1.5; }
.service-intro p,.service-two-col p { color: var(--muted); }
.service-actions { display: flex; gap: 10px; margin-top: 28px; }
.service-summary { padding: 30px; color: #fff; background: var(--navy); border-radius: var(--radius); box-shadow: var(--shadow); }
.service-summary > b { display: block; margin-bottom: 14px; color: var(--cyan); font-size: 17px; }
.service-summary ul { margin: 0; padding: 0; list-style: none; }
.service-summary li { padding: 9px 0; color: #c0d0d8; border-bottom: 1px solid rgba(255,255,255,.1); }
.service-summary li:last-child { border: 0; }
.service-soft { background: var(--cloud); }
.service-feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.service-feature-grid article { min-height: 205px; padding: 27px; background: #fff; border: 1px solid var(--line); border-radius: 14px; }
.service-feature-grid h3 { margin: 0 0 10px; color: var(--navy); font-size: 18px; }
.service-feature-grid p { margin: 0; color: var(--muted); font-size: 13px; }
.service-steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 0; padding: 0; list-style: none; }
.service-steps li { display: flex; gap: 15px; padding: 26px 22px; border: 1px solid var(--line); border-left: 0; }
.service-steps li:last-child { border-left: 1px solid var(--line); border-radius: 12px 0 0 12px; }
.service-steps li:first-child { border-radius: 0 12px 12px 0; }
.service-steps li > span { display: grid; place-items: center; flex: 0 0 36px; height: 36px; color: #fff; background: var(--blue); border-radius: 50%; font-weight: 800; }
.service-steps h3 { margin: 3px 0 7px; color: var(--navy); font-size: 16px; }
.service-steps p { margin: 0; color: var(--muted); font-size: 12px; }
.service-dark { color: #fff; background: var(--navy); }
.service-dark .section-head h2,.service-dark .service-two-col h2 { color: #fff; }
.service-dark .section-head p { color: #a9bdc8; }
.service-two-col { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 75px; }
.service-two-col ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin: 0; padding: 0; list-style: none; }
.service-two-col li { padding: 15px 17px; color: #c4d4dc; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); border-radius: 10px; }
.service-two-col.light li { color: var(--ink); background: var(--cloud); border-color: var(--line); }
.version-chain { display: flex; justify-content: center; align-items: center; gap: 17px; direction: ltr; }
.version-chain span { min-width: 155px; padding: 19px; text-align: center; color: #fff; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.14); border-radius: 10px; font-weight: 800; }
.version-chain i { color: var(--cyan); font-style: normal; }
.version-note { max-width: 760px; margin: 26px auto 0; color: #a9bdc8; text-align: center; }
.quote-faq { max-width: 980px; margin: 70px auto 80px; padding: 55px 20px 0; border-top: 1px solid var(--line); }
.quote-faq h2 { margin-top: 12px; }
.quote-faq details { margin-bottom: 10px; background: #fff; border: 1px solid var(--line); border-radius: 11px; }
.quote-faq summary { position: relative; padding: 18px 22px 18px 55px; color: var(--navy); cursor: pointer; font-weight: 800; list-style: none; }
.quote-faq summary::-webkit-details-marker { display: none; }
.quote-faq summary:after { content: "+"; position: absolute; left: 20px; top: 14px; color: var(--blue); font: 400 25px/1.4 Arial,sans-serif; }
.quote-faq details[open] summary:after { content: "−"; }
.quote-faq details p { margin: 0; padding: 0 22px 20px; color: var(--muted); }
@media (max-width: 900px) {
  .service-intro,.service-two-col { grid-template-columns: 1fr; gap: 35px; }
  .service-feature-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .service-steps { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .service-steps li { border: 1px solid var(--line); }
  .version-chain { flex-wrap: wrap; }
}
@media (max-width: 520px) {
  .service-actions { display: grid; }
  .service-feature-grid,.service-steps,.service-two-col ul { grid-template-columns: 1fr; }
  .service-feature-grid article { min-height: auto; }
  .version-chain { display: grid; }
  .version-chain i { transform: rotate(-90deg); text-align: center; }
}
/* Customer portal: full-width application canvas without the generic page sidebar. */
.page-content.portal-page{padding:0;background:#f3f6f2}
.content-shell.portal-shell{display:block;width:100%;max-width:none;margin:0;padding:0}
.portal-shell>.prose{width:100%;max-width:none;margin:0;padding:0;font-size:inherit}

/* Elementor compatibility: builder pages own their canvas and spacing. */
body.smdpcb-elementor-page main#main{width:100%;max-width:none;margin:0;padding:0}
.smdpcb-elementor-content{width:100%;max-width:none;margin:0;padding:0}
.smdpcb-elementor-content>.elementor{width:100%;max-width:none}
.smdpcb-elementor-content img{height:auto;max-width:100%}
