/* ShoesIndustries public cashback page */
.si-cashback { --cb-ink:#171714; --cb-paper:#f3f0e9; --cb-line:#dedbd3; color:var(--cb-ink); padding:36px 0 64px; }
.si-cashback *, .si-cashback *::before, .si-cashback *::after { box-sizing:border-box; }
.si-cashback .si-cb-eyebrow { margin:0 0 22px; font-size:11px; font-weight:650; line-height:1.5; letter-spacing:.16em; text-transform:uppercase; }
.si-cb-hero { display:grid; grid-template-columns:1.1fr 1fr; background:var(--cb-paper); min-height:480px; }
.si-cb-intro { padding:clamp(30px,5vw,66px); align-self:center; }
.si-cashback h1 { max-width:620px; margin:0 0 22px; font-size:clamp(38px,4.6vw,66px); font-weight:600; letter-spacing:-.045em; line-height:1.04; text-transform:none; }
.si-cb-lead { max-width:430px; font-size:17px; line-height:1.65; margin:0 0 28px; color:#56564f; }
.si-cashback .si-cb-button { display:inline-flex; align-items:center; justify-content:space-between; gap:28px; min-height:50px; padding:14px 23px; background:var(--cb-ink); color:#fff; border:1px solid var(--cb-ink); font-size:14px; font-weight:600; text-decoration:none; transition:background .2s,color .2s; }
.si-cashback .si-cb-button:hover { background:#fff; color:var(--cb-ink); }
.si-cb-button > span { font-size:22px; line-height:1; }
.si-cashback .si-cb-textlink { display:flex; align-items:center; gap:14px; width:fit-content; margin-top:20px; color:var(--cb-ink); font-size:13px; text-decoration:underline; text-underline-offset:4px; }
.si-cb-art { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:48px 32px; overflow:hidden; background:#ded8cb; background-image:radial-gradient(ellipse at 50% 100%,#c1b6a2,transparent 75%); }
.si-cb-ticket { width:min(100%,370px); background:#191a17; color:#f6f1e5; transform:rotate(-6deg); box-shadow:12px 22px 0 #0000000b,0 24px 48px #25211929; }
.si-cb-ticket-top { display:flex; justify-content:space-between; align-items:center; padding:23px 25px; border-bottom:1px solid #ffffff2b; font-size:11px; font-weight:650; letter-spacing:.1em; }
.si-cb-ticket-top > span:last-child { font-size:28px; line-height:1; }
.si-cb-rate { padding:22px 24px 0; font-size:clamp(65px,7vw,104px); line-height:1.1; letter-spacing:-.07em; font-weight:600; white-space:nowrap; }
.si-cb-rate > span { font-size:.5em; margin-left:6px; vertical-align:top; line-height:1.8; }
.si-cashback .si-cb-ticket-label { margin:12px 25px 32px; font-size:15px; color:#d4d0c6; }
.si-cb-ticket-bottom { position:relative; display:flex; justify-content:space-between; align-items:center; gap:15px; padding:22px 25px; border-top:1px dashed #ffffff57; font-size:11px; letter-spacing:.03em; }
.si-cb-ticket-bottom::before,.si-cb-ticket-bottom::after { content:''; position:absolute; top:-9px; width:18px; height:18px; background:#d4ccbe; border-radius:50%; }
.si-cb-ticket-bottom::before { left:-9px; } .si-cb-ticket-bottom::after { right:-9px; }
.si-cb-bars { flex:0 0 61px; height:24px; background:repeating-linear-gradient(90deg,#f6f1e5 0 2px,transparent 2px 4px,#f6f1e5 4px 5px,transparent 5px 8px); }
.si-cashback .si-cb-art-note { margin:34px 0 0; color:#514e46; font-size:11px; letter-spacing:.06em; text-align:center; }
.si-cb-how { padding:68px 0 56px; scroll-margin-top:100px; }
.si-cashback h2 { margin:0; font-weight:500; font-size:clamp(28px,3vw,38px); line-height:1.15; letter-spacing:-.035em; }
.si-cashback .si-cb-section-heading .si-cb-eyebrow { margin-bottom:12px; color:#6c6a61; }
.si-cb-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; padding:0; margin:32px 0 0; border-top:1px solid var(--cb-line); }
.si-cb-steps li { padding:26px 32px 0 0; }
.si-cb-steps li + li { border-left:1px solid var(--cb-line); padding-left:32px; }
.si-cb-step-number { display:block; margin-bottom:28px; color:#898579; font-size:13px; font-variant-numeric:tabular-nums; }
.si-cashback h3 { font-size:21px; font-weight:600; line-height:1.25; margin:0 0 10px; letter-spacing:-.02em; }
.si-cb-steps p { color:#64635c; font-size:14px; line-height:1.7; margin:0; }
.si-cb-faq { display:grid; grid-template-columns:1fr 1.5fr; gap:60px; padding:44px 0 58px; border-top:1px solid var(--cb-line); }
.si-cb-questions details { border-bottom:1px solid var(--cb-line); }
.si-cb-questions details:first-child { border-top:1px solid var(--cb-line); }
.si-cb-questions summary { display:flex; gap:24px; align-items:center; justify-content:space-between; padding:22px 0; cursor:pointer; font-size:16px; font-weight:600; line-height:1.45; list-style:none; }
.si-cb-questions summary::-webkit-details-marker { display:none; }
.si-cb-plus { position:relative; flex:0 0 16px; width:16px; height:16px; }
.si-cb-plus::before,.si-cb-plus::after { content:''; position:absolute; background:currentColor; top:7px; left:1px; width:14px; height:1px; }
.si-cb-plus::after { transform:rotate(90deg); } .si-cb-questions details[open] .si-cb-plus::after { transform:none; }
.si-cb-answer { padding:0 38px 24px 0; } .si-cb-answer p { margin:0; color:#64635c; font-size:14px; line-height:1.8; }
.si-cb-end { display:flex; justify-content:space-between; align-items:center; gap:24px; padding:30px 36px; background:var(--cb-paper); }
.si-cb-end p { margin:0; font-size:23px; font-weight:500; line-height:1.3; letter-spacing:-.02em; }
.si-cb-end .si-cb-button { flex-shrink:0; }
.si-cashback a:focus-visible,.si-cb-questions summary:focus-visible { outline:2px solid #8a6845; outline-offset:5px; }
@media (max-width:767.98px) {
.si-cashback { padding:18px 0 36px; } .si-cb-hero { grid-template-columns:1fr; } .si-cb-intro { padding:30px 24px; }
.si-cashback h1 { font-size:clamp(36px,9vw,54px); } .si-cb-lead { font-size:15px; } .si-cb-art { padding:36px 30px 26px; }
.si-cb-ticket { max-width:320px; } .si-cb-rate { font-size:clamp(68px,20vw,90px); } .si-cb-how { padding:42px 0 32px; }
.si-cb-steps { grid-template-columns:1fr; margin-top:24px; } .si-cb-steps li,.si-cb-steps li + li { position:relative; padding:22px 0 22px 44px; border-left:0; border-bottom:1px solid var(--cb-line); }
.si-cb-step-number { position:absolute; left:0; top:24px; margin:0; } .si-cb-faq { grid-template-columns:1fr; gap:24px; padding:14px 0 36px; border-top:0; }
.si-cb-end { align-items:flex-start; flex-direction:column; padding:26px 24px; }
}
@media (prefers-reduced-motion:reduce) { .si-cashback .si-cb-button { transition:none; } }
