/* Elementor integration */
.ktse-theme .elementor-widget-ktse-site-header,
.ktse-theme .elementor-widget-ktse-site-footer,
.ktse-theme .elementor-widget-ktse-hero,
.ktse-theme .elementor-widget-ktse-category-grid,
.ktse-theme .elementor-widget-ktse-age-grid,
.ktse-theme .elementor-widget-ktse-product-grid,
.ktse-theme .elementor-widget-ktse-promo,
.ktse-theme .elementor-widget-ktse-benefits{width:100%}
.ktse-theme .elementor-widget-ktse-site-header > .elementor-widget-container,
.ktse-theme .elementor-widget-ktse-site-footer > .elementor-widget-container,
.ktse-theme .elementor-widget-ktse-hero > .elementor-widget-container,
.ktse-theme .elementor-widget-ktse-category-grid > .elementor-widget-container,
.ktse-theme .elementor-widget-ktse-age-grid > .elementor-widget-container,
.ktse-theme .elementor-widget-ktse-product-grid > .elementor-widget-container,
.ktse-theme .elementor-widget-ktse-promo > .elementor-widget-container,
.ktse-theme .elementor-widget-ktse-benefits > .elementor-widget-container{margin:0!important;padding:0!important}

.ktse-product-gallery{position:relative;padding:18px}
.ktse-gallery-main{background:#fff;border:1px solid #eef0f4;border-radius:24px;padding:24px;display:flex;align-items:center;justify-content:center;min-height:480px}
.ktse-gallery-main img{width:100%;height:auto;max-height:560px;object-fit:contain}
.ktse-gallery-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:14px}
.ktse-gallery-thumbs img{width:100%;aspect-ratio:1/1;object-fit:cover;border:1px solid #e8ebf1;border-radius:14px;padding:5px;background:#fff}
.ktse-product-summary{padding:22px 10px}
.ktse-product-summary h1{font-size:clamp(30px,4vw,48px);line-height:1.08;margin:0 0 14px;color:#1c2038}
.ktse-product-summary .price{font-size:28px;font-weight:800;margin:14px 0;color:var(--kts-primary)}
.ktse-product-summary .woocommerce-product-details__short-description{font-size:16px;line-height:1.75;color:#5f6475}
.ktse-product-summary form.cart{margin:24px 0}
.ktse-product-summary .product_meta{display:grid;gap:8px;margin-top:22px;font-size:14px;color:#6d7280}
.ktse-product-summary .posted_in a{color:inherit;text-decoration:underline}

.ktse-post-grid{display:grid;gap:24px}
.ktse-post-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ktse-post-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ktse-post-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.ktse-post-card{background:#fff;border:1px solid #edf0f5;border-radius:22px;overflow:hidden;box-shadow:0 10px 30px rgba(20,24,50,.05)}
.ktse-post-image{display:block;aspect-ratio:16/10;background:#f3f4f8;overflow:hidden}
.ktse-post-image img{width:100%;height:100%;object-fit:cover;transition:.35s ease}
.ktse-post-card:hover .ktse-post-image img{transform:scale(1.04)}
.ktse-post-copy{padding:22px}
.ktse-post-copy small{font-size:13px;color:#8a8e9b}
.ktse-post-copy h3{font-size:21px;line-height:1.3;margin:8px 0 10px}
.ktse-post-copy h3 a{color:#20243a;text-decoration:none}
.ktse-post-copy p{color:#696e7c;line-height:1.65}

.ktse-contact-wrap{max-width:760px;margin:0 auto;padding:10px 0 50px}
.ktse-contact-form{background:#fff;border:1px solid #e9ecf2;border-radius:24px;padding:28px;box-shadow:0 14px 40px rgba(24,28,50,.06)}
.ktse-contact-form p{margin:0 0 18px}
.ktse-contact-form label{display:block;font-weight:700;margin-bottom:8px;color:#292d43}
.ktse-contact-form input,.ktse-contact-form textarea{width:100%;border:1px solid #dfe3ea;border-radius:12px;padding:13px 14px;font:inherit;background:#fff;outline:none}
.ktse-contact-form input:focus,.ktse-contact-form textarea:focus{border-color:var(--kts-secondary);box-shadow:0 0 0 3px rgba(91,108,255,.1)}
.ktse-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}

/* Keep Elementor editor usable and remove accidental theme max-width on builder pages. */
.elementor-page .kts-page-content{max-width:none;padding:0}
.elementor-page #content{overflow:hidden}
.elementor-editor-active #content{overflow:visible}

@media(max-width:900px){
  .ktse-gallery-main{min-height:360px}
  .ktse-post-grid.cols-3,.ktse-post-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .ktse-gallery-main{min-height:290px;padding:14px}
  .ktse-gallery-thumbs{grid-template-columns:repeat(4,1fr)}
  .ktse-product-summary{padding:10px 2px}
  .ktse-post-grid.cols-2,.ktse-post-grid.cols-3,.ktse-post-grid.cols-4{grid-template-columns:1fr}
  .ktse-field-grid{grid-template-columns:1fr;gap:0}
  .ktse-contact-form{padding:20px;border-radius:18px}
}
