/* Minerva Health custom WooCommerce product template.
   Typography inherits from Salient. Change --minerva-teal if the site's exact brand teal differs. */
.minerva-single-product {
	--minerva-teal: #2a477f;
	--minerva-teal-dark: #2a477f;
	--minerva-ink: #172536;
	--minerva-muted: #687789;
	--minerva-line: #e7edf0;
	--minerva-soft: #f5f8fa;
	--minerva-white: #fff;
	color: var(--minerva-ink);
	font-family: inherit;
	padding: 34px 0 72px;
}
.minerva-single-product * { box-sizing: border-box; }
.minerva-container { width: min(1200px, calc(100% - 48px)); margin: 0 auto; }
.minerva-breadcrumb { display:flex; flex-wrap:wrap; gap:9px; align-items:center; margin:0 0 30px; color:var(--minerva-muted); font-size:12px; }
.minerva-breadcrumb a { color:inherit; text-decoration:none; }
.minerva-breadcrumb a:hover { color:var(--minerva-teal); }
.minerva-product-hero { display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:48px; align-items:center; }
.minerva-product-gallery { min-width:0; }
.minerva-product-main-image { min-height:430px; display:flex; align-items:center; justify-content:center; padding:35px; background:#fff; border:1px solid var(--minerva-line); border-radius:18px; box-shadow:0 8px 22px rgba(20,45,60,.06); }
.minerva-product-main-image img { display:block; width:100%; max-height:420px; object-fit:cover; }
.minerva-no-image { color:var(--minerva-muted); }
.minerva-product-thumbnails { display:flex; gap:10px; margin-top:14px; flex-wrap:wrap; }
.minerva-thumb { width:68px; height:68px; padding:5px; background:#fff; border:1px solid var(--minerva-line); border-radius:9px; cursor:pointer; }
.minerva-thumb.is-active, .minerva-thumb:hover { border-color:var(--minerva-teal); }
.minerva-thumb img { width:100%; height:100%; object-fit:contain; }
.minerva-eyebrow { display:block; margin:0 0 10px; color:var(--minerva-teal); font-size:14px; font-weight:500; letter-spacing:.08em; line-height:1.4; text-transform:uppercase; }
.minerva-product-summary h1 { margin:0 0 15px; color:var(--minerva-ink); font-size:clamp(30px, 3.2vw, 43px); font-weight:700; line-height:1.08; letter-spacing:-.025em; }
.minerva-short-description { color:var(--minerva-muted); font-size:14px; line-height:1.8; }
.minerva-short-description p:last-child { margin-bottom:0; }
.minerva-product-badges { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0 24px; }
.minerva-product-badges span { display:inline-flex; padding:7px 11px; border:1px solid #cce9e5; border-radius:30px; color:var(--minerva-teal-dark); font-size:11px; line-height:1.3; }
.minerva-product-actions { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.minerva-button { min-height:46px; display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:0 21px; border:1px solid transparent; border-radius:30px; font-size:13px; font-weight:700; line-height:1.2; text-decoration:none!important; transition:all .2s ease; }
.minerva-button-primary { background:var(--minerva-teal); color:#fff!important; box-shadow:0 5px 12px rgba(19,135,126,.15); }
.minerva-button-primary:hover { background:var(--minerva-teal-dark); color:#fff!important; transform:translateY(-1px); }
.minerva-button-outline { background:#fff; border-color:var(--minerva-line); color:var(--minerva-ink)!important; }
.minerva-button-outline:hover { border-color:var(--minerva-teal); color:var(--minerva-teal)!important; }
.minerva-quick-facts { display:grid; grid-template-columns:repeat(1,minmax(0,1fr)); gap:15px; margin-top:27px; padding-top:20px; border-top:1px solid var(--minerva-line); }
.minerva-quick-fact { min-width:0; }
.minerva-quick-fact span { display:block; margin-bottom:5px; color:var(--minerva-muted); font-size:11px; }
.minerva-quick-fact strong { display:block; color:var(--minerva-ink); font-size:17px; overflow-wrap:anywhere; }
.minerva-why-section { padding:100px 0 82px; }
.minerva-section-heading { max-width:650px; margin:0 auto 32px; text-align:center; }
.minerva-section-heading h2, .minerva-spec-intro h2, .minerva-reviews-heading h2 { margin:0; color:var(--minerva-ink); font-size:clamp(25px,2.6vw,38px); font-weight:500; line-height:1.2; }
.minerva-benefit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.minerva-benefit-card { padding:26px 24px; border:1px solid var(--minerva-line); border-radius:13px; background:#fff; }
.minerva-benefit-icon { width:38px; height:38px; display:flex; align-items:center; justify-content:center; margin-bottom:17px; border-radius:11px; background:#eaf8f6; color:var(--minerva-teal); font-size:20px; font-weight:700; }
.minerva-benefit-card h3 { margin:0 0 9px; color:var(--minerva-ink); font-size:20px; line-height:1.35; }
.minerva-benefit-card p { margin:0; color:var(--minerva-muted); font-size:14px; line-height:1.7; }
.minerva-spec-section { display:grid; /*grid-template-columns:minmax(210px,.65fr) minmax(0,1.35fr);*/ gap:42px; align-items:start; padding:0 0 0; }
.minerva-spec-section:before { content:""; position:absolute; left:0; right:0; z-index:-1; height:100%; background:var(--minerva-soft); }
.minerva-spec-intro { position:relative; padding-top: 50px; }
.minerva-spec-intro h2 { margin-bottom:13px; }
.minerva-full-description, .minerva-spec-intro p { color:var(--minerva-muted); font-size:13px; line-height:1.75; }
.minerva-full-description > *:last-child { margin-bottom:0; }
.minerva-spec-table { /*display:grid; grid-template-columns:repeat(2,minmax(0,1fr));*/ overflow:hidden; border:1px solid var(--minerva-line); border-radius:13px; background:#fff; }
.minerva-spec-row { min-height:48px; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 15px; border-bottom:1px solid var(--minerva-line); font-size:11px; }
.minerva-spec-row:nth-child(4n+1), .minerva-spec-row:nth-child(4n+2) { background:#f8fafb; }
.minerva-spec-row span { color:var(--minerva-muted); }
.minerva-spec-row strong { color:var(--minerva-ink); text-align:right; font-weight:600; }
.minerva-reviews-section { padding:76px 0 30px; }
.minerva-reviews-heading { display:flex; align-items:end; justify-content:space-between; margin-bottom:22px; }
.minerva-reviews-content { min-height:130px; padding:25px; border:1px solid var(--minerva-line); border-radius:15px; background:var(--soft,#f7f9fa); }
.minerva-reviews-content #reviews, .minerva-reviews-content .woocommerce-Reviews { margin:0; }
.minerva-reviews-content .woocommerce-Reviews-title { font-size:18px; }
.minerva-reviews-content p { color:var(--minerva-muted); font-size:13px; }
.minerva-reviews-content #review_form_wrapper { margin-top:24px; }
.minerva-quote-cta { display:flex; align-items:center; justify-content:space-between; gap:30px; margin:48px -16px 60px; padding:42px 48px; border-radius:18px; background:linear-gradient(to right, #2a477f, #3a6bc4); color:#fff; }
.minerva-quote-cta .minerva-eyebrow { color:#a9e3dc; }
.minerva-quote-cta h2 { max-width:680px; margin:0 0 10px; color:#fff; font-size:clamp(23px,2.5vw,32px); line-height:1.2; }
.minerva-quote-cta p { max-width:650px; margin:0 0 15px; color:rgba(255,255,255,.82); font-size:13px; line-height:1.7; }
.minerva-cta-contact { display:flex; flex-wrap:wrap; gap:18px; color:#e2f4f1; font-size:12px; }
.minerva-cta-contact a { color:inherit; text-decoration:none; }
.minerva-button-light { flex:0 0 auto; background:#fff; color:var(--minerva-teal-dark)!important; }
.minerva-button-light:hover { background:#eaf8f6; color:var(--minerva-teal-dark)!important; }
.minerva-related-section { padding:10px 0 35px; }
.minerva-related-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.minerva-related-card { display:block; padding:15px; border:1px solid var(--minerva-line); border-radius:13px; background:#fff; text-decoration:none!important; transition:transform .2s ease, box-shadow .2s ease; }
.minerva-related-card:hover { transform:translateY(-3px); box-shadow:0 8px 22px rgba(20,45,60,.07); }
.minerva-related-image { height:165px; display:flex; align-items:center; justify-content:center; margin-bottom:13px; background:#f8fafb; border-radius:9px; }
.minerva-related-image img { max-width:100%; max-height:100%; object-fit:contain; }
.minerva-related-card h3 { margin:0 0 10px; color:var(--minerva-ink); font-size:14px; line-height:1.4; }
.minerva-related-card > span { color:var(--minerva-teal); font-size:12px; font-weight:700; }
@media (max-width: 900px) {
	.minerva-product-hero { gap:28px; }
	.minerva-product-main-image { min-height:340px; }
	.minerva-spec-section { grid-template-columns:1fr; gap:22px; }
	.minerva-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 640px) {
	.minerva-single-product { padding-top:22px; }
	.minerva-container { width:min(100% - 30px, 1200px); }
	.minerva-breadcrumb { margin-bottom:20px; font-size:11px; }
	.minerva-product-hero { grid-template-columns:1fr; gap:25px; }
	.minerva-product-main-image { min-height:270px; padding:20px; }
	.minerva-product-main-image img { max-height:280px; }
	.minerva-product-summary h1 { font-size:29px; }
	.minerva-quick-facts { gap:9px; }
	.minerva-quick-fact strong { font-size:15px; }
	.minerva-why-section { padding:65px 0 55px; }
	.minerva-benefit-grid { grid-template-columns:1fr; gap:12px; }
	.minerva-benefit-card { padding:21px; }
	.minerva-spec-section { padding:48px 0; }
	.minerva-spec-table { grid-template-columns:1fr; }
	.minerva-spec-row:nth-child(odd) { background:#f8fafb; }
	.minerva-spec-row:nth-child(even) { background:#fff; }
	.minerva-reviews-section { padding:50px 0 20px; }
	.minerva-quote-cta { flex-direction:column; align-items:flex-start; margin:35px 0 45px; padding:28px 23px; }
	.minerva-button-light { align-self:flex-start; }
	.minerva-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
	.minerva-related-card { padding:10px; }
	.minerva-related-image { height:125px; }
	.minerva-related-card h3 { font-size:12px; }
	.minerva-section-heading { text-align: left;}
}

/* Minerva Health - Website Brand Color Integration */

/* Minerva Health - Blue Brand Color */
.minerva-single-product {
    --minerva-teal: #2a477f;
    --minerva-teal-dark: #1e345f;
    --minerva-ink: #172536;
    --minerva-muted: #687789;
    --minerva-line: #e5eaf0;
    --minerva-soft: #f5f7fa;
    --minerva-brand-light: #eef1f8;
    --minerva-brand-border: #d5dced;
}

/* Product Badges */
.minerva-product-badges span {
    border-color: #d5dced;
    background: #eef1f8;
    color: #2a477f;
}

/* Primary Buttons */
.minerva-button-primary {
    background: #2a477f;
    box-shadow: 0 5px 12px rgba(42, 71, 127, 0.15);
}

.minerva-button-primary:hover {
    background: #1e345f;
}

/* Benefit Icons */
.minerva-benefit-icon {
    background: #eef1f8;
    color: #2a477f;
}

/* Product Gallery */
.minerva-thumb.is-active,
.minerva-thumb:hover {
    border-color: #2a477f;
}

/* Quote CTA */
.minerva-quote-cta {
    background:linear-gradient(109.84deg, #2A477F -6.32%, #102650 102.99%);

}

.minerva-quote-cta .minerva-eyebrow {
    color: #d5dced;
}

/* Secondary Button */
.minerva-button-light {
    color: #2a477f !important;
}

/* Links and Hover Effects */
.minerva-breadcrumb a:hover,
.minerva-button-outline:hover,
.minerva-related-card > span {
    color: #2a477f !important;
}

/* Remove Old Green Backgrounds */
.minerva-thumb,
.minerva-benefit-card {
    background-color: #fff;
}

/* ==========================================
   MINERVA HEALTH - PRODUCT SPECIFICATION TABLE
   Brand Color: #2a477f
========================================== */

.minerva-single-product table,
.minerva-single-product .minerva-spec-table {
    width: 100%;
    border-collapse: separate !important;
    border-spacing: 0;
    border: 1px solid #e1e6ef !important;
    border-radius: 10px;
    overflow: hidden;
    margin: 25px 0;
    background: #ffffff;
    font-size: 15px;
    line-height: 1.6;
    box-shadow: 0 4px 18px rgba(42, 71, 127, 0.06);
}

/* Table Header */
.minerva-single-product table thead th,
.minerva-single-product .minerva-spec-table thead th {
    background: #2a477f !important;
    color: #ffffff !important;
    font-weight: 600;
    font-size: 15px;
    text-align: left;
    padding: 17px 22px;
    border: none !important;
    letter-spacing: 0.2px;
}

/* Table Body Cells */
.minerva-single-product table tbody td,
.minerva-single-product .minerva-spec-table tbody td {
    padding: 14px 22px;
    color: #44516a;
    font-size: 14px;
    font-weight: 400;
    vertical-align: middle;
    border: none !important;
    border-bottom: 1px solid #e9edf3 !important;
}

/* First Column */
.minerva-single-product table tbody td:first-child {
    color: #263957;
    font-weight: 600;
    width: 45%;
}

/* Alternate Row Background */
.minerva-single-product table tbody tr:nth-child(even) {
    background-color: #f3f6fb !important;
}

.minerva-single-product table tbody tr:nth-child(odd) {
    background-color: #ffffff !important;
}

/* Row Hover Effect */
.minerva-single-product table tbody tr {
    transition: background-color 0.2s ease;
}

.minerva-single-product table tbody tr:hover {
    background-color: #eaf0fa !important;
}

/* Remove Last Row Border */
.minerva-single-product table tbody tr:last-child td {
    border-bottom: none !important;
}

/* Header Rounded Corners */
.minerva-single-product table thead th:first-child {
    border-radius: 9px 0 0 0;
}

.minerva-single-product table thead th:last-child {
    border-radius: 0 9px 0 0;
}

/* Mobile Responsive */
@media (max-width: 767px) {

    .minerva-single-product table,
    .minerva-single-product .minerva-spec-table {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        white-space: nowrap;
        font-size: 13px;
        border-radius: 8px;
    }

    .minerva-single-product table thead th,
    .minerva-single-product table tbody td {
        padding: 12px 15px;
        font-size: 13px;
    }

    .minerva-single-product table tbody td:first-child {
        min-width: 180px;
    }

    .minerva-single-product table tbody td:last-child {
        min-width: 130px;
    }
}
