:root{color-scheme:light;--red:#ad1e24;--ink:#202024;--line:#e1e1e3;--surface:#f6f6f7}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:var(--surface);color:var(--ink);font:16px/1.5 system-ui,sans-serif}
a{color:var(--red);text-underline-offset:.22em}
.wrap{width:min(1200px,calc(100% - 40px));margin-inline:auto}
.masthead{background:var(--red);color:white}
.masthead .wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.masthead .wrap>div,footer{display:flex;flex-wrap:wrap;gap:18px}
.masthead a{color:white}
.brand img{display:block;width:72px;height:72px;object-fit:contain}
h1{margin:30px 0 14px;font-size:clamp(2rem,4vw,3.2rem);line-height:1.12}
h2{margin:0 0 16px;font-size:1.35rem;line-height:1.25}
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);background:var(--red);color:white;border-radius:12px;overflow:hidden}
.steps li{padding:12px 14px;border-right:1px solid #ffffff52;font-size:.91rem}
.steps li[aria-current=step]{background:#7e141a;font-weight:750;box-shadow:inset 0 -3px white}
.layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,335px);gap:20px;align-items:start}
.panel{background:#fff;border:1px solid var(--line);border-radius:13px;padding:clamp(16px,3vw,28px);min-width:0}
#cart-message{margin:12px 0;color:#86181d}
#cart-message:empty{display:none}
.cart-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
.cart-row small,.muted{color:#53535b}
.cart-row small{display:block}
.cart-row label{font-size:.9rem}
.quantity{display:flex;align-items:center;gap:7px}
.quantity input{width:72px}
.review{list-style:none;padding:0}
.review li{padding:8px 0;border-bottom:1px solid var(--line)}
#review-delivery,.address-summary{white-space:pre-line}
.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
button,.button,input,select,textarea{font:inherit}
button,.button{display:inline-block;border:1px solid transparent;border-radius:8px;background:var(--red);color:white;padding:9px 13px;cursor:pointer;text-decoration:none;font-weight:650}
button:disabled{opacity:.6;cursor:default}
button.secondary,.button.secondary{border-color:var(--line);color:var(--ink);background:white}
:focus-visible{outline:3px solid #274dab;outline-offset:3px}
label{display:block}
input:not([type=radio],[type=checkbox]),select,textarea{display:block;border:1px solid #9b9ba2;border-radius:6px;padding:8px;background:white;color:var(--ink);max-width:100%}
select,textarea,fieldset input:not([type=radio],[type=checkbox]){width:100%;margin:5px 0 10px}
fieldset{min-inline-size:0;border:1px solid var(--line);border-radius:8px;margin:0 0 14px;padding:12px}
fieldset legend{font-weight:650}
.check{display:flex;gap:8px;align-items:flex-start;margin:9px 0}
.check input:is([type=checkbox],[type=radio]){flex:0 0 auto;width:auto;margin:.2em 0 0}
.check span{min-width:0;overflow-wrap:anywhere}
.back{margin-top:16px}
.summary dl,#bank-result{margin:0}
.summary dl>div,#bank-result>div{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:7px 0}
#bank-result>div{justify-content:flex-start;flex-wrap:wrap}
dd{margin:0;font-variant-numeric:tabular-nums}
.summary .total{border-top:1px solid var(--line);font-size:1.25rem;font-weight:750;margin-top:7px}
footer{padding-block:28px;font-size:.92rem}
@media(max-width:720px){.layout{grid-template-columns:1fr}.steps li{padding:10px 6px;font-size:.75rem}.wrap{width:calc(100% - 24px)}}
@media(max-width:390px){.cart-row{grid-template-columns:1fr}.masthead .wrap>div{gap:6px 12px}}
