/* Homepage only. Original Elementor widgets, content, links and carousel remain intact. */
body.home {
  --pp-accent: #cc3944;
  --pp-ink: #2e3035;
  --pp-surface: #f5f5f5;
  background: var(--pp-surface);
}
body.home .main-page-wrapper { background: var(--pp-surface); padding-top: 20px; }
body.home .main-page-wrapper > .content-layout-wrapper { padding-top: 0; }
body.home .elementor-891 > .elementor-element-cfe2ec7 { padding: 0; }
body.home :is(.whb-row > .container, .main-page-wrapper > .container) { max-width: var(--wd-container-w); }
body.home .elementor-891 { color: var(--pp-ink); }
body.home .elementor-891 > :is(.elementor-section, .e-con) { margin-bottom: 52px; }
body.home .elementor-891 > .elementor-section > .elementor-container { max-width: 1650px; }
body.home .elementor-891 .elementor-heading-title { font-size: 24px; font-weight: 500; line-height: 1.6; color: var(--pp-ink); }
body.home .elementor-891 .elementor-widget-heading { margin-bottom: 20px; }
body.home .elementor-891 :is(a, button, input):focus-visible { outline: 2px solid var(--pp-accent); outline-offset: 4px; }

/* Compact utility bar and a single, balanced desktop navigation row. */
body.home .whb-top-bar { background: #eeeeef; }
body.home .whb-top-bar-inner { height: 34px; }
body.home .whb-top-bar .wd-header-text { font-size: 11px; }
body.home .whb-top-bar .contact-header { gap: 20px; }
body.home .whb-top-bar .contact-item { gap: 8px; }
body.home .whb-top-bar .contact-item a { font-size: 12px; }
body.home .whb-top-bar .wd-header-divider { margin-inline: 16px; }
body.home .whb-general-header { background: #fff; border-bottom: 1px solid #e9e9eb; }
body.home .whb-general-header-inner { height: 82px; }
body.home .wd-header-my-account > a { background: var(--pp-accent); color: #fff; border: 0; border-radius: 28px; padding: 0 20px; min-height: 42px; }
body.home .wd-header-my-account > a:hover { background: #b42d38; }
body.home .wd-header-my-account > a > .wd-tools-inner { padding: 0; border: 0; }
body.home .wd-header-my-account .wd-tools-text { font-size: 12px; }
body.home .wd-header-cart .wd-tools-icon { border-color: #ececee; }
body.home .whb-header .searchform input { background: #f3f3f4; border: 1px solid #eeeeef; height: 44px; border-radius: 28px; font-size: 12px; }
body.home .whb-header .searchsubmit { height: 44px; width: 44px; }
body.home .whb-header .searchform { min-width: 0; width: 100%; }
body.home .whb-header .searchform input { width: 100%; min-width: 0; box-sizing: border-box; padding-inline: 44px 16px; }
@media (min-width: 1025px) {
  body.home .whb-general-header-inner { display: grid; grid-template-columns: 175px auto minmax(170px, 1fr) 180px; gap: 18px; align-items: center; }
  body.home .whb-general-header-inner .whb-col-center { display: contents; }
  body.home .whb-general-header-inner .whb-col-left { padding: 0; margin: 0; width: auto; min-width: 0; }
  body.home .whb-general-header-inner .whb-col-right { padding: 0; margin: 0; gap: 10px; width: auto; min-width: 0; }
  body.home .whb-general-header-inner .site-logo { padding: 0; }
  body.home .whb-general-header-inner .wd-header-cart > a { padding-inline: 0; }
  body.home .whb-general-header-inner .wd-tools-element { margin: 0; }
  body.home .site-logo img { max-width: 175px !important; }
  body.home .wd-header-nav .wd-nav { flex-wrap: nowrap; gap: 12px; }
  body.home .wd-header-nav .wd-nav > li > a { padding-inline: 0; font-size: 12px; white-space: nowrap; }
  body.home .wd-header-search-form { width: 100%; padding: 0; }
}

/* Keep the existing hero image and search, with the reference's quieter geometry. */
body.home .elementor-891 .elementor-element-c0e7140 {
  --border-radius: 6px;
  --min-height: 330px;
  --padding-top: 70px;
  --padding-bottom: 70px;
  --padding-left: 60px;
  --padding-right: 60px;
  border-radius: 6px;
  min-height: 330px;
  box-shadow: 0 2px 3px #00000012;
  background-position: center;
  background-size: cover;
}
body.home .elementor-element-c0e7140 > .e-con-inner { justify-content: center; gap: 24px; }
body.home .elementor-element-c0e7140 .elementor-widget-heading { margin: 0; }
body.home .elementor-element-c0e7140 .elementor-heading-title { color: #fff; font-size: clamp(24px, 2.4vw, 34px); font-weight: 500; }
body.home .elementor-element-c0e7140 .elementor-widget-wd_search { max-width: 760px!important; width: 100%!important; margin: 0 auto!important; align-self:center; }
body.home .elementor-element-c0e7140 .searchform input { background: #fff; border: 0; border-radius: 26px; height: 48px; font-size: 14px; padding-inline: 52px 20px; box-shadow: 0 3px 12px #00000012; }
body.home .elementor-element-c0e7140 .searchsubmit { height: 48px; width: 52px; color: #34363b; }

/* Reference product cards; keep native Elementor data and slider behavior. */
body.home .elementor-891 .elementor-element-4ad8492 .wd-carousel { padding-block:4px 8px; --wd-gap-lg:18px!important; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-product { height:100%; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-product-wrapper {
  height:100%; min-height:443px; padding:15px 15px 22px!important; align-items:stretch!important; display:flex; flex-direction:column;
  background:#fff; border:1px solid #ededee; border-radius:6px;
  box-shadow:0 2px 2px #00000020!important; text-align:center; transition:box-shadow .2s,border-color .2s;
}
body.home .elementor-891 .elementor-element-4ad8492 .wd-product-wrapper:hover { border-color:#e3e3e6; box-shadow:0 4px 12px #00000012!important; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-product-thumb { margin-bottom:14px!important; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-product-thumb img { height:180px; width:100%; object-fit:contain; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-loop-prod-title { font-size:16px!important; line-height:1.5; min-height:48px; margin-bottom:10px; font-weight:400; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-loop-prod-title a { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; max-height:48px; color:#303238; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-loop-prod-title a:hover { color:var(--pp-accent); }
body.home .elementor-891 .elementor-element-4ad8492 .wd-product-stock { font-size:13px!important; font-weight:400; margin:0!important; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-product-stock.in-stock { color:#67a54d!important; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-product-stock.in-stock:before { color:inherit; border:1px solid currentColor; border-radius:50%; width:14px; height:14px; display:inline-flex; align-items:center; justify-content:center; font-size:8px; margin-inline-end:7px; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-product-cats { font-size:11px; line-height:1.65; min-height:36px; margin:8px 0 4px; color:#94989e; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-product-cats a { color:#94989e; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-product-sku { font-size:13px!important; line-height:1.8; margin:0!important; color:#94989e; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-product-sku .wd-label { color:inherit; font-size:inherit; font-weight:400; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-loop-prod-price { margin-top:auto; padding-top:8px; margin-bottom:0; }
body.home .elementor-891 .elementor-element-4ad8492 :is(.price,.price .amount) { color:#282a30; font-size:19px!important; font-weight:400; line-height:1.5; }
body.home .elementor-891 .elementor-element-4ad8492 .woocommerce-Price-currencySymbol { font-size:12px; margin-inline-start:4px; }
body.home .elementor-891 .wd-nav-arrows .wd-arrow-inner { border:1px solid #da6870; color:var(--pp-accent); border-radius:50%; background:transparent; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-nav-arrows { gap:10px; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-arrow-inner { width:32px; height:32px; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-btn-arrow:hover .wd-arrow-inner { background:var(--pp-accent); color:#fff; }
body.home .elementor-891 .wd-nav-pagin { margin-top:24px; }
body.home .elementor-891 .wd-nav-pagin li span { border-radius:3px; width:24px; height:3px; background:#dcdcdf; border:0; }
body.home .elementor-891 .wd-nav-pagin li.wd-active span { background:var(--pp-accent); }
body.home .elementor-891 .elementor-element-4ad8492 .wd-nav-pagin { gap:0; margin-top:28px; width:150px; margin-inline:auto; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-nav-pagin li { padding:0; margin:0; flex:1; min-width:0; }
body.home .elementor-891 .elementor-element-4ad8492 .wd-nav-pagin li span { width:100%; height:3px; border-radius:0; }
@media(min-width:1200px) {
  body.home .elementor-891 .elementor-element-4ad8492 .wd-carousel { --wd-col-lg:6!important; }
}
@media(max-width:600px) {
  body.home .elementor-891 .elementor-element-4ad8492 .wd-product-wrapper { padding:14px 10px 16px!important; min-height:390px; }
  body.home .elementor-891 .elementor-element-4ad8492 .wd-product-thumb img { height:145px; }
  body.home .elementor-891 .elementor-element-4ad8492 .wd-loop-prod-title { font-size:13px!important; }
  body.home .elementor-891 .elementor-element-4ad8492 .wd-product-cats { font-size:11px; }
}
@media(prefers-reduced-motion:reduce) {
  body.home .elementor-891 .elementor-element-4ad8492 .wd-product-wrapper { transition:none; }
}

/* Existing category illustrations and brand logos. */
body.home :is(.cat-container, .brand-container, .cat-section-container) { padding: 0; gap: 16px; }
body.home .cat-card { min-height: 180px; padding: 24px; border: 1px solid #ededee; border-radius: 6px; box-shadow: 0 2px 2px #0000000b; }
body.home .cat-card:hover { border-color: #dba0a5; transform: translateY(-2px); box-shadow: 0 4px 10px #00000009; }
body.home .cat-card::after, body.home .brand-card::after { background: var(--pp-accent); }
body.home .cat-icon-svg { width: 68px; height: 68px; stroke-width: 1.65; color: #515359; transition: color .18s; }
body.home .cat-icon-svg .pp-icon-accent { stroke: #ed2939; }
body.home .cat-card:hover .cat-icon-svg { color: #ed2939; }
body.home .cat-card :is(span, .cat-title) { font-size: 14px; font-weight: 500; line-height: 1.6; }
body.home .brand-container { grid-template-columns: repeat(5, minmax(0, 1fr)); }
body.home .brand-card { min-height: 110px; border: 1px solid #e9e9eb; background: #fff; }
body.home .brand-logo-img { max-width: 75%; max-height: 50px; }

/* Catalogue colors follow the original content, with consistent card sizing. */
body.home .cat-card-small { height: 155px; border-radius: 6px; padding: 22px; box-shadow: 0 2px 2px #00000010; }
body.home .cat-card-small span { font-size: 15px; font-weight: 500; }
body.home .cat-card-small svg { width: 40px; height: 40px; }
body.home .cat-card-large { border-radius: 6px; min-height: 295px; }
body.home .cat-large-content { padding: 26px; }
body.home .cat-large-title { font-size: 23px; font-weight: 600; margin-bottom: 18px; }
body.home .cat-list-item { font-size: 14px; line-height: 1.9; }
body.home .cat-universal-parts { border-radius: 6px; min-height: 295px; }
body.home .cat-card-small:hover { transform: translateY(-2px); box-shadow: 0 4px 10px #00000012; }

/* Keep article text, metadata and links; soften the surrounding presentation. */
body.home .elementor-element-983971 .wd-post { border-radius: 6px; overflow: hidden; background: #fff; border: 1px solid #e9e9eb; box-shadow: 0 2px 2px #00000009; }
body.home .elementor-element-983971 .wd-post .wd-post-content { padding: 22px; }
body.home .elementor-element-983971 .wd-entities-title { font-size: 18px; line-height: 1.7; }
body.home .footer-container { background: #fff; border-top: 1px solid #e3e3e6; }
body.home .footer-sidebar { padding-block: 44px; }
body.home .copyrights-wrapper { background: #f0f0f1; }

@media (min-width: 1025px) and (max-width: 1199px) {
  body.home .whb-general-header-inner { grid-template-columns: 145px auto minmax(150px, 1fr) 170px; gap: 12px; }
  body.home .site-logo img { max-width: 145px !important; }
  body.home .wd-header-nav .wd-nav { gap: 8px; }
  body.home .wd-header-nav .wd-nav > li > a { font-size: 11px; }
  body.home .wd-header-my-account > a { padding-inline: 12px; }
}
@media (max-width: 1024px) {
  body.home .whb-general-header-inner { height: 70px; }
  body.home .elementor-891 > :is(.elementor-section, .e-con) { margin-bottom: 38px; }
  body.home .elementor-891 .elementor-element-c0e7140 { --padding-left: 30px; --padding-right: 30px; --min-height: 290px; min-height: 290px; }
  body.home .cat-container { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body.home .brand-container { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body.home .cat-section-container { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  body.home .grid-row-1 .cat-card-small:nth-child(n) { grid-column: span 2; }
  body.home .cat-card-large, body.home .cat-universal-parts { grid-column: span 3; }
}
@media (max-width: 600px) {
  body.home .main-page-wrapper { padding-top: 12px; }
  body.home .elementor-891 .elementor-heading-title { font-size: 20px; }
  body.home .elementor-891 .elementor-widget-heading { margin-bottom: 16px; }
  body.home .elementor-891 .elementor-element-c0e7140 { --padding-top: 40px; --padding-bottom: 40px; --padding-left: 20px; --padding-right: 20px; --min-height: 240px; min-height: 240px; }
  body.home .elementor-element-c0e7140 .elementor-heading-title { font-size: 23px; line-height: 1.8; }
  body.home .elementor-element-c0e7140 .searchform input { font-size: 12px; height: 48px; padding-inline: 54px 16px; }
  body.home .elementor-element-c0e7140 .searchsubmit { height: 48px; }
  body.home :is(.cat-container, .brand-container) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  body.home .cat-card { min-height: 160px; padding: 18px; }
  body.home .cat-card span { font-size: 13px; }
  body.home .cat-icon-svg { width: 54px; height: 54px; margin-bottom: 16px; }
  body.home .brand-card { min-height: 90px; }
  body.home .cat-section-container { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  body.home .grid-row-1 .cat-card-small:nth-child(n) { grid-column: span 1; height: 140px; padding: 18px; }
  body.home .cat-card-small span { font-size: 13px; }
  body.home .cat-card-large, body.home .cat-universal-parts { grid-column: 1 / -1; min-height: 240px; }
  body.home .elementor-element-4ad8492 .wd-product-wrapper { padding: 12px; min-height: 390px; }
  body.home .elementor-element-4ad8492 .wd-product-thumb img { height: 135px; }
  body.home .elementor-element-4ad8492 .wd-loop-prod-title { font-size: 13px; }
  body.home .footer-sidebar { padding-block: 28px; }
}
@media (prefers-reduced-motion: reduce) {
  body.home :is(.cat-card, .brand-card, .cat-card-small, .cat-icon-svg, .brand-logo-img) { transition: none; }
}

/* Elementor's nested 100% heights can expand an auto-sized carousel row. */
body.home .elementor-element-983971 .wd-post,
body.home .elementor-element-983971 .wd-post-inner { height:auto!important; min-width:0; }
body.home .elementor-element-983971 .wd-post-inner { flex:1; }
body.home .elementor-element-983971 .wd-post { border-radius:10px; box-shadow:0 2px 6px #00000008; }
body.home .elementor-element-983971 .wd-post-thumb { flex-shrink:0; aspect-ratio:16/9; }
body.home .elementor-element-983971 .wd-post-thumb :is(.wd-post-img,a,picture) { display:block; height:100%; }
body.home .elementor-element-983971 .wd-post-thumb img { display:block; width:100%; height:100%; object-fit:cover; }
body.home .elementor-element-983971 .wd-post .wd-post-content { padding:18px; gap:10px; align-items:stretch; text-align:right; }
body.home .elementor-element-983971 .wd-post-cat { align-self:flex-start; margin-top:-32px; max-width:100%; font-size:10px; border-radius:5px; }
body.home .elementor-element-983971 .wd-post-title { min-height:0; margin:0; }
body.home .elementor-element-983971 .wd-post-title a { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
body.home .elementor-element-983971 .wd-post .wd-post-meta { flex-wrap:nowrap; gap:10px; justify-content:flex-start; min-width:0; font-size:11px; }
body.home .elementor-element-983971 .wd-post-author { flex:0 1 auto; min-width:0; flex-wrap:nowrap; overflow:hidden; }
body.home .elementor-element-983971 .wd-post-author > span { display:none; }
body.home .elementor-element-983971 .wd-post-author a { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
body.home .elementor-element-983971 .wd-post-author img { flex-shrink:0; width:18px; height:18px; }
body.home .elementor-element-983971 .wd-post-excerpt { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; min-height:0; max-height:66px; font-size:13px; line-height:22px; color:#68717d; }
body.home .elementor-element-983971 .wd-post-read-more { align-self:flex-start; padding-top:4px; }
body.home .elementor-element-983971 .wd-post-read-more a { display:inline-flex; padding:6px 14px; border:1px solid #ed293966; border-radius:24px; font-size:12px; font-weight:500; }
body.home .elementor-element-983971 .wd-post-read-more a:hover { background:#fff1f2; opacity:1; }
body.home .elementor-element-983971 .wd-post-date { border-radius:6px; box-shadow:0 2px 8px #0000000d; }
@media(min-width:768px) and (max-width:1199px) {
  body.home .elementor-element-983971 .wd-carousel { --wd-col-md:2!important; --wd-col-lg:2!important; }
}

/* Anchor sharing inside the card instead of centering across its clipped edge. */
body.home .elementor-element-983971 .wd-post-share .tooltip.top { left:auto; right:0; transform:none; }
body.home .elementor-element-983971 .wd-post-share .tooltip.top .tooltip-arrow { left:auto; right:5px; transform:none; }

body.home .elementor-element-983971 .wd-post-title a { line-height:1.65!important; }
body.home .elementor-element-983971 .wd-post-date { padding:6px 8px; min-width:42px; }
body.home .elementor-element-983971 .post-date-day { font-size:18px; line-height:1.2; }
body.home .elementor-element-983971 .post-date-month { font-size:10px; line-height:1.5; }
