.el-pp{padding:2rem 0 6rem;background:var(--el-off)}
.el-pp__grid{display:grid;gap:2.4rem}
@media(min-width:990px){.el-pp{padding:4.8rem 0 8rem}.el-pp__grid{grid-template-columns:1.15fr 1fr;gap:5.6rem;align-items:start}.el-pp__info{position:sticky;top:3.2rem}}
.el-gal{display:grid;grid-auto-flow:column;grid-auto-columns:88%;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -1.6rem;padding:0 1.6rem}
.el-gal img{width:100%;height:auto;border-radius:var(--el-r);display:block;scroll-snap-align:center;border:1px solid var(--el-line)}
@media(min-width:990px){.el-gal{grid-auto-flow:row;grid-template-columns:1fr 1fr;grid-auto-columns:auto;overflow:visible;margin:0;padding:0}.el-gal img:first-child{grid-column:1/-1}}
.el-pp h1{font:700 clamp(3.2rem,5vw,4.8rem)/1.05 var(--el-head);letter-spacing:-.03em;margin:1.2rem 0 0}
.el-pp__q{font:600 2rem/1.3 var(--el-head);color:var(--el-blue);margin:.8rem 0 0}
.el-pp__meta{font-size:1.4rem;color:var(--el-muted);margin-top:1.2rem}
.el-pp__price{display:flex;align-items:baseline;flex-wrap:wrap;gap:1rem;margin:2.4rem 0 .4rem}
.el-pp__price .el-price{font-size:4rem}
.el-save{font:700 1.2rem/1 var(--el-body);background:#CCFBF1;color:#115E59;padding:.6rem .9rem;border-radius:99px;letter-spacing:.06em}
.el-consent{display:flex;gap:1rem;align-items:flex-start;font-size:1.3rem;line-height:1.45;color:var(--el-muted);margin:1.6rem 0;cursor:pointer}
.el-consent input{width:1.8rem;height:1.8rem;margin-top:.1rem;flex:none;accent-color:var(--el-blue)}
.el-consent a{color:var(--el-navy)}
.el-pp__actions{display:grid;gap:1rem}
.el-pp__trust{display:grid;grid-template-columns:1fr 1fr;gap:.8rem 1.6rem;margin-top:2rem;font-size:1.35rem;color:var(--el-muted)}
.el-pp__trust span::before{content:"✓ ";color:var(--el-teal);font-weight:700}
.el-upsell{margin-top:2.4rem;background:#fff;border:1px solid var(--el-line);border-radius:var(--el-r);padding:2rem;display:flex;gap:1.6rem;align-items:center;text-decoration:none;color:inherit}
.el-upsell:hover{border-color:var(--el-blue)}
.el-upsell img{width:7.2rem;height:7.2rem;border-radius:10px;object-fit:cover;flex:none}
.el-upsell b{display:block;font:700 1.6rem/1.3 var(--el-head);color:var(--el-navy)}
.el-upsell span{font-size:1.35rem;color:var(--el-muted)}
.el-desc{background:#fff;padding:5.6rem 0}
.el-pd{max-width:76rem;margin:0 auto;font-size:1.65rem;line-height:1.65;color:#334155}
.el-pd .el-lead{font-size:2rem;color:var(--el-navy);max-width:none;margin:0 0 3.2rem}
.el-pd h3{font:700 2.6rem/1.2 var(--el-head);margin:4.8rem 0 1.4rem;color:var(--el-navy)}
.el-pd h4{font:700 1.7rem/1.2 var(--el-head);margin:0 0 1rem;color:var(--el-navy)}
.el-pd .el-flow{font:700 1.4rem/1.6 var(--el-body);letter-spacing:.1em;color:var(--el-blue);background:#EFF6FF;border-radius:10px;padding:1.4rem 1.6rem;margin:1.2rem 0 1.6rem}
.el-pd .el-list{list-style:none;padding:0;margin:0;display:grid;gap:1rem}
.el-pd .el-list li{padding-left:2.6rem;position:relative}
.el-pd .el-list li::before{content:"✓";position:absolute;left:0;color:var(--el-teal);font-weight:700}
.el-pd .el-fit{display:grid;gap:1.6rem;margin-top:4.8rem}
@media(min-width:750px){.el-pd .el-fit{grid-template-columns:1fr 1fr}}
.el-pd .el-fit>div{background:var(--el-off);border-radius:var(--el-r);padding:2.4rem}
.el-pd .el-fit ul{margin:0;padding-left:2rem;font-size:1.5rem}
.el-pd .el-note{font-size:1.3rem;color:var(--el-muted);border-left:3px solid var(--el-line);padding-left:1.4rem;margin:3.2rem 0}
.el-pd .el-faq{margin-top:2.4rem}
.el-sticky{position:fixed;left:0;right:0;bottom:0;z-index:20;background:#fff;border-top:1px solid var(--el-line);padding:1rem 1.6rem calc(1rem + env(safe-area-inset-bottom));display:flex;gap:1.2rem;align-items:center;transform:translateY(110%);transition:transform .2s}
.el-sticky.is-on{transform:none}
.el-sticky__t{flex:1;min-width:0}.el-sticky__t b{display:block;font:700 1.5rem/1.2 var(--el-head);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--el-navy)}.el-sticky__t span{font-size:1.4rem;color:var(--el-muted)}
@media(min-width:990px){.el-sticky{display:none}}
.el-next{padding:5.6rem 0;background:var(--el-off)}
.announcement-bar__message{font-size:1.25rem;letter-spacing:.04em}
.card__heading{font-family:var(--el-head);font-weight:700;letter-spacing:-.01em}
.price{font-family:var(--el-body);font-weight:600;color:var(--el-navy)}
.main-page-title{font-family:var(--el-head);letter-spacing:-.02em}
.page-width--narrow .rte h2{font-size:2.4rem;margin-top:3.2rem}
.page-width--narrow .rte{font-size:1.6rem;line-height:1.7}