.so-detail-page{--blue:#045cb4;--hover:#2563eb;--heading-font:var(--ast-global-font-family,inherit);font-family:inherit}
.so-detail-page h1,.so-detail-page h2,.so-detail-page h3,.so-detail-page h4{font-family:var(--e-global-typography-primary-font-family,inherit)}
.so-detail-page .detail-hero{position:relative;isolation:isolate;background:linear-gradient(110deg,#f4f8fe,#e7effa);overflow:hidden}
.so-detail-page .detail-hero .band-inner{padding-top:70px;padding-bottom:70px;position:relative;z-index:1}
.so-detail-page .detail-hero h1{margin-bottom:0;line-height:1.2}
.so-detail-page .detail-tagline{font-size:20px;margin:18px 0 0;max-width:650px}
.so-detail-page .detail-banner{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.so-detail-page .has-banner:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(244,248,254,.96),rgba(244,248,254,.85) 50%,rgba(244,248,254,.12));z-index:0}
.so-detail-page .detail-crumbs{max-width:1200px;margin:auto;padding:23px 24px 0}
.so-detail-page .detail-crumbs .soct-breadcrumbs{margin:0}
.so-detail-page .page-layout{padding-top:32px;padding-bottom:12px}
.so-detail-page .content{min-width:0}
.so-detail-page .detail-overview-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:start}
.so-detail-page .detail-product-image{aspect-ratio:1/1;border-radius:5px}
.so-detail-page .detail-points{margin-top:26px}
.so-detail-page .detail-points h3{font-size:19px;margin-bottom:12px}
.so-detail-page ul{margin:0 0 20px;padding-left:20px}
.so-detail-page li{margin-bottom:8px}
.so-detail-page .detail-capabilities{background:#f4f8fe;padding:30px;border:1px solid #e2e8f0;border-radius:5px}
.so-detail-page .detail-capabilities h2{font-size:28px}
.so-detail-page .detail-specs table{margin:0}
.so-detail-page .detail-specs tr:nth-child(even){background:#f8fafd}
.so-detail-page .detail-media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px}
.so-detail-page figure{margin:0;min-width:0}
.so-detail-page .detail-media .soct-image{background:#fff;border:1px solid #e2e8f0;padding:16px}
.so-detail-page .detail-media img{height:auto;max-height:500px}
.so-detail-page figcaption{margin-top:10px;font-size:14px}
.so-detail-page .detail-custom{display:flex;align-items:center;justify-content:space-between;gap:40px}
.so-detail-page .detail-custom>div{max-width:720px}
.so-detail-page .detail-custom .button{flex-shrink:0}
.so-detail-page .button{background:var(--blue)}
.so-detail-page .button:hover{background:var(--hover)}
.so-detail-page a:not(.button){color:var(--blue)}
.so-detail-page a:not(.button):hover{color:var(--hover)}
.so-detail-page .sidebar nav a{color:#475569}
.so-detail-page .sidebar nav a.selected{color:var(--blue)}
.so-detail-page .detail-related{background:#f4f8fe}
.so-detail-page .card{background:white}
.so-detail-page .card h3{font-size:21px}
.so-detail-page .detail-related-link{font-size:15px;font-weight:500;display:inline-flex;gap:16px}
@media(max-width:1050px){.so-detail-page .detail-overview-grid{gap:22px}.so-detail-page .detail-custom{display:block}.so-detail-page .detail-custom .button{margin-top:16px}}
@media(max-width:720px){.so-detail-page .detail-overview-grid{grid-template-columns:1fr}.so-detail-page .detail-product-image{width:100%;max-width:420px;margin:auto}.so-detail-page .detail-hero .band-inner{padding-block:45px}.so-detail-page .detail-capabilities{padding:24px}.so-detail-page .detail-capabilities h2{font-size:25px}.so-detail-page .detail-tagline{font-size:18px}}
@media(max-width:544px){.so-detail-page .detail-crumbs{padding-inline:20px}.so-detail-page .detail-specs table{min-width:460px}}

/* 1.2.1: aligned breadcrumb, corrected contact link, compact recommendations. */
.so-detail-page .detail-hero .band-inner{padding-top:42px;padding-bottom:56px}
.so-detail-page .detail-hero nav.soct-breadcrumbs{margin-bottom:42px}
.so-detail-page nav.soct-breadcrumbs a,
.so-detail-page .sidebar-help a,
.so-detail-page .sidebar-help a:visited{color:#2563eb}
.so-detail-page nav.soct-breadcrumbs a:hover,
.so-detail-page .sidebar-help a:hover,
.so-detail-page .sidebar-help a:focus-visible{color:#1d4ed8}
.so-detail-page .detail-related .band-inner{padding-block:36px}
.so-detail-page .detail-related h2{font-size:24px;margin-bottom:20px}
.so-detail-page .detail-related .section-label{font-size:11px;margin-bottom:10px}
.so-detail-page .detail-related .cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.so-detail-page .detail-related .card{display:grid;grid-template-columns:90px minmax(0,1fr);align-items:center;padding:12px;box-shadow:none}
.so-detail-page .detail-related .card>a>.soct-image,
.so-detail-page .detail-related .card>a>.placeholder{width:90px;height:80px;aspect-ratio:auto;border:0;border-radius:3px;padding:8px}
.so-detail-page .detail-related .card .image-mark{font-size:20px;margin-bottom:4px}
.so-detail-page .detail-related .card .placeholder small{font-size:10px;letter-spacing:0}
.so-detail-page .detail-related .card-body{padding:0 0 0 14px;min-width:0}
.so-detail-page .detail-related .card h3{font-size:16px;line-height:1.4;margin:0 0 7px}
.so-detail-page .detail-related .detail-related-link{font-size:13px;gap:8px}
@media(max-width:1050px){.so-detail-page .detail-related .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.so-detail-page .detail-hero nav.soct-breadcrumbs{margin-bottom:28px}}
@media(max-width:544px){
.so-detail-page .detail-hero .band-inner{padding:32px 20px 40px}
.so-detail-page .detail-related .band-inner{padding-block:28px}
.so-detail-page .detail-related h2{font-size:21px;margin-bottom:16px}
.so-detail-page .detail-related .cards{grid-template-columns:1fr;gap:10px}
.so-detail-page .detail-related .card{grid-template-columns:72px minmax(0,1fr);padding:10px}
.so-detail-page .detail-related .card>a>.soct-image,
.so-detail-page .detail-related .card>a>.placeholder{width:72px;height:64px}
.so-detail-page .detail-related .card h3{font-size:15px;margin-bottom:5px}
}

/* 1.2.4: approved responsive typography, excluding related products. */
.so-category-page.so-detail-page > :not(.detail-related){font-family:SOCTRoboto,Roboto,Arial,sans-serif;font-size:16px;font-weight:400}
.so-category-page.so-detail-page > :not(.detail-related) p:not(.eyebrow):not(.section-label):not(.sidebar-title),
.so-category-page.so-detail-page > :not(.detail-related) li:not(.soct-breadcrumbs li),
.so-category-page.so-detail-page > :not(.detail-related) td,
.so-category-page.so-detail-page > :not(.detail-related) th,
.so-category-page.so-detail-page > :not(.detail-related) figcaption{font-family:SOCTRoboto,Roboto,Arial,sans-serif;font-size:16px}
.so-category-page.so-detail-page > :not(.detail-related) p:not(.eyebrow):not(.section-label):not(.sidebar-title){font-weight:400;margin-bottom:1.5em}
.so-category-page.so-detail-page > :not(.detail-related) h1,
.so-category-page.so-detail-page > :not(.detail-related) h2,
.so-category-page.so-detail-page > :not(.detail-related) h3,
.so-category-page.so-detail-page > :not(.detail-related) h4,
.so-category-page.so-detail-page > :not(.detail-related) h5,
.so-category-page.so-detail-page > :not(.detail-related) h6{font-family:Arial,sans-serif}
.so-category-page.so-detail-page > :not(.detail-related) h1{font-size:42px;font-weight:700}
.so-category-page.so-detail-page > :not(.detail-related) h2{font-size:32px;font-weight:600}
.so-category-page.so-detail-page > :not(.detail-related) h3{font-size:24px;font-weight:600}
.so-category-page.so-detail-page > :not(.detail-related) h4{font-size:20px;font-weight:500}
.so-category-page.so-detail-page > :not(.detail-related) h5{font-size:18px;font-weight:500}
.so-category-page.so-detail-page > :not(.detail-related) h6{font-size:16px;font-weight:500}
@media(max-width:921px){
.so-category-page.so-detail-page > :not(.detail-related) h1{font-size:36px}
.so-category-page.so-detail-page > :not(.detail-related) h2{font-size:28px}
.so-category-page.so-detail-page > :not(.detail-related) h3{font-size:21px}
.so-category-page.so-detail-page > :not(.detail-related) h4{font-size:18px}
.so-category-page.so-detail-page > :not(.detail-related) h5{font-size:18px}
.so-category-page.so-detail-page > :not(.detail-related) h6{font-size:16px}
}
@media(max-width:544px){
.so-category-page.so-detail-page > :not(.detail-related) h1{font-size:30px}
.so-category-page.so-detail-page > :not(.detail-related) h2{font-size:25px}
.so-category-page.so-detail-page > :not(.detail-related) h3{font-size:20px}
.so-category-page.so-detail-page > :not(.detail-related) h4{font-size:18px}
.so-category-page.so-detail-page > :not(.detail-related) h5{font-size:16px}
.so-category-page.so-detail-page > :not(.detail-related) h6{font-size:16px}
}
.so-category-page.so-detail-page > :not(.detail-related) table{font-family:SOCTRoboto,Roboto,Arial,sans-serif;font-size:16px}
.so-category-page.so-detail-page > :not(.detail-related) td{font-weight:400}
.so-category-page.so-detail-page > :not(.detail-related) th{font-weight:600}
.so-category-page.so-detail-page > :not(.detail-related) th p,.so-category-page.so-detail-page > :not(.detail-related) td p{font-size:16px;font-weight:inherit}
.so-category-page.so-detail-page > :not(.detail-related) .sidebar-help a{font-family:SOCTRoboto,Roboto,Arial,sans-serif;font-size:16px}

/* 1.2.5: standard typography within compact related cards. */
.so-category-page.so-detail-page .detail-related{font-family:SOCTRoboto,Roboto,Arial,sans-serif;font-size:16px;font-weight:400}
.so-category-page.so-detail-page .detail-related h2{font-family:Arial,sans-serif;font-size:32px;font-weight:600}
.so-category-page.so-detail-page .detail-related .card h3{font-family:Arial,sans-serif;font-size:24px;font-weight:600;overflow-wrap:anywhere}
.so-category-page.so-detail-page .detail-related p,.so-category-page.so-detail-page .detail-related .detail-related-link{font-family:SOCTRoboto,Roboto,Arial,sans-serif;font-size:16px;font-weight:400}
.so-category-page.so-detail-page .detail-related p{margin-bottom:1.5em}
@media(max-width:921px){.so-category-page.so-detail-page .detail-related h2{font-size:28px}.so-category-page.so-detail-page .detail-related .card h3{font-size:21px}}
@media(max-width:544px){.so-category-page.so-detail-page .detail-related h2{font-size:25px}.so-category-page.so-detail-page .detail-related .card h3{font-size:20px}}

/* 1.2.6: balanced thumbnails beside standard-size related headings. */
.so-category-page.so-detail-page .detail-related .card{grid-template-columns:120px minmax(0,1fr)}
.so-category-page.so-detail-page .detail-related .card>a>.soct-image,
.so-category-page.so-detail-page .detail-related .card>a>.placeholder{width:120px;height:120px;aspect-ratio:1/1;padding:8px}
.so-category-page.so-detail-page .detail-related .card-body{padding-left:16px}
@media(max-width:921px){
 .so-category-page.so-detail-page .detail-related .card{grid-template-columns:104px minmax(0,1fr)}
 .so-category-page.so-detail-page .detail-related .card>a>.soct-image,
 .so-category-page.so-detail-page .detail-related .card>a>.placeholder{width:104px;height:104px}
}
@media(max-width:760px){
 .so-category-page.so-detail-page .detail-related .cards{grid-template-columns:1fr}
}
@media(max-width:544px){
 .so-category-page.so-detail-page .detail-related .card{grid-template-columns:96px minmax(0,1fr)}
 .so-category-page.so-detail-page .detail-related .card>a>.soct-image,
 .so-category-page.so-detail-page .detail-related .card>a>.placeholder{width:96px;height:96px}
 .so-category-page.so-detail-page .detail-related .card-body{padding-left:14px}
}
