/* Eudora product page 1.0.0 (layout, gallery, details, reviews).
 * Builds on eudora-purchase-flow-1.0.0.css (buy box) and reuses its tokens. Display only.
 * Layout: desktop = sticky gallery (vertical thumbs) | info column with buy box and detail
 * accordions; mobile = one column, image first, horizontal thumbs.
 * Type: clear system sans-serif headings; everything else in the site sans.
 */
body.catalog-product-view {
    --pdp-display: Arial, "Helvetica Neue", Helvetica, sans-serif;
    --pdp-gutter: 56px;
    --pdp-gallery-bg: #f7f3f1;
}

/* ───────── Breadcrumb ───────── */
.catalog-product-view .breadcrumbs { margin-bottom: 18px; }
.catalog-product-view .breadcrumbs li,
.catalog-product-view .breadcrumbs a,
.catalog-product-view .breadcrumbs strong { color: var(--pf-muted); font-size: 13px; font-weight: 400; }
.catalog-product-view .breadcrumbs a:hover { color: var(--pf-ink); }

/* ───────── Grid ───────── */
.catalog-product-view .eudora-pdp { margin: 0; padding: 0; }
.catalog-product-view .eudora-pdp .eudora-pdp__grid {
    display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr);
    column-gap: var(--pdp-gutter); align-items: start; margin: 0; padding: 0; border: 0; background: none;
}
.catalog-product-view .eudora-pdp .eudora-pdp__grid::after { content: none; }
.catalog-product-view .eudora-pdp .eudora-pdp__media,
.catalog-product-view .eudora-pdp .eudora-pdp__info {
    float: none !important; width: auto !important; max-width: none; margin: 0 !important; padding: 0 !important; min-width: 0;
}
.catalog-product-view .eudora-pdp .eudora-pdp__media { position: sticky; top: 24px; }
.catalog-product-view .eudora-pdp .eudora-pdp__info .product-shop,
.catalog-product-view .eudora-pdp .eudora-pdp__info .add-to-cart-wrapper {
    float: none !important; width: auto !important; margin: 0 !important; padding: 0 !important;
}

/* ───────── Gallery: main image + vertical thumbnail rail ───────── */
.catalog-product-view .eudora-pdp .product-img-box {
    display: grid; grid-template-columns: 76px minmax(0, 1fr); column-gap: 16px; align-items: start;
}
.catalog-product-view .eudora-pdp .product-img-box .product-image {
    grid-column: 2; grid-row: 1; margin: 0; border: 0; background: var(--pdp-gallery-bg); border-radius: 4px; overflow: hidden;
}
.catalog-product-view .eudora-pdp .product-img-box .product-image-gallery { aspect-ratio: 1 / 1; }
.catalog-product-view .eudora-pdp .product-img-box .product-image-gallery .gallery-image { width: 100%; height: 100%; object-fit: cover; }
.catalog-product-view .eudora-pdp .product-img-box .more-views { grid-column: 1; grid-row: 1; margin: 0; padding: 0; }
.catalog-product-view .eudora-pdp .product-img-box .more-views h2 {
    position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; margin: 0; padding: 0; border: 0;
}
.catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs {
    display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; list-style: none; max-height: 640px; overflow-y: auto; scrollbar-width: thin;
}
.catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs li { float: none; width: auto; margin: 0; padding: 0; }
.catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs a {
    position: relative; display: block; width: 76px; height: 76px; border: 1px solid transparent; border-radius: 4px; overflow: hidden;
    background: var(--pdp-gallery-bg); transition: border-color .15s;
}
.catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs a:hover { border-color: var(--pf-field); }
.catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs a.is-current,
.catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs a[aria-current="true"] { border-color: var(--pf-ink); }
.catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs img { display: block; width: 100%; height: 100%; object-fit: cover; }
.catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs a:focus-visible { outline: 2px solid var(--pf-ink); outline-offset: 2px; }

/* ───────── Info column ───────── */
.catalog-product-view .eudora-pdp .product-shop .product-name { display: block !important; margin: 0; }
.catalog-product-view .eudora-pdp .product-shop .product-name h1.h1 {
    margin: 0; color: var(--pf-ink); font-family: var(--pdp-display); font-size: 32px; font-weight: 600;
    line-height: 1.25; letter-spacing: 0; text-transform: none; text-wrap: balance;
}
.catalog-product-view .eudora-pdp .product-shop .extra-info { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; margin: 10px 0 18px; }
.catalog-product-view .eudora-pdp .product-shop .extra-info .ratings { margin: 0; }
.catalog-product-view .eudora-pdp .product-shop .price-info .regular-price .price,
.catalog-product-view .eudora-pdp .product-shop .price-info .eudora-sale-prices > .special-price .price { font-size: 24px; }

/* Products without options: the buy box follows the short description directly. */
.catalog-product-view .eudora-pdp .eudora-pdp__info .add-to-cart-wrapper .add-to-box { margin-top: 20px; }

/* ───────── Detail sections (native <details>) ───────── */
.catalog-product-view .eudora-pdp .eudora-pdp__details {
    float: none; width: auto; margin: 32px 0 0 !important; padding: 0 !important; border: 0; background: none;
}
.catalog-product-view .eudora-pdp .eudora-pdp__section { border-top: 1px solid var(--pf-line); }
.catalog-product-view .eudora-pdp .eudora-pdp__section:last-child { border-bottom: 1px solid var(--pf-line); }
.catalog-product-view .eudora-pdp .eudora-pdp__section > summary {
    display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 17px 2px; cursor: pointer;
    color: var(--pf-ink); font-size: 15px; font-weight: 600; list-style: none;
}
.catalog-product-view .eudora-pdp .eudora-pdp__section > summary::-webkit-details-marker { display: none; }
.catalog-product-view .eudora-pdp .eudora-pdp__section > summary::after {
    content: ""; flex: none; width: 10px; height: 10px; margin-right: 4px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
    transform: translateY(-3px) rotate(45deg); transition: transform .2s ease;
}
.catalog-product-view .eudora-pdp .eudora-pdp__section[open] > summary::after { transform: translateY(2px) rotate(-135deg); }
.catalog-product-view .eudora-pdp .eudora-pdp__section > summary:focus-visible { outline: 2px solid var(--pf-ink); outline-offset: 2px; }
.catalog-product-view .eudora-pdp .eudora-pdp__section-body { padding: 0 2px 22px; color: var(--pf-text); font-size: 14px; line-height: 1.7; }
.catalog-product-view .eudora-pdp .eudora-pdp__section-body .std { font-size: 14px; line-height: 1.7; }
.catalog-product-view .eudora-pdp .eudora-pdp__section-body .std p { margin: 0 0 10px; }
/* The theme sizes .std p and li on their own; follow the section body size instead. */
.catalog-product-view .eudora-pdp .eudora-pdp__section-body .std p,
.catalog-product-view .eudora-pdp .eudora-pdp__section-body .std li,
.catalog-product-view .eudora-pdp .product-shop .short-description .std p { font-size: inherit; line-height: inherit; }
.catalog-product-view .eudora-pdp .eudora-pdp__section-body img { max-width: 100%; height: auto; }
.catalog-product-view .eudora-pdp .eudora-pdp__section-body > h2:first-child,
.catalog-product-view .eudora-pdp .eudora-pdp__section-body > .std > h2:first-child { display: none; }

/* Certifications & our promise: compact, no nested cards. */
.catalog-product-view .eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance { margin: 0; padding: 0; border: 0; background: none; }
.catalog-product-view .eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance h2,
.catalog-product-view .eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance h3 {
    margin: 18px 0 8px; color: var(--pf-ink); font-size: 14px; font-weight: 600; letter-spacing: 0; text-align: left; text-transform: none;
}
/* The vendor block sets its heading styles inline. */
.catalog-product-view .eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance__certificates h2 {
    margin: 0 0 10px !important; color: var(--pf-ink) !important; font-size: 14px !important; letter-spacing: 0 !important; text-align: left !important;
}
.catalog-product-view .eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance__certificates {
    margin: 0; padding: 0; border: 0; background: none; box-shadow: none; text-align: left;
}
.catalog-product-view .eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance__certificates img { max-width: 100%; height: auto; border-radius: 4px; }
.catalog-product-view .eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance__panels { display: block; margin: 0; padding: 0; }
.catalog-product-view .eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance__panel {
    width: auto; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; min-height: 0;
}
.catalog-product-view .eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance p { margin: 0 0 8px; font-size: 14px; line-height: 1.65; }

/* ───────── Reviews ───────── */
.catalog-product-view #customer-reviews.eudora-pdp-reviews {
    float: none; width: auto; margin: 72px 0 0; padding: 40px 0 0; border: 0; border-top: 1px solid var(--pf-line); background: none;
}
.catalog-product-view #customer-reviews .eudora-pdp-reviews__head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; margin: 0 0 10px; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__head h2 {
    margin: 0; padding: 0; border: 0; background: none; font-family: var(--pdp-display); letter-spacing: 0; text-transform: none;
    /* cmspro.css forces #customer-reviews h2 to 14px grey with !important */
    color: var(--pf-ink) !important; font-size: 30px !important; font-weight: 600 !important;
}
.catalog-product-view #customer-reviews .eudora-pdp-reviews__count { margin: 0; color: var(--pf-muted); font-size: 14px; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__empty { max-width: 60ch; margin: 0 0 20px; color: var(--pf-text); font-size: 15px; line-height: 1.6; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 28px 40px; margin: 20px 0 28px; padding: 0; list-style: none; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__list .review-item { margin: 0; padding: 0; border: 0; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__title { margin: 8px 0 6px; color: var(--pf-ink); font-size: 15px; font-weight: 600; text-transform: none; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__body { margin: 0 0 8px; color: var(--pf-text); font-size: 14px; line-height: 1.65; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .review-meta { margin: 0; color: var(--pf-muted); font-size: 13px; text-transform: none; }

.catalog-product-view #customer-reviews .eudora-pdp-reviews__form > summary {
    display: inline-flex; align-items: center; height: 46px; padding: 0 22px; border: 1px solid var(--pf-ink); border-radius: var(--pf-radius);
    color: var(--pf-ink); font-size: 15px; font-weight: 600; cursor: pointer; list-style: none; transition: background-color .15s, color .15s;
}
.catalog-product-view #customer-reviews .eudora-pdp-reviews__form > summary::-webkit-details-marker { display: none; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__form > summary:hover { background: var(--pf-ink); color: #fff; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__form > summary:focus-visible { outline: 2px solid var(--pf-ink); outline-offset: 2px; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__form[open] > summary { margin-bottom: 24px; }

/* Neutralise the theme's #customer-reviews panel, icons and Tahoma meta. */
.catalog-product-view #customer-reviews.eudora-pdp-reviews { border-radius: 0; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .review-item { padding-left: 0; background: none; width: auto; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .review-item .review-meta { font-family: inherit; font-style: normal; font-weight: 400; color: var(--pf-muted); }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .review-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .eudora-pdp-reviews__author { color: var(--pf-ink); font-weight: 700; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .eudora-pdp-reviews__date { flex-basis: 100%; }
.catalog-product-view #customer-reviews .eudora-review-stars { position: relative; display: inline-block; color: #d9d9dd; font: 18px/1 Arial, sans-serif; letter-spacing: 1px; white-space: nowrap; }
.catalog-product-view #customer-reviews .eudora-review-stars__fill { position: absolute; top: 0; left: 0; overflow: hidden; color: #f5b900; }
@media (max-width: 767px) {
    .catalog-product-view .product-shop .ratings .rating-box,
    .catalog-product-view .product-shop .ratings .rating-box .rating { height: 18px; background-size: 18px 18px; background-position: 0 0; background-repeat: repeat-x; }
    .catalog-product-view .product-shop .ratings .rating-box { width: 90px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23d9d9dd' d='m12 2 3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14l-5-4.87 6.91-1.01Z'/%3E%3C/svg%3E"); }
    .catalog-product-view .product-shop .ratings .rating-box .rating { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23f5b900' d='m12 2 3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14l-5-4.87 6.91-1.01Z'/%3E%3C/svg%3E"); }
}
/* "Write a review" already names the action and the product is on the page. */
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-add > h2,
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-add h3 { display: none; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews h3 span { color: var(--pf-ink); font-weight: 600; }

/* The vendor review form, restyled in place. */
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-add { max-width: 640px; margin: 0; padding: 0; border: 0; background: none; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-add > h2,
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-add h3 {
    margin: 0 0 14px; padding: 0; background: none; color: var(--pf-ink); font-size: 14px; font-weight: 600; text-transform: none;
}
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-add h3 span { color: var(--pf-ink); }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .fieldset { margin: 0; padding: 0; border: 0; background: none; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .fieldset h4 { margin: 0 0 8px; color: var(--pf-text); font-size: 13px; font-weight: 500; text-transform: none; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .review-summary-table { width: 100%; margin: 0 0 18px; border-collapse: collapse; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .review-summary-table th,
.catalog-product-view #customer-reviews.eudora-pdp-reviews .review-summary-table td {
    padding: 8px 4px; border: 0; border-bottom: 1px solid var(--pf-line); background: none; color: var(--pf-text);
    font-size: 13px; font-weight: 500; text-align: center; text-transform: none;
}
.catalog-product-view #customer-reviews.eudora-pdp-reviews .review-summary-table th:first-child,
.catalog-product-view #customer-reviews.eudora-pdp-reviews .review-summary-table td:first-child { text-align: left; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-list { margin: 0; padding: 0; list-style: none; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-list li { margin: 0 0 14px; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-list label { display: block; margin: 0 0 6px; color: var(--pf-text); font-size: 13px; font-weight: 500; text-transform: none; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-list input.input-text,
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-list textarea {
    box-sizing: border-box; width: 100%; max-width: 100%; border: 1px solid var(--pf-field); border-radius: var(--pf-radius);
    background: #fff; color: var(--pf-ink); font-size: 15px;
}
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-list input.input-text { height: 44px; padding: 0 12px; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-list textarea { min-height: 120px; padding: 10px 12px; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .buttons-set { margin: 6px 0 0; padding: 0; border: 0; text-align: left; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .buttons-set .button { margin: 0; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .buttons-set .button {
    float: none; height: 46px; padding: 0 24px; border: 0; border-radius: var(--pf-radius); background: var(--pf-ink); color: #fff;
    font-size: 15px; font-weight: 600; text-transform: none;
}
.catalog-product-view #customer-reviews.eudora-pdp-reviews .buttons-set .button:hover { background: #000; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .buttons-set p.required { display: none; }

/* Upsell / related, if a product has them. */
.catalog-product-view .eudora-pdp .box-up-sell { margin: 64px 0 0; }
.catalog-product-view .eudora-pdp .box-up-sell h2 { font-family: var(--pdp-display); font-size: 28px; font-weight: 600; text-transform: none; }

/* ───────── Perks: shipping and personalization, highlighted under the buttons ───────── */
.catalog-product-view .eudora-pdp .eudora-pdp-perks {
    clear: both; /* the theme floats parts of the buy box on products with options */
    margin: 24px 0 0; padding: 4px 20px; border: 1px solid #f6d3e2; border-radius: var(--pf-radius); background: var(--pf-brand-tint);
}
.catalog-product-view .eudora-pdp .eudora-pdp-perk { display: grid; grid-template-columns: 40px minmax(0, 1fr); column-gap: 14px; align-items: start; padding: 16px 0; }
.catalog-product-view .eudora-pdp .eudora-pdp-perk + .eudora-pdp-perk { border-top: 1px solid #f6d3e2; }
.catalog-product-view .eudora-pdp .eudora-pdp-perk__icon {
    display: block; width: 40px; height: 40px; border-radius: 50%; background: var(--pf-brand); position: relative;
}
.catalog-product-view .eudora-pdp .eudora-pdp-perk__icon::before {
    content: ""; position: absolute; inset: 9px; background: #fff;
    -webkit-mask: var(--perk-icon) center / contain no-repeat; mask: var(--perk-icon) center / contain no-repeat;
}
.catalog-product-view .eudora-pdp .eudora-pdp-perk--ship {
    --perk-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M2 6h12v10H2zM14 10h4l3 3v3h-7z'/%3E%3Ccircle cx='6.5' cy='17.5' r='2' fill='white'/%3E%3Ccircle cx='17.5' cy='17.5' r='2' fill='white'/%3E%3C/svg%3E");
}
.catalog-product-view .eudora-pdp .eudora-pdp-perk--custom {
    --perk-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M6 3h12l4 6-10 12L2 9zM2 9h20M9 3l3 18M15 3l-3 18'/%3E%3C/svg%3E");
}
.catalog-product-view .eudora-pdp .eudora-pdp-perk__title { margin: 0 0 4px; color: var(--pf-ink); font-size: 18px; font-weight: 700; line-height: 1.3; }
.catalog-product-view .eudora-pdp .eudora-pdp-perk__text { margin: 0; color: var(--pf-text); font-size: 16px; line-height: 1.6; }
.catalog-product-view .eudora-pdp .eudora-pdp-perks a,
.catalog-product-view .eudora-pdp .eudora-pdp__section-body .eudora-pdp-list a {
    color: var(--pf-brand-dark); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; white-space: nowrap;
}
.catalog-product-view .eudora-pdp .eudora-pdp-perks a:hover { color: var(--pf-ink); }
/* Why us & our guarantee: same links, check marks and label size as the Warranty list. */
.catalog-product-view .eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance a {
    color: var(--pf-brand-dark); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; white-space: nowrap;
}
.catalog-product-view .eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance strong { font-size: inherit; color: var(--pf-ink); }
.catalog-product-view .eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance__check {
    display: inline-block; width: auto; height: auto; margin: 0 6px 0 0; border: 0; background: none; color: var(--pf-ok); font-weight: 700;
}

/* Shipping and warranty lists */
.catalog-product-view .eudora-pdp .eudora-pdp-list { margin: 0; padding: 0; list-style: none; }
.catalog-product-view .eudora-pdp .eudora-pdp-list li { position: relative; margin: 0 0 10px; padding-left: 30px; color: var(--pf-text); font-size: 17px; line-height: 1.6; }
.catalog-product-view .eudora-pdp .eudora-pdp-list li::before {
    content: ""; position: absolute; left: 2px; top: .3em; width: 18px; height: 18px; background: var(--pf-ok);
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5 5L20 6.5'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5 5L20 6.5'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ───────── Easier reading: larger text, darker greys and bigger targets ─────────
 * Many shoppers here are older; nothing below 15px, buttons and fields at least 52px. */
body.catalog-product-view { --pf-muted: #5e5e63; --pf-text: #2f2f33; }
.catalog-product-view .breadcrumbs li,
.catalog-product-view .breadcrumbs a,
.catalog-product-view .breadcrumbs strong { font-size: 15px; }
.catalog-product-view .product-view.eudora-pdp .product-shop .product-sku { font-size: 14px; }
.catalog-product-view .product-view.eudora-pdp .product-shop .price-info .regular-price .price,
.catalog-product-view .product-view.eudora-pdp .product-shop .price-info .eudora-sale-prices > .special-price .price { font-size: 30px; }
.catalog-product-view .product-view.eudora-pdp .product-shop .price-info .eudora-sale-prices > .old-price .price { font-size: 18px; }
.catalog-product-view .product-view.eudora-pdp .product-shop .price-info .eudora-sale-badge,
.catalog-product-view .product-view.eudora-pdp .product-shop .price-info .eudora-sale-badge > span { font-size: 14px; }
.catalog-product-view .product-view.eudora-pdp .eudora-offer-countdown { font-size: 16px; padding: 9px 16px 9px 14px; }
.catalog-product-view .product-view.eudora-pdp .eudora-product-signals { font-size: 16px; }
.catalog-product-view .product-view.eudora-pdp .product-shop .short-description .std { font-size: 17px; line-height: 1.65; }
.catalog-product-view .product-view.eudora-pdp .product-options dt label { font-size: 16px; letter-spacing: 0; }
.catalog-product-view .product-view.eudora-pdp .product-options select { height: 54px; font-size: 17px; }
.catalog-product-view .product-view.eudora-pdp .product-options .validation-advice { font-size: 15px; font-weight: 600; }
.catalog-product-view .product-view.eudora-pdp .add-to-cart.eudora-purchase-actions { grid-template-columns: 140px minmax(0, 1fr); }
.catalog-product-view .product-view.eudora-pdp .add-to-cart.eudora-purchase-actions .quantity { height: 56px; }
.catalog-product-view .product-view.eudora-pdp .add-to-cart.eudora-purchase-actions .quantity input { flex-basis: 44px; width: 44px; height: 54px; line-height: 54px; font-size: 22px; }
.catalog-product-view .product-view.eudora-pdp .add-to-cart.eudora-purchase-actions .quantity .qty { font-size: 18px; }
.catalog-product-view .product-view.eudora-pdp .add-to-cart.eudora-purchase-actions .add-to-cart-buttons > .button { height: 56px; min-height: 56px; font-size: 18px; }
.catalog-product-view .product-view.eudora-pdp .add-to-cart.eudora-purchase-actions .add-to-cart-buttons > .button span { font-size: inherit; }
.catalog-product-view .product-view.eudora-pdp .add-to-cart.eudora-purchase-actions .button.eudora-buy-now { height: 60px; font-size: 19px; }
.catalog-product-view .product-view.eudora-pdp .eudora-checkout-trust__heading,
.catalog-product-view .product-view.eudora-pdp .eudora-purchase-benefits__label,
.catalog-product-view .product-view.eudora-pdp .add-to-links .link-wishlist { font-size: 15px; line-height: 22px; }
.catalog-product-view .product-view.eudora-pdp .eudora-pdp__section > summary { padding: 20px 2px; font-size: 19px; font-weight: 700; }
.catalog-product-view .product-view.eudora-pdp .eudora-pdp__section-body,
.catalog-product-view .product-view.eudora-pdp .eudora-pdp__section-body .std,
.catalog-product-view .product-view.eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance p { font-size: 17px; line-height: 1.75; }
.catalog-product-view .product-view.eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance h2,
.catalog-product-view .product-view.eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance h3,
.catalog-product-view .product-view.eudora-pdp .eudora-pdp__section--reassurance .eudora-reassurance__certificates h2 { font-size: 17px !important; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__empty,
.catalog-product-view #customer-reviews .eudora-pdp-reviews__body { font-size: 17px; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__title { font-size: 18px; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__count,
.catalog-product-view #customer-reviews.eudora-pdp-reviews .review-meta,
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-list label,
.catalog-product-view #customer-reviews.eudora-pdp-reviews .fieldset h4 { font-size: 16px; }
.catalog-product-view #customer-reviews .eudora-pdp-reviews__form > summary { height: 54px; font-size: 17px; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-list input.input-text { height: 52px; font-size: 17px; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .form-list textarea { font-size: 17px; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .buttons-set .button { height: 54px; font-size: 17px; }
.catalog-product-view #customer-reviews.eudora-pdp-reviews .review-summary-table th,
.catalog-product-view #customer-reviews.eudora-pdp-reviews .review-summary-table td { font-size: 15px; }
.catalog-product-view .eudora-pf-sticky__name { font-size: 15px; }
.catalog-product-view .eudora-pf-sticky__price { font-size: 19px; }
.catalog-product-view .eudora-pf-sticky__button,
.catalog-product-view .eudora-pf-sticky__cart { height: 52px; font-size: 17px; }

/* ───────── Tablet ───────── */
@media only screen and (max-width: 1100px) {
    body.catalog-product-view { --pdp-gutter: 36px; }
    .catalog-product-view .eudora-pdp .product-img-box { grid-template-columns: 64px minmax(0, 1fr); column-gap: 12px; }
    .catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs a { width: 64px; height: 64px; }
    .catalog-product-view .eudora-pdp .product-shop .product-name h1.h1 { font-size: 29px; }
}

/* ───────── Mobile: one column, image first ───────── */
@media only screen and (max-width: 767px) {
    .catalog-product-view .eudora-pdp .eudora-pdp__grid { grid-template-columns: minmax(0, 1fr); row-gap: 20px; }
    .catalog-product-view .eudora-pdp .eudora-pdp__media { position: static; }
    .catalog-product-view .eudora-pdp .product-img-box { grid-template-columns: minmax(0, 1fr); row-gap: 10px; }
    .catalog-product-view .eudora-pdp .product-img-box .product-image { grid-column: 1; grid-row: 1; }
    .catalog-product-view .eudora-pdp .product-img-box .more-views { grid-column: 1; grid-row: 2; }
    .catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs {
        flex-direction: row; max-height: none; overflow-x: auto; overflow-y: hidden; padding-bottom: 2px; scroll-snap-type: x proximity;
    }
    .catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs li { flex: none; scroll-snap-align: start; }
    .catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs a { width: 64px; height: 64px; }
    .catalog-product-view .eudora-pdp .product-shop .product-name h1.h1 { font-size: 26px; }
    .catalog-product-view .eudora-pdp .eudora-pdp__details { margin-top: 24px !important; }
    .catalog-product-view .eudora-pdp .eudora-pdp-perks { padding: 2px 16px; }
    .catalog-product-view .eudora-pdp .eudora-pdp-perk { grid-template-columns: 36px minmax(0, 1fr); column-gap: 12px; }
    .catalog-product-view .eudora-pdp .eudora-pdp-perk__icon { width: 36px; height: 36px; }
    .catalog-product-view .eudora-pdp .eudora-pdp-perk__icon::before { inset: 8px; }
    .catalog-product-view .product-view.eudora-pdp .product-shop .price-info .regular-price .price,
    .catalog-product-view .product-view.eudora-pdp .product-shop .price-info .eudora-sale-prices > .special-price .price { font-size: 27px; }
    .catalog-product-view .product-view.eudora-pdp .add-to-cart.eudora-purchase-actions { grid-template-columns: 128px minmax(0, 1fr); }
    body.catalog-product-view.eudora-pf-has-sticky { padding-bottom: 80px; }
    .catalog-product-view #customer-reviews.eudora-pdp-reviews { margin-top: 44px; padding-top: 28px; }
    .catalog-product-view #customer-reviews .eudora-pdp-reviews__head h2 { font-size: 26px !important; }
    .catalog-product-view #customer-reviews.eudora-pdp-reviews { padding-left: 0; padding-right: 0; }
    .catalog-product-view #customer-reviews.eudora-pdp-reviews .review-summary-table th,
    .catalog-product-view #customer-reviews.eudora-pdp-reviews .review-summary-table td { float: none; width: auto; }
    .catalog-product-view #customer-reviews.eudora-pdp-reviews .review-summary-table th,
    .catalog-product-view #customer-reviews.eudora-pdp-reviews .review-summary-table td { padding: 8px 2px; font-size: 12px; }
}

@media (prefers-reduced-motion: reduce) {
    .catalog-product-view .eudora-pdp .eudora-pdp__section > summary::after,
    .catalog-product-view .eudora-pdp .product-img-box .product-image-thumbs a { transition: none; }
}
