/* Essentials Direct v1.2.1 readability layer.
 * Keeps the compact storefront layout while lifting important customer-facing
 * text out of the 8–12px range that is difficult to read on phones and for
 * older customers.
 */

body.ed-custom-shell-active {
  font-size: 16px;
  line-height: 1.55;
  text-rendering: optimizeLegibility;
}

/* Header, search, location and navigation. */
body.ed-custom-shell-active .ed-announcement { font-size: 12px; }
body.ed-custom-shell-active .ed-announcement-links { font-size: 11px; }
body.ed-custom-shell-active .ed-delivery-message small,
body.ed-custom-shell-active .ed-action-copy small { font-size: 12px; }
body.ed-custom-shell-active .ed-delivery-message strong { font-size: 14px; }
body.ed-custom-shell-active .ed-mobile-location button small { font-size: 12px; }
body.ed-custom-shell-active .ed-mobile-location button strong { font-size: 14px; }
body.ed-custom-shell-active .ed-product-search input[type="search"] { font-size: 15px; }
body.ed-custom-shell-active .ed-product-search button { font-size: 14px; }
body.ed-custom-shell-active .ed-live-result-copy strong { font-size: 14px; }
body.ed-custom-shell-active .ed-live-result-copy small { font-size: 12px; }
body.ed-custom-shell-active .ed-live-result-price { font-size: 14px; }
body.ed-custom-shell-active .ed-live-result-all,
body.ed-custom-shell-active .ed-live-result-empty,
body.ed-custom-shell-active .ed-live-result-loading { font-size: 14px; }
body.ed-custom-shell-active .ed-action-copy strong { font-size: 13px; }
body.ed-custom-shell-active .ed-category-list > li > a { font-size: 13px; }
body.ed-custom-shell-active .ed-mega-heading a,
body.ed-custom-shell-active .ed-mega-group a { font-size: 13px; }
body.ed-custom-shell-active .ed-mega-group .ed-mega-parent { font-size: 14px; }
body.ed-custom-shell-active .ed-drawer-account small { font-size: 12px; }
body.ed-custom-shell-active .ed-drawer-account a { font-size: 14px; }
body.ed-custom-shell-active .ed-drawer-nav > a { font-size: 15px; }
body.ed-custom-shell-active .ed-drawer-nav > a b { font-size: 11px; }
body.ed-custom-shell-active .ed-location-modal-head small { font-size: 12px; }
body.ed-custom-shell-active .ed-saved-address small,
body.ed-custom-shell-active .ed-current-location small { font-size: 12px; }
body.ed-custom-shell-active .ed-saved-address strong,
body.ed-custom-shell-active .ed-current-location strong { font-size: 14px; }
body.ed-custom-shell-active .ed-location-divider { font-size: 12px; }
body.ed-custom-shell-active .ed-postcode-form label { font-size: 14px; }
body.ed-custom-shell-active .ed-postcode-form input,
body.ed-custom-shell-active .ed-postcode-form button { font-size: 15px; }
body.ed-custom-shell-active .ed-location-status { font-size: 13px; }
body.ed-custom-shell-active .ed-location-note { font-size: 12px; }

/* Store footer. */
body.ed-custom-shell-active .ed-footer-benefits strong { font-size: 14px; }
body.ed-custom-shell-active .ed-footer-benefits small { font-size: 12px; }
body.ed-custom-shell-active .ed-footer-brand p { font-size: 14px; }
body.ed-custom-shell-active .ed-footer-email { font-size: 14px; }
body.ed-custom-shell-active .ed-footer-grid h3 { font-size: 16px; }
body.ed-custom-shell-active .ed-footer-grid li a { font-size: 14px; }
body.ed-custom-shell-active .ed-footer-bottom .ed-shell-container { font-size: 12px; }

/* Product archive/shop readability. */
body.edpg-product-grid-active .edpg-compact-breadcrumb { font-size: 12px; }
body.edpg-product-grid-active .edpg-category-product-count { font-size: 12px; }
body.edpg-product-grid-active .edpg-category-ordering select { font-size: 13px; }
body.edpg-product-grid-active .edpg-category-tile > strong { font-size: 13px; line-height: 1.3; }
body.edpg-product-grid-active .edpg-delivery-badge { font-size: 11px; }
body.edpg-product-grid-active ul.products li.product .woocommerce-loop-product__title,
body.edpg-product-grid-active ul.products li.product .woocommerce-loop-product__link h2 { font-size: 17px !important; line-height: 1.4 !important; }
body.edpg-product-grid-active ul.products li.product .price { font-size: 17px !important; }
body.edpg-product-grid-active ul.products li.product .price del { font-size: 13px; }
body.edpg-product-grid-active .edpg-add-button,
body.edpg-product-grid-active .edpg-view-product { font-size: 14px !important; }
body.edpg-product-grid-active .edpg-purchase-control.is-disabled .edpg-add-button { font-size: 12px !important; line-height: 1.15 !important; }
body.edpg-product-grid-active .edpg-purchase-control.is-variable .edpg-add-button small { font-size: 11px; }
body.edpg-product-grid-active .edpg-quantity-stepper strong { font-size: 14px; }
body.edpg-product-grid-active .edpg-sale-badge small { font-size: 10px; }
body.edpg-product-grid-active .edpg-cart-bar-copy strong,
body.edpg-product-grid-active .edpg-cart-bar-copy small { font-size: 13px; }
body.edpg-product-grid-active .edpg-cart-bar > a { font-size: 14px; }
body.edpg-product-grid-active .edpg-option-copy strong,
body.edpg-product-grid-active .edpg-option-copy span { font-size: 14px; line-height: 1.35; }
body.edpg-product-grid-active .edpg-toast { font-size: 13px; }

/* Homepage: retain the visual hierarchy but enlarge supporting copy/buttons. */
body.ed-homepage-active .ed-home-kicker { font-size: 12px; }
body.ed-homepage-active .ed-home-hero-copy > p { font-size: 17px; }
body.ed-homepage-active .ed-home-primary-button,
body.ed-homepage-active .ed-home-secondary-button { font-size: 14px; }
body.ed-homepage-active .ed-home-mini-trust { font-size: 12px; }
body.ed-homepage-active .ed-home-speed-note small { font-size: 11px; }
body.ed-homepage-active .ed-home-speed-note strong { font-size: 13px; }
body.ed-homepage-active .ed-home-service-strip strong { font-size: 14px; }
body.ed-homepage-active .ed-home-service-strip small { font-size: 12px; }
body.ed-homepage-active .ed-home-section-head p { font-size: 14px; }
body.ed-homepage-active .ed-home-section-actions > a { font-size: 13px; }
body.ed-homepage-active .ed-home-category-card strong { font-size: 13px; line-height: 1.35; }
body.ed-homepage-active .ed-home-category-card small { font-size: 11px; }
body.ed-homepage-active .ed-home-promo small { font-size: 12px; }
body.ed-homepage-active .ed-home-promo > span { font-size: 14px; }
body.ed-homepage-active .ed-home-promo b { font-size: 14px; }
body.ed-homepage-active .ed-home-final-cta small { font-size: 12px; }
body.ed-homepage-active .ed-home-final-cta p { font-size: 14px; }

/* Single product page. */
body.ed-single-product-active .woocommerce-product-details__short-description,
body.ed-single-product-active .woocommerce-product-details__short-description p { font-size: 16px !important; line-height: 1.65 !important; }
body.ed-single-product-active .stock { font-size: 15px !important; }
body.ed-single-product-active .product_meta,
body.ed-single-product-active .product_meta a { font-size: 14px !important; line-height: 1.55; }
body.ed-single-product-active .woocommerce-tabs .woocommerce-Tabs-panel,
body.ed-single-product-active .woocommerce-tabs .woocommerce-Tabs-panel p,
body.ed-single-product-active .woocommerce-tabs .woocommerce-Tabs-panel li { font-size: 15px; line-height: 1.65; }
body.ed-single-product-active .edsp-purchase-benefits strong { font-size: 14px; }
body.ed-single-product-active .edsp-purchase-benefits small { font-size: 13px; }
body.ed-single-product-active .edsp-product-card h3,
body.ed-single-product-active .edsp-product-card h3 a { font-size: 15px !important; line-height: 1.4; }
body.ed-single-product-active .edsp-card-bottom strong { font-size: 16px; }
body.ed-single-product-active .edsp-delivery-chip { font-size: 11px; }

/* Cart readability. */
body.ed-smart-cart-active .edsc-cart-card,
body.ed-smart-cart-active .edsc-cart-card p,
body.ed-smart-cart-active .woocommerce-cart-form,
body.ed-smart-cart-active .cart_totals { font-size: 15px; }
body.ed-smart-cart-active .product-name,
body.ed-smart-cart-active .product-name a { font-size: 15px !important; line-height: 1.4; }
body.ed-smart-cart-active .product-price,
body.ed-smart-cart-active .product-subtotal { font-size: 15px !important; }
body.ed-smart-cart-active .cart_totals th,
body.ed-smart-cart-active .cart_totals td { font-size: 14px !important; }

/* Checkout and account are the most important areas for older customers. */
body.ed-checkout-active form.checkout label { font-size: 14px !important; }
body.ed-checkout-active form.checkout .optional { font-size: 12px; }
body.ed-checkout-active form.checkout .input-text,
body.ed-checkout-active form.checkout select,
body.ed-checkout-active form.checkout textarea { font-size: 15px !important; }
body.ed-checkout-active form.checkout table.shop_table td { font-size: 14px; }
body.ed-checkout-active form.checkout table.shop_table thead th { font-size: 12px; }
body.ed-checkout-active form.checkout #payment .payment_box { font-size: 14px; line-height: 1.55; }
body.ed-checkout-active form.checkout #payment .woocommerce-privacy-policy-text { font-size: 12px; line-height: 1.6; }
body.ed-account-guest .ed-account-login-hero small,
body.ed-account-logged-in .ed-account-member-hero small { font-size: 12px; }
body.ed-account-guest .ed-account-login-hero p { font-size: 15px; }
body.ed-account-logged-in .ed-account-member-hero p { font-size: 15px; }
body.ed-account-logged-in .woocommerce-MyAccount-navigation a { font-size: 14px; }
body.ed-account-logged-in .woocommerce-MyAccount-content { font-size: 15px; }
body.ed-account-logged-in .woocommerce-MyAccount-content .button { font-size: 14px !important; }
body.ed-account-logged-in .woocommerce-MyAccount-content table th,
body.ed-account-logged-in .woocommerce-MyAccount-content table td { font-size: 14px; }
body.ed-account-active .ed-account-shortcuts strong { font-size: 15px; }
body.ed-account-active .ed-account-shortcuts small { font-size: 13px; line-height: 1.45; }

@media (max-width: 991px) {
  body.ed-custom-shell-active .ed-category-list > li > a { font-size: 12px; }
}

@media (max-width: 767px) {
  body.ed-custom-shell-active .ed-announcement { font-size: 11px; }
  body.ed-custom-shell-active .ed-announcement-links { font-size: 10.5px; }
  body.ed-custom-shell-active .ed-product-search input[type="search"] { font-size: 15px; }
  body.ed-custom-shell-active .ed-mobile-bottom-nav > a,
  body.ed-custom-shell-active .ed-mobile-bottom-nav > button { font-size: 11px; }
  body.ed-custom-shell-active .ed-mobile-bottom-nav .ed-action-copy small { font-size: 11px; }

  body.edpg-product-grid-active .edpg-compact-category-header h1 { font-size: 18px !important; }
  body.edpg-product-grid-active .edpg-category-ordering select { font-size: 12px; }
  body.edpg-product-grid-active .edpg-category-tile > strong { font-size: 10.5px; line-height: 1.25; }
  body.edpg-product-grid-active .edpg-delivery-badge { font-size: 10.5px; }
  body.edpg-product-grid-active ul.products li.product .woocommerce-loop-product__title,
  body.edpg-product-grid-active ul.products li.product .woocommerce-loop-product__link h2 { font-size: 15px !important; line-height: 1.42 !important; }
  body.edpg-product-grid-active ul.products li.product .price { font-size: 16px !important; }
  body.edpg-product-grid-active ul.products li.product .price del { font-size: 11px; }
  body.edpg-product-grid-active .edpg-add-button,
  body.edpg-product-grid-active .edpg-view-product { font-size: 13px !important; }
  body.edpg-product-grid-active .edpg-purchase-control.is-disabled .edpg-add-button { font-size: 11px !important; }
  body.edpg-product-grid-active .edpg-purchase-control.is-variable .edpg-add-button small { font-size: 10.5px; }
  body.edpg-product-grid-active .edpg-quantity-stepper strong { font-size: 13px; }
  body.edpg-product-grid-active .edpg-sale-badge strong { font-size: 11px; }
  body.edpg-product-grid-active .edpg-sale-badge small { font-size: 9.5px; }
  body.edpg-product-grid-active .edpg-cart-bar-copy strong,
  body.edpg-product-grid-active .edpg-cart-bar-copy small { font-size: 12px; }
  body.edpg-product-grid-active .edpg-option-copy strong,
  body.edpg-product-grid-active .edpg-option-copy span { font-size: 14px; }

  body.ed-homepage-active .ed-home-kicker { font-size: 11px; }
  body.ed-homepage-active .ed-home-hero-copy > p { font-size: 15px; }
  body.ed-homepage-active .ed-home-primary-button,
  body.ed-homepage-active .ed-home-secondary-button { font-size: 13px; }
  body.ed-homepage-active .ed-home-mini-trust { font-size: 11px; }
  body.ed-homepage-active .ed-home-speed-note small { font-size: 10px; }
  body.ed-homepage-active .ed-home-speed-note strong { font-size: 12px; }
  body.ed-homepage-active .ed-home-section-head p { font-size: 12px; }
  body.ed-homepage-active .ed-home-section-actions > a { font-size: 12px; }
  body.ed-homepage-active .ed-home-category-card strong { font-size: 12px; }
  body.ed-homepage-active .ed-home-category-card small { font-size: 10px; }
  body.ed-homepage-active .ed-home-promo > span { font-size: 13px; }
  body.ed-homepage-active .ed-home-final-cta p { font-size: 13px; }

  body.ed-checkout-active form.checkout label { font-size: 14px !important; }
  body.ed-checkout-active form.checkout table.shop_table td { font-size: 13px; }
  body.ed-account-logged-in .woocommerce-MyAccount-content { font-size: 14px; }
}

@media (max-width: 380px) {
  body.edpg-product-grid-active ul.products li.product .woocommerce-loop-product__title,
  body.edpg-product-grid-active ul.products li.product .woocommerce-loop-product__link h2 { font-size: 14px !important; }
}
