:root {
	--wd-text-font: "Inter", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 400;
	--wd-text-color: #1d1d1b;
	--wd-text-font-size: 15px;
	--wd-title-font: "Playfair Display", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 400;
	--wd-title-color: #242424;
	--wd-entities-title-font: "Playfair Display", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 400;
	--wd-entities-title-color: #333333;
	--wd-entities-title-color-hover: rgba(51, 51, 51, 0.65);
	--wd-alternative-font: "Playfair Display", Arial, Helvetica, sans-serif;
	--wd-widget-title-font: "Inter", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 400;
	--wd-widget-title-transform: uppercase;
	--wd-widget-title-color: #333;
	--wd-widget-title-font-size: 15px;
	--wd-header-el-font: "Inter", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 400;
	--wd-header-el-transform: uppercase;
	--wd-header-el-font-size: 13px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: #8b3a3a;
	--wd-alternative-color: #c49a6c;
	--btn-default-font-family: "Inter", Arial, Helvetica, sans-serif;
	--btn-default-font-weight: 500;
	--btn-default-transform: uppercase;
	--btn-default-font-size: 13px;
	--btn-default-bgcolor: #8b3a3a;
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-font-family: "Inter", Arial, Helvetica, sans-serif;
	--btn-accented-font-weight: 500;
	--btn-accented-transform: uppercase;
	--btn-accented-font-size: 13px;
	--btn-accented-bgcolor: #8b3a3a;
	--btn-accented-bgcolor-hover: rgb(48,48,48);
	--btn-font-weight: 400;
	--btn-transform: capitalize;
	--wd-form-brd-width: 1px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: #E0B252;
	--notices-warning-color: #fff;
	--wd-link-color: #333333;
	--wd-link-color-hover: #242424;
	--wd-link-decor-style: solid;
	--wd-link-decor-style-hover: solid;
	--wd-link-decor-color: rgb(51,51,51);
	--wd-link-decor-color-hover: rgb(36,36,36);
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: none;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: #faf8f5;
	background-image: none;
}
html table th {
	text-transform: none;
}
html .wd-nav-mobile > li > a {
	font-weight: 400;
}
 {
	font-family: "Lato", Arial, Helvetica, sans-serif;
	font-weight: 700;
}
body .wd-swatch, body table.variations label, body .wd-breadcrumbs>:is(span,a):last-child {
	font-weight: 400;
}
:is(.page, .search-no-results, .error404) :is(.wd-page-content, .whb-header) {
	background-color: rgb(250,250,250);
	background-image: none;
}
.woodmart-archive-shop:not(.single-product) :is(.wd-page-content, .whb-header) {
	background-color: rgb(250,250,250);
	background-image: none;
}
.single-product :is(.wd-page-content, .whb-header) {
	background-color: rgb(250,250,250);
	background-image: none;
}
.woodmart-archive-blog :is(.wd-page-content, .whb-header) {
	background-color: rgb(250,250,250);
	background-image: none;
}
.single-post :is(.wd-page-content, .whb-header) {
	background-color: rgb(250,250,250);
	background-image: none;
}
.wd-nav-arrows.wd-pos-sep:not(:where(.wd-custom-style)) {
	--wd-arrow-icon-size: 18px;
}
.wd .product-label.onsale {
	background-color: #8b3a3a;
	color: #ffffff;
}
.wd .product-label.new {
	background-color: #1d1d1b;
	color: #ffffff;
}
.wd .product-label.featured {
	background-color: #c49a6c;
	color: #1d1d1b;
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}
.woocommerce-product-gallery {
	--wd-gallery-gap: 0px;
}

@media (max-width: 768.98px) {
	.woocommerce-product-gallery.thumbs-position-left {
		--wd-thumbs-width: 0px;
	}

}
:root{
--wd-container-w: 1800px;
--wd-form-brd-radius: 0px;
--btn-default-color: #fff;
--btn-default-color-hover: #333;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-brd-radius: 0px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-default-box-shadow-active: none;
--btn-default-bottom: 0px;
--btn-accented-brd-radius: 0px;
--btn-accented-box-shadow: none;
--btn-accented-box-shadow-hover: none;
--btn-accented-box-shadow-active: none;
--btn-accented-bottom: 0px;
--wd-brd-radius: 0px;
}

@media (min-width: 1800px) {
[data-vc-full-width]:not([data-vc-stretch-content]),
:is(.vc_section, .vc_row).wd-section-stretch {
padding-left: calc((100vw - 1800px - var(--wd-sticky-nav-w) - var(--wd-scroll-w)) / 2);
padding-right: calc((100vw - 1800px - var(--wd-sticky-nav-w) - var(--wd-scroll-w)) / 2);
}
}


.wd-page-title {
background-color: #0a0a0a;
}

/* Hoyra spacing rhythm: tighter vertical scale, EN + /uk/ */
html body .vc_custom_hero{padding-top:32px!important;padding-bottom:40px!important}
html body .hoyra-hero-note{margin-top:14px!important;letter-spacing:.02em}
html body.post-type-archive-product .wd-content-layout .vc_row,html body.tax-product_cat .wd-content-layout .vc_row{margin-bottom:40px!important}
html body .hoyra-archive-title{margin-bottom:4px!important}
html body .vc_custom_hero img{max-height:620px;width:100%;object-fit:cover;object-position:center}
html body .vc_custom_hero .hoyra-hero-note p{margin-top:0!important;margin-bottom:0!important;max-width:600px}
@media (max-width:1024px){
html body .vc_custom_hero{padding-top:28px!important;padding-bottom:32px!important}
}
@media (max-width:767px){
html body .vc_custom_hero{padding-top:20px!important;padding-bottom:24px!important}
}

/* footer grid v1 */
/* footer grid v2 */
/* hero editorial + footer rhythm v8 */
html body .vc_custom_hero{padding-top:0!important;padding-bottom:0!important}
html body .vc_custom_hero .vc_column-inner{padding-top:40px!important;padding-bottom:40px!important}
html body .vc_custom_hero img{max-height:none!important;height:calc(100vh - 220px)!important;min-height:540px!important;width:100%!important;object-fit:cover!important;object-position:center 15%!important}
@media (max-width:1024px){
 html body .vc_custom_hero img{height:calc(100vh - 190px)!important;min-height:460px!important}
}
@media (max-width:767px){
 html body .vc_custom_hero img{height:60vh!important;min-height:0!important}
 html body .vc_custom_hero .vc_column-inner{padding-top:24px!important;padding-bottom:24px!important}
}
/* footer link anchor v10 */
/* hero full-bleed v11 */
html body .vc_custom_hero{padding:0!important;background:#faf8f5!important}
html body .vc_custom_hero>.vc_column_container>.vc_column-inner{padding-left:0!important;padding-right:0!important}
html body .hoyra-hero-img img{display:block;width:100%!important;height:calc(100vh - 110px)!important;min-height:600px;max-height:none!important;object-fit:cover!important;object-position:center 16%!important}
html body .hoyra-hero-copy>.vc_column-inner{display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 110px);padding:56px 72px!important}
html body .hoyra-hero-copy .woodmart-title-container,html body .hoyra-hero-copy h1{font-size:clamp(34px,3.6vw,56px)!important;line-height:1.06!important;letter-spacing:-0.01em!important}
html body .hoyra-hero-copy p{max-width:440px}
@media(max-width:1024px){
 html body .hoyra-hero-img img{height:auto!important;max-height:560px!important;min-height:0}
 html body .hoyra-hero-copy>.vc_column-inner{min-height:0;padding:40px 36px 48px!important}
}
/* hero full-bleed v12 — breakout without VC JS */
html body .vc_custom_hero{width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;padding:0!important;background:#faf8f5!important}
html body .vc_custom_hero>.vc_column_container{padding-left:0!important;padding-right:0!important}
html body .vc_custom_hero>.vc_column_container>.vc_column-inner{padding-left:0!important;padding-right:0!important}
html body .hoyra-hero-img img{display:block;width:100%!important;height:calc(100vh - 110px)!important;min-height:560px;max-height:none!important;object-fit:cover!important;object-position:center 14%!important}
html body .hoyra-hero-copy>.vc_column-inner{display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 110px);padding:56px 72px!important}
html body .hoyra-hero-copy .woodmart-title-container,html body .hoyra-hero-copy h1{font-size:clamp(34px,3.6vw,56px)!important;line-height:1.06!important;letter-spacing:-0.01em!important}
@media(max-width:1024px){
 html body .vc_custom_hero{margin-left:0!important;margin-right:0!important;width:auto!important}
 html body .hoyra-hero-img img{height:auto!important;max-height:520px!important;min-height:0}
 html body .hoyra-hero-copy>.vc_column-inner{min-height:0;padding:36px 32px 44px!important}
}
/* hero full-bleed v13 — force image wrapper + positional copy column */
html body .vc_custom_hero .wpb_single_image,html body .vc_custom_hero .wpb_single_image .wpb_wrapper,html body .vc_custom_hero figure.vc_figure,html body .vc_custom_hero .vc_single_image-wrapper{width:100%!important;max-width:100%!important;margin:0!important;text-align:left!important}
html body .vc_custom_hero .hoyra-hero-img img{display:block;width:100%!important;height:calc(100vh - 110px)!important;min-height:560px;max-height:none!important;object-fit:cover!important;object-position:center 14%!important}
html body .vc_custom_hero>.vc_column_container:nth-child(2)>.vc_column-inner{display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 110px);padding:52px 80px!important}
html body .vc_custom_hero>.vc_column_container:nth-child(2) .woodmart-title-container,html body .vc_custom_hero>.vc_column_container:nth-child(2) h1{font-size:clamp(34px,3.5vw,54px)!important;line-height:1.07!important;letter-spacing:-0.01em!important}
html body .vc_custom_hero>.vc_column_container:nth-child(2) .hoyra-hero-note{margin-top:18px}
@media(max-width:1024px){
 html body .vc_custom_hero .hoyra-hero-img img{height:auto!important;max-height:520px!important;min-height:0}
 html body .vc_custom_hero>.vc_column_container:nth-child(2)>.vc_column-inner{min-height:0;padding:36px 32px 44px!important}
}
/* hero full-bleed v14 — copy column gutter + exact fold height */
html body .vc_custom_hero>.vc_column_container:last-child>.vc_column-inner{display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 110px);padding:56px 88px!important}
html body .vc_custom_hero>.vc_column_container:last-child .woodmart-title-container,html body .vc_custom_hero>.vc_column_container:last-child h1{font-size:clamp(34px,3.5vw,54px)!important;line-height:1.07!important;letter-spacing:-0.01em!important}
html body .vc_custom_hero>.vc_column_container:last-child p{max-width:430px}
html body .vc_custom_hero .hoyra-hero-img img{height:calc(100vh - 110px)!important;min-height:540px}
body.admin-bar .vc_custom_hero .hoyra-hero-img img{height:calc(100vh - 142px)!important}
body.admin-bar .vc_custom_hero>.vc_column_container:last-child>.vc_column-inner{min-height:calc(100vh - 142px)}
@media(max-width:1024px){
 html body .vc_custom_hero .hoyra-hero-img img,body.admin-bar .vc_custom_hero .hoyra-hero-img img{height:auto!important;max-height:520px!important;min-height:0}
 html body .vc_custom_hero>.vc_column_container:last-child>.vc_column-inner{min-height:0;padding:36px 32px 44px!important}
}
/* hero type + chrome details v15 */
html body .hoyra-hero-eyebrow,html body .hoyra-hero-eyebrow p{font-size:11px!important;line-height:1.2!important;letter-spacing:0.18em!important;text-transform:uppercase!important;color:#8b3a3a!important;margin:0 0 18px!important;font-weight:500!important}
html body .hoyra-hero-sub,html body .hoyra-hero-sub p{font-size:17px!important;line-height:1.55!important;color:#4a4744!important;margin:0 0 28px!important;max-width:430px}
html body .hoyra-hero-copy>.vc_column-inner .hoyra-btn,html body .vc_custom_hero>.vc_column_container:last-child .hoyra-btn{margin-bottom:26px!important}
html body .hoyra-hero-note,html body .hoyra-hero-note p{font-size:12px!important;letter-spacing:0.02em!important;color:#7a7672!important;white-space:nowrap;margin:0!important;max-width:none!important}
/* language switcher reads as a utility, not a page */
html body .wd-header-nav .menu-item:last-child>a{opacity:.62;font-size:11px!important;letter-spacing:.12em;padding-left:16px;border-left:1px solid rgba(29,29,27,.25)}
html body .wd-header-nav .menu-item:last-child>a:hover{opacity:1}
@media(max-width:1024px){html body .hoyra-hero-note,html body .hoyra-hero-note p{white-space:normal}}
/* v16 — hero flush to header, hairline seam, legible micro-type */
body.page-id-1502 .wd-content-layout{padding-top:0!important}
html body .vc_custom_hero .hoyra-hero-img>.vc_column-inner{padding-top:0!important;padding-bottom:0!important}
html body .vc_custom_hero .hoyra-hero-img img{height:calc(100vh - 80px)!important;min-height:560px}
body.admin-bar .vc_custom_hero .hoyra-hero-img img{height:calc(100vh - 112px)!important}
html body .vc_custom_hero>.vc_column_container:last-child>.vc_column-inner{border-left:1px solid rgba(29,29,27,.10)}
html body .hoyra-hero-eyebrow,html body .hoyra-hero-eyebrow p{color:#7a5b52!important;letter-spacing:0.2em!important}
html body .hoyra-hero-note,html body .hoyra-hero-note p{color:#65605c!important;font-size:12px!important}
@media(max-width:1024px){
 html body .vc_custom_hero .hoyra-hero-img img,body.admin-bar .vc_custom_hero .hoyra-hero-img img{height:auto!important;max-height:520px!important;min-height:0}
 html body .vc_custom_hero>.vc_column_container:last-child>.vc_column-inner{border-left:0}
}
/* footer rhythm v17 — link pitch, quiet rules, aligned newsletter */
/* payment block spacing inside contact column */
@media(max-width:767px){
}
/* footer newsletter + payment polish v18 */
/* footer legal bar v19 + button height */
@media(max-width:767px){
}
/* v20 — legal row sits on the container grid; footer headings share a top line */
/* v21 — mobile hero: kill the centred min-height, tighten top pad */
@media(max-width:1024px){
 html body .vc_custom_hero .wd-rs-hero_col>.vc_column-inner{min-height:0!important;height:auto!important;display:block!important;justify-content:flex-start!important;padding:48px 32px 40px!important}
 html body .vc_custom_hero .wd-rs-hero_col .woodmart-title-container{font-size:clamp(30px,8.4vw,38px)!important;text-wrap:balance}
 html body .vc_custom_hero .wd-rs-hero_col .woodmart-button-wrapper,html body .vc_custom_hero .wd-rs-hero_col .btn-container{width:100%!important;display:block!important}
 html body .vc_custom_hero .wd-rs-hero_col .woodmart-button-wrapper a,html body .vc_custom_hero .wd-rs-hero_col .btn{width:100%!important;text-align:center!important}
}
@media(max-width:767px){
 html body .vc_custom_hero .hoyra-hero-note,html body .vc_custom_hero .hoyra-hero-note p{font-size:12px!important;color:#5f5b57!important}
}
/* v22 — hero direction: cream header (kills the white/cream band), larger headline, balanced gutters */
html body .whb-header,html body .whb-header .whb-row,html body .whb-main-header{background-color:#faf7f2!important;border-bottom:1px solid rgba(29,29,27,.08)!important;box-shadow:none!important}
html body .whb-header .whb-general-header{border-bottom:0!important}
@media(min-width:1025px){
 html body .vc_custom_hero>.vc_column_container:last-child>.vc_column-inner{padding:0 64px!important}
 html body .vc_custom_hero .woodmart-title-container{font-size:clamp(44px,4.6vw,66px)!important;line-height:1.04!important;letter-spacing:-0.01em!important}
 html body .vc_custom_hero .hoyra-hero-img img{object-position:center 20%!important}
}
html body .vc_custom_hero .hoyra-hero-note,html body .vc_custom_hero .hoyra-hero-note p{color:#4a4642!important}
/* v23 — headline scale (needs deep specificity: earlier hero rules carry !important) */
@media(min-width:1025px){
 html body.page-id-1502 .vc_custom_hero>.vc_column_container:last-child>.vc_column-inner{padding:0 56px!important}
 html body.page-id-1502 .vc_custom_hero>.vc_column_container:last-child>.vc_column-inner .wpb_wrapper .woodmart-title-container,
 html body.page-id-1502 .vc_custom_hero .wpb_wrapper .woodmart-title-container h1,
 html body.page-id-1502 .vc_custom_hero h1.woodmart-title{font-size:clamp(42px,4.3vw,62px)!important;line-height:1.05!important;letter-spacing:-0.012em!important}
}
/* v24 — footer joins the site's full-bleed 15px grid; USP band loses stacked air */
/* promise band: kill WPBakery's stacked 35px column + 35px element margins */
/* big editorial sections: 64 -> 56 */
/* v25 — correct vc_column-inner class name; footer rows inset by margin (no 15px overflow) */
/* v26 — footer rows flush to the site's 15px text bounds */
/* v27 — dark promise band shares the site's 15px text bounds */
/* v28 — header count badges (they render "0 items" when empty); UA hero headline matches EN */
html body.page-id-1503 .hoyra-hero-copy h1{font-size:clamp(42px,4.3vw,62px)!important;line-height:1.06!important}
/* v29 — UA hero headline: beat the .vc_custom_hero :last-child rule (0,3,3) */
html body.page-id-1503 .vc_custom_hero>.vc_column_container:last-child h1,html body.page-id-1503 .vc_custom_hero>.vc_column_container:last-child .woodmart-title-container{font-size:clamp(40px,3.9vw,56px)!important;line-height:1.07!important}
/* v30 — hero copy rhythm; UA hero collapses cleanly on mobile instead of stranding the CTA */
html body .hoyra-hero-copy .woodmart-title-container{margin-bottom:26px!important}
@media (max-width:1024px){
 html body .hoyra-hero-copy>.vc_column-inner{min-height:0!important;justify-content:flex-start!important;padding:44px 32px 36px!important}
 html body .hoyra-hero-img>.vc_column-inner{padding:0!important;min-height:0!important}
 html body .hoyra-hero-img img{height:380px!important;width:100%!important;object-fit:cover!important}
}
@media (max-width:520px){
 html body .hoyra-hero-img img{height:420px!important}
}
/* v31 — band shares the footer's column padding; newsletter field/button geometry */
/* v32 — newsletter button height matches the field */
/* v25 UA parity + footer link contrast */
body.page-id-1503 .wd-content-layout{padding-top:0!important}
html body .wd-footer a{color:#5d5852!important}
html body .wd-footer a:hover{color:#8b3a3a!important}

/* v33 — every section head was carrying a hidden 35px column pad plus empty builder
   paragraphs (20px each); strip both and put section tops on the 80px rhythm */
html body .entry-content p:empty{display:none!important}
@media(min-width:1025px){
 html body .vc_custom_cat_heading,
 html body .vc_custom_collections,
 html body .vc_custom_testimonials,
 html body .vc_custom_instagram{padding-top:45px!important}
 html body .vc_custom_arrivals,
 html body .vc_custom_about{padding-top:80px!important}
 html body .vc_custom_features{padding-top:5px!important}
 html body.page-id-1502 .wd-content-layout,
 html body.page-id-1503 .wd-content-layout{padding-bottom:0!important}
}

/* v34 — heading bands were closer to the previous section than to the grid they label;
   drop the trailing text-block margin and trim the band's bottom padding on desktop */
@media(min-width:1025px){
 html body .vc_custom_arrivals .vc_column-inner>.wpb_wrapper>.wpb_text_column:last-of-type,
 html body .vc_custom_collections .vc_column-inner>.wpb_wrapper>.wpb_text_column:last-of-type{margin-bottom:0!important}
 html body .vc_custom_arrivals{padding-bottom:16px!important}
 html body .vc_custom_collections{padding-bottom:24px!important}
}

/* v35 — the USP band stacked four blocks on mobile with a 35px column pad and a 35px
   text-block margin each; 605px of air for four one-line claims */
@media(max-width:1024px){
 html body .vc_custom_features .vc_column-inner{padding-top:0!important;padding-bottom:0!important}
 html body .vc_custom_features .wpb_text_column{margin-bottom:18px!important}
 html body .vc_custom_features .vc_column_container:last-child .wpb_text_column{margin-bottom:0!important}
}

/* v36 — the theme's 40px content-layout bottom padding split the dark USP band from the
   footer on mobile; the band is the last element on both homes, so let them meet */
html body.page-id-1502 .wd-content-layout,
html body.page-id-1503 .wd-content-layout{padding-bottom:0!important}


/* v38 — mobile product gallery: the thumb rail collapses to 0 height on small
   screens but its prev/next arrows still render, floating across the top of the
   photo. Hide the nav below 1024; the main gallery arrows and swipe remain. */
@media (max-width: 1024px){
  .wd-thumb-nav{display:none!important}
}

/* v39 — contact page (page 1413): Jetpack's contact form renders its own default
   markup. Text fields sit at 50% of the column while the textarea spans 100%, and
   the submit is a flat grey bar with no brand styling. Scoped to this page only. */
.page-id-1413 form.contact-form input[type="text"],
.page-id-1413 form.contact-form input[type="email"],
.page-id-1413 form.contact-form input[type="tel"],
.page-id-1413 form.contact-form input[type="url"]{width:100%!important;max-width:100%!important}
.page-id-1413 form.contact-form button[type="submit"],
.page-id-1413 form.contact-form input[type="submit"],
.page-id-1413 form.contact-form .pushbutton-wide{
  width:auto!important;min-width:210px;height:48px;padding:0 30px;border:0;border-radius:0;
  background:#8b3a3a;color:#fff;font-size:11px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;cursor:pointer;transition:background-color .2s ease}
.page-id-1413 form.contact-form button[type="submit"]:hover,
.page-id-1413 form.contact-form input[type="submit"]:hover,
.page-id-1413 form.contact-form .pushbutton-wide:hover{background:#6f2d2d;color:#fff}

/* v40 — contact form finish + mobile footer clearance for the scroll-to-top button.
   1. Jetpack textarea can be dragged wider than its column; on touch the grip is useless
      and on desktop it produces horizontal overflow. Lock the axis.
   2. Loosen the label-to-field rhythm so the form matches the airiness of the page.
   3. At mobile widths the fixed scroll-to-top FAB sits on top of the last footer row. */
.page-id-1413 form.contact-form textarea{resize:vertical;max-width:100%}
.page-id-1413 form.contact-form p{margin-bottom:22px}
.page-id-1413 form.contact-form p:last-of-type{margin-bottom:24px}
@media (max-width:1024px){.wd-footer{padding-bottom:56px}}

/* v41 — phone ergonomics on the single product page.
   Measured at 390 before: title 20px, price 14px, cart row 42px tall,
   wishlist 19x20, prev/next strip 24x24. None of that meets a thumb. */
@media (max-width:767px){
  .single-product h1.product_title{font-size:24px;line-height:1.3}
  .single-product .wd-single-price,
  .single-product .wd-single-price .price,
  .single-product .wd-single-price .woocommerce-Price-amount{font-size:18px}
  .single-product form.cart{align-items:stretch}
  .single-product form.cart .quantity{height:48px}
  .single-product form.cart .quantity input{height:46px}
  .single-product form.cart .single_add_to_cart_button{
    height:48px;min-height:48px;font-size:12px;letter-spacing:.12em;flex:1 1 auto}
  .single-product .wd-single-wishlist-btn{margin-top:10px}
  .single-product .wd-single-wishlist-btn .wd-wishlist-btn a{
    width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center}
}

/* v42 — the wishlist anchor on the phone product page is 19x20.
   v41's rule matched (verified: a.matches() true) but lost to a stronger
   theme rule that forces display:flex + intrinsic width, so this pass
   pins the box with !important. 44px is the WCAG 2.2 minimum target. */
@media (max-width:767px){
  body.single-product .wd-single-wishlist-btn .wd-wishlist-btn a{
    width:44px !important;height:44px !important;
    display:inline-flex !important;align-items:center;justify-content:center}
}

/* v43 — phone buy row legibility + wishlist affordance.
   Measured 390: qty input 14px (iOS zooms any input under 16px on focus),
   +/- glyphs 13px in 25px cells, wishlist a bare 44px outline heart with
   no border so it still reads as a stray icon. */
@media (max-width:767px){
  body.single-product .quantity input{font-size:16px !important}
  body.single-product .quantity .minus,
  body.single-product .quantity .plus{width:30px;font-size:18px;line-height:1}
  body.single-product .wd-single-wishlist-btn .wd-wishlist-btn a{
    border:1px solid rgba(29,29,27,.18);color:#1d1d1b;transition:border-color .2s,color .2s}
  body.single-product .wd-single-wishlist-btn .wd-wishlist-btn a:hover{
    border-color:#8b3a3a;color:#8b3a3a}
}

/* v44 — control-boundary contrast + buy-row gutter on the phone.
   Measured 390: stepper border 1px #dcdcdc = ~1.4:1 against white, below the
   3:1 WCAG asks of a UI component boundary; stepper and Add to cart were only
   10px apart against a 15px page margin, so the pair read as one crowded block. */
@media (max-width:767px){
  body.single-product .quantity{border-color:rgba(29,29,27,.38)}
  body.single-product .quantity .minus,
  body.single-product .quantity .plus{color:#1d1d1b}
  body.single-product form.cart{column-gap:12px}
}
