.shop-recurring{max-width:1060px;margin-inline:auto;color:var(--p23-text,#252323)}
.shop-recurring--compact{max-width:760px}
.shop-recurring *{box-sizing:border-box}
.shop-recurring-card{padding:clamp(20px,4vw,44px);background:var(--p23-bg-alt,#fff);border:1px solid var(--p23-border,#d8d3d1);border-radius:var(--p23-radius,12px);min-width:0;overflow-wrap:anywhere}
.shop-recurring h1{margin-top:0;font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.15}
.shop-recurring h2{font-size:1.22rem;line-height:1.35;margin-top:0}
.shop-recurring p{line-height:1.65}
.shop-recurring a{color:inherit;text-underline-offset:.2em}
.shop-recurring-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,42px);align-items:center;margin-block:28px 36px}
.shop-recurring-hero>*,.shop-recurring-fields>*{min-width:0}
.shop-recurring-photo{aspect-ratio:1;overflow:hidden;border-radius:var(--p23-radius,12px);background:#4a191d}
.shop-recurring-photo img{display:block;width:100%;height:100%;object-fit:cover}
.shop-recurring-eyebrow{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--p23-muted,#666);font-weight:700;margin:0 0 12px}
.shop-recurring-switch{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:0 0 28px;padding:5px;border:1px solid var(--p23-border,#d8d3d1);border-radius:12px;width:fit-content;max-width:100%;margin-inline:auto}
.shop-recurring-switch a,.shop-recurring-switch span{display:flex;justify-content:center;align-items:center;min-height:44px;padding:10px 20px;text-decoration:none;border-radius:8px;text-align:center;font-weight:600}
.shop-recurring-switch [aria-current="page"]{background:#ab1730;color:#fff}
.shop-recurring-fieldset{border:0;padding:0;margin:0;min-width:0}
.shop-recurring-fieldset legend{font-size:1.12rem;font-weight:700;margin-bottom:16px}
.shop-recurring-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.shop-recurring-option{position:relative;display:block;cursor:pointer;min-width:0}
.shop-recurring-option input{position:absolute;opacity:0;width:1px;height:1px}
.shop-recurring-option>span{display:flex;flex-direction:column;align-items:center;gap:4px;padding:22px 10px;border:2px solid var(--p23-border,#d8d3d1);border-radius:12px;text-align:center;line-height:1.4;background:var(--p23-bg,#faf8f7);transition:border-color .15s,background .15s}
.shop-recurring-option strong{font-size:1.55rem;font-weight:700}
.shop-recurring-option small{font-size:.78rem;margin-top:8px}
.shop-recurring-option input:checked+span{border-color:#ab1730;background:#ab1730;color:#fff}
.shop-recurring-option input:focus-visible+span,.shop-recurring :is(a,button,input,select,summary):focus-visible{outline:3px solid var(--p23-text,#252323);outline-offset:4px}
.shop-recurring-form{display:grid;gap:24px}
.shop-recurring-form>p{margin:0}
.shop-recurring-form label:not(.shop-recurring-option){font-weight:600;display:block;margin-bottom:8px}
.shop-recurring .p23-input{display:block;width:100%;max-width:100%;min-width:0;min-height:46px;font:inherit}
.shop-recurring-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.shop-recurring-notice{padding:20px;border:1px solid var(--p23-border,#d8d3d1);border-inline-start:4px solid #ab1730;border-radius:8px;margin-block:24px;background:var(--p23-bg,#faf8f7)}
.shop-recurring-notice>:first-child{margin-top:0}
.shop-recurring-notice>:last-child{margin-bottom:0}
.shop-recurring-form .shop-recurring-notice{margin:0}
.shop-recurring-form label.shop-recurring-check{display:flex;gap:12px;align-items:flex-start;font-weight:400;margin:0;line-height:1.6;cursor:pointer}
.shop-recurring-check input{width:22px;height:22px;min-width:22px;flex:none;margin:2px 0 0;accent-color:#ab1730}
.shop-recurring .p23-button{min-height:46px;margin:0;max-width:100%;white-space:normal;line-height:1.4;text-align:center;justify-content:center}
.shop-recurring-form>.p23-button{justify-self:start}
.shop-recurring-access{padding-top:24px;border-top:1px solid var(--p23-border,#d8d3d1);margin-top:32px}
.shop-recurring-summary{margin:28px 0;display:grid;gap:14px}
.shop-recurring-summary>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:20px;border-bottom:1px solid var(--p23-border,#d8d3d1);padding-bottom:14px}
.shop-recurring-summary dt{color:var(--p23-muted,#666)}
.shop-recurring-summary dd{margin:0;font-weight:600}
.shop-recurring-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:24px 0}
.shop-recurring-actions form{margin:0}
.shop-recurring-detail{border-top:1px solid var(--p23-border,#d8d3d1);padding-block:16px;margin-top:12px}
.shop-recurring-detail summary{font-size:1rem;font-weight:700;cursor:pointer;min-height:44px;padding-block:10px}
.shop-recurring-detail[open] summary{margin-bottom:14px}
.shop-recurring-history{margin-top:32px}
.shop-recurring-history-list{list-style:none;padding:0;margin:20px 0}
.shop-recurring-history-list li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:20px;padding-block:16px;border-bottom:1px solid var(--p23-border,#d8d3d1);align-items:center}
.shop-recurring-history-list li>div{display:flex;flex-direction:column;gap:5px}
.shop-recurring-history-list li span{color:var(--p23-muted,#666);font-size:.9rem}
.shop-recurring-history-list a{min-height:44px;display:inline-flex;align-items:center}
.shop-recurring-widget{margin-top:24px;min-width:0;max-width:100%}
.shop-recurring-widget iframe{max-width:100%}
.shop-recurring-bank-frame{display:block;width:100%;height:520px;max-width:100%;border:1px solid var(--p23-border,#d8d3d1);margin-block:24px;background:#fff}
.shop-recurring-bank-verify{margin-top:24px}
.shop-recurring-account-list{padding:0;list-style:none;margin-bottom:32px}
.shop-recurring-account-list a{display:block;min-height:44px;padding-block:14px;border-bottom:1px solid var(--p23-border,#d8d3d1)}
.shop-recurring-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){.shop-recurring-hero{grid-template-columns:minmax(0,1fr)}.shop-recurring-photo{max-width:420px;width:100%;margin-inline:auto}.shop-recurring-fields{grid-template-columns:minmax(0,1fr)}}
@media(max-width:480px){.shop-recurring-card{padding:20px 16px}.shop-recurring-options{grid-template-columns:minmax(0,1fr);gap:10px}.shop-recurring-option>span{display:grid;grid-template-columns:1fr 1fr;text-align:left;padding:14px 18px;gap:2px 12px}.shop-recurring-option strong{font-size:1.3rem}.shop-recurring-option small{grid-column:1/-1;margin-top:2px}.shop-recurring-notice{padding:16px}.shop-recurring-summary>div{grid-template-columns:minmax(0,1fr);gap:6px}.shop-recurring-history-list li{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.shop-recurring-history-list li>a{grid-column:1/-1}.shop-recurring-actions{display:grid;grid-template-columns:minmax(0,1fr)}.shop-recurring-form>.p23-button,.shop-recurring-actions .p23-button{width:100%}.shop-recurring-switch{width:100%}.shop-recurring-switch a,.shop-recurring-switch span{flex:1;padding-inline:10px}}
@media(prefers-reduced-motion:reduce){.shop-recurring-option>span{transition:none}}
