/* Public inner pages share the approved homepage palette, shell and navigation. */
body.inner-page{--page-gap:64px}
.inner-page main{min-height:60vh;padding-bottom:64px}
.inner-page main:focus{outline:none}
.inner-page h1,.inner-page h2,.inner-page h3{font-weight:600;letter-spacing:-.025em}
.inner-page button,.inner-page input,.inner-page select{font:inherit}
.inner-page button,.inner-page input,.inner-page select{border-radius:4px}
.inner-page .page-banner{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:32px;overflow:hidden;margin-top:26px;padding:48px 44px;border:1px solid #244b7e;border-radius:12px;background:radial-gradient(ellipse at 85% 0,#174b8b,transparent 65%),linear-gradient(125deg,#0c1d39,#102f5c);color:#fff}
.page-banner::before,.detail-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#769edb12 1px,transparent 1px),linear-gradient(90deg,#769edb12 1px,transparent 1px);background-size:42px 42px}
.inner-page .page-banner .eyebrow,.inner-page .detail-hero .eyebrow{color:#a0caff}
.inner-page .page-banner h1{font-size:42px;line-height:1.35;margin:17px 0 16px}
.inner-page .page-description{font-size:15px;line-height:1.9;color:#bdcfe9;max-width:680px}
.page-orbit{position:relative;flex-shrink:0;width:180px;height:140px;display:grid;place-items:center;color:#70bdff}
.page-orbit span{position:absolute;inset:12px;border:1px solid #70bdff55;border-radius:50%;transform:rotate(-30deg)}
.page-orbit span:nth-child(2){inset:30px -10px;transform:rotate(30deg);border-color:#e89c6d55}
.page-orbit b{font-size:70px;font-weight:400}
.inner-page .breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;font-size:12px;color:var(--muted);padding-block:26px;overflow-wrap:anywhere}
.breadcrumbs a{padding-block:4px}.breadcrumbs a:hover{color:var(--brand)}
.breadcrumbs>span:last-child{flex:1;min-width:120px}
.catalogue-section{padding-top:32px}
.catalogue-tools{padding:26px 28px;margin-bottom:28px;background:#fff;border:1px solid var(--line);border-radius:8px}
.site-search{display:flex;align-items:center;gap:24px;padding-bottom:22px}
.site-search>label{font-size:14px;font-weight:600;flex-shrink:0}
.site-search>div{display:flex;width:min(100%,560px);border:1px solid #bdcde4;border-radius:5px;overflow:hidden;background:var(--paper)}
.site-search input[type=search]{min-width:0;flex:1;border:0;background:transparent;padding:11px 14px;font-size:14px;color:var(--ink)}
.site-search button{min-height:46px;padding:10px 22px;background:var(--brand);color:#fff;border:0;display:flex;gap:24px;align-items:center}
.filter-row{display:grid;grid-template-columns:80px minmax(0,1fr);gap:18px;border-top:1px solid var(--line);padding-top:20px;align-items:start}
.filter-row>span{font-size:12px;color:var(--muted);padding-top:10px}
.filter-options{display:flex;flex-wrap:wrap;gap:8px}
.filter-options a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 16px;border:1px solid var(--line);border-radius:4px;font-size:13px;background:#fff;color:var(--muted);transition:background .2s,border-color .2s}
.filter-options a:hover{border-color:var(--brand);color:var(--brand)}
.filter-options a.is-current{background:#eaf2ff;border-color:var(--brand);color:var(--brand)}
.case-filters{display:flex;gap:24px;align-items:end;flex-wrap:wrap;padding-top:20px;border-top:1px solid var(--line)}
.case-filters label{display:grid;gap:8px;font-size:12px;color:var(--muted)}
.case-filters select{min-height:44px;min-width:220px;max-width:100%;padding:9px 36px 9px 12px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.news-filters{border-top:1px solid var(--line);padding-top:20px}
.inner-page .results-note{margin:0 0 22px;color:var(--muted);font-size:14px}
.catalogue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.catalogue-card{min-width:0;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.catalogue-card:hover{border-color:#a9c5e9;box-shadow:0 8px 28px #12315d0a}
.catalogue-card>a{display:flex;flex-direction:column;height:100%}
.catalogue-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#edf3fc;border-bottom:1px solid var(--line)}
.catalogue-media img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
[data-catalogue=product] .catalogue-media{background:#fff}
[data-catalogue=product] .catalogue-media img{object-fit:contain;padding:22px}
.media-placeholder{display:none;position:absolute;inset:0;align-items:center;justify-content:center;color:#83a7da;background:radial-gradient(ellipse at center,#fff,transparent 70%)}
.media-placeholder svg{width:64px;height:64px}
.catalogue-media.is-empty .media-placeholder{display:flex}
.catalogue-media.is-empty img{display:none}
.catalogue-copy{display:flex;flex:1;flex-direction:column;padding:24px}
.inner-page .catalogue-copy h2{font-size:20px;line-height:1.55;margin:9px 0 13px;overflow-wrap:anywhere}
.inner-page .catalogue-description{font-size:13px;color:var(--muted);line-height:1.85;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:24px}
.catalogue-link{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid var(--line);color:var(--brand);font-size:12px}
.catalogue-link>span{font-size:18px;line-height:1}
.page-pagination{margin-top:32px;display:flex;justify-content:center;flex-wrap:wrap;gap:8px;font-size:13px}
.page-pagination ul{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}
.page-pagination a,.page-pagination strong,.page-pagination li>span,.page-pagination>span{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:7px 13px;border:1px solid var(--line);border-radius:4px;background:#fff}
.page-pagination .active>a,.page-pagination .active>span,.page-pagination strong{color:#fff;background:var(--brand);border-color:var(--brand)}
.page-pagination a:hover{border-color:var(--brand);color:var(--brand)}
.page-empty{text-align:center;padding:60px 24px;border:1px solid var(--line);border-radius:8px;background:#fff}
.page-empty>span{display:block;font-size:40px;color:#94afd4;font-weight:300;margin-bottom:16px}
.inner-page .page-empty h2{font-size:23px}.inner-page .page-empty p{margin:12px 0 20px;color:var(--muted);font-size:14px}
.page-contact{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:64px;padding:36px 40px;border:1px solid #c9d9ef;border-radius:8px;background:#eaf2ff}
.inner-page .page-contact h2{font-size:28px;margin:12px 0;line-height:1.4}.inner-page .page-contact p:not(.eyebrow){font-size:13px;color:var(--muted)}
.page-contact .button{flex-shrink:0}
.reading-page{padding:44px 64px;background:#fff;border:1px solid var(--line);border-radius:12px}
.reading-heading{max-width:900px;margin:auto;padding-bottom:30px;border-bottom:1px solid var(--line)}
.inner-page .reading-heading h1{font-size:clamp(28px,3vw,40px);line-height:1.5;margin:16px 0 20px;overflow-wrap:anywhere}
.inner-page .reading-meta{display:flex;gap:20px;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
.inner-page .reading-intro{margin-top:24px;padding:18px 22px;background:var(--surface);border-left:3px solid var(--brand);color:var(--muted);font-size:14px;line-height:1.9}
.article-html{max-width:900px;margin:32px auto 0;font-size:16px;line-height:2;color:#334660;overflow-wrap:anywhere;min-width:0}
.inner-page .article-html p{margin:0 0 1.25em}.inner-page .article-html h2,.inner-page .article-html h3{margin:1.5em 0 .7em;line-height:1.5;color:var(--ink)}
.article-html img{height:auto!important;max-width:100%!important;margin:20px auto;object-fit:contain}
.article-html video,.article-html iframe{max-width:100%}
.article-html a{color:var(--brand);text-decoration:underline;text-underline-offset:3px}
.inner-page .article-html ul,.inner-page .article-html ol{padding-left:1.5em;margin:1em 0;list-style:revert}
.article-html blockquote{margin:24px 0;padding:14px 24px;border-left:3px solid var(--brand);background:var(--surface)}
.table-scroll{width:100%;overflow:auto;margin:24px 0;border:1px solid var(--line);border-radius:6px;overscroll-behavior:contain}
.article-html table{border-collapse:collapse;min-width:100%;max-width:100%;margin:0!important;font-size:14px}
.article-html td,.article-html th{padding:12px 16px;border:1px solid var(--line);vertical-align:top}
.article-html th{background:var(--surface);color:var(--ink);font-weight:600}
.article-html pre{overflow:auto;background:var(--surface);padding:20px;border-radius:6px;max-width:100%;font-size:13px}
.reading-footer{display:flex;justify-content:space-between;gap:20px;max-width:900px;margin:36px auto 0;padding-top:24px;border-top:1px solid var(--line)}
.related-section,.detail-section{margin-top:64px;scroll-margin-top:176px}
.inner-page .detail-section h2,.inner-page .related-section h2{font-size:30px}
.detail-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:44px;align-items:center;padding:44px;border-radius:12px;background:radial-gradient(ellipse at 90% 0,#174b8b,transparent 70%),var(--navy);color:#fff}
.inner-page .detail-intro h1{font-size:clamp(28px,3vw,40px);line-height:1.5;margin:16px 0 20px}
.inner-page .detail-intro>p:not(.eyebrow){font-size:14px;color:#bdcfe9;line-height:1.95}
.detail-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:26px}
.inner-page .button-secondary{color:var(--brand);background:#fff;border-color:#bed1ee}
.detail-hero .button-secondary{background:#ffffff0c;border-color:#80baff66;color:#d4e8ff}
.detail-hero-art{display:grid;place-content:center;text-align:center;min-height:220px;border:1px solid #82b9ff26;border-radius:8px;background:radial-gradient(ellipse at center,#2865c244,transparent 70%)}
.detail-hero-art>span{font-size:100px;font-weight:300;line-height:1.4;color:#70bdff}
.inner-page .detail-hero-art p{font-size:12px;letter-spacing:.15em;color:#a0caff}
.gallery-main{display:grid;place-items:center;aspect-ratio:16/10;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}
.gallery-main img{width:100%;height:100%;object-fit:contain;min-height:0}
.gallery-thumbs{display:flex;overflow:auto;gap:10px;margin-top:12px;padding:3px;overscroll-behavior:contain}
.gallery-thumbs button{flex:0 0 72px;height:58px;padding:4px;border:1px solid #c6d8f0;background:#fff;cursor:pointer}
.gallery-thumbs button[aria-pressed=true]{border:2px solid var(--brand)}
.gallery-thumbs img{width:100%;height:100%;object-fit:contain}
.detail-tabs{position:sticky;top:94px;z-index:20;background:#f8fafff5;border-block:1px solid var(--line);margin-top:32px;backdrop-filter:blur(12px)}
.detail-tabs>.shell{display:flex;gap:28px;overflow:auto;scrollbar-width:thin;overscroll-behavior:contain}
.detail-tabs a{flex-shrink:0;min-height:56px;display:flex;align-items:center;font-size:13px;color:var(--muted);border-bottom:2px solid transparent}
.detail-tabs a:hover,.detail-tabs a.is-current{color:var(--brand);border-color:var(--brand)}
.value-grid,.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.value-card,.feature-card{padding:28px;border:1px solid var(--line);border-radius:8px;background:#fff;min-width:0}
.card-index{display:block;font-size:25px;color:var(--brand);line-height:1;margin-bottom:20px}
.inner-page .value-card h3,.inner-page .feature-card h3{font-size:19px;line-height:1.55;margin-bottom:12px}
.inner-page .value-card p,.inner-page .feature-card p{color:var(--muted);font-size:14px;line-height:1.9;white-space:pre-line}
.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.feature-card{display:flex;align-items:start;gap:20px}
.feature-card>img,.service-grid img{width:48px;height:48px;object-fit:contain;flex-shrink:0}
.diagram-card{background:#fff;padding:30px;border:1px solid var(--line);border-radius:8px;margin-bottom:24px}
.diagram-card img{max-width:100%;height:auto;margin:auto}
.detail-clients{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.detail-client{display:flex;align-items:center;justify-content:center;min-height:108px;padding:20px;border:1px solid var(--line);border-radius:8px;background:#fff}
.detail-client img{width:100%;height:70px;object-fit:contain}
.report-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.report-grid figure{background:white;padding:20px;border:1px solid var(--line);border-radius:8px}
.report-grid img{height:240px;width:100%;object-fit:contain}
.report-grid figcaption{margin-top:18px;font-size:13px;color:var(--muted);text-align:center}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.service-grid img{margin-bottom:20px}
.content-tabs{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}
.content-tabs button{padding:11px 20px;min-height:44px;border:1px solid var(--line);background:#fff;color:var(--muted)}
.content-tabs button[aria-selected=true]{color:var(--brand);border-color:var(--brand);background:#eaf2ff}
.hardware-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center;padding:36px;background:#fff;border:1px solid var(--line);border-radius:12px}
.hardware-hero .gallery-main{aspect-ratio:1;border:0;background:var(--paper);padding:26px}
.inner-page .hardware-copy h1{font-size:36px;line-height:1.4;margin:16px 0 22px}
.inner-page .hardware-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.9}
.product-specs{margin:26px 0 0;border-top:1px solid var(--line)}
.product-specs>div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:18px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}
.product-specs dt{color:var(--muted)}.product-specs dd{margin:0;overflow-wrap:anywhere}
.hardware-details{margin-top:36px}
.document-panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:36px 44px}
.document-panel .article-html{margin-top:0}
.empty-copy{color:var(--muted);font-size:14px}
.error-page{margin-top:40px;border:0;background:transparent;min-height:60vh}
.inner-page .error-code{font-size:100px;color:var(--brand);line-height:1.2;font-weight:600}
.inner-page .error-page h1{font-size:32px;line-height:1.5;margin:20px 0}
.nav-browse-all{display:inline-flex!important;align-items:center;min-height:40px;padding:8px 12px!important;margin-bottom:18px;border:1px solid var(--line);border-radius:4px;color:var(--brand)!important;font-size:13px!important}
/* About: readable company information with the same visual hierarchy. */
.about-section{padding-top:64px}
.about-copy{font-size:15px;line-height:2;color:var(--muted);max-width:900px}
.inner-page .about-copy p+p{margin-top:18px}
.about-business{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:30px}
.about-business article{padding:26px;background:#fff;border:1px solid var(--line);border-radius:8px}
.about-business span{font-size:12px;color:var(--accent)}
.inner-page .about-business h3{font-size:19px;line-height:1.5;margin:14px 0 10px}
.inner-page .about-business p{font-size:13px;line-height:1.8;color:var(--muted)}
.about-contact{padding:32px;background:#fff;border:1px solid var(--line);border-radius:8px;display:flex;gap:32px;justify-content:space-between;align-items:center}
.inner-page .about-contact h3{font-size:24px;margin-bottom:12px}.inner-page .about-contact p{color:var(--muted);font-size:14px}
.inner-page main :focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.catalogue-card a:focus-visible{outline-offset:-4px!important}
@media(hover:hover){.catalogue-card:hover img{transform:scale(1.025)}}
@media(max-width:1199px){.catalogue-grid{gap:18px}.catalogue-copy{padding:22px}.inner-page .catalogue-copy h2{font-size:18px}.page-orbit{width:150px}.detail-hero{gap:30px;padding:34px}.hardware-hero{gap:32px;padding:28px}.value-card,.feature-card{padding:24px}.reading-page{padding:36px 44px}}
@media(max-width:960px){.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-grid{grid-template-columns:1fr}.hardware-hero{gap:26px}.inner-page .hardware-copy h1{font-size:29px}.detail-hero{grid-template-columns:1fr}.detail-hero .detail-gallery{max-width:640px;width:100%;margin:auto}.detail-hero-art{display:none}.report-grid,.detail-clients{grid-template-columns:repeat(3,minmax(0,1fr))}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-business{grid-template-columns:repeat(2,minmax(0,1fr))}.page-contact{align-items:start;flex-direction:column}.inner-page .page-banner h1{font-size:36px}}
@media(max-width:760px){
 .inner-page main{padding-bottom:40px}.inner-page .page-banner{margin-top:16px;padding:30px 24px;gap:12px;border-radius:8px}.inner-page .page-banner h1{font-size:30px;margin:14px 0}.inner-page .page-description{font-size:13px}.page-orbit{display:none}
 .inner-page .breadcrumbs{font-size:11px;padding-block:20px;gap:5px 8px}.catalogue-section{padding-top:22px}.catalogue-tools{padding:20px;margin-bottom:22px}.site-search{flex-direction:column;align-items:stretch;gap:12px;padding-bottom:18px}.site-search>div{width:100%}.site-search button{padding-inline:17px;gap:10px}.filter-row{grid-template-columns:1fr;gap:10px;padding-top:16px}.filter-row>span{padding:0}.filter-options{gap:7px}.filter-options a{font-size:12px;min-height:42px;padding:8px 11px}.case-filters{display:grid;grid-template-columns:1fr;gap:16px}.case-filters select{min-width:0;width:100%}.case-filters .text-link{justify-self:start}
 .catalogue-grid{grid-template-columns:1fr;gap:18px}.catalogue-copy{padding:22px}.inner-page .catalogue-copy h2{font-size:20px}.catalogue-link{min-height:40px;align-items:center;padding-top:12px}.page-pagination{gap:6px}.page-pagination a,.page-pagination li>span,.page-pagination>span{min-width:40px;min-height:44px;padding-inline:11px}
 .page-contact{margin-top:40px;padding:28px 24px;gap:22px}.inner-page .page-contact h2{font-size:25px}.page-empty{padding:40px 20px}.inner-page .page-empty h2{font-size:21px}
 .reading-page{padding:28px 22px;border-radius:8px}.inner-page .reading-heading h1{font-size:26px;line-height:1.6}.reading-heading{padding-bottom:22px}.inner-page .reading-intro{padding:16px;font-size:13px}.article-html{font-size:15px;margin-top:24px}.article-html [style*="width"]{max-width:100%!important}.article-html img{margin-block:16px}.article-html td,.article-html th{padding:9px 12px}.reading-footer{margin-top:26px;padding-top:18px;flex-wrap:wrap;gap:10px}
 .related-section,.detail-section{margin-top:40px;scroll-margin-top:145px}.inner-page .detail-section h2,.inner-page .related-section h2{font-size:27px}
 .detail-hero{padding:28px 22px;gap:28px;border-radius:8px}.inner-page .detail-intro h1{font-size:28px}.inner-page .detail-intro>p:not(.eyebrow){font-size:13px}.detail-actions{gap:12px;margin-top:22px}.detail-actions .button{font-size:13px;padding:12px 16px}.detail-tabs{top:74px;margin-top:24px}.detail-tabs>.shell{gap:23px}.detail-tabs a{min-height:50px;font-size:12px}
 .value-grid,.feature-grid{grid-template-columns:1fr;gap:16px}.value-card,.feature-card{padding:23px}.inner-page .value-card h3,.inner-page .feature-card h3{font-size:18px}.inner-page .value-card p,.inner-page .feature-card p{font-size:13px}.diagram-card{padding:16px}.report-grid,.detail-clients,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.report-grid figure{padding:13px}.report-grid img{height:180px}.detail-client{min-height:82px;padding:12px}.detail-client img{height:52px}
 .hardware-hero{grid-template-columns:1fr;padding:22px;gap:28px;border-radius:8px}.hardware-hero .gallery-main{aspect-ratio:4/3;padding:20px}.inner-page .hardware-copy h1{font-size:28px}.hardware-details{margin-top:28px}.content-tabs{gap:8px;margin-bottom:20px}.content-tabs button{padding:10px 14px;font-size:13px}.document-panel{padding:24px 20px}.product-specs>div{grid-template-columns:72px minmax(0,1fr);gap:12px}
 .about-section{padding-top:40px}.about-copy{font-size:14px}.about-business{gap:12px;margin-top:24px}.about-business article{padding:20px 16px}.inner-page .about-business h3{font-size:17px}.inner-page .about-business p{font-size:12px}.about-contact{padding:24px;align-items:start;flex-direction:column;gap:24px}.inner-page .about-contact h3{font-size:23px}
}
@media(max-width:380px){.catalogue-tools{padding:17px}.reading-page{padding:24px 18px}.inner-page .page-banner{padding:26px 20px}.inner-page .reading-heading h1{font-size:24px}.hardware-hero{padding:18px}.about-business{grid-template-columns:1fr}.report-grid img{height:145px}}
@media(prefers-reduced-motion:reduce){.inner-page *{scroll-behavior:auto!important}}

.inner-page .catalogue-card[data-card-module="product"] .catalogue-media img{object-fit:contain;padding:20px;background:#fff}

.news-filters:first-child{border-top:0;padding-top:0}

.filter-subgroup{border-top:0;padding-top:12px}

.detail-gallery,.hardware-copy{min-width:0}.gallery-thumbs{max-width:100%}
