/* Integration overrides for third-party plugins. Only appearance changes; do not change markup.
   Use specific plugin selectors where available to avoid collisions.
*/

/* Fluent Forms / FluentCRM */
.ehba-form{display:grid;gap:16px}
.ehba-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ehba-form-field{display:grid;gap:8px}
.ehba-form label{font-size:.95rem;font-weight:600;color:var(--ehba-deep-burgundy)}
.ehba-form input,.ehba-form textarea,.ehba-form select{width:100%;min-height:46px;border:1px solid rgba(92,16,40,0.15);border-radius:var(--radius-sm);padding:10px 12px;background:var(--ehba-white);color:var(--ehba-charcoal)}
.ehba-form textarea{min-height:140px;resize:vertical}
.ehba-form .ehba-form-actions{display:flex;justify-content:flex-start}
.ehba-form .ehba-button.primary{margin-top:4px}
.ehba-fluent-form .ff-el-group{margin-bottom:16px}
.ehba-fluent-form .ff-btn-submit,.ehba-fluent-form .ff-btn-submit:hover{display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:var(--radius-sm);background:var(--ehba-burgundy);color:var(--ehba-white);border:1px solid transparent;font-weight:600;text-decoration:none}
.ehba-fluent-form .ff-btn-submit:hover{background:var(--ehba-deep-burgundy)}
@media (max-width:768px){.ehba-form-grid{grid-template-columns:1fr}}

/* WooCommerce */
.woocommerce-page .site-main{width:100%}
.ehba-woocommerce-section{padding-top:64px;padding-bottom:80px}
.ehba-woocommerce-container{width:100%;max-width:var(--container-width);margin-inline:auto;padding-inline:30px}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;list-style:none;margin:0;padding:0}
.woocommerce ul.products li.product{list-style:none;float:none;width:auto;margin:0;padding:20px;background:var(--ehba-white);border-radius:var(--radius-md);box-shadow:var(--elev-1);display:flex;flex-direction:column;gap:14px;position:relative;min-width:0}
@media (max-width:992px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:576px){.woocommerce ul.products,.woocommerce .products{grid-template-columns:1fr;}}
.woocommerce ul.products li.product .woocommerce-loop-product__link{display:block;color:inherit;text-decoration:none}
.woocommerce ul.products li.product .onsale{position:absolute;top:18px;left:18px;z-index:2;background:var(--ehba-burgundy);color:var(--ehba-white);padding:6px 10px;border-radius:999px;font-size:.75rem;font-weight:700}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1.2rem;line-height:1.4;color:var(--ehba-deep-burgundy);margin:0}
.woocommerce ul.products li.product .price{color:var(--ehba-burgundy);font-weight:700;font-size:1.125rem}
.woocommerce ul.products li.product .button{margin-top:auto}
.woocommerce .button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:var(--radius-md);background:var(--ehba-burgundy);color:var(--ehba-white);border:1px solid transparent;font-weight:600;line-height:1.2;text-decoration:none;transition:all .2s ease}
.woocommerce .button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover, .woocommerce #respond input#submit:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover{background:var(--ehba-deep-burgundy);color:var(--ehba-white);text-decoration:none}
.woocommerce .button.alt, .woocommerce a.button.alt, .woocommerce button.button.alt{background:var(--ehba-rose-gold);color:var(--ehba-white)}
.woocommerce .button.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover{background:var(--ehba-burgundy)}
.woocommerce div.product{display:grid;grid-template-columns:1.1fr 0.9fr;gap:32px;align-items:start}
.woocommerce div.product .price{color:var(--ehba-burgundy);font-weight:700;font-size:1.5rem}
.woocommerce div.product .woocommerce-product-gallery{max-width:640px;width:100%}
.woocommerce div.product .summary{padding:0}
.woocommerce div.product .summary .product_title{font-size:clamp(2rem,3vw,3rem);margin-bottom:12px;color:var(--ehba-deep-burgundy)}
.woocommerce div.product .summary .cart{margin-top:24px}
.woocommerce div.product .summary .quantity .qty{min-height:44px;padding:0 12px;border:1px solid rgba(92,16,40,0.15);border-radius:var(--radius-sm)}
.woocommerce .woocommerce-message, .woocommerce .woocommerce-error, .woocommerce .woocommerce-info{border-left:4px solid var(--ehba-rose-gold);padding:12px 16px;background:rgba(199,154,109,0.08);border-radius:var(--radius-sm);color:var(--ehba-charcoal)}
.woocommerce-cart table.cart, .woocommerce-checkout .checkout, .woocommerce-account .woocommerce-MyAccount-content, .woocommerce-account .woocommerce-MyAccount-navigation{background:var(--ehba-white);border-radius:var(--radius-md);box-shadow:var(--elev-1)}
.woocommerce-cart table.cart thead th, .woocommerce-checkout .shop_table thead th{background:var(--ehba-blush);color:var(--ehba-deep-burgundy)}
.woocommerce .quantity input.qty{border:1px solid rgba(92,16,40,0.15);border-radius:var(--radius-sm);padding:10px 12px}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:12px 14px;border-radius:var(--radius-sm);background:rgba(140,29,64,0.04);color:var(--ehba-charcoal);text-decoration:none}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a, .woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:var(--ehba-burgundy);color:var(--ehba-white)}
.woocommerce-account .woocommerce-MyAccount-content{padding:24px}
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select{min-height:46px;border:1px solid rgba(92,16,40,0.15);border-radius:var(--radius-sm);padding:10px 12px;background:var(--ehba-white);color:var(--ehba-charcoal)}
.woocommerce form .form-row textarea{min-height:120px}
.woocommerce .woocommerce-ordering{margin-bottom:20px}
.woocommerce .woocommerce-ordering select{min-height:42px;padding:0 12px;border:1px solid rgba(92,16,40,0.15);border-radius:var(--radius-sm)}

/* Shop page: the editable WooCommerce shop page uses the same full-width
   editorial composition as EHBA's Blog and Gallery pages. */
.ehba-shop-page-section{padding-top:0;padding-bottom:clamp(64px,8vw,112px)}
.ehba-shop-page-container{max-width:1440px}
.ehba-shop-page-main .entry-content,.ehba-shop-page-main .woocommerce,.ehba-shop-page-main .wc-block-grid{width:100%;max-width:none}
.ehba-shop-page-main .woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;width:100%!important}
.ehba-shop-page-main .woocommerce ul.products li.product{float:none!important;width:100%!important;max-width:none!important;margin:0!important;padding:16px;min-height:100%;border:1px solid rgba(92,16,40,.08);overflow:hidden}
.ehba-shop-page-main .woocommerce ul.products li.product img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:calc(var(--radius-md) - 4px);margin:0 0 2px}
.ehba-shop-page-main .woocommerce ul.products li.product .woocommerce-loop-product__link{display:flex;flex:1;flex-direction:column;gap:12px}
.ehba-shop-page-main .woocommerce ul.products li.product .woocommerce-loop-product__title{margin-top:auto;font-size:1.08rem}
.ehba-shop-page-main .woocommerce ul.products li.product .button{width:100%;min-height:46px}
@media (max-width:1180px){.ehba-shop-page-main .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:820px){.ehba-shop-page-main .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ehba-shop-page-main .woocommerce ul.products li.product{padding:14px}}
@media (max-width:520px){.ehba-shop-page-main .woocommerce ul.products{grid-template-columns:1fr;gap:16px}.ehba-shop-page-main .woocommerce ul.products li.product img{aspect-ratio:16/11}}

/* Single product gallery adjustments */
.woocommerce div.product .woocommerce-product-gallery{max-width:640px}

/* Tutor LMS */
.tutor-course-single .tutor-course-header{background:transparent;padding:0}
.tutor-course-single .tutor-course-header .course-title{color:var(--ehba-deep-burgundy)}
.tutor-course-single .tutor-btn{background:var(--ehba-burgundy);color:var(--ehba-white)}
.ehba-course-single .ehba-course-detail-card{padding:0;border:none;box-shadow:none}
.ehba-course-single .ehba-course-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}
.ehba-course-detail-body{margin-top:32px;line-height:1.8;color:var(--ehba-charcoal)}
.ehba-filterable-courses{margin-top:24px}
.ehba-filterable-courses .ehba-cards-grid{grid-template-columns:repeat(2,1fr)}

/* Amelia */
.amelia-calendar{border-radius:12px;box-shadow:var(--elev-1)}
.amelia-booking .appointment-card{border-radius:12px;background:#fff;padding:12px}

/* JetEngine listings */
.jet-listing-grid .jet-listing-item{background:#fff;border-radius:12px;padding:16px;box-shadow:var(--elev-1)}

/* JetSmartFilters */
.jet-filter{background:transparent;border:1px solid #f0f0f0;padding:8px;border-radius:8px}
.ehba-course-filters{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px;}
.ehba-course-filters .jet-filter{min-width:220px;flex:1 1 240px;}
.ehba-filterable-courses .jet-listing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}
.ehba-filterable-courses .jet-listing-item{display:block;}

/* Avoid aggressive selector overrides to keep plugin functionality intact */
