/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* ---------- PVDent brand ---------- */
html:root, html body {
	--wd-primary-color: #1E4FA3;   /* royal blue: trust & calm (client's choice) */
	--wd-alternative-color: #C8A97E;
	--wd-link-color: #1E4FA3;
	--wd-link-color-hover: #163C7D;
	--wd-title-font: "Fraunces", Georgia, serif;
	--wd-title-font-weight: 600;
	--wd-text-font: "Public Sans", "Helvetica Neue", Arial, sans-serif;
	--wd-entities-title-font: "Public Sans", "Helvetica Neue", Arial, sans-serif;
	--wd-header-el-font: "Public Sans", "Helvetica Neue", Arial, sans-serif;
	--wd-widget-title-font: "Public Sans", "Helvetica Neue", Arial, sans-serif;
	--btn-accented-bgcolor: #1E4FA3;
	--btn-accented-bgcolor-hover: #163C7D;
	--btn-accented-color: #FBF7EE;
	/* pvdent.com.au palette: their green is our blue (#1E4FA3) */
	--pv-navy: #0E1B2C;
	--pv-gold: #C8A97E;
	--pv-text: #2A3848;
	--pv-cream: #FBF7EE;
	--pv-beige: #F4EFE5;
	--wd-text-color: #2A3848;
	--wd-title-color: #0E1B2C;
	--wd-main-bgcolor: #FBF7EE;
}

/* cream page background, AU text colour */
body, .website-wrapper, .main-page-wrapper { background-color: var(--pv-cream); }
body { color: var(--pv-text); }

/* header as on pvdent.com.au: navy bar, white menu (gold when active / hovered), dark drop-downs, gold phone button */
.whb-general-header, .whb-sticky-header .whb-general-header { background-color: var(--pv-navy) !important; border-bottom: 0 !important; }
.whb-general-header .wd-nav-main > li > a { color: #fff !important; font-size: 18px; font-weight: 500; text-transform: none; letter-spacing: 0; }
.whb-general-header .wd-nav-main > li > a .wd-nav-arrow, .whb-general-header .wd-nav-main > li.menu-item-has-children > a:after { color: inherit; }
.whb-general-header .wd-tools-element > a, .whb-general-header .wd-tools-element .wd-tools-icon, .whb-general-header .wd-header-my-account a { color: #fff !important; }
.whb-general-header .wd-tools-element > a:hover, .whb-general-header .wd-header-my-account a:hover { color: var(--pv-gold) !important; }
.pv-header-phone-wrap { margin-left: 18px; }
.pv-header-phone-wrap p { margin: 0; }
.pv-header-phone { display: inline-flex; align-items: center; gap: 8px; padding: 9px 20px; border-radius: 3px; background: var(--pv-gold); color: #fff !important; font-size: 17px; font-weight: 500; line-height: 1.2; white-space: nowrap; transition: background .2s; }
.pv-header-phone:hover { background: #B8976A; color: #fff !important; }
@media (max-width: 1280px) { .pv-header-phone span { display: none; } .pv-header-phone { padding: 10px 12px; } }
.whb-header .wd-nav-main > li > a:hover,
.whb-header .wd-nav-main > li.current-menu-item > a,
.whb-header .wd-nav-main > li.wd-opened > a { color: var(--pv-gold) !important; }
.whb-header .wd-dropdown-menu { background-color: var(--pv-text); }
.whb-header .wd-dropdown-menu a { color: #fff !important; }
.whb-header .wd-dropdown-menu a:hover, .whb-header .wd-dropdown-menu .current-menu-item > a { color: var(--pv-gold) !important; }

/* buttons: blue with cream text */
.btn-color-primary:not(.btn-style-link), .single_add_to_cart_button, .checkout-button { color: var(--pv-cream) !important; }

/* gold accents: highlighted words, subtitles, ticks */
.title-subtitle, .wd-title-subtitle { color: var(--pv-gold) !important; }
.pv-bulk .pv-tick { color: var(--pv-gold); }
.title, h1, h2, h3 { color: var(--pv-navy); letter-spacing: -0.01em; }
html body .wd-highlight { color: var(--pv-gold) !important; font-style: italic; }

/* Promo bar under the header in brand navy */
.whb-header-bottom { background-color: var(--pv-navy) !important; border-top: 1px solid rgba(255, 255, 255, .1) !important; }

/* Product images: show whole device on a soft tile */
.wd-product .product-image-link img,
.product-grid-item .product-image-link img { object-fit: contain; aspect-ratio: 1 / 1; padding: 2%; width: 100%; }

/* Category tiles: equal crop */
.wd-cat .wd-cat-thumb img, .category-grid-item .category-image img { aspect-ratio: 1 / 1; object-fit: cover; }

/* Bottom image marquee: equal-height tiles */
.wd-marquee .wp-block-wd-image img { width: 240px; height: 240px; object-fit: contain; padding: 18px; background: #fff; border: 1px solid #ece4d4; border-radius: 15px; box-sizing: border-box; }
@media (max-width: 768px) { .wd-marquee .wp-block-wd-image img { width: 150px; height: 150px; padding: 10px; } }

/* Hero video overlay: keep the product shot in frame */
.wd-el-video-overlay img { object-fit: cover; object-position: center; }

/* Accordion title thumbnails ("Why Dentists Choose PVDent") */
.wd-accordion-title .img-wrapper { flex: 0 0 auto; }
.wd-accordion-title .img-wrapper img { width: 64px; height: 64px; object-fit: contain; background: #fff; border-radius: 12px; padding: 6px; }

/* Category tiles: readable white titles over photos */
.wd-cat.color-scheme-light .wd-cat-thumb { position: relative; border-radius: 15px; overflow: hidden; }
.wd-cat.color-scheme-light .wd-cat-thumb::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,22,40,0) 45%, rgba(10,22,40,.78) 100%); pointer-events: none; }
.wd-cat.color-scheme-light .wd-cat-content { z-index: 2; }
.wd-cat .wd-entities-title { font-family: var(--wd-title-font); font-size: 22px; }

/* Footer */
.wd-footer { background-color: var(--pv-navy) !important; }
.wd-footer img[src*="pvdent-logo-white"] { max-width: 170px; height: auto; }


/* Home hero: full-width white band (both color options) */
body.home .wd-054bd238 {
	background-color: #FFFFFF;
	box-shadow: 0 0 0 100vmax #FFFFFF;
	clip-path: inset(0 -100vmax);
	margin-top: 0 !important;
	padding-top: 120px;
	padding-bottom: 80px;
}
@media (max-width: 1024px) { body.home .wd-054bd238 { padding-top: 80px; padding-bottom: 50px; } }
body.home .wd-054bd238 .wd-el-video video { object-fit: cover; }
/* light-grey studio backgrounds of the hero video and the "Let's be honest" photo blend into the cream */
body.home .wd-054bd238 .wd-el-video video, body.home .wd-054bd238 .wd-el-video img,
body.home .wd-262a6e79 video, body.home .wd-262a6e79 img { mix-blend-mode: multiply; }
/* lift the video's off-white studio backdrop to white so it disappears into the cream */
body.home .wd-054bd238 .wd-el-video video { filter: brightness(1.08) contrast(1.04); background: transparent; }
/* Hero band starts right under the header (no strip of page color above it) */
body.home .main-page-wrapper > .container { padding-top: 0; }

/* ---------- Product page: the whole product area pins while the photo turns 360°, then scrolls on ---------- */
.single-product #wd-02033e84.pv-spin-pin { position: sticky; top: var(--pv-sticky-top, 110px); z-index: 1; }
.single-product .pv-spin-track { pointer-events: none; }
/* one spinning photo instead of a stacked gallery */
.single-product #wd-03d9359d .wd-gallery-images .wd-carousel-item:not(:first-child) { display: none; }
.single-product #wd-03d9359d .wd-gallery-images .wd-nav-arrows,
.single-product #wd-03d9359d .wd-nav-pagin-wrap { display: none; }

/* description inside the right column */
.single-product .pv-desc h3 { margin: 28px 0 12px; font-size: 20px; }
.single-product .pv-desc .pv-features { margin: 0; padding: 0; list-style: none; }
.single-product .pv-desc .pv-features li { padding: 12px 0; border-bottom: 1px solid rgba(0,0,0,.08); line-height: 1.55; }
.single-product .pv-desc .pv-features strong { display: block; color: var(--wd-title-color, #242424); }
.single-product .pv-desc .pv-specs { width: 100%; border-collapse: collapse; }
.single-product .pv-desc .pv-specs th,
.single-product .pv-desc .pv-specs td { padding: 11px 0; border-bottom: 1px solid rgba(0,0,0,.08); text-align: left; vertical-align: top; background: none; font-size: 15px; }
.single-product .pv-desc .pv-specs th { width: 42%; font-weight: 500; color: #777; text-transform: none; }
.single-product .pv-desc .pv-specs td { font-weight: 600; }

/* Home: "Buying for Your Whole Practice?" */
.pv-bulk { margin-bottom: 0; }
.pv-bulk .title { color: var(--pv-navy); }
.pv-bulk .wd-custom-width { margin-left: auto; margin-right: auto; }
.pv-bulk .pv-bulk-btn { min-height: 52px; padding: 0 30px; font-size: 16px; box-shadow: 0 8px 20px rgba(14, 27, 44, .15); }
.pv-bulk .pv-ticks p { margin: 0; }
.pv-bulk .pv-tick { margin-right: 6px; font-weight: 700; }
/* sit flush between the testimonials and the footer */
body.home .wd-ca17da40 { margin-bottom: 0 !important; }
body.home .main-page-wrapper { padding-bottom: 0; }
body.home .wd-content-layout { padding-bottom: 0; }

/* Members' bulk pricing */
.pv-bulk-note { display: block; margin-top: 4px; font-size: 13px; font-weight: 600; line-height: 1.4; color: #555; }
.pv-bulk-note .amount { color: inherit !important; font-size: inherit; }
.pv-bulk-note a { text-decoration: underline; }
.pv-bulk-login { margin: 0 0 30px; padding: 18px 22px; border: 1px solid rgba(0,0,0,.1); border-left: 4px solid var(--wd-primary-color); border-radius: 10px; background: #fff; line-height: 1.6; }
.pv-bulk-login strong { display: block; margin-bottom: 2px; font-size: 17px; }

/* ---------- Product story: alternating image / text ---------- */
.pv-story { --pv-s-ink: #1f2328; --pv-s-muted: #6b7178; --pv-s-line: rgba(0,0,0,.08); --pv-s-card: #f7f7f7; margin: 40px 0 70px; color: var(--pv-s-ink); }
.pv-story__row { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(28px, 5vw, 80px); align-items: center; padding: clamp(40px, 6vw, 90px) 0; border-top: 1px solid var(--pv-s-line); }
.pv-story__row:first-child { border-top: 0; }
.pv-story__row.is-reverse .pv-story__media { order: 2; }
.pv-story__media { position: relative; display: flex; align-items: center; justify-content: center; gap: 16px; aspect-ratio: 1 / 1; padding: 6%; border-radius: 22px; background: var(--pv-s-card); overflow: hidden; }
.pv-story__img { width: 100%; height: 100%; object-fit: contain; border-radius: 14px; transition: transform .8s ease; }
.pv-story__media.has-pair .pv-story__img { width: 50%; }
.pv-story__row:hover .pv-story__img { transform: scale(1.03); }
.pv-story__eyebrow { margin: 0 0 12px; font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--wd-primary-color); }
.pv-story .pv-story__title { margin: 0 0 18px; font-size: clamp(28px, 3vw, 42px); line-height: 1.12; }
.pv-story__text { margin: 0 0 22px; font-size: 17px; line-height: 1.7; color: var(--pv-s-muted); }
.pv-story__points { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 22px; margin: 0; padding: 0; list-style: none; }
.pv-story__points.is-compact { grid-template-columns: 1fr; gap: 6px; margin-top: 10px; }
.pv-story__points li { position: relative; padding-left: 26px; font-weight: 600; line-height: 1.45; }
.pv-story__points li::before { content: ""; position: absolute; left: 0; top: 6px; width: 14px; height: 8px; border-left: 2px solid var(--wd-primary-color); border-bottom: 2px solid var(--wd-primary-color); transform: rotate(-45deg); }
.pv-story__models { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.pv-story__model { padding: 20px; border: 1px solid var(--pv-s-line); border-radius: 14px; background: #fff; }
.pv-story__model h3 { margin: 0 0 6px; font-size: 18px; }
.pv-story__model > p { margin: 0; color: var(--pv-s-muted); font-size: 14px; line-height: 1.55; }
.pv-story__list { margin: 0 0 24px; padding: 0; list-style: none; }
.pv-story__list li { display: flex; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--pv-s-line); }
.pv-story__list li > span { flex: 0 0 auto; font-weight: 800; font-size: 14px; color: var(--wd-primary-color); padding-top: 2px; }
.pv-story__list strong { display: block; margin-bottom: 4px; font-size: 17px; }
.pv-story__list div { color: var(--pv-s-muted); line-height: 1.6; }
.pv-story__quote { margin: 0; padding: 22px 24px; border-radius: 14px; background: var(--pv-s-card); border-left: 4px solid var(--wd-primary-color); }
.pv-story__quote p { margin: 0 0 10px; font-size: 17px; line-height: 1.6; font-style: italic; }
.pv-story__quote cite { font-style: normal; font-size: 13px; font-weight: 600; color: var(--pv-s-muted); }
.pv-story__note { margin: 18px 0 0; padding: 12px 16px; border-radius: 10px; background: var(--pv-s-card); font-size: 14px; color: var(--pv-s-muted); }

.pv-story__block { padding: clamp(40px, 6vw, 80px) 0; border-top: 1px solid var(--pv-s-line); }
.pv-story__table-wrap { overflow-x: auto; border: 1px solid var(--pv-s-line); border-radius: 16px; }
.pv-story__table { width: 100%; min-width: 560px; border-collapse: collapse; }
.pv-story .pv-story__table th, .pv-story .pv-story__table td { padding: 16px 20px; border-bottom: 1px solid var(--pv-s-line); text-align: left; font-size: 15px; background: none; text-transform: none; }
.pv-story .pv-story__table tbody tr:last-child > * { border-bottom: 0; }
.pv-story .pv-story__table thead th { font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--pv-s-muted); }
.pv-story .pv-story__table tbody th { font-weight: 600; }
.pv-story .pv-story__table .is-us { background: rgba(0,0,0,.025); font-weight: 700; color: var(--pv-s-ink); }
.pv-story .pv-story__table thead .is-us { color: var(--wd-primary-color); }
.pv-story__faq details { border-bottom: 1px solid var(--pv-s-line); }
.pv-story__faq summary { position: relative; padding: 20px 40px 20px 0; font-size: 18px; font-weight: 600; cursor: pointer; list-style: none; }
.pv-story__faq summary::-webkit-details-marker { display: none; }
.pv-story__faq summary::after { content: "+"; position: absolute; right: 4px; top: 16px; font-size: 24px; font-weight: 400; color: var(--wd-primary-color); transition: transform .2s; }
.pv-story__faq details[open] summary::after { transform: rotate(45deg); }
.pv-story__faq details p { margin: 0 0 20px; max-width: 820px; line-height: 1.7; color: var(--pv-s-muted); }
.pv-story__help { margin: 22px 0 0; color: var(--pv-s-muted); }
.pv-story__cta { margin-top: 20px; padding: clamp(44px, 6vw, 80px) 24px; border-radius: 24px; background: #0e1b2c; color: #fff; text-align: center; }
.pv-story .pv-story__cta h2 { margin: 0 0 12px; color: #fff; font-size: clamp(28px, 3.2vw, 44px); }
.pv-story__cta > p { margin: 0 auto 26px; max-width: 560px; color: rgba(255,255,255,.75); }
.pv-story__cta-btns { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.pv-story__cta .btn-style-bordered { color: #fff !important; border-color: rgba(255,255,255,.4); background: transparent; }
.pv-story__small { margin: 20px 0 0 !important; font-size: 13px; color: rgba(255,255,255,.6) !important; }

/* reveal on scroll */
.pv-story__row, .pv-story__block, .pv-story__cta { opacity: 0; transform: translateY(28px); transition: opacity .7s ease, transform .7s ease; }
.pv-story__row.is-in, .pv-story__block.is-in, .pv-story__cta.is-in { opacity: 1; transform: none; }
.pv-story__row .pv-story__media { transform: translateX(-24px); transition: transform .9s ease .1s; }
.pv-story__row.is-reverse .pv-story__media { transform: translateX(24px); }
.pv-story__row.is-in .pv-story__media { transform: none; }

@media (max-width: 900px) {
	.pv-story__row { grid-template-columns: 1fr; gap: 26px; }
	.pv-story__row.is-reverse .pv-story__media { order: 0; }
	.pv-story__media { aspect-ratio: 4 / 3; }
	.pv-story__points, .pv-story__models { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
	.pv-story__row, .pv-story__block, .pv-story__cta, .pv-story__row .pv-story__media { opacity: 1; transform: none; transition: none; }
}
.pv-has-story #wd-07dd80f6 { display: none; }

/* ---------- "Bulk Pricing Enquiries" (home + product pages), as on pvdent.com.au ---------- */
.pv-enq { background: var(--pv-beige); box-shadow: 0 0 0 100vmax var(--pv-beige); clip-path: inset(0 -100vmax); padding: clamp(60px, 7vw, 100px) 0; }
.pv-product-page .pv-enq { box-shadow: none; clip-path: none; }
.pv-enq__inner { display: grid; grid-template-columns: 1fr minmax(320px, 400px); gap: clamp(30px, 6vw, 110px); align-items: center; max-width: 1240px; margin: 0 auto; padding: 0 24px; }
.pv-enq .pv-enq__title { margin: 0 0 24px; font-size: clamp(28px, 2.6vw, 36px); color: var(--pv-text); }
.pv-enq__text p { margin: 0 0 14px; font-size: 17px; line-height: 1.65; color: var(--pv-text); }
.pv-enq__text a { color: var(--pv-text); }
.pv-enq__form { padding: 22px 18px 28px; border-radius: 4px; background: #fff; box-shadow: 0 10px 30px rgba(14, 27, 44, .06); }
/* enquiry form (Contact Form 7), styled like the pvdent.com.au form; blue submit */
.pv-form { display: grid; gap: 14px; }
.pv-form__field { display: block; margin: 0; }
.pv-form__label { display: block; margin-bottom: 8px; font-size: 14px; font-weight: 500; color: var(--pv-text); }
.pv-form__label em { font-style: normal; color: var(--pv-text); }
.pv-form .wpcf7-form-control-wrap { display: block; position: relative; }
.pv-form input.wpcf7-form-control:not(.wpcf7-submit), .pv-form textarea.wpcf7-form-control { width: 100%; height: 38px; padding: 0 20px; border: 1px solid #1a1a1a; border-radius: 3px; background: #fff; color: var(--pv-text); font-size: 14px; box-shadow: none; }
.pv-form textarea.wpcf7-form-control { height: 108px; padding: 12px 20px; resize: vertical; }
.pv-form input::placeholder, .pv-form textarea::placeholder { color: #7a7f87; }
.pv-form input:focus, .pv-form textarea:focus { border-color: var(--wd-primary-color) !important; outline: none; box-shadow: 0 0 0 3px rgba(30, 79, 163, .15) !important; }
.pv-form__field--email input.wpcf7-form-control { padding-left: 38px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%232A3848' stroke-width='1.6' viewBox='0 0 24 24'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E") no-repeat 12px 50%; }
.pv-form .pv-form__submit, .pv-form input.wpcf7-submit { width: 100%; height: 43px; margin-top: 8px; border: 0; border-radius: 4px; background: var(--wd-primary-color); color: #fff !important; font-size: 14px; font-weight: 700; text-transform: none; cursor: pointer; transition: background .2s; }
.pv-form .pv-form__submit:hover, .pv-form input.wpcf7-submit:hover { background: #163C7D; }
.pv-enq .wpcf7-not-valid-tip { margin-top: 4px; font-size: 12px; }
.pv-enq .wpcf7 form .wpcf7-response-output { margin: 14px 0 0; padding: 10px 12px; border-radius: 4px; font-size: 13px; }
.pv-enq .wpcf7-spinner { position: absolute; margin: 18px 0 0 8px; }
/* theme overrides: keep the form exactly like the pvdent.com.au one */
.pv-form textarea.wpcf7-form-control { height: 108px !important; min-height: 108px !important; max-height: none; }
.pv-form .pv-form__field--email input.wpcf7-form-control { padding-left: 38px !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%232A3848' stroke-width='1.6' viewBox='0 0 24 24'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: 12px 50% !important; }
.pv-form input.wpcf7-submit.pv-form__submit { border-radius: 4px !important; min-height: 43px; padding: 0 20px; box-shadow: none; }
@media (max-width: 900px) { .pv-enq__inner { grid-template-columns: 1fr; } }

/* home sections: hero white, then cream / light grey alternating
   hero #fff · products #fbf7ee · let's be honest #f3f3f3 · why choose #fbf7ee · testimonials #f3f3f3 · buying for your practice #fbf7ee · enquiry #f3f3f3 */
body.home .pv-enq { background: #F3F3F3; box-shadow: 0 0 0 100vmax #F3F3F3; }

/* ---------- Policy pages (Privacy, Terms, Shipping, Return & Refund) ---------- */
.pv-legal { max-width: 860px; margin: 0 auto; padding: 10px 0 60px; color: var(--pv-text); font-size: 16px; line-height: 1.75; }
.pv-legal > p:first-child { margin-bottom: 34px; padding-bottom: 18px; border-bottom: 1px solid rgba(14, 27, 44, .1); font-size: 14px; color: #5B6676; }
.pv-legal h2 { margin: 42px 0 14px; font-size: 26px; color: var(--pv-navy); }
.pv-legal h3 { margin: 26px 0 10px; font-size: 19px; color: var(--pv-navy); }
.pv-legal p { margin: 0 0 16px; }
.pv-legal ul, .pv-legal ol { margin: 0 0 18px; padding-left: 22px; }
.pv-legal li { margin-bottom: 8px; }
.pv-legal a { color: var(--wd-primary-color); text-decoration: underline; }
.pv-legal table { width: 100%; margin: 6px 0 22px; border-collapse: collapse; background: #fff; font-size: 15px; }
.pv-legal th, .pv-legal td { padding: 12px 14px; border: 1px solid rgba(14, 27, 44, .12); text-align: left; vertical-align: top; }
.pv-legal th { background: var(--pv-beige); color: var(--pv-navy); text-transform: none; }
@media (max-width: 768px) { .pv-legal { font-size: 15px; } .pv-legal h2 { font-size: 22px; } .pv-legal table { display: block; overflow-x: auto; } }

/* footer: link of the current page in gold (blue is unreadable on navy) */
.wd-footer .current-menu-item > a, .wd-footer .current_page_item > a, .footer-container .current-menu-item > a { color: var(--pv-gold) !important; }

/* Floating WhatsApp button (sits above the scroll-to-top button and the mobile toolbar) */
.pv-whatsapp { position: fixed; right: 14px; bottom: 78px; z-index: 390; display: flex; align-items: center; justify-content: center; width: 54px; height: 54px; border-radius: 50%; background: #25D366; color: #fff !important; box-shadow: 0 8px 22px rgba(0, 0, 0, .22); transition: transform .2s, box-shadow .2s; }
.pv-whatsapp:hover { transform: scale(1.06); box-shadow: 0 10px 26px rgba(0, 0, 0, .28); color: #fff; }
.pv-whatsapp:focus-visible { outline: 3px solid var(--wd-primary-color); outline-offset: 3px; }
@media (max-width: 1024px) { .pv-whatsapp { bottom: 132px; width: 50px; height: 50px; } }
@media print { .pv-whatsapp { display: none; } }

/* footer "Talk to a real person": phone line */
.pv-footer-phone { margin: 6px 0 0; font-size: 15px; color: var(--pv-text); }
.pv-footer-phone a { color: var(--wd-primary-color); font-weight: 600; }

/* header content width like pvdent.com.au (centred, not edge to edge) */
.whb-general-header .container, .whb-general-header .wd-container { max-width: 1440px !important; margin-left: auto; margin-right: auto; }
/* drop-down wide enough for one line per product, as on pvdent.com.au */
.whb-general-header .wd-dropdown-menu.wd-design-default { --wd-dropdown-width: 340px; width: 340px; padding: 14px 0; }
.whb-general-header .wd-dropdown-menu .wd-sub-menu li a { padding: 9px 28px; font-size: 16px; font-weight: 600; white-space: nowrap; }

/* home: centred section headings */
body.home .wd-0dcf3d40, body.home .wd-7e4bb65b { text-align: center; margin-left: auto; margin-right: auto; }

/* footer card (Buying for multiple chairs? / Talk to a real person / Warranty-Backed): everything centred */
.wd-8146e239 > .wp-block-wd-column { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.wd-8146e239 > .wp-block-wd-column > *, .wd-8146e239 .wp-block-wd-container { margin-left: auto !important; margin-right: auto !important; }
.wd-8146e239 .title, .wd-8146e239 p, .wd-8146e239 .pv-footer-phone { text-align: center; }
.wd-8146e239 .wd-dir-row, .wd-8146e239 .wd-social-icons, .wd-8146e239 .wd-social-icons-wrapper { justify-content: center; }
.wd-8146e239 .wp-block-wd-image, .wd-8146e239 .wd-image { display: flex; justify-content: center; }
.wd-8146e239 .wp-block-wd-container.wd-dir-row { justify-content: center !important; align-items: center !important; flex-wrap: wrap; }
.wd-8146e239 .wp-block-wd-container.wd-dir-col { align-items: center !important; }

/* carousel arrows: solid blue circles, always visible */
.wd-nav-arrows .wd-btn-arrow { opacity: 1 !important; visibility: visible !important; pointer-events: auto; }
.wd-nav-arrows .wd-btn-arrow .wd-arrow-inner { width: 50px; height: 50px; border-radius: 50%; background: var(--wd-primary-color) !important; color: #fff !important; box-shadow: 0 8px 20px rgba(30, 79, 163, .35); transition: background .2s, transform .2s; }
.wd-nav-arrows .wd-btn-arrow .wd-arrow-inner:after, .wd-nav-arrows .wd-btn-arrow .wd-arrow-inner:before { color: #fff !important; font-size: 18px; font-weight: 700; }
.wd-nav-arrows .wd-btn-arrow:hover .wd-arrow-inner { background: #163C7D !important; transform: scale(1.06); }
.wd-nav-arrows .wd-btn-arrow.wd-disabled .wd-arrow-inner { background: #9db3d8 !important; box-shadow: none; }
/* keep the arrows on screen: overlap the edges of the first / last card */
.wd-nav-arrows.wd-pos-sep .wd-btn-arrow.wd-prev { left: -18px !important; right: auto !important; z-index: 5; }
.wd-nav-arrows.wd-pos-sep .wd-btn-arrow.wd-next { right: -18px !important; left: auto !important; z-index: 5; }
@media (max-width: 1400px) { .wd-nav-arrows.wd-pos-sep .wd-btn-arrow.wd-prev { left: 4px !important; } .wd-nav-arrows.wd-pos-sep .wd-btn-arrow.wd-next { right: 4px !important; } }

/* Handpieces category: intro section (as on pvdent.com.au/handpieces/) */
.pv-range { background: var(--pv-beige); box-shadow: 0 0 0 100vmax var(--pv-beige); clip-path: inset(0 -100vmax); padding: clamp(50px, 6vw, 80px) 16px; text-align: center; }
.pv-range__inner { max-width: 960px; margin: 0 auto; }
.pv-range__pill { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 26px; padding: 6px 14px; border: 1px solid #D87F00; border-radius: 999px; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #D87F00; }
.pv-range__pill::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #D87F00; }
.pv-range .pv-range__title { margin: 0 0 26px; font-size: clamp(34px, 4.4vw, 62px); font-weight: 400; line-height: 1.12; color: var(--pv-navy); }
.pv-range__title em { color: #D87F00; font-style: italic; }
.pv-range__sub { max-width: 820px; margin: 0 auto 22px; font-family: var(--wd-title-font); font-size: clamp(18px, 1.7vw, 23px); font-style: italic; font-weight: 600; line-height: 1.45; color: var(--pv-navy); }
.pv-range__text { max-width: 800px; margin: 0 auto 34px; font-size: 17px; line-height: 1.6; color: var(--pv-text); }
.pv-range__text strong { color: var(--pv-navy); }
.pv-range__ticks { display: inline-flex; flex-wrap: wrap; justify-content: center; gap: 10px 24px; margin: 0; padding: 18px 36px; border: 1px solid rgba(14, 27, 44, .08); border-radius: 999px; background: #fff; list-style: none; font-size: 15px; color: var(--pv-text); }
.pv-range__ticks li { display: inline-flex; align-items: center; gap: 8px; margin: 0; }
.pv-range__ticks li::before { content: ""; flex: 0 0 18px; width: 18px; height: 18px; border: 1.5px solid var(--pv-gold); border-radius: 50%; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C8A97E' stroke-width='3'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center / 11px no-repeat; }
.pv-range__ticks b { color: var(--pv-navy); }
@media (max-width: 600px) { .pv-range__ticks { border-radius: 18px; padding: 16px 20px; flex-direction: column; align-items: flex-start; } }

/* Handpieces page: intro section starts right under the title bar (no cream gap) */
.term-handpieces .wd-5ff4e1a9 { margin-bottom: 0 !important; }

/* JINME ES70 page (AU custom HTML block): full width, flush under the header */
body:has(.pvd-es70) .main-page-wrapper, body:has(.pvd-es70) .wd-content-layout { padding-top: 0; padding-bottom: 0; }
body:has(.pvd-es70) .wd-page-wrapper { overflow-x: clip; }
.pvd-es70 { margin-inline: calc(50% - 50vw); }
.pvd-es70 + .pv-enq, .entry-content > .pvd-es70 ~ .pv-enq { margin-top: 0; }
.pvd-es70 h1, .pvd-es70 h2, .pvd-es70 h3, .pvd-es70 h4 { color: inherit; } /* the block colours headings by inheritance */

/* Footer: the contact card above the logo was removed, so give the logo row its own top space */
.wd-footer .main-footer { padding-top: 70px; }
@media (max-width: 768px) { .wd-footer .main-footer { padding-top: 50px; } }

/* Handpiece cards on the shop / category pages (pvdent.com.au Handpieces page design) */
.pv-hcard-col { display: flex; }
.pv-hcard { --c-top: #FDD294; --c-badge: #FFB54A; --c-badge-line: #9FDACA; --c-label: #FCAA34;
	position: relative; display: flex; flex-direction: column; gap: 20px; width: 100%; padding: 25px; border-top: 5px solid var(--c-top); border-radius: 22px; background: #fff;
	font-family: Inter, sans-serif; text-align: center; color: #2A3848; transition: box-shadow .25s; }
.pv-hcard:hover { box-shadow: 0 18px 40px rgba(10, 22, 40, .08); }
.wd-products:has(.pv-hcard-col) { --wd-col-lg: 3 !important; --wd-col-md: 2 !important; --wd-col-sm: 1 !important; }
.pv-hcard--red { --c-top: #F53B3B; --c-badge: #F53B3B; --c-badge-line: #438DDA; --c-label: #F53B3B; }
.pv-hcard--blue { --c-top: #5588FC; --c-badge: #5588FC; --c-badge-line: #A284DB; --c-label: #5588FC; }
.pv-hcard--green { --c-top: #27AA39; --c-badge: #27AA39; --c-badge-line: #61CE70; --c-label: #27AA39; }
.pv-hcard__img { display: flex; align-items: center; justify-content: center; height: 242px; }
.pv-hcard__img img { max-width: 100%; max-height: 100%; width: auto; object-fit: contain; mix-blend-mode: multiply; }
.pv-hcard__badge { position: absolute; top: 20px; right: 20px; padding: 6px 15px; border: 2px solid var(--c-badge-line); border-radius: 50px; background: #fff; font-size: 12px; line-height: 14px; text-transform: uppercase; color: var(--c-badge); }
.pv-hcard__label { margin: 0 0 -15px; font-size: 14px; font-weight: 500; line-height: 22.4px; text-transform: uppercase; color: var(--c-label); }
.pv-hcard .pv-hcard__name { margin: 0; font-family: Inter, sans-serif; font-size: 22px; font-weight: 600; line-height: 1.1; }
.pv-hcard .pv-hcard__name a { color: var(--pv-navy); }
.pv-hcard__rule { width: 100%; margin: 0; border: 0; border-top: 1px solid #D0D0D0; }
.pv-hcard__desc { margin: 0; font-size: 14px; line-height: 22.4px; }
.pv-hcard__foot { display: flex; flex-direction: column; gap: 12px; margin-top: auto; }
.pv-hcard__price { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: center; gap: 4px 10px; margin: 0 0 6px; font-size: 14px; }
.pv-hcard__price span { white-space: nowrap; }
.pv-hcard__price span:first-child { font-weight: 500; text-transform: uppercase; }
.pv-hcard__price strong { font-size: 36px; font-weight: 500; line-height: 1; color: #2A3848; }
.pv-hcard__cart { display: flex; flex-direction: column; gap: 10px; margin: 0; }
.pv-hcard .pv-hcard__btn { display: block; width: 100%; min-height: 0; padding: 12px; border: 2px solid #C8A97E; border-radius: 30px; background: #000; font-family: Inter, sans-serif; font-size: 14px; font-weight: 600; line-height: 14px; text-transform: none; color: #fff; cursor: pointer; transition: background-color .2s, border-color .2s; }
.pv-hcard .pv-hcard__btn--cart { border-color: #1E4FA3; background: #1E4FA3; }
.pv-hcard .pv-hcard__btn:hover { border-color: #C8A97E; background: #C8A97E; color: #0E1B2C; }
.pv-hcard .pv-hcard__select { height: 42px; padding: 0 14px; border: 1px solid #D0D0D0; border-radius: 30px; background-color: #fff; font-family: Inter, sans-serif; font-size: 14px; color: #2A3848; text-align: center; }
@media (max-width: 600px) { .pv-hcard__img { height: 200px; } .pv-hcard__price strong { font-size: 30px; } }

/* Handpieces category: no sidebar, full-width 4-column grid */
body.term-handpieces .wp-block-wd-off-sidebar,
body.term-handpieces .wd-toolbar-sidebar.wd-filter-icon { display: none !important; }
body.term-handpieces .wp-block-wd-off-content { flex: 1 1 100%; max-width: 100%; width: 100%; }
body.term-handpieces .wd-products:has(.pv-hcard-col) { --wd-col-lg: 4 !important; }
@media (max-width: 1199px) {
	body.term-handpieces .wd-products:has(.pv-hcard-col) { --wd-col-lg: 3 !important; }
}

/* Home "Why Dentists Choose PVDent": title centred on top, 4 accordion items in 2 columns */
.wd-cc1c4f80 { flex-wrap: wrap; }
.wd-cc1c4f80 > .wd-7f1df100,
.wd-cc1c4f80 > .wd-157827a9 { flex: 0 0 100% !important; max-width: 100% !important; width: 100% !important; --wd-col-lg: 12; --wd-col-md: 12; }
.wd-cc1c4f80 > .wd-7f1df100 { position: static !important; top: auto !important; text-align: center; margin-bottom: 30px; }
.wd-cc1c4f80 > .wd-7f1df100 .wp-block-wd-title { margin-inline: auto !important; text-align: center; }
.wd-cc1c4f80 .wd-78bc8be9 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 30px; align-items: start; }
.wd-cc1c4f80 .wd-78bc8be9 > .wd-accordion-item { margin: 0 !important; }
@media (max-width: 768px) {
	.wd-cc1c4f80 .wd-78bc8be9 { grid-template-columns: 1fr; gap: 15px; }
	.wd-cc1c4f80 > .wd-7f1df100 { margin-bottom: 15px; }
}

/* Footer CONNECT: social icons instead of names */
.pv-social { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 4px; }
.pv-social__link { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(255,255,255,.25); color: #fff !important; transition: background-color .2s, border-color .2s, color .2s; }
.pv-social__link:hover, .pv-social__link:focus-visible { background: #C8A97E; border-color: #C8A97E; color: #0d1b2e !important; }

/* Home "You Have Two Choices." band (from pvdent.com.au) */
.pv-choices { position: relative; isolation: isolate; overflow: hidden; background: #0E1B2C; color: #FBF7EE; text-align: center; margin-inline: calc(50% - 50vw); }
.pv-choices::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: radial-gradient(70% 50% at 50% 100%, rgba(20, 67, 60, .5), transparent 60%), radial-gradient(circle at 80% 20%, rgba(176, 137, 72, .15), transparent 50%); }
.pv-choices__inner { max-width: 1024px; margin: 0 auto; padding: 80px 20px; display: flex; flex-direction: column; align-items: center; gap: 30px; }
.pv-choices .pv-choices__title { margin: 0; font-family: "Fraunces", serif; font-size: 42px; font-weight: 400; line-height: 1.15; color: #FBF7EE; }
.pv-choices__lead { margin: -14px 0 0; font-family: "Inter", sans-serif; font-size: 16px; color: rgba(251, 247, 238, .75); }
.pv-choices__quote { margin: -10px 0 0; font-family: "Inter", sans-serif; font-size: 20px; font-style: italic; font-weight: 600; line-height: 1.4; color: #C8A97E; }
.pv-choices__btns { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; }
.pv-choices .pv-choices__btn { display: inline-block; padding: 14px 28px; border-radius: 50px; border: 2px solid #FBF7EE; font-family: "Inter", sans-serif; font-size: 15px; font-weight: 600; line-height: 1.2; text-decoration: none; transition: background-color .2s, color .2s, border-color .2s; }
.pv-choices .pv-choices__btn--solid { background: #FBF7EE; color: #0E1B2C; }
.pv-choices .pv-choices__btn--ghost { background: transparent; color: #FBF7EE; border-color: rgba(251, 247, 238, .4); }
.pv-choices .pv-choices__btn:hover, .pv-choices .pv-choices__btn:focus-visible { background: #C8A97E; border-color: #C8A97E; color: #0E1B2C; }
@media (max-width: 768px) {
	.pv-choices__inner { padding: 56px 16px; gap: 24px; }
	.pv-choices .pv-choices__title { font-size: 32px; }
	.pv-choices__quote { font-size: 17px; }
}

/* Landing pages built from custom HTML (E8, Suction 10, C100, Contact Us): full width, flush under the header */
body:has(.pv-landing) .main-page-wrapper, body:has(.pv-landing) .wd-content-layout { padding-top: 0; padding-bottom: 0; }
body:has(.pv-landing) .wd-page-wrapper { overflow-x: clip; }
.pv-landing { margin-inline: calc(50% - 50vw); }
.pv-landing + .pv-enq, .entry-content > .pv-landing ~ .pv-enq { margin-top: 0; }
body:has(.pv-landing) .wd-page-title, body:has(.pv-landing) .page-title { display: none; }

/* Dental Equipment category: same full-width card grid as Handpieces */
body.term-dental-equipment .wp-block-wd-off-sidebar,
body.term-dental-equipment .wd-toolbar-sidebar.wd-filter-icon { display: none !important; }
body.term-dental-equipment .wp-block-wd-off-content { flex: 1 1 100%; max-width: 100%; width: 100%; }
body.term-dental-equipment .wd-products:has(.pv-hcard-col) { --wd-col-lg: 4 !important; }
@media (max-width: 1199px) { body.term-dental-equipment .wd-products:has(.pv-hcard-col) { --wd-col-lg: 3 !important; } }
.pv-hcard__price.is-text strong { font-size: 28px; }

/* Home: category headings above the Handpieces / Dental Equipment carousels */
.pv-catrow { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 20px; max-width: 1690px; margin: 0 auto 18px; }
.pv-catrow .pv-catrow__title { margin: 0; font-size: 28px; color: var(--pv-navy, #0E1B2C); }
.pv-catrow__all { font-size: 15px; font-weight: 600; color: var(--pv-blue, #1E4FA3); text-decoration: none; }
.pv-catrow__all:hover { color: var(--pv-gold, #C8A97E); }
@media (max-width: 768px) { .pv-catrow .pv-catrow__title { font-size: 22px; } }

/* =====  PVDent enquiry form ("Get in touch" card) — Contact page + every bottom enquiry section  ===== */
.pvf-card { padding: 44px; border-radius: 28px; background: #0E1B2C; color: rgba(255, 255, 255, .8); box-shadow: 0 30px 60px -40px rgba(14, 27, 44, .6); font-family: "Public Sans", sans-serif; text-align: left; }
.pvf-card .pvf-title { margin: 0 0 6px; font-family: "Fraunces", serif; font-size: 32px; font-weight: 500; line-height: 1.2; color: #fff; }
.pvf-note { margin: 0 0 26px; font-size: 15px; color: rgba(255, 255, 255, .8); }
.pvf-form { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 0; }
.pvf-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.pvf-field.is-full, .pvf-submit, .pvf-status { grid-column: 1 / -1; }
.pvf-field label { margin: 0; font-size: 13px; font-weight: 600; color: #fff; }
.pvf-field label em { font-style: normal; color: #C8A97E; }
.pvf-form input:not([type=hidden]), .pvf-form select, .pvf-form textarea { width: 100%; height: 48px; margin: 0; padding: 0 18px; border: 2px solid transparent; border-radius: 30px; background-color: #fff; box-shadow: none; font: inherit; font-size: 15px; line-height: normal; color: #0E1B2C; }
.pvf-form select { padding-right: 40px; text-overflow: ellipsis; cursor: pointer; appearance: none; -webkit-appearance: none; background-image: linear-gradient(45deg, transparent 50%, #0E1B2C 50%), linear-gradient(135deg, #0E1B2C 50%, transparent 50%); background-position: calc(100% - 22px) 52%, calc(100% - 16px) 52%; background-size: 6px 6px; background-repeat: no-repeat; }
.pvf-form select:invalid { color: #8a94a3; }
.pvf-form textarea { height: auto; min-height: 130px; padding: 14px 18px; border-radius: 18px; resize: vertical; }
.pvf-form ::placeholder { color: #8a94a3; opacity: 1; }
.pvf-form input:focus, .pvf-form select:focus, .pvf-form textarea:focus { outline: 2px solid #C8A97E; outline-offset: 2px; }
.pvf-field.is-bad input, .pvf-field.is-bad select, .pvf-field.is-bad textarea { border-color: #ff8a7a; }
.pvf-error { min-height: 0; font-size: 12.5px; line-height: 1.35; color: #ffb4a8; }
.pvf-error:empty { display: none; }
.pvf-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.pvf-submit { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-top: 4px; }
.pvf-submit button { min-height: 0; padding: 15px 34px; border: 0; border-radius: 35px; background: #C8A97E; font-family: "Inter", sans-serif; font-size: 15px; font-weight: 700; line-height: 1.2; text-transform: none; letter-spacing: 0; color: #0E1B2C; cursor: pointer; transition: transform .2s, background-color .2s; }
.pvf-submit button:hover { transform: translateY(-2px); background: #d6bb94; color: #0E1B2C; }
.pvf-submit button:disabled { opacity: .7; transform: none; cursor: wait; }
.pvf-submit p { margin: 0; font-size: 13px; color: rgba(255, 255, 255, .6); }
.pvf-status:empty { display: none; }
.pvf-status { padding: 12px 16px; border-radius: 14px; font-size: 14px; }
.pvf-status.is-ok { background: rgba(58, 163, 107, .18); color: #b8f0cf; }
.pvf-status.is-bad { background: rgba(255, 138, 122, .14); color: #ffc9c0; }
@media (max-width: 560px) { .pvf-card { padding: 28px 22px; } .pvf-form { grid-template-columns: 1fr; } }

/* bottom enquiry section: text on the left, the card on the right */
.pv-enq__inner { grid-template-columns: 1fr minmax(0, 640px); }
.pv-enq .pv-enq__form { padding: 0; border-radius: 0; background: none; box-shadow: none; }
@media (max-width: 1024px) { .pv-enq__inner { grid-template-columns: 1fr; } }
/* keep the card's fields identical on every page (product pages restyle dark-background selects) */
.pvf-card .pvf-form input:not([type=hidden]), .pvf-card .pvf-form select, .pvf-card .pvf-form textarea { height: 48px !important; padding-top: 0 !important; padding-bottom: 0 !important; padding-left: 18px !important; border-radius: 30px !important; background-color: #fff !important; font-size: 15px !important; line-height: normal !important; color: #0E1B2C !important; }
.pvf-card .pvf-form select { padding-right: 40px !important; }
.pvf-card .pvf-form select:invalid { color: #8a94a3 !important; }
.pvf-card .pvf-form select option { color: #0E1B2C; }
.pvf-card .pvf-form textarea { height: auto !important; min-height: 130px !important; padding: 14px 18px !important; border-radius: 18px !important; }
.pv-hcard__price del { font-size: 15px; color: #8a94a3; }

/* Home product carousels: quick view button shows the cart icon (opens the quick add-to-cart popup) */
body.home .wd-quick-view-btn .wd-action-icon:before { content: "\f105"; }

/* Quick view popup: keep the gallery arrows inside the image */
.product-quick-view .wd-nav-arrows.wd-pos-sep .wd-btn-arrow { transform: none !important; }
.product-quick-view .wd-nav-arrows.wd-pos-sep .wd-btn-arrow.wd-prev { left: 12px !important; right: auto !important; }
.product-quick-view .wd-nav-arrows.wd-pos-sep .wd-btn-arrow.wd-next { right: 12px !important; left: auto !important; }
.product-quick-view .wd-nav-arrows .wd-btn-arrow .wd-arrow-inner { width: 40px; height: 40px; }
/* Quick view popup: same square image box for every product */
.product-quick-view .woocommerce-product-gallery .wd-carousel-item,
.product-quick-view .woocommerce-product-gallery .woocommerce-product-gallery__image { display: flex; align-items: center; justify-content: center; }
.product-quick-view .woocommerce-product-gallery img { width: 100% !important; height: auto !important; aspect-ratio: 1 / 1; max-height: 460px; object-fit: contain; background: #fff; }

/* Desktop header: menu sits centred in the space between the logo and the right-hand icons (moves it left) */
@media (min-width: 1025px) {
	.whb-general-header .whb-col-left { flex: 0 0 auto; }
	.whb-general-header .whb-col-right { flex: 0 0 auto; }
	.whb-general-header .whb-col-center { flex: 1 1 auto; justify-content: center; }
}
/* Desktop header: more space before the phone button, so search/account/wishlist/cart sit further left */
@media (min-width: 1025px) {
	.whb-general-header .whb-col-right .wd-header-cart { margin-right: 60px; }
}

/* Breathing room around product photos in cards (home carousels, related products, shop/category cards) */
.wd-product .product-image-link img { box-sizing: border-box; padding: 9%; }
.pv-hcard__img { box-sizing: border-box; padding: 18px 28px; }
@media (max-width: 600px) { .wd-product .product-image-link img { padding: 7%; } .pv-hcard__img { padding: 14px 22px; } }
/* Hover (second) image on product cards: show whole, same padding as the main photo */
.wd-product .wd-product-img-hover img { width: 100% !important; height: 100% !important; object-fit: contain !important; box-sizing: border-box; padding: 9%; background: #fff; }
@media (max-width: 600px) { .wd-product .wd-product-img-hover img { padding: 7%; } }
