:root{--blue:#1261a8;--blue-dark:#0a3f75;--gold:#b28a2f;--ink:#17202a;--muted:#64748b;--line:#dbe2ea;--paper:#fff;--soft:#f5f7fa;--danger:#b42318;--success:#067647;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--soft)}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#fff 0,#f6f8fb 55%,#eef2f6 100%)}button,input,select{font:inherit}
.site-header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,64px);border-bottom:1px solid var(--line);background:rgba(255,255,255,.94);position:sticky;top:0;z-index:10;backdrop-filter:blur(10px)}
.brand{text-decoration:none;letter-spacing:.04em;font-weight:900;font-size:1.4rem;display:flex;align-items:baseline;gap:.18em}.brand-chip{color:var(--blue)}.brand-in{color:var(--gold)}.brand-merch{color:var(--ink);font-size:.62em;font-weight:700;margin-left:.4em}.secure-note{font-size:.86rem;color:var(--muted)}
main{width:min(1180px,92vw);margin:0 auto;padding:48px 0 72px}.hero{text-align:center;padding:34px 12px 44px}.eyebrow{margin:0 0 12px;font-size:.78rem;font-weight:800;letter-spacing:.18em;color:var(--gold)}
h1{font-size:clamp(2.3rem,7vw,5.6rem);line-height:.94;margin:0;color:var(--blue-dark);letter-spacing:-.05em}.lead{max-width:620px;margin:18px auto 0;color:var(--muted);font-size:clamp(1rem,2vw,1.2rem)}
.catalog{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:24px}.product-card,.loading-card,.empty-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:0 10px 28px rgba(19,33,52,.06);overflow:hidden}
.product-image-wrap{aspect-ratio:1/1;background:#eef2f6;display:grid;place-items:center;overflow:hidden}.product-image{width:100%;height:100%;object-fit:cover;display:block}.product-info{padding:22px}.product-title{font-size:1.25rem;margin:0 0 6px}.product-copy{color:var(--muted);font-size:.94rem;line-height:1.45;margin:0 0 18px}.price{font-size:1.18rem;font-weight:800;color:var(--blue-dark);margin-bottom:16px}.buy{width:100%;border:0;border-radius:12px;padding:14px 18px;background:var(--blue);color:#fff;font-weight:800;cursor:pointer}.buy:hover{background:var(--blue-dark)}
.loading-card,.empty-card{grid-column:1/-1;padding:34px;text-align:center;color:var(--muted)}footer{padding:28px max(20px,5vw);display:flex;gap:18px;flex-wrap:wrap;justify-content:center;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem;background:#fff}footer a{color:var(--blue-dark)}
dialog{border:0;border-radius:22px;width:min(680px,94vw);padding:0;box-shadow:0 28px 90px rgba(0,0,0,.22)}dialog::backdrop{background:rgba(8,17,30,.62);backdrop-filter:blur(3px)}.dialog-shell{padding:28px;position:relative}.close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:2rem;cursor:pointer;color:var(--muted)}
.checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:.8rem;font-weight:800;color:var(--muted)}.field input,.field select{border:1px solid #cbd5e1;border-radius:10px;padding:12px;background:#fff}
.summary{margin:18px 0;padding:14px;border-radius:12px;background:var(--soft);display:grid;gap:8px}.summary-row{display:flex;justify-content:space-between;gap:20px}.summary-row.total{border-top:1px solid var(--line);padding-top:9px;font-weight:900}#card-container{min-height:92px;margin-top:12px}.pay{width:100%;padding:14px;border:0;border-radius:12px;background:var(--blue);color:#fff;font-weight:900;cursor:pointer}.pay[disabled]{opacity:.55;cursor:not-allowed}
.message{padding:12px;border-radius:10px;margin:12px 0;font-size:.9rem}.message.error{background:#fef3f2;color:var(--danger)}.message.success{background:#ecfdf3;color:var(--success)}
.policy{max-width:800px}.policy section{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 22px;margin:16px 0}.policy h2{color:var(--blue-dark)}
@media(max-width:640px){.secure-note{display:none}.checkout-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.dialog-shell{padding:22px 18px}}
