:root{--opr2-red:#d64045;--opr2-cream:#fff8ee;--opr2-ink:#2c201c;--opr2-green:#237a4b;--opr2-line:#e6d7c8}
.opr2-wrap{max-width:1040px;margin:0 auto;color:var(--opr2-ink);font-family:inherit}
.opr2-form{background:var(--opr2-cream);border:1px solid var(--opr2-line);border-radius:28px;padding:clamp(24px,5vw,58px);box-shadow:0 22px 60px rgba(74,47,36,.1)}
.opr2-step{display:none}.opr2-step.is-active{display:block;animation:opr2-in .25s ease-out}
@keyframes opr2-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.opr2-kicker{font-size:.78rem;letter-spacing:.14em;font-weight:800;color:var(--opr2-red)}
.opr2-step h2{font-size:clamp(1.8rem,4vw,3.25rem);line-height:1.05;margin:.4rem 0 1.5rem}
.opr2-devices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.opr2-device{display:flex;flex-direction:column;border:2px solid transparent;border-radius:20px;background:#fff;overflow:hidden;cursor:pointer;transition:.2s}
.opr2-device:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(74,47,36,.12)}
.opr2-device:has(input:checked){border-color:var(--opr2-red);box-shadow:0 0 0 3px rgba(214,64,69,.12)}
.opr2-device input{position:absolute;opacity:0}.opr2-device img,.opr2-placeholder{width:100%;aspect-ratio:16/9;object-fit:cover}
.opr2-placeholder{display:grid;place-items:center;background:#f2dfca;font-size:4rem}.opr2-device-copy{display:flex;flex-direction:column;gap:8px;padding:18px}
.opr2-device-copy strong{font-size:1.16rem}.opr2-device-copy small{font-size:.94rem;line-height:1.45}.opr2-device-copy b{color:var(--opr2-red)}
[data-opr2-flavours],.opr2-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.opr2-flavour,.opr2-fields label{display:flex;flex-direction:column;gap:7px;font-weight:700}
.opr2-form input,.opr2-form select,.opr2-form textarea{width:100%;border:1px solid var(--opr2-line);border-radius:12px;background:#fff;padding:13px 14px;font:inherit;color:var(--opr2-ink)}
.opr2-form input:focus,.opr2-form select:focus,.opr2-form textarea:focus{outline:3px solid rgba(214,64,69,.18);border-color:var(--opr2-red)}
.opr2-total{margin:20px 0;padding:16px 18px;border-radius:14px;background:#fff;font-size:1.1rem}.opr2-total strong{float:right;color:var(--opr2-red)}
.opr2-next,.opr2-submit,.opr2-back{border:0;border-radius:999px;padding:13px 22px;font:inherit;font-weight:800;cursor:pointer}
.opr2-next,.opr2-submit{background:var(--opr2-red);color:#fff;float:right}.opr2-back{background:#fff;color:var(--opr2-ink);border:1px solid var(--opr2-line)}
.opr2-nav{display:flex;justify-content:space-between;align-items:center;margin-top:24px}.opr2-step>.opr2-next{margin-top:24px}.opr2-step:after{content:"";display:block;clear:both}
.opr2-note{font-size:.9rem;opacity:.78}.opr2-availability{margin:12px 0;padding:12px 15px;border-radius:12px;font-weight:700}.opr2-availability.is-free{background:#e7f6ed;color:var(--opr2-green)}.opr2-availability.is-full{background:#fdeaea;color:#a12128}
.opr2-consent{display:flex;align-items:flex-start;gap:10px;margin-top:18px}.opr2-consent input{width:auto;margin-top:4px}.opr2-message{padding:16px 18px;border-radius:14px;margin:0 0 18px}.opr2-message.success{background:#e7f6ed;color:var(--opr2-green)}.opr2-message.error{background:#fdeaea;color:#a12128}
.opr2-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}
@media(max-width:700px){.opr2-devices,[data-opr2-flavours],.opr2-fields{grid-template-columns:1fr}.opr2-form{border-radius:18px;padding:22px}.opr2-device-copy small{display:block}.opr2-nav{gap:10px}.opr2-nav button{flex:1}.opr2-total strong{float:none;display:block;margin-top:4px}}
