.sp-page { color: #24332d; }
.sp-hero { position: relative; margin: 24px 0 0; overflow: hidden; }
.sp-hero > img { display: block; width: 100%; height: 520px; object-fit: cover; object-position: center; }
.sp-hero-copy { position: absolute; top: 32px; left: 24px; max-width: 300px; }
.sp-hero h1 { font-size: 40px; line-height: 1.25; margin: 16px 0; letter-spacing: 0; }
.sp-hero-copy > p:not(.d2-kicker) { font-size: 17px; line-height: 1.8; max-width: 420px; }
.sp-hero .solid-link { margin-top: 12px; }
.sp-menu { display: flex; flex-wrap: wrap; gap: 0; border-bottom: 1px solid #dce3de; background: #fff; padding: 12px 0; }
.sp-menu a { padding: 14px 18px; font-size: 16px; font-weight: 700; color: #34463d; border-bottom: 2px solid transparent; }
.sp-menu a:hover,.sp-menu a:focus-visible { color: #235de8; border-color: #235de8; }
.sp-section { padding: 64px 0; border-bottom: 1px solid #dce3de; scroll-margin-top: 110px; }
.sp-section h2 { font-size: 32px; line-height: 1.4; margin: 12px 0 20px; letter-spacing: 0; }
.sp-section h3 { font-size: 21px; line-height: 1.5; margin: 12px 0; }
.sp-section p,.sp-section li { font-size: 16px; line-height: 1.9; }
.sp-section > p { max-width: 860px; }
.sp-products,.sp-use-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 20px; margin-top: 30px; }
.sp-products article { min-width: 0; border: 1px solid #dce3de; border-radius: 8px; overflow: hidden; }
.sp-products img,.sp-use-grid img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
.sp-product-copy { padding: 20px; }
.sp-product-copy h3 { font-size: 20px; }
.sp-product-copy .sp-spec { color: #256149; font-size: 13px; font-weight: 700; }
.sp-product-copy > p:not(.sp-spec) { min-height: 150px; }
.sp-product-copy details { margin: 18px 0; border-top: 1px solid #dce3de; padding-top: 14px; }
.sp-product-copy summary { cursor: pointer; font-weight: 700; padding: 8px 0; }
.sp-product-copy dt { font-size: 13px; color: #5b6e63; margin-top: 12px; }
.sp-product-copy dd { margin: 3px 0; font-size: 15px; }
.sp-product-copy details a { display: inline-block; font-size: 14px; color: #235de8; margin-top: 18px; text-decoration: underline; }
.sp-tint { background: #f4f7f5; padding: 48px 28px; }
.sp-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 48px; margin-top: 24px; }
.sp-columns ul,.sp-columns ol { padding-left: 23px; }
.sp-columns li { margin: 9px 0; }
.sp-use-grid h3 { font-size: 18px; }
.sp-use-grid h3 span { color: #235de8; }
.sp-section .sp-note { font-size: 14px; color: #63716a; margin-top: 24px; }
.sp-page #questions { scroll-margin-top: 110px; }
.sp-menu { position: sticky; top: 88px; z-index: 20; }
.sp-section,.sp-page #questions { scroll-margin-top: 200px; }
@media(min-width:601px) and (max-width:1000px) { .sp-hero > img { height: 620px; object-fit: contain; object-position: bottom; } .sp-hero-copy { max-width: 580px; } .sp-hero-copy > p:not(.d2-kicker) { font-size: 15px; } }
@media(max-width:1000px) { .sp-products,.sp-use-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .sp-hero h1 { font-size: 36px; } .sp-hero-copy { left: 24px; top: 20px; } .sp-product-copy > p:not(.sp-spec) { min-height: 90px; } }
@media(max-width:600px) { .sp-hero > img { height: auto; aspect-ratio: 3/4; object-fit: cover; object-position: 65% center; } .sp-hero-copy { top: 16px; left: 16px; right: 16px; } .sp-hero h1 { font-size: 30px; margin: 10px 0; } .sp-hero-copy > p:not(.d2-kicker) { font-size: 14px; } .sp-hero .d2-kicker { font-size: 11px; } .sp-hero .solid-link { padding: 10px 14px; font-size: 14px; } .sp-menu a { padding: 12px 10px; font-size: 14px; } .sp-section { padding: 38px 0; } .sp-section h2 { font-size: 26px; } .sp-tint { padding: 30px 18px; } .sp-products,.sp-columns { grid-template-columns: 1fr; gap: 22px; } .sp-use-grid { gap: 18px 12px; } .sp-use-grid h3 { font-size: 16px; } .sp-use-grid p { font-size: 14px; } .sp-product-copy > p:not(.sp-spec) { min-height: 0; } }
@media(max-width:600px) {
 .sp-hero > img { height: 480px; aspect-ratio: auto; object-fit: contain; object-position: center bottom; }
 .sp-hero-copy { top: 0; left: 0; right: 0; max-width: none; }
 .sp-hero h1 { font-size: 28px; }
 .sp-menu { top: 70px; flex-wrap: nowrap; overflow-x: auto; padding: 6px 0; }
 .sp-menu a { white-space: nowrap; flex-shrink: 0; }
 .sp-section,.sp-page #questions { scroll-margin-top: 145px; }
}

.sp-document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.sp-document-grid article{padding:24px;background:white;border:1px solid #dce4ec;border-radius:12px}.sp-document-grid h3{font-size:22px}.sp-document-grid p{line-height:1.85}.sp-page>header h1{font-size:clamp(32px,4vw,52px)}@media(max-width:700px){.sp-document-grid{grid-template-columns:1fr}}
