/* CT Ecommerce - theme Elementor widgets */
.ct-note{padding:14px;border:1px dashed var(--ct-border);border-radius:12px;color:var(--ct-muted);text-align:center}

/* Hero slider */
.ct-hero{position:relative;overflow:hidden;border-radius:24px}
.ct-hero-slide{display:none;align-items:center;min-height:360px;padding:0 64px;background-size:cover;background-position:center}
.ct-hero-slide.is-on{display:flex;animation:ctFade .5s ease}
@keyframes ctFade{from{opacity:0}to{opacity:1}}
.ct-hero-copy{max-width:520px;padding:40px 0}
.ct-hero-eyebrow{margin:0 0 8px;font-weight:700;color:var(--ct-muted)}
.ct-hero-title{font-size:clamp(2rem,5vw,3rem);font-weight:800;color:var(--ct-primary-dark);margin:0 0 14px}
.ct-hero-text{margin:0 0 24px;color:var(--ct-muted)}
.ct-hero-media{flex:1;display:flex;justify-content:center}
.ct-hero-media img{border-radius:16px;max-height:320px;width:auto}
.ct-hero-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.85);border:0;font-size:1.5rem;line-height:1;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.15);color:var(--ct-text)}
.ct-hero-arrow:hover{background:#fff}.ct-hero-prev{left:14px}.ct-hero-next{right:14px}
.ct-hero-dots{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);display:flex;gap:8px}
.ct-hero-dot{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:var(--ct-primary-border);cursor:pointer}
.ct-hero-dot.is-on{background:var(--ct-primary)}
@media(max-width:767px){.ct-hero-slide{padding:0 24px}.ct-hero-media{display:none}.ct-hero-copy{padding:30px 0 50px}}

/* Promo boxes */
.ct-promo-grid{display:grid;gap:20px;grid-template-columns:repeat(3,1fr)}
@media(max-width:1024px){.ct-promo-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.ct-promo-grid{grid-template-columns:1fr}}
.ct-promo{border-radius:16px;padding:28px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.ct-promo-eyebrow{margin:0 0 4px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.ct-promo-title{margin:0 0 14px;font-family:var(--ct-font-heading);font-weight:700;font-size:1.15rem;line-height:1.35}
.ct-promo-btn{padding:9px 20px;font-size:.875rem;font-family:var(--ct-font-body);font-weight:700;color:#fff}
.ct-promo-img img{border-radius:12px;width:90px;display:block}

/* Newsletter */
.ct-news{background:var(--ct-primary-soft);border-radius:24px;padding:48px 24px;text-align:center}
.ct-news-title{font-size:1.8rem;margin:0 0 8px}
.ct-news-text{margin:0 auto 20px;color:var(--ct-muted);max-width:520px}
.ct-news-form{display:flex;gap:8px;max-width:520px;margin:0 auto}
.ct-news-form input{border-radius:999px;padding:12px 20px}
.ct-news-form button{flex-shrink:0}
.ct-news-msg{min-height:1.4em;margin:10px 0 0;font-weight:700;font-size:.9rem}
.ct-news-msg.is-ok,.ct-pin-msg.is-ok{color:#059669}.ct-news-msg.is-err,.ct-pin-msg.is-err{color:#DC2626}
@media(max-width:520px){.ct-news-form{flex-direction:column}}

/* Pincode */
.ct-pin{border:1px solid var(--ct-border);border-radius:14px;padding:16px;background:#fff}
.ct-pin-title{margin:0 0 10px;font-weight:700}
.ct-pin-form{display:flex;gap:8px}
.ct-pin-input{max-width:220px;border-radius:999px}
.ct-pin-submit{padding:10px 22px}
.ct-pin-msg{margin:8px 0 0;font-size:.8rem;color:var(--ct-muted)}
.ct-pin-msg.is-ok,.ct-pin-msg.is-err{font-weight:700;font-size:.875rem}

/* Breadcrumb + prev/next */
.ct-pn{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}
.ct-pn .ct-breadcrumb{margin:0}
.ct-pn-links{display:flex;gap:18px;font-size:.875rem;font-weight:700}

/* Reviews */
.ct-rev h3{font-size:1.4rem}
.ct-rev-summary{display:flex;gap:32px;flex-wrap:wrap;align-items:center;margin-bottom:24px}
.ct-rev-score{text-align:center}.ct-rev-score strong{display:block;font-family:var(--ct-font-heading);font-size:3rem;line-height:1}
.ct-rev-stars{color:#F59E0B;letter-spacing:2px;display:block}.ct-rev-score small{color:var(--ct-muted)}
.ct-rev-bars{flex:1;min-width:220px;max-width:420px}
.ct-rev-row{display:grid;grid-template-columns:36px 1fr 30px;gap:8px;align-items:center;font-size:.8rem;margin:3px 0}
.ct-rev-bar{height:8px;background:#F3F4F6;border-radius:99px;overflow:hidden;display:block}
.ct-rev-bar i{display:block;height:100%;background:#F59E0B}

/* Checkout steps */
.ct-steps{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 24px}
.ct-step{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--ct-muted)}
.ct-step-n{width:30px;height:30px;border-radius:50%;border:2px solid var(--ct-border);display:flex;align-items:center;justify-content:center;font-size:.85rem}
.ct-step.is-on,.ct-step.is-done{color:var(--ct-text)}
.ct-step.is-on .ct-step-n,.ct-step.is-done .ct-step-n{background:var(--ct-primary);border-color:var(--ct-primary);color:#fff}
.ct-step-line{width:60px;height:2px;background:var(--ct-border)}.ct-step-line.is-done{background:var(--ct-primary)}
@media(max-width:520px){.ct-step-line{width:24px}.ct-step-l{display:none}.ct-step.is-on .ct-step-l{display:inline}}

/* CTA banner */
.ct-cta{background:linear-gradient(135deg,var(--ct-primary),var(--ct-primary-dark));padding:48px 28px;border-radius:24px;text-align:center}
.ct-cta-title{color:#fff;font-size:1.8rem;margin:0 0 8px}
.ct-cta-text{color:rgba(255,255,255,.9);margin:0 0 20px}
.ct-cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.ct-cta-b1{background:#fff;color:var(--ct-primary-dark)}.ct-cta-b1:hover{background:var(--ct-primary-soft);color:var(--ct-primary-dark)}
.ct-cta-b2{color:#fff}.ct-cta-b2:hover{background:rgba(255,255,255,.15);color:#fff}

/* Stats */
.ct-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:767px){.ct-stats{grid-template-columns:repeat(2,1fr)}}
.ct-stat{text-align:center;background:var(--ct-primary-soft);border-radius:16px;padding:26px 12px}
.ct-stat-n{font-family:var(--ct-font-heading);font-weight:800;font-size:2.2rem;color:var(--ct-primary-dark);line-height:1.1}
.ct-stat-l{color:var(--ct-muted);font-weight:700;margin-top:4px}

/* Page header */
.ct-ph{background:linear-gradient(135deg,var(--ct-primary-soft),var(--ct-primary-border));padding:48px 24px;border-radius:24px;text-align:center}
.ct-ph .ct-breadcrumb{margin-bottom:12px}
.ct-ph-title{font-size:2.4rem;margin:0}.ct-ph-sub{max-width:640px;margin:10px auto 0;color:var(--ct-muted)}

/* Return form */
.ct-return{max-width:672px;margin:0 auto;padding:32px 16px}
.ct-return-title{font-size:1.9rem;margin:0 0 6px}.ct-return-sub{color:var(--ct-muted);font-size:.875rem;margin:0 0 24px}
.ct-return-error{background:#FEF2F2;border-left:4px solid #EF4444;border-radius:10px;padding:12px 16px;margin-bottom:16px}
.ct-return-items{display:grid;gap:10px;margin-bottom:22px}
.ct-return-item{display:flex;align-items:center;gap:14px;border:1px solid #F3F4F6;border-radius:16px;padding:12px;cursor:pointer}
.ct-return-item input{width:auto}.ct-return-img img{width:64px;height:64px;object-fit:cover;border-radius:12px;display:block}
.ct-return-meta{display:flex;flex-direction:column;font-size:.9rem}.ct-return-meta small{color:var(--ct-muted)}
.ct-return-card{border:1px solid #F3F4F6;border-radius:16px;padding:24px;display:grid;gap:14px}
.ct-field-label{font-weight:700;font-size:.875rem;margin:0}.ct-field-label small{color:var(--ct-muted);font-weight:400}
.ct-return-types{display:flex;gap:12px}
.ct-return-types label{flex:1;display:flex;align-items:center;gap:8px;border:1px solid var(--ct-border);border-radius:12px;padding:12px 16px;cursor:pointer;font-weight:700}
.ct-return-types label.is-on{border:2px solid var(--ct-primary);background:var(--ct-primary-soft)}
.ct-return-types input,.ct-return-yn input{width:auto}
.ct-return-yn{display:flex;gap:18px}.ct-return-yn label{display:flex;gap:6px;align-items:center}
.ct-upload{display:block;border:2px dashed var(--ct-border);border-radius:12px;padding:24px;text-align:center;cursor:pointer;color:var(--ct-muted)}
.ct-upload:hover{border-color:var(--ct-primary-border)}.ct-upload-ico{display:block;font-size:1.8rem}.ct-upload small{display:block}
.ct-upload-input{position:absolute;left:-9999px}
.ct-return-foot{text-align:center;font-size:.75rem;color:var(--ct-muted);margin:0}
.ct-return-ok{text-align:center;padding:40px 16px}.ct-return-note{text-align:center;padding:30px}

.ct-el-product{display:block}

/* Product price */
.ct-pp-rating{display:flex;gap:6px;align-items:center;margin-bottom:6px;font-size:.9rem}.ct-pp-stars{color:#F59E0B;letter-spacing:1px}.ct-pp-rating small{color:var(--ct-muted)}
.ct-pp-pricebox{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ct-pp-price{font-family:var(--ct-font-heading);font-size:1.9rem;font-weight:800;color:var(--ct-text)}
.ct-pp-price del{font-size:1.1rem;font-weight:400;color:var(--ct-muted);margin-right:8px}.ct-pp-price ins{text-decoration:none}
.ct-pp-save{background:var(--ct-primary-soft);color:var(--ct-primary-dark);font-weight:800;font-size:.8rem;border-radius:999px;padding:4px 12px}
.ct-pp-short{margin-top:10px;color:var(--ct-muted)}.ct-pp-meta{display:flex;gap:16px;margin-top:10px;font-size:.85rem;font-weight:700}
.ct-pp-in{color:#059669}.ct-pp-out{color:#DC2626}
.ct-section-title .elementor-heading-title{font-size:1.8rem}

.ct-hero--overlay .ct-hero-eyebrow,.ct-hero--overlay .ct-hero-title,.ct-hero--overlay .ct-hero-text{color:#fff}
.ct-hero--overlay .ct-hero-btn{background:#fff;color:var(--ct-primary-dark)}
.ct-hero-media img{max-width:100%}
