.needs-section{padding:80px 0;background:#fff;scroll-margin-top:24px;overflow:hidden}
.needs-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:end;margin-bottom:38px}
.needs-heading h2{max-width:600px;margin:0;font-size:clamp(30px,3.2vw,42px)}
.needs-heading p{margin:0;font-size:16px;line-height:1.8;max-width:460px}
.needs-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:max(36px,calc((100vw - 1168px)/2));padding:0 max(36px,calc((100vw - 1168px)/2)) 12px;scrollbar-width:none;overscroll-behavior-x:contain}
.needs-track::-webkit-scrollbar{display:none}
.needs-track:focus-visible{outline:2px solid #4565a5;outline-offset:-2px}
.needs-slide{display:grid;grid-template-columns:1.08fr 1fr;flex:0 0 min(1050px,calc(100vw - 140px));min-height:440px;scroll-snap-align:start;background:#e7edf2;color:#3c436d}
.needs-image{padding:32px;background:#f4f5f7;display:flex;align-items:center;justify-content:center;min-width:0}
.needs-image img{width:100%;height:370px;object-fit:contain;mix-blend-mode:multiply}
.needs-image.needs-photo{padding:0}
.needs-image.needs-photo img{height:100%;object-fit:cover;mix-blend-mode:normal}
.needs-copy{padding:44px 40px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}
.needs-copy .needs-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:#4565a5;margin-bottom:18px}
.needs-copy h3{font-size:30px;line-height:1.3;font-weight:400;color:#3c436d;margin:0 0 18px}
.needs-copy p{font-size:15px;line-height:1.8;color:#4f5b70;margin:0 0 28px}
.needs-copy .needs-link{display:inline-flex;padding:11px 17px;min-height:44px;border:1px solid #3c436d;color:#3c436d;font-size:12px;letter-spacing:.04em;margin-top:auto}
.needs-copy .needs-link:hover{background:#3c436d;color:white}
.needs-link:focus-visible{outline:3px solid #4565a5;outline-offset:4px}
.needs-controls{display:flex;align-items:center;justify-content:space-between;margin-top:14px}
.needs-count{font-size:12px;letter-spacing:.12em;color:#646a7c}
.needs-buttons{display:flex;gap:24px;padding:7px}
.needs-arrow{position:relative;width:30px;height:30px;padding:0;display:grid;place-items:center;background:#65698a;color:white;border:0;border-radius:0;cursor:pointer}
.needs-arrow:after{content:'';position:absolute;inset:-7px}
.needs-arrow:hover{background:#3c436d}
.needs-arrow:focus-visible{outline:3px solid #4565a5;outline-offset:4px}
.needs-arrow:disabled{background:#dce1e8;color:#7c8495;cursor:default}
.needs-prev svg{transform:rotate(180deg)}
.needs-specifications{margin-top:30px}
.needs-specifications summary{padding:19px 0;border-top:1px solid #dce1e8;border-bottom:1px solid #dce1e8;cursor:pointer;color:#3c436d;font-size:15px}
.needs-detail-copy{columns:2;column-gap:56px;padding-top:26px;font-size:15px;line-height:1.8}
.needs-detail-copy>*{break-inside:avoid}
.needs-detail-copy.market-detail-grid{columns:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-top:28px}
.market-detail-grid .market-detail-panel{padding:28px;background:#f4f5f7;border:1px solid #e1e5ec;border-radius:8px;min-width:0}
.market-detail-grid .market-detail-panel>h3:first-child{font-size:24px;line-height:1.35;margin:0 0 16px;color:#3c436d}
.market-detail-grid .market-detail-panel h3:has(>a){font-size:17px;line-height:1.5;margin:20px 0 4px;padding-top:16px;border-top:1px solid #dce1e8}
.market-detail-grid .market-detail-panel h3:has(>a)+p{font-size:13px;letter-spacing:.03em;margin:0 0 12px}
.market-detail-grid .market-detail-panel p:last-child{margin-bottom:0}
.market-detail-grid .market-detail-divider{grid-column:1/-1;padding:16px 0 0}.market-detail-grid .market-detail-divider h3{font-size:28px;margin:0}
.market-product-example{display:grid;grid-template-columns:160px minmax(0,1fr);align-items:center;gap:20px;padding:20px 0;border-top:1px solid #dce1e8}
.market-product-image{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:6px;padding:10px}
.market-product-image img{display:block;width:100%;height:170px;object-fit:contain}
.market-detail-grid .market-product-example h3:has(>a){border:0;padding:0;margin:0 0 8px;font-size:17px}
.market-detail-grid .market-product-example p{margin:0;font-size:13px}
@media(max-width:480px){.market-product-example{grid-template-columns:110px minmax(0,1fr);gap:14px}.market-product-image img{height:140px}}
.market-detail-grid a:focus-visible{outline:2px solid #4565a5;outline-offset:4px}
@media(max-width:650px){.needs-detail-copy.market-detail-grid{grid-template-columns:1fr;gap:18px}.market-detail-grid .market-detail-panel{padding:22px}}

.needs-detail-copy h3{font-size:20px;margin:25px 0 12px}
.needs-detail-copy p,.needs-detail-copy li{font-size:15px;line-height:1.8;color:#646a7c}
.needs-detail-copy a{color:#4565a5;text-decoration:underline;text-underline-offset:3px}
.needs-detail-copy table{column-span:all;width:100%;border-collapse:collapse}
.needs-detail-copy td,.needs-detail-copy th{padding:10px;border:1px solid #dce1e8}
@media(max-width:900px){.needs-heading{gap:30px}.needs-slide{grid-template-columns:1fr 1fr;flex-basis:calc(100vw - 105px);min-height:420px}.needs-copy{padding:30px 26px}.needs-copy h3{font-size:26px}.needs-image{padding:22px}.needs-image img{height:330px}}
@media(max-width:600px){.needs-section{padding:48px 0}.needs-heading{grid-template-columns:1fr;gap:16px;margin-bottom:26px}.needs-track{gap:16px;padding-left:24px;padding-right:24px;scroll-padding-left:24px}.needs-slide{grid-template-columns:1fr;flex-basis:calc(100vw - 64px);min-height:0}.needs-image{padding:22px}.needs-image img{height:270px}.needs-image.needs-photo img{height:270px}.needs-copy{padding:28px 24px;min-height:310px}.needs-copy h3{font-size:27px}.needs-detail-copy{columns:1}.needs-copy .needs-link{margin-top:auto}.needs-copy p{font-size:14px}.needs-controls{margin-top:10px}}
