.p3{padding:clamp(28px,5vw,56px) 0 150px}
.p3__wrap{max-width:1240px;margin:0 auto;padding:0 clamp(18px,4vw,40px)}
.p3__head{max-width:680px;margin:0 auto clamp(26px,4vw,44px);text-align:center}
.p3__eyebrow{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--c-subtle,#6E6A63);margin:0 0 12px}
.p3__title{font-family:var(--f-head,inherit);font-size:clamp(28px,4vw,44px);line-height:1.1;margin:0 0 14px;text-transform:uppercase;letter-spacing:.04em}
.p3__intro{font-size:16px;line-height:1.6;color:var(--c-muted,#4A4740)}
.p3__intro p{margin:0 0 8px}
.p3__steps{list-style:none;padding:0;margin:20px auto 0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 24px;font-size:13px;color:var(--c-text,#171717)}
.p3__steps li{display:flex;align-items:center;gap:8px}
.p3__steps span{width:22px;height:22px;border:1px solid var(--c-ink,#0E0E0E);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px}
.p3__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,26px)}
@media(max-width:1099px){.p3__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:749px){.p3__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
.p3__card{position:relative;display:block;cursor:pointer}
.p3__check{position:absolute;opacity:0;pointer-events:none}
.p3__media{position:relative;display:block;aspect-ratio:4/5;background:#f0eeea;overflow:hidden;margin:0 0 10px}
.p3__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.p3__card:hover .p3__media img{transform:scale(1.03)}
.p3__media::after{content:"";position:absolute;inset:0;border:2px solid var(--c-ink,#0E0E0E);opacity:0;transition:opacity .15s ease;pointer-events:none}
.p3__check:checked~.p3__media::after{opacity:1}
.p3__tick{position:absolute;top:10px;left:10px;z-index:3;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:1px solid var(--c-border-strong,#D9D5CC);background:#fff;color:transparent;transition:background .15s ease,color .15s ease,border-color .15s ease}
.p3__tick svg{width:14px;height:14px}
.p3__check:checked~.p3__media .p3__tick{background:var(--c-ink,#0E0E0E);border-color:var(--c-ink,#0E0E0E);color:#fff}
.p3__name,.p3__price{display:block;font-size:13px;line-height:1.5;color:var(--c-text,#171717)}
.p3__price{color:var(--c-muted,#4A4740)}
.p3__opt{width:100%;margin-top:8px;padding:9px 26px 9px 10px;border:1px solid var(--c-border-strong,#D9D5CC);border-radius:0;background-color:#fff;font-family:var(--f-body,inherit);font-size:12.5px;color:var(--c-text,#171717);-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23111111' stroke-width='1.2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}
.p3__opt:focus{outline:none;border-color:var(--c-ink,#0E0E0E)}
.p3__bar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--c-border-strong,#D9D5CC);box-shadow:0 -6px 24px rgba(0,0,0,.07)}
.p3__barin{max-width:1240px;margin:0 auto;padding:14px clamp(18px,4vw,40px);display:flex;align-items:center;gap:clamp(12px,3vw,32px)}
.p3__dots{display:flex;gap:7px;flex:0 0 auto}
.p3__dot{width:13px;height:13px;border-radius:50%;border:1px solid var(--c-ink,#0E0E0E);background:transparent}
.p3__dot.is-on{background:var(--c-ink,#0E0E0E)}
.p3__status{flex:1 1 auto;min-width:0}
.p3__count{display:block;font-size:13px;line-height:1.4;color:var(--c-text,#171717)}
.p3__sum{display:block;font-size:12.5px;line-height:1.4;color:var(--c-subtle,#6E6A63)}
.p3__sum s{margin-left:7px}
.p3__go{flex:0 0 auto;padding:16px 30px;font-size:12px;letter-spacing:.18em}
.p3__go[disabled]{opacity:.42;cursor:not-allowed}
@media(max-width:749px){
.p3__barin{flex-wrap:wrap;gap:10px 14px;padding:12px 16px}
.p3__status{order:2;flex:1 1 100%}
.p3__dots{order:1}
.p3__go{order:3;flex:1 1 100%;padding:15px 20px}
}
@media(prefers-reduced-motion:reduce){.p3__media img,.p3__media::after,.p3__tick{transition:none}}
