.submit-coupon-section{padding:calc(var(--space-global-to-h1) + 16px) 0;background:#F9F9F9;margin:0}
.submit-coupon-wrapper{display:grid;grid-template-columns:1.06fr 1fr;gap:48px;align-items:start}
@media(max-width:992px){.submit-coupon-wrapper{grid-template-columns:1fr;gap:24px}}

.submit-info h1{font-weight:700;font-size: clamp(28px,3vw,30px);line-height:1.25;letter-spacing:-.01em;color:#1a1a1a;margin:18px 0 24px}
.submit-info p{margin:0 0 16px;font-weight:400;font-size:16px;line-height:1.7;color:#202124;max-width:62ch}
.submit-note{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border-left:3px solid #AFC3DB;background:transparent;border-radius:0}

.submit-note .svg{flex:0 0 16px;width:16px;height:16px;opacity:.9;margin-top:2px}
.submit-note p{margin:0;font-weight:400;font-size:14.5px;line-height:1.6;color:#202124}

.submit-form-box{background:#fff;padding:36px;border-radius:20px;box-shadow:0 0 0 1px var(--stroke);margin-top:18px}
@media(max-width:768px){.submit-form-box{padding:24px;border-radius:16px;margin-top:18px}}
.submit-form-box .form-group{margin:0 0 18px}
.submit-form-box label{display:block;margin:0 0 8px;font-weight:700;font-size:16px;line-height:1.35;color:#1a1a1a}
.submit-form-box input,.submit-form-box textarea,.submit-form-box select,.submit-form-box button{font-family:inherit}
.submit-form-box .form-control{display:block;width:100%;height:52px;padding:0 16px;border:none;border-radius:999px;background:#F9F9F9;box-shadow:inset 0 0 0 1px #EDEDED;font-weight:400;font-size:16px;color:#202124;outline:0;box-sizing:border-box}
.submit-form-box textarea.form-control{height:auto;min-height:110px;padding:14px 16px;border-radius:18px}
.submit-form-box .form-control::placeholder{color:#8A8A8A}

/* Offer Type = full width 2-up (12px gap), icon left, label 400 */
.offer-type-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}
.offer-option{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:10px;height:52px;padding:0 18px;border-radius:999px;background:#fff;border:1px solid #E6ECF2;cursor:pointer;width:100%;box-sizing:border-box}
.offer-option input[type=radio]{position:absolute;inset:0;opacity:0;margin:0}
.offer-option .custom-radio{display:flex;align-items:center;justify-content:center;flex:0 0 16px;width:16px;height:16px}
.offer-option .custom-radio svg{width:16px;height:16px;opacity:.7}
.offer-option span:last-child{font-weight:400;font-size:15px;line-height:1.2;color:#1a1a1a}
.offer-option.is-active{border-color:#AFC3DB}
.offer-option:has(input[type=radio]:checked){border-color:#AFC3DB}
.offer-option input[type=radio]:checked + .custom-radio svg{opacity:1}
@media(max-width:480px){.offer-type-options{grid-template-columns:1fr}}

#codeFieldWrapper .form-control{height:52px;border-radius:999px}

/* Expiration Date */
.exp-wrapper{margin-top:12px}
.exp-header{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;margin:0 0 12px}
.exp-label{font-weight:700;font-size:16px;line-height:1.35;color:#1a1a1a}
.switch-main{display:flex;align-items:center}
.switch{position:relative;display:inline-block;width:42px;height:24px}
.switch input{opacity:0;width:0;height:0}
.slider{position:absolute;inset:0;border-radius:999px;background:#D9E4F1;box-shadow:inset 0 0 0 1px #AFC3DB}
.slider:before{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.08);transition:transform .2s ease}
.switch input:checked+.slider{background:#286CAC;box-shadow:inset 0 0 0 1px #286CAC}
.switch input:checked+.slider:before{transform:translateX(18px)}
.optional-text{font-weight:500;font-size:14px;line-height:1;color:#6B7280;justify-self:end}

#expDateFields{display:none}
.offer-type-options.exp_date{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}
.offer-type-options.exp_date>.offer-option{padding:0;height:auto;border-radius:14px;background:transparent;border:none;min-width:0;width:100%}
.offer-type-options.exp_date input[type=date]{display:block;width:100%;height:52px;padding:0 14px;border-radius:999px;border:none;background:#F9F9F9;box-shadow:inset 0 0 0 1px #EDEDED;font-weight:400;font-size:16px;color:#202124;box-sizing:border-box}
.offer-type-options.exp_date input[type=date]::-webkit-calendar-picker-indicator{opacity:1}
@media(max-width:600px){.offer-type-options.exp_date{grid-template-columns:1fr}}

/* Error styles + summary chip */
.error{color:#B42318;font-weight:600;font-size:13px;margin-top:6px}
.form-control.is-invalid{background:#FFF7F7;box-shadow:inset 0 0 0 1px #E6B8B5}
.form-alert{display:none;background:#FFF4F2;border:1px solid #F4C7C3;color:#B42318;border-radius:12px;padding:12px 14px;margin:12px 0;font-size:14px}
.form-alert ul{margin:6px 0 0 18px;padding:0}
.form-alert li{margin:2px 0}

.button-container{display:flex;justify-content:center;align-items:center;width:100%;margin-top:8px}
.my-button,.ci-btn{background:var(--btn-bg);border:none;color:var(--btn-text);width:148px;height:51px;padding:0 26px;border-radius:999px;font-weight:700;font-size:15px;line-height:1;cursor:pointer;text-decoration:none}

.share-coupon-faq{background:#EDEDED;margin-top:60px}
.faq-section{background:#fff;border-radius:20px;padding:56px 64px;box-shadow:0 0 0 1px var(--stroke)}
.faq-content{display:grid;grid-template-columns:460px 1fr;column-gap:32px;align-items:start}
.faq-header{margin-top:8px;padding-right:8px}
.faq-header h2{font-weight:700;font-size:clamp(24px,2vw,28px);line-height:1.28;color:#1a1a1a;margin:0 0 12px}
.faq-header p{font-weight:400;font-size:16px;line-height:1.7;color:#202124;margin:0}
.faq-list{display:flex;flex-direction:column}
.faq-list .faq-item{padding:18px 0;border-bottom:1px solid #EEF2F6}
.faq-list .faq-item:last-child{border-bottom:none}
.faq-item{cursor:pointer}
.faq-question{display:grid;grid-template-columns:1fr 20px;align-items:center;gap:12px}
.faq-question h3{font-weight:700;font-size:clamp(17px,1.2vw,19px);line-height:1.35;color:#1a1a1a;margin:0}
.faq-icon{width:14px;height:14px;transition:transform .18s}
.faq-answer{display:none;margin-top:16px;font-weight:400;font-size:16px;line-height:1.7;color:#202124;max-width:66ch}
.faq-item.active .faq-answer,.faq-item[open] .faq-answer{display:block}
.faq-item.active .faq-icon,.faq-item[open] .faq-icon{transform:rotate(180deg)}
@media(max-width:900px){.faq-content{grid-template-columns:1fr;gap:24px}.faq-section{padding:44px 24px}}
@media(max-width:768px){.faq-section{padding:24px;border-radius:16px}}
/* offer-type alignment + contrast */
.offer-type-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}
.offer-type-options .offer-option{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;height:52px;width:100%;padding:0 18px;box-sizing:border-box;border:1px solid #E6ECF2;border-radius:999px;background:#fff;white-space:nowrap}
.offer-type-options .offer-option input[type=radio]{position:absolute;inset:0;opacity:0;margin:0}
.offer-type-options .offer-option .custom-radio{flex:0 0 16px;width:16px;height:16px;display:flex;align-items:center;justify-content:center}
.offer-type-options .offer-option .custom-radio svg{width:16px;height:16px;opacity:.32}
.offer-type-options .offer-option span:last-child{font-weight:400;font-size:15px;line-height:1.2;color:#1a1a1a}
.offer-type-options .offer-option:has(input[type=radio]:checked){border-color:#AFC3DB}
.offer-type-options .offer-option:has(input[type=radio]:checked) .custom-radio svg{opacity:1}
@media(max-width:480px){.offer-type-options{grid-template-columns:1fr}}