/* Real product photography and the launch assortment. */
.hero-product-visual { background: #e6e9e1; isolation: isolate; }
.hero-plinth { position: absolute; right: 0; bottom: 60px; width: 57%; height: 140px; background: #d9dfd1; box-shadow: 0 25px 35px #3b4a2e12; }
.hero-product-visual > .hero-clipper { position: absolute; left: -22%; top: 5%; width: 102%; height: 86%; object-fit: contain; mix-blend-mode: multiply; transform: rotate(-9deg); }
.hero-product-visual > .hero-heads { position: absolute; right: -3%; top: 14%; width: 65%; height: 70%; object-fit: contain; mix-blend-mode: multiply; transform: rotate(5deg); }
.hero-product-visual .visual-caption { color: var(--ink); text-shadow: none; font-size: 10px; bottom: 24px; }
.hero-product-visual .visual-caption span:last-child { font-size: 9px; }
.collection-brand-logos { gap: 52px !important; }
.oralb-wordmark { font-family: Arial, sans-serif; font-size: 29px; font-style: italic; font-weight: 700; letter-spacing: -1.7px; color: #173d69; }
.wahl-wordmark { font-family: var(--sans); font-size: 28px; font-weight: 650; letter-spacing: -.8px; color: var(--ink); }
.real-category .category-copy { max-width: 47%; }
.real-category > img { height: 90%; width: 58%; right: -5%; top: 5%; object-fit: contain; mix-blend-mode: multiply; filter: none; transform: rotate(5deg); }
.real-category.oral > img { height: 82%; width: 53%; right: -1%; top: 10%; transform: rotate(5deg); }
.real-category:hover > img { transform: rotate(2deg) translateY(-5px); }
.product-card:nth-child(2n) .product-image { background: #fff; }
.product-image { background: #fff; aspect-ratio: 1; min-height: 0; padding: 35px 15px 40px; cursor: pointer; }
.product-image img { width: 100%; height: 100%; max-height: 240px; object-fit: contain; filter: none; }
.product-card:hover .product-image img { transform: translateY(-4px); }
.product-tag { z-index: 1; }
.product-footer > span { overflow-wrap: anywhere; }
.product-name { line-height: 1.55; }
.product-title-button { line-height: inherit; }
.product-type { line-height: 1.7; }
.more-brands { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 22px; }
.more-brands > a { display: flex; justify-content: space-between; align-items: center; gap: 20px; border: 1px solid var(--line); padding: 25px 32px; transition: background .2s; }
.more-brands > a:hover { background: var(--sage); }
.more-brands .eyebrow { display: block; font-size: 9px; margin-bottom: 8px; }
.more-brands strong { display: block; }
.more-brands small { display: block; color: var(--muted); font-size: 11px; margin-top: 6px; }
.brand-hero-art > img { width: 48%; height: 80%; object-fit: contain; mix-blend-mode: multiply; filter: none; transform: rotate(4deg); }
.brand-hero-art > img + img { height: 80%; transform: rotate(-4deg); }
.brand-hero.gillette .brand-hero-art img { width: 85%; height: 85%; transform: none; }
.brand-hero-art .image-note { max-width: calc(100% - 45px); }
.lifestyle-photo { background: #eee9e1; }
.lifestyle-photo img { transform: scale(1.25); object-fit: cover; object-position: center; }
.dialog-art { background: #fff; padding: 28px 18px 55px; }
.dialog-art img { height: auto; max-height: 470px; width: 100%; object-fit: contain; filter: none; }
.dialog-art .image-note { left: 20px; right: 20px; }
.product-fit { margin-top: 20px; padding: 15px 16px; background: #e9ede4; }
.product-fit .eyebrow { margin-bottom: 7px; font-size: 9px; }
.product-fit p:last-child { font-size: 11px; line-height: 1.8; }
.dialog-copy { padding-top: 54px; }
.dialog-copy h2 { font-size: 41px; }
.dialog-meta > div { align-items: baseline; }
.dialog-meta dd { max-width: 65%; overflow-wrap: anywhere; }
.gillette-enquiry { display: flex; align-items: center; justify-content: space-between; gap: 50px; }
.gillette-enquiry h2 { margin-block: 20px; }
.gillette-enquiry p:not(.eyebrow) { font-size: 13px; line-height: 1.9; max-width: 530px; }
.empty-state .text-link { margin-top: 20px; }
@media (max-width: 900px) {
  .product-image { min-height: 280px; aspect-ratio: auto; }
  .product-image img { max-height: 230px; }
  .product-fit p:last-child { font-size: 13px; }
}
@media (max-width: 650px) {
  .hero-product-visual { height: 355px; }
  .hero-plinth { bottom: 48px; height: 85px; }
  .hero-product-visual > .hero-clipper { top: 0; left: -23%; width: 100%; height: 87%; }
  .hero-product-visual > .hero-heads { top: 9%; right: -3%; width: 67%; height: 76%; }
  .hero-product-visual .visual-caption { font-size: 8px; bottom: 18px; gap: 12px; }
  .hero-product-visual .visual-caption span:last-child { font-size: 7px; }
  .collection-brand-logos { gap: 28px !important; }
  .collection-brand-logos .oralb-wordmark { font-size: 25px; }
  .collection-brand-logos .wahl-wordmark { font-size: 24px; }
  .real-category .category-copy { max-width: 48%; }
  .real-category h3 { font-size: 36px; }
  .real-category > img { width: 65%; right: -10%; }
  .real-category.oral > img { width: 54%; right: -1%; }
  .filter-group > .filter:last-child { grid-column: 1 / -1; }
  .product-image { min-height: 0; height: 225px; aspect-ratio: auto; padding: 30px 9px 42px; }
  .product-image img { width: 100%; height: 153px; max-height: none; }
  .product-name { font-size: 14px; }
  .product-brand { font-size: 10px; }
  .product-tag { font-size: 8px; line-height: 1.5; max-width: calc(100% - 18px); }
  .product-footer { min-height: 47px; }
  .product-footer > span { font-size: 10px; }
  .more-brands { grid-template-columns: 1fr; gap: 14px; margin-top: 16px; }
  .more-brands > a { padding: 23px 27px; }
  .more-brands small { font-size: 12px; }
  .brand-hero-art { gap: 0; height: 320px; }
  .brand-hero-art > img, .brand-hero-art > img + img { width: 50%; height: 84%; }
  .brand-hero.gillette .brand-hero-art img { width: 85%; height: 90%; }
  .brand-hero-art .image-note { font-size: 9px !important; }
  .dialog-art { min-height: 270px; padding: 25px 25px 40px; }
  .dialog-art img { height: 215px; max-height: 215px; width: 100%; }
  .dialog-copy { padding-top: 27px; }
  .dialog-copy h2 { font-size: 37px; }
  .dialog-art .image-note { bottom: 12px; font-size: 9px !important; }
  .product-fit p:last-child { font-size: 13px; }
  .product-fit .eyebrow { font-size: 10px; }
  .gillette-enquiry { flex-direction: column; align-items: flex-start; gap: 27px; }
  .gillette-enquiry h2 { font-size: 45px; }
  .gillette-enquiry .button { width: 100%; }
}
@media (max-width: 370px) {
  .real-category .category-copy { max-width: 50%; }
  .real-category h3 { font-size: 32px; }
  .real-category > img { width: 69%; right: -14%; }
  .real-category.oral > img { width: 52%; right: -3%; }
  .product-name { font-size: 13px; }
  .product-image { height: 210px; }
  .product-image img { height: 138px; }
  .collection-brand-logos { gap: 24px !important; }
  .collection-brand-logos .oralb-wordmark { font-size: 23px; }
  .collection-brand-logos .wahl-wordmark { font-size: 22px; }
}
.hero-product-visual > .hero-heads { right: 3%; width: 60%; transform: rotate(3deg); }
.catalogue-intro { padding-top: 30px; padding-bottom: 28px; }
.catalogue-intro .breadcrumbs { margin-bottom: 18px; }
.catalogue-intro h1 { font-size: 67px; margin: 12px 0 18px; }
.catalogue-intro .intro-description { max-width: 650px; }
@media (max-width: 650px) {
  .hero-product-visual > .hero-heads { right: 2%; width: 62%; }
  .catalogue-intro { padding-top: 17px; padding-bottom: 23px; }
  .catalogue-intro .breadcrumbs { margin-bottom: 12px; }
  .catalogue-intro h1 { font-size: 50px; margin: 12px 0 18px; }
  .catalogue-intro .intro-description { font-size: 13px; line-height: 1.8; }
}
/* The complete assortment stays readable at narrow widths. */
.filter { min-width: 0; min-height: 44px; white-space: normal; line-height: 1.5; overflow: visible; text-overflow: clip; }
.product-name, .product-title-button { white-space: normal; overflow: visible; text-overflow: clip; }
