/* Existing Elementor brand palette: accent cyan, deep navy, white. */
:root { --dropair-accent:var(--e-global-color-accent,#01B7F4); --dropair-ink:var(--e-global-color-90638f9,#0E293E); }
.dropair-card-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.woocommerce ul.products li.product .dropair-card-actions .button { margin:0; flex:1 1 120px; }
body.woocommerce a.button,body.woocommerce button.button,.elementor-widget-woocommerce-product-add-to-cart .button,.dropair-card-actions .button,.dropair-quote-button,.dropair-cart-quote { min-height:46px; padding:13px 19px; border:2px solid transparent; border-radius:8px; background:var(--dropair-accent); color:var(--dropair-ink); font-weight:600; line-height:1.25; text-align:center; text-decoration:none; transition:background .18s,color .18s; }
body.woocommerce a.button:hover,body.woocommerce button.button:hover,.elementor-widget-woocommerce-product-add-to-cart .button:hover,.dropair-card-actions .button:hover { background:var(--dropair-ink); color:#fff; }
body.woocommerce .dropair-quote-button,.dropair-card-actions .dropair-quote-button,.elementor-widget-woocommerce-product-add-to-cart .dropair-buy-now,body.woocommerce .dropair-buy-now { background:var(--dropair-ink); color:#fff; }
body.woocommerce .dropair-quote-button:hover,.dropair-card-actions .dropair-quote-button:hover,body.woocommerce .dropair-buy-now:hover { background:var(--dropair-accent); color:var(--dropair-ink); }
body .woocommerce a.button:focus-visible,body .woocommerce button:focus-visible,.dropair-card-actions a:focus-visible,.elementor-widget-woocommerce-product-add-to-cart button:focus-visible { outline:3px solid var(--dropair-ink); outline-offset:3px; }
.elementor-widget-woocommerce-product-add-to-cart form.cart { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin:8px 0 16px; }
.elementor-widget-woocommerce-product-add-to-cart form.cart .quantity { margin:0!important; }
.elementor-widget-woocommerce-product-add-to-cart .quantity input.qty { width:78px; min-height:46px; padding:10px; border:1px solid #bbb; border-radius:8px; color:var(--dropair-ink); }
.dropair-commerce-note { color:var(--dropair-ink); font-size:14px; line-height:1.6; margin-top:12px; }
@media(max-width:767px) { .dropair-card-actions { flex-direction:column; } .woocommerce ul.products li.product .dropair-card-actions .button { flex:auto; width:100%; } .elementor-widget-woocommerce-product-add-to-cart form.cart .button { flex:1 1 150px; } }
/* Tokyo Lab: native Elementor headings, text, images and buttons. */
.dropair-lab { --lab-ink:var(--dropair-ink); color:var(--lab-ink); gap:0!important; }
.dropair-lab h1,.dropair-lab h2,.dropair-lab h3 { color:var(--lab-ink); line-height:1.12; }
.dropair-lab h1 { font-size:clamp(38px,4.2vw,66px); letter-spacing:-.03em; }
.dropair-lab h2 { font-size:clamp(26px,3vw,40px); }
.dropair-lab h3 { font-size:24px; }
.dropair-lab p { color:inherit; font-size:17px; line-height:1.75; margin-bottom:0; }
.dropair-lab-hero,.dropair-lab-split,.dropair-lab-section,.dropair-lab-systems { padding:64px max(24px,calc((100vw - 1180px)/2))!important; }
.dropair-lab-hero { background:var(--lab-ink); color:#fff; align-items:center!important; }
.dropair-lab-hero h1,.dropair-lab-hero h2 { color:#fff; }
.dropair-lab-hero-copy { flex:1; }
.dropair-lab-hero>.elementor-widget-image { width:48%; }
.dropair-lab-split { align-items:center!important; }
.dropair-lab-split>.e-con,.dropair-lab-split>.elementor-widget-image { width:50%; }
.dropair-lab img { border-radius:16px; width:100%; }
.dropair-lab .elementor-button { min-height:46px; padding:14px 24px; border-radius:8px; background:var(--dropair-accent); color:var(--lab-ink); font-weight:600; }
.dropair-lab .elementor-button:hover { background:var(--lab-ink); color:#fff; }
.dropair-lab-hero .elementor-button:hover { background:#fff; color:var(--lab-ink); }
.dropair-lab-process>.e-con { background:var(--e-global-color-ed34be6,#F5F6F9); padding:28px; border-radius:14px; flex:1; }
.dropair-lab-systems { background:var(--e-global-color-ed34be6,#F5F6F9); }
@media(max-width:767px) { .dropair-lab-hero,.dropair-lab-split,.dropair-lab-process { flex-direction:column!important; } .dropair-lab-hero>.elementor-widget-image,.dropair-lab-split>.e-con,.dropair-lab-split>.elementor-widget-image { width:100%; } .dropair-lab-hero,.dropair-lab-split,.dropair-lab-section,.dropair-lab-systems { padding:40px 20px!important; } }
body .wc-block-cart__submit-button { background:var(--dropair-accent); color:var(--dropair-ink); min-height:48px; border-radius:8px; padding:14px 20px; font-weight:600; }
body .wc-block-cart__submit-button:hover { background:var(--dropair-ink); color:#fff; }
body .wc-block-cart__submit-button:focus-visible { outline:3px solid var(--dropair-ink); outline-offset:3px; }
/* Keep native widget rules aligned with the active brand palette. */
.dropair-lab { padding:0!important; }
.dropair-lab .dropair-lab-hero .elementor-heading-title { color:#fff!important; }
.dropair-lab .elementor-widget-heading h1.elementor-heading-title { font-size:clamp(38px,4.2vw,66px); line-height:1.08; }
.dropair-lab .elementor-button { background:var(--dropair-accent)!important; color:var(--dropair-ink)!important; }
.dropair-lab .elementor-button:hover { background:var(--dropair-ink)!important; color:#fff!important; }
.dropair-lab .dropair-lab-hero .elementor-button:hover { background:#fff!important; color:var(--dropair-ink)!important; }
body .elementor-widget-woocommerce-product-add-to-cart .cart .single_add_to_cart_button { background:var(--dropair-accent)!important; color:var(--dropair-ink)!important; min-height:46px; border-radius:8px; padding:13px 20px; }
body .elementor-widget-woocommerce-product-add-to-cart .cart .single_add_to_cart_button:hover { background:var(--dropair-ink)!important; color:#fff!important; }
.e-loop-item .elementor-widget-woocommerce-product-price .price { color:var(--dropair-ink); font-weight:600; }
.e-loop-item .elementor-widget-shortcode { width:100%; }
/* Commerce pages: readable form controls, stable summaries and mobile layouts. */
body.woocommerce-cart main,body.woocommerce-checkout main,body.woocommerce-account main { max-width:1180px; margin:0 auto; padding:36px 24px 64px; color:#0E293E; }
.dropair-checkout-intro,.dropair-payment-instructions,.dropair-confirmation { padding:24px; border-radius:14px; background:#F5F6F9; border:1px solid #dce5ec; margin:0 0 28px; }
.dropair-checkout-intro h2,.dropair-confirmation h2 { margin-top:0; color:#0E293E; }
.dropair-checkout-intro p,.dropair-confirmation p,.dropair-payment-instructions p { color:#0E293E!important; line-height:1.65; font-size:16px; }
body.woocommerce-cart .wc-block-components-quantity-selector { min-height:44px; min-width:132px; }
body.woocommerce-cart .wc-block-components-quantity-selector__button { min-height:44px; min-width:44px; }
body.woocommerce-cart .wc-block-components-quantity-selector__input { min-height:44px; font-size:16px; }
body.woocommerce-cart .wc-block-cart-item__remove-link { min-height:44px; min-width:44px; }
body.woocommerce-cart .wc-block-cart-item__product a,body.woocommerce-checkout .woocommerce-privacy-policy-link { color:#096d91; }
body .wc-block-cart__submit-button,.dropair-card-actions .button { text-decoration:none!important; }
body.woocommerce ul.products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
body.woocommerce ul.products::before,body.woocommerce ul.products::after { display:none; }
body.woocommerce ul.products li.product { width:auto!important; margin:0!important; padding:20px; border:1px solid #dce5ec; border-radius:14px; background:#fff; }
body.woocommerce ul.products li.product .price { color:#0E293E; font-size:19px; font-weight:600; }
body.woocommerce ul.products li.product .woocommerce-loop-product__title { color:#0E293E; }
body.page-id-437 main { max-width:960px; margin:0 auto; padding:40px 24px 64px; }
body.woocommerce-checkout form.checkout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:0 36px; }
body.woocommerce-checkout #customer_details { grid-column:1; grid-row:1 / span 2; width:100%; }
body.woocommerce-checkout #customer_details .col-1,body.woocommerce-checkout #customer_details .col-2 { width:100%; float:none; }
body.woocommerce-checkout #order_review_heading,body.woocommerce-checkout #order_review { grid-column:2; min-width:0; }
body.woocommerce-checkout #order_review { padding:22px; border:1px solid #dce5ec; border-radius:14px; background:#fff; }
body.woocommerce-checkout table.shop_table { border:0!important; border-collapse:collapse; }
body.woocommerce-checkout table.shop_table th,body.woocommerce-checkout table.shop_table td { border:0!important; border-bottom:1px solid #dce5ec!important; padding:14px 10px; background:transparent!important; color:#0E293E; }
body.woocommerce-checkout table.shop_table thead { background:#F5F6F9; }
body.woocommerce-checkout .wa__widget_container { display:none!important; }
body.woocommerce-cart main.site-main,body.woocommerce-checkout main.site-main,body.woocommerce-account main.site-main { max-width:1180px; margin:0 auto; padding:36px 24px 64px; }
body.woocommerce-cart .wp-block-woocommerce-cart.alignwide { margin-left:0!important; margin-right:0!important; width:100%!important; max-width:100%!important; }
body.woocommerce-cart .wa__widget_container { display:none!important; }
body.woocommerce-cart .wc-block-components-product-name { font-size:16px; font-weight:600; }
body.woocommerce-cart .wc-block-components-product-metadata__description { font-size:14px; line-height:1.55; }
body.woocommerce-checkout .form-row input.input-text,body.woocommerce-checkout .form-row select,body.woocommerce-checkout .form-row textarea,body.woocommerce-account input.input-text { min-height:48px; width:100%; border:1px solid #b8c7d3; border-radius:8px; padding:12px; font-size:16px; color:#0E293E; background:#fff; }
body.woocommerce-checkout .select2-container .select2-selection--single { min-height:48px; padding:8px; border-color:#b8c7d3; border-radius:8px; }
body.woocommerce-checkout #payment { background:#F5F6F9; border-radius:12px; }
body.woocommerce-checkout #payment .payment_box { background:#fff; border:1px solid #dce5ec; color:#0E293E; font-size:15px; line-height:1.7; overflow-wrap:anywhere; }
body.woocommerce-checkout #payment .payment_box::before { display:none; }
body.woocommerce-checkout #place_order { width:100%; min-height:50px; background:#01B7F4; color:#0E293E; border-radius:8px; font-weight:700; }
body.woocommerce-checkout #place_order:hover { background:#0E293E; color:#fff; }
body.woocommerce-checkout #payment input[type=radio] { accent-color:#0E293E; min-width:18px; min-height:18px; }
body.woocommerce-cart .wc-block-cart__sidebar { background:#F5F6F9; padding:24px; border-radius:14px; }
body.woocommerce-cart .wc-block-cart-items__row { border-bottom:1px solid #dce5ec; }
body.woocommerce-cart .wc-block-cart-item__image img,body.woocommerce ul.products li.product img,.e-loop-item .elementor-widget-theme-post-featured-image img { aspect-ratio:1; object-fit:contain; }
body.woocommerce-checkout .woocommerce-order-overview { display:flex; flex-wrap:wrap; gap:20px; padding:24px!important; background:#F5F6F9; border-radius:12px; }
body.woocommerce-checkout .woocommerce-order-overview li { float:none; border:0; margin:0; }
body.woocommerce-checkout .woocommerce-notice--success { padding:24px; background:#e9f8fd; border-left:4px solid #01B7F4; border-radius:8px; font-size:18px; line-height:1.6; }
.dropair-confirmation a.button { display:inline-block; padding:14px 22px; background:#01B7F4; color:#0E293E; border-radius:8px; margin:8px; text-decoration:none; font-weight:600; }
body.woocommerce-checkout a:focus-visible,body.woocommerce-checkout input:focus-visible,body.woocommerce-checkout button:focus-visible { outline:3px solid #01B7F4; outline-offset:3px; }
@media(max-width:767px) {
 body.woocommerce-cart main,body.woocommerce-checkout main,body.woocommerce-account main { padding:24px 16px 40px; }
 body.woocommerce-cart main.site-main,body.woocommerce-checkout main.site-main,body.woocommerce-account main.site-main { padding:24px 16px 40px; }
 body.woocommerce-checkout form.checkout { display:block; }
 body.woocommerce-checkout #order_review { padding:16px; }
 body.woocommerce-checkout .form-row-first,body.woocommerce-checkout .form-row-last { width:100%!important; float:none!important; }
 body.woocommerce-cart .wc-block-cart__sidebar { padding:16px; }
 body.woocommerce-checkout h1,body.woocommerce-cart h1 { font-size:34px; }
 .dropair-checkout-intro,.dropair-confirmation,.dropair-payment-instructions { padding:20px; }
 body.woocommerce-checkout #payment ul.payment_methods { padding:16px; }
 body.woocommerce-checkout .woocommerce-order-overview { display:grid; grid-template-columns:1fr 1fr; }
 body.woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
 body.page-id-437 main { padding:24px 16px 40px; }
}
@media(max-width:600px) { body.woocommerce ul.products { grid-template-columns:1fr; } }

/* Keep archive cards readable when Elementor supplies widget-specific styles. */
body.woocommerce-shop .elementor-widget-wc-archive-products ul.products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:24px; }
body.woocommerce-shop .elementor-widget-wc-archive-products ul.products li.product { width:100%!important; margin:0!important; }
body.woocommerce-shop .elementor-widget-wc-archive-products ul.products .button { background:#01B7F4!important; color:#0E293E!important; min-height:46px; display:flex; align-items:center; justify-content:center; padding:12px 16px; border-radius:8px; font-weight:600; }
body.woocommerce-shop .elementor-widget-wc-archive-products ul.products .dropair-buy-now { background:#0E293E!important; color:#fff!important; }
@media(max-width:1024px) { body.woocommerce-shop .elementor-widget-wc-archive-products ul.products { grid-template-columns:repeat(2,minmax(0,1fr))!important; } }
@media(max-width:600px) { body.woocommerce-shop .elementor-widget-wc-archive-products ul.products { grid-template-columns:minmax(0,1fr)!important; } }
