/*
 * pillscares.com — WooCommerce Overrides
 * Matches D-Express Figma Template
 * Primary: #033caa (blue) | Accent: #1bc768 (green) | BG: #f3f7ff
 */

@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700;800;900&display=swap');

/* ========== Base ========== */
body.woocommerce, body.woocommerce-page, .woocommerce, .woocommerce-page {
  font-family: 'Nunito', 'Avenir', sans-serif !important;
  color: #333333 !important;
  background-color: #f3f7ff !important;
}

.woocommerce h1, .woocommerce h2, .woocommerce h3, .woocommerce h4, .woocommerce h5, .woocommerce h6,
.page-title, .woocommerce-loop-product__title, .woocommerce div.product .product_title, .entry-title {
  font-family: 'Nunito', sans-serif !important;
  color: #1a1a2e !important;
  font-weight: 700 !important;
}

/* ========== Buttons ========== */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce .button,
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.woocommerce #respond input#submit, .woocommerce .checkout-button,
.woocommerce .add_to_cart_button, .woocommerce .single_add_to_cart_button,
.btn, input[type="submit"] {
  background-color: #1bc768 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 12px 28px !important;
  font-family: 'Nunito', sans-serif !important;
  font-weight: 600 !important;
  text-transform: none !important;
  transition: opacity 0.3s !important;
  box-shadow: 0 2px 8px rgba(27,199,104,0.25) !important;
}

.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce .button:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover,
.woocommerce .add_to_cart_button:hover, .woocommerce .single_add_to_cart_button:hover,
.btn:hover, input[type="submit"]:hover {
  background-color: #15a857 !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(27,199,104,0.35) !important;
}

/* ========== Links ========== */
.woocommerce a { color: #033caa !important; }
.woocommerce a:hover { color: #1bc768 !important; }

/* ========== Product Cards ========== */
.woocommerce ul.products li.product, .products .product {
  background: #fff !important;
  border: 1px solid #dee9ff !important;
  border-radius: 12px !important;
  padding: 16px !important;
  box-shadow: 0 2px 8px rgba(3,60,170,0.06) !important;
  transition: box-shadow 0.3s, transform 0.3s !important;
}

.woocommerce ul.products li.product:hover, .products .product:hover {
  box-shadow: 0 6px 20px rgba(3,60,170,0.12) !important;
  transform: translateY(-3px) !important;
}

.woocommerce ul.products li.product .price, .woocommerce div.product p.price, .woocommerce div.product span.price {
  color: #033caa !important;
  font-weight: 800 !important;
}

.woocommerce ul.products li.product .price del { color: #94a3b8 !important; opacity: 0.7 !important; }
.woocommerce ul.products li.product .price ins { color: #033caa !important; text-decoration: none !important; }
.woocommerce span.onsale { background-color: #1bc768 !important; color: #fff !important; border-radius: 50px !important; }

/* ========== Notices ========== */
.woocommerce-message { border-top-color: #1bc768 !important; background-color: #f0fdf9 !important; }
.woocommerce-message::before { color: #1bc768 !important; }
.woocommerce-info { border-top-color: #033caa !important; background-color: #f3f7ff !important; }
.woocommerce-info::before { color: #033caa !important; }

/* ========== Tables ========== */
.woocommerce table.shop_table thead th, .woocommerce table.cart thead th {
  background-color: #033caa !important;
  color: #fff !important;
  font-family: 'Nunito', sans-serif !important;
  font-weight: 700 !important;
}

.woocommerce table.shop_table, .woocommerce table.cart {
  border: 1px solid #dee9ff !important;
  border-radius: 10px !important;
  overflow: hidden !important;
}

.woocommerce table.shop_table td, .woocommerce table.cart td {
  border-bottom: 1px solid #dee9ff !important;
}

/* ========== Inputs ========== */
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea,
.woocommerce form .form-row select, .woocommerce input[type="text"],
.woocommerce input[type="email"], .woocommerce input[type="tel"],
.woocommerce input[type="password"], .woocommerce input[type="number"],
.woocommerce select, .woocommerce textarea {
  border: 1.5px solid #dee9ff !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  font-family: 'Nunito', sans-serif !important;
}

.woocommerce input:focus, .woocommerce select:focus, .woocommerce textarea:focus {
  border-color: #033caa !important;
  box-shadow: 0 0 0 3px rgba(3,60,170,0.15) !important;
  outline: none !important;
}

/* ========== Breadcrumbs ========== */
.woocommerce .woocommerce-breadcrumb { color: #7a7a7a !important; font-size: 0.875rem !important; }
.woocommerce .woocommerce-breadcrumb a { color: #033caa !important; }
.woocommerce .woocommerce-breadcrumb a:hover { color: #1bc768 !important; }

/* ========== Pagination ========== */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  color: #333 !important;
  border-color: #dee9ff !important;
  border-radius: 6px !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
  background-color: #033caa !important;
  color: #fff !important;
  border-color: #033caa !important;
}

/* ========== Star Ratings ========== */
.woocommerce .star-rating span::before { color: #1bc768 !important; }

/* ========== Tabs ========== */
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: #7a7a7a !important; font-weight: 600 !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: #033caa !important; }

/* ========== Sidebar ========== */
.widget-area .widget-title, .sidebar .widget-title {
  color: #033caa !important;
  font-weight: 800 !important;
}

.widget-area a, .sidebar a { color: #033caa !important; }
.widget-area a:hover, .sidebar a:hover { color: #1bc768 !important; }

/* ========== CONTENT PAGES (appended) ========== */

/* Hero Banner */
.pc-content { font-family: 'Nunito', 'Avenir', sans-serif; background: #f3f7ff; }
.pc-hero-banner { background: #033caa; padding: 55px 0 45px; text-align: center; }
.pc-hero-banner-inner { max-width: 1200px; margin: 0 auto; padding: 0 40px; }
.pc-hero-banner h1 { color: #fff; font-size: 36px; font-weight: 900; font-family: 'Nunito', sans-serif; margin: 0; line-height: 1.3; }

/* Article Wrapper */
.pc-article-wrap { max-width: 920px; margin: 0 auto; padding: 45px 40px 80px; }
.pc-article {
  background: #fff;
  padding: 50px;
  border-radius: 12px;
  box-shadow: 0 2px 20px rgba(3,60,170,0.06);
  color: #333;
  font-size: 17px;
  line-height: 1.75;
}

/* Article Typography */
.pc-article h2 { color: #033caa; font-size: 26px; font-weight: 800; margin: 35px 0 15px; font-family: 'Nunito', sans-serif; }
.pc-article h2:first-child { margin-top: 0; }
.pc-article h3 { color: #033caa; font-size: 20px; font-weight: 700; margin: 25px 0 12px; }
.pc-article p { margin-bottom: 18px; }
.pc-article ul, .pc-article ol { padding-left: 24px; margin-bottom: 18px; }
.pc-article li { margin-bottom: 8px; }
.pc-article strong { color: #1a1a2e; }
.pc-article a { color: #033caa; text-decoration: underline; }
.pc-article a:hover { color: #1bc768; }
.pc-article img { max-width: 100%; height: auto; border-radius: 8px; margin: 10px 0; }
.pc-article blockquote {
  border-left: 4px solid #1bc768;
  background: #f0fdf9;
  padding: 18px 24px;
  margin: 20px 0;
  border-radius: 0 8px 8px 0;
  font-style: italic;
  color: #555;
}

/* CTA Box */
.pc-cta-box {
  background: #033caa;
  border-radius: 12px;
  padding: 40px;
  text-align: center;
  color: #fff;
  margin: 40px 0 10px;
}
.pc-cta-box h3 { color: #fff !important; font-size: 24px; margin: 0 0 10px; }
.pc-cta-box p { color: rgba(255,255,255,0.9); margin-bottom: 20px; font-size: 16px; }
.pc-cta-box a.pc-cta-btn {
  display: inline-block;
  background: #1bc768;
  color: #fff !important;
  padding: 14px 40px;
  border-radius: 50px;
  font-weight: 700;
  font-size: 17px;
  text-decoration: none !important;
  transition: opacity 0.3s;
  box-shadow: 0 2px 10px rgba(27,199,104,0.3);
}
.pc-cta-box a.pc-cta-btn:hover { opacity: 0.9; }

/* Drug Cards Grid */
.pc-drug-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 22px;
  margin: 25px 0;
}
.pc-drug-card {
  background: #fff;
  border: 1.5px solid #dee9ff;
  border-radius: 12px;
  padding: 28px 24px;
  text-align: center;
  transition: box-shadow 0.3s, transform 0.3s;
}
.pc-drug-card:hover {
  box-shadow: 0 6px 20px rgba(3,60,170,0.12);
  transform: translateY(-3px);
}
.pc-drug-card img { width: 56px; height: 56px; margin: 0 auto 14px; }
.pc-drug-card h4 { color: #033caa; font-size: 18px; font-weight: 800; margin: 0 0 8px; }
.pc-drug-card p { font-size: 14px; color: #666; margin: 0 0 16px; line-height: 1.5; }
.pc-drug-card a {
  display: block;
  color: #033caa !important;
  padding: 8px 0;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none !important;
  text-align: center;
  transition: opacity 0.3s;
}
.pc-drug-card a:hover { opacity: 0.7; }
.pc-drug-card a.pc-card-btn {
  display: block;
  background: #1bc768;
  color: #fff !important;
  padding: 10px 20px;
  border-radius: 50px;
  font-weight: 700;
  font-size: 14px;
  text-align: center;
  text-decoration: none !important;
  margin-top: 6px;
  transition: opacity 0.3s;
  box-shadow: 0 2px 8px rgba(27,199,104,0.25);
}
.pc-drug-card a.pc-card-btn:hover { opacity: 0.85; }


/* Sister Site Notice */
.pc-sister-notice {
  font-size: 12px;
  color: #7a7a7a;
  margin-top: 8px;
  font-style: italic;
}

/* FAQ Accordion */
.pc-faq-item { border-bottom: 1px solid #dee9ff; }
.pc-faq-item summary {
  padding: 18px 0;
  font-size: 17px;
  font-weight: 700;
  color: #033caa;
  cursor: pointer;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.pc-faq-item summary::-webkit-details-marker { display: none; }
.pc-faq-item summary::after { content: '+'; font-size: 22px; color: #1bc768; font-weight: 700; }
.pc-faq-item[open] summary::after { content: '-'; }
.pc-faq-item .pc-faq-answer { padding: 0 0 18px; color: #555; font-size: 16px; line-height: 1.7; }

/* Icon Feature (About page) */
.pc-icon-feature {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  margin: 25px 0;
  padding: 24px;
  background: #f8faff;
  border-radius: 10px;
  border: 1px solid #dee9ff;
}
.pc-icon-feature img { width: 52px; height: 52px; flex-shrink: 0; }
.pc-icon-feature h4 { color: #033caa; font-size: 17px; font-weight: 700; margin: 0 0 6px; }
.pc-icon-feature p { margin: 0; font-size: 15px; color: #555; }

/* Steps (How to Order) */
.pc-steps { counter-reset: step; margin: 30px 0; }
.pc-step {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 28px;
  padding: 24px;
  background: #f8faff;
  border-radius: 10px;
  border: 1px solid #dee9ff;
}
.pc-step-num {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  background: #033caa;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: 800;
}
.pc-step h4 { color: #033caa; font-size: 17px; font-weight: 700; margin: 0 0 6px; }
.pc-step p { margin: 0; font-size: 15px; color: #555; }

/* Info Box */
.pc-info-box {
  background: #f0fdf9;
  border: 1px solid #a7f3d0;
  border-radius: 10px;
  padding: 20px 24px;
  margin: 20px 0;
}
.pc-info-box.warning {
  background: #fffbeb;
  border-color: #fde68a;
}

/* Contact Info */
.pc-contact-row {
  display: flex;
  gap: 20px;
  margin: 25px 0;
  flex-wrap: wrap;
}
.pc-contact-card {
  flex: 1;
  min-width: 200px;
  background: #f8faff;
  border: 1px solid #dee9ff;
  border-radius: 10px;
  padding: 24px;
  text-align: center;
}
.pc-contact-card h4 { color: #033caa; margin: 0 0 8px; font-size: 16px; }
.pc-contact-card a { color: #033caa; font-size: 18px; font-weight: 700; text-decoration: none; }
.pc-contact-card a:hover { color: #1bc768; }

/* Responsive */
@media(max-width:768px){
  .pc-hero-banner { padding: 40px 0 30px; }
  .pc-hero-banner h1 { font-size: 26px; }
  .pc-hero-banner-inner { padding: 0 20px; }
  .pc-article-wrap { padding: 25px 16px 50px; }
  .pc-article { padding: 28px 20px; }
  .pc-article h2 { font-size: 22px; margin-top: 28px; }
  .pc-article h3 { font-size: 18px; }
  .pc-cta-box { padding: 28px 20px !important; background: #033caa !important; border-radius: 12px !important; text-align: center !important; color: #fff !important; margin: 30px 0 10px !important; }
  .pc-cta-box h3 { color: #fff !important; font-size: 20px !important; }
  .pc-cta-box p { color: rgba(255,255,255,0.9) !important; }
  .pc-cta-box a.pc-cta-btn { display: inline-block !important; background: #1bc768 !important; color: #fff !important; padding: 12px 32px !important; border-radius: 50px !important; font-weight: 700 !important; font-size: 16px !important; text-decoration: none !important; box-shadow: 0 2px 10px rgba(27,199,104,0.3) !important; }
  .pc-drug-grid { grid-template-columns: 1fr; gap: 16px; }
  .pc-icon-feature { flex-direction: column; text-align: center; align-items: center; }
  .pc-step { flex-direction: column; text-align: center; align-items: center; }
  .pc-contact-row { flex-direction: column; }
}


/* Hide the cart icon pseudo-element, show text */
.woocommerce ul.products li.product .product-loop-footer .add-to-cart-wrap a::before,
.woocommerce ul.products li.product .product-loop-footer .add-to-cart-wrap a::after {
    display: none !important;
    content: none !important;
}
/* Hide the "view cart" arrow link that appears after adding */
.woocommerce ul.products li.product .product-loop-footer .added_to_cart {
    display: block !important;
    position: static !important;
    text-align: center !important;
    padding: 6px !important;
    font-size: 13px !important;
    text-indent: 0 !important;
    width: 100% !important;
    height: auto !important;
    border-radius: 6px !important;
    margin-top: 4px !important;
    background: none !important;
    box-shadow: none !important;
    color: inherit !important;
}
.woocommerce ul.products li.product .product-loop-footer .added_to_cart::before,
.woocommerce ul.products li.product .product-loop-footer .added_to_cart::after {
    display: none !important;
    content: none !important;
}
/* Hide tooltip popup */
.tooltip, .bs-tooltip-auto, [data-bs-toggle="tooltip"] + .tooltip {
    display: none !important;
}

/* === SHOP PAGE: Hide Add to Cart on grid (use product page instead) === */
.woocommerce ul.products li.product .product-loop-footer {
    display: none !important;
}
.tooltip, .bs-tooltip-auto, [data-bs-toggle="tooltip"] + .tooltip {
    display: none !important;
}

/* Fix email wrapping in footer */
.ua-ftr-col ul a[href^="mailto:"],
.up-ftr-col ul a[href^="mailto:"],
.fg-ftr-col ul a[href^="mailto:"],
.ez-ftr-col ul a[href^="mailto:"],
.pc-ftr-col ul a[href^="mailto:"],
footer a[href^="mailto:"] {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
    display: inline-block !important;
    font-size: 12px !important;
}
