.sp-hero{
background:linear-gradient(135deg,#f7faff 0%,#eef5fb 52%,#f8fbfd 100%);
border-top:1px solid #e3edf4;
border-bottom:1px solid #dce8f0;
}
.sp-hero-grid{
display:grid;
grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
gap:54px;
align-items:center;
padding-top:58px;
padding-bottom:62px;
}
.sp-copy h1{
margin:8px 0 16px;
font-size:clamp(42px,5.2vw,70px);
line-height:.98;
letter-spacing:-.045em;
color:#082c47;
}
.sp-lead{
max-width:790px;
font-size:18px;
line-height:1.7;
color:#587286;
}
.sp-facts{
display:grid;
grid-template-columns:repeat(4,minmax(0,1fr));
margin:26px 0 22px;
border-top:1px solid #d5e3ed;
border-bottom:1px solid #d5e3ed;
}
.sp-facts span{
padding:13px 12px 12px 0;
font-size:11px;
color:#718898;
}
.sp-facts span+span{border-left:1px solid #dce7ee;padding-left:13px}
.sp-facts b{display:block;color:#143c59;font-size:17px;margin-bottom:2px}
.sp-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.sp-secondary{
display:inline-flex;min-height:44px;align-items:center;padding:0 18px;
border:1px solid #cbdce8;border-radius:12px;background:#fff;color:#174e72;font-weight:850
}
.sp-affiliate{margin-top:9px;font-size:10px;color:#80929f}
.sp-visual{
position:relative;min-height:440px;display:flex;align-items:center;justify-content:center
}
.sp-visual img{
width:min(100%,430px);max-height:420px;object-fit:contain;
filter:drop-shadow(0 26px 32px rgba(15,59,91,.17))
}
.sp-price-card{
position:absolute;right:0;bottom:16px;background:#fff;border:1px solid #d4e2eb;
border-radius:16px;padding:13px 16px;box-shadow:0 14px 34px rgba(18,61,92,.11)
}
.sp-price-card span,.sp-price-card small{display:block;color:#718896;font-size:10px}
.sp-price-card b{display:block;color:#0c314c;font-size:26px;line-height:1.1;margin:3px 0}
.sp-offer{
margin-top:52px;margin-bottom:52px;padding:28px 32px;border:1px solid #d8e5ed;border-radius:22px;
background:#f8fbfd;display:grid;grid-template-columns:1fr auto;gap:34px;align-items:center
}
.sp-offer h2{margin:5px 0 9px;color:#0b304b;font-size:clamp(27px,3vw,38px)}
.sp-offer p{margin:0;color:#647d8e;line-height:1.65;max-width:780px}
.sp-offer-price{text-align:right}
.sp-offer-price>b{display:block;color:#0b314c;font-size:34px}
.sp-offer-price small{display:block;color:#7b8f9d;font-size:10px;margin:2px 0 10px}
.sp-layout{
display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:46px;align-items:start;
padding-bottom:58px
}
.sp-content h2{
margin:42px 0 12px;color:#0b304b;font-size:clamp(28px,3vw,40px);letter-spacing:-.025em
}
.sp-content h3{color:#143d5a}
.sp-content p,.sp-content li{color:#5f7889;line-height:1.72}
.sp-callout{
padding:18px 20px;border-left:4px solid #1685c1;background:#f3f9fd;border-radius:0 14px 14px 0;
color:#547083;line-height:1.65
}
.sp-procon{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}
.sp-procon>div{
padding:20px 22px;border:1px solid #dce7ee;border-radius:18px;background:#fbfdfe
}
.sp-procon h3{margin-top:0}
.sp-procon ul{padding-left:19px;margin-bottom:0}
.sp-spec-table{
display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #dce7ee;
margin-top:18px
}
.sp-spec-table div{
display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid #dce7ee;
color:#738997;font-size:13px
}
.sp-spec-table div:nth-child(odd){padding-right:20px}
.sp-spec-table div:nth-child(even){border-left:1px solid #e1eaf0;padding-left:20px}
.sp-spec-table b{color:#173d59;text-align:right}
.sp-source-note{font-size:11px!important;color:#80919d!important}
.sp-faq details{border-top:1px solid #dce7ee;padding:15px 0}
.sp-faq details:last-child{border-bottom:1px solid #dce7ee}
.sp-faq summary{font-weight:850;color:#173c58;cursor:pointer}
.sp-faq p{margin-bottom:0}
.sp-sourcebox{
margin-top:38px;padding:20px 22px;border:1px solid #dbe7ef;border-radius:17px;background:#f8fafc;
color:#647b8b;line-height:1.7;font-size:13px
}
.sp-sourcebox a{display:inline-block;margin-left:4px;font-weight:800}
.sp-aside{
position:sticky;top:20px;padding:24px;border-radius:22px;background:#0d3b57;color:#d9edf7;
box-shadow:0 20px 42px rgba(10,48,72,.16)
}
.sp-aside h3{font-size:27px;color:#fff;margin:6px 0 15px}
.sp-aside p{font-size:13px;line-height:1.65;color:#c8dfea}
.sp-aside p b{color:#fff}
.sp-aside-divider{height:1px;background:rgba(255,255,255,.16);margin:19px 0}
.sp-aside-price{font-size:34px;font-weight:950;color:#fff}
.sp-aside-meta{font-size:10px;color:#9fc7da;margin:2px 0 12px}
.sp-aside .btn{display:block;text-align:center}
.sp-aside-affiliate{font-size:10px;color:#9fc7da;margin-top:10px;text-align:center}
.sp-more{
margin-bottom:72px;padding:30px 32px;border:1px solid #d9e6ee;border-radius:22px;background:#f7fafc;
display:flex;justify-content:space-between;gap:28px;align-items:center
}
.sp-more h2{margin:5px 0 6px;color:#0b304b}
.sp-more p{margin:0;color:#647c8d}
@media(max-width:900px){
.sp-hero-grid,.sp-layout{grid-template-columns:1fr}
.sp-hero-grid{gap:22px;padding-top:44px;padding-bottom:48px}
.sp-visual{min-height:320px}
.sp-layout{gap:28px}
.sp-aside{position:static}
}
@media(max-width:680px){
.sp-copy h1{font-size:42px}
.sp-facts{grid-template-columns:1fr 1fr}
.sp-facts span:nth-child(3){border-left:0}
.sp-facts span:nth-child(n+3){border-top:1px solid #dce7ee}
.sp-offer{grid-template-columns:1fr}
.sp-offer-price{text-align:left}
.sp-procon,.sp-spec-table{grid-template-columns:1fr}
.sp-spec-table div:nth-child(even){border-left:0;padding-left:0}
.sp-spec-table div:nth-child(odd){padding-right:0}
.sp-more{display:block}
.sp-more .btn{margin-top:18px;display:inline-block}
}
