/* 0.10: preserve editable Elementor content and the site's light/dark tokens.
 * Champagne marks details and primary-button hover states, paired with dark ink.
 */
.ten10-editorial :where(.ten10-ed-ingredient, .ten10-ed-moment, .ten10-ed-principle) .elementor-widget-heading h3.elementor-heading-title {
  font-family: var(--font-sans);
  font-size: clamp(20px, 1.8cqi, 26px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -.025em;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--font-sans);
  line-height: 1.4;
}
.ten10-ed-path h3 {
  font-family: var(--font-sans);
  font-size: clamp(20px, 1.8vw, 26px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -.025em;
}
.ten10-ed-primary .elementor-button {
  font-weight: 500;
  padding-inline: 30px;
}
.ten10-ed-link .elementor-button, .ten10-ed-path span, .ten10-ed-shop-all {
  border-bottom-color: var(--color-detail);
}
.ten10-ed-link .elementor-button:hover, .ten10-ed-path:hover span, .ten10-ed-shop-all:hover {
  border-bottom-color: var(--color-ink);
  color: var(--color-ink);
}
.ten10-ed-hero--home .ten10-ed-eyebrow {
  border-inline-start: 2px solid var(--color-detail);
  padding-inline-start: 14px;
  letter-spacing: .12em;
}
.ten10-ed-hero--home .ten10-ed-hero-copy { --gap: 26px; }
.ten10-ed-hero--home .ten10-ed-display .elementor-heading-title {
  font-size: clamp(64px, 7.6cqi, 124px);
  line-height: 1.12;
  letter-spacing: -.04em;
}
.ten10-ed-hero--home .ten10-ed-hero-photo img { object-position: center; }
.ten10-ed-hero--home .ten10-ed-lead { font-size: clamp(16px, 1.2cqi, 19px); }
.ten10-ed-hero--home .ten10-ed-lead p { max-width: 35ch; }
.home :where(#the-edit) .ten10-ed-intro { max-width: 620px; }
.home :where(#the-edit) .ten10-ed-intro .elementor-widget-text-editor { max-width: 48ch; }
.home :where(#the-edit) .ten10-ed-intro h2.elementor-heading-title { font-size: clamp(40px, 4cqi, 64px); }
.home .ten10-ed-principles .ten10-ed-intro { max-width: 720px; }
.home .ten10-ed-principle { --padding-top: 22px; }
.home .ten10-ed-closing { background: color-mix(in srgb, var(--color-surface) 45%, var(--color-canvas)); }

/* A real catalog and an empty catalog share the same one-lead composition. */
.ten10-ed-selection .woocommerce ul.products { grid-template-columns: minmax(0, 1.5fr) repeat(2, minmax(0, 1fr)); align-items: start; gap: clamp(24px, 3vw, 48px); }
.ten10-ed-selection .woocommerce ul.products li.product { width: auto; float: none; margin: 0; }
.ten10-ed-selection--1 .woocommerce ul.products { grid-template-columns: minmax(0, 1fr); max-width: 560px; }
.ten10-ed-selection--2 .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 960px; }
.ten10-ed-selection--3 .woocommerce ul.products li.product:not(:first-child) { margin-top: 56px; }
.ten10-ed-selection .woocommerce ul.products li.product a img { padding: 10%; background: color-mix(in srgb, var(--color-surface) 45%, var(--color-canvas)); }
@media (min-width: 768px) {
  .ten10-ed-selection--3 .woocommerce ul.products li.product:first-child a img { aspect-ratio: 1; }
}
.ten10-ed-selection--3 .woocommerce ul.products li.product:first-child .woocommerce-loop-product__title { font-size: 22px; }
.home :where(#the-edit) .ten10-ed-paths { grid-template-columns: minmax(0, 1.5fr) repeat(2, minmax(0, 1fr)); gap: clamp(24px, 3vw, 48px); align-items: start; }
.home :where(#the-edit) .ten10-ed-path:not(:first-child) { margin-top: 56px; }
.home :where(#the-edit) .ten10-ed-path:first-child img { aspect-ratio: 1.12; }
.home :where(#the-edit) .ten10-ed-path:not(:first-child) img { aspect-ratio: 4 / 5; }
.home :where(#the-edit) .ten10-ed-path:first-child h3 { font-size: clamp(24px, 2.1vw, 32px); }

@media (min-width: 1025px) {
  .ten10-ed-hero--home { --padding-top: 36px; --padding-bottom: 64px; }
  .ten10-ed-hero--home .ten10-ed-hero-copy { --padding-top: 30px; --padding-bottom: 30px; --padding-right: clamp(30px, 4cqi, 72px); }
  .ten10-ed-hero--home .ten10-ed-hero-photo img { height: clamp(480px, 40cqi, 700px); }
  .home :where(#the-edit) { --padding-top: 52px; --padding-bottom: 100px; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .ten10-ed-hero--home .ten10-ed-display .elementor-heading-title { font-size: clamp(54px, 8cqi, 76px); }
  .ten10-ed-hero--home .ten10-ed-hero-photo img { min-height: 480px; }
  .ten10-ed-selection--3 .woocommerce ul.products li.product:not(:first-child), .home :where(#the-edit) .ten10-ed-path:not(:first-child) { margin-top: 32px; }
}
@media (max-width: 767px) {
  .ten10-ed-hero--home .ten10-ed-hero-copy { --gap: 20px; --padding-top: 24px; --padding-bottom: 30px; }
  .ten10-ed-hero--home .ten10-ed-display .elementor-heading-title { font-size: clamp(52px, 16cqi, 82px); }
  .ten10-ed-hero--home .ten10-ed-lead { font-size: 15px; }
  .ten10-ed-hero--home .ten10-ed-hero-photo img { aspect-ratio: 4 / 3; }
  .ten10-editorial :where(.ten10-ed-ingredient, .ten10-ed-moment, .ten10-ed-principle) .elementor-widget-heading h3.elementor-heading-title { font-size: 20px; }
  .ten10-ed-selection .woocommerce ul.products, .home :where(#the-edit) .ten10-ed-paths { grid-template-columns: minmax(0, 1fr); gap: 32px; max-width: none; }
  .ten10-ed-selection--3 .woocommerce ul.products li.product:not(:first-child), .home :where(#the-edit) .ten10-ed-path:not(:first-child) { margin-top: 0; }
  .ten10-ed-selection .woocommerce ul.products li.product a img { aspect-ratio: 4 / 3; max-height: 380px; }
  .home :where(#the-edit) .ten10-ed-path:first-child { display: block; }
  .home :where(#the-edit) .ten10-ed-path:first-child img { aspect-ratio: 3 / 2; margin-bottom: 20px; }
  .home :where(#the-edit) .ten10-ed-path:first-child h3 { font-size: 24px; margin-bottom: 10px; }
  .home :where(#the-edit) .ten10-ed-path:not(:first-child) img { aspect-ratio: 1; }
  .home :where(#the-edit) .ten10-ed-path h3 { font-size: 20px; }
}
