.age-hero { position: relative; height: min(62vw, 700px); min-height: 540px; overflow: hidden; background: #d9d0c2; }
.age-hero > img { width: 100%; height: 100%; object-fit: cover; display: block; }
.age-visual-placeholder { display: block; width: 100%; height: 100%; min-height: 240px; background: radial-gradient(circle at 68% 32%, rgba(227, 30, 36, .6), transparent 20%), linear-gradient(135deg, #111 0%, #343434 42%, #090c28 100%); }
.age-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7, 9, 28, .62), rgba(7, 9, 28, .14) 52%, transparent 75%); }
.age-hero-copy { position: absolute; z-index: 2; top: 50%; inset-inline-start: max(6vw, 48px); transform: translateY(-50%); width: min(610px, 48vw); color: #fff; }
.age-hero-copy > p, .age-section-heading p, .age-story-copy > p:first-child { margin: 0 0 14px; font-size: 11px; letter-spacing: .14em; font-weight: 700; }
.age-hero-copy h1 { margin: 0 0 20px; font-size: clamp(44px, 4.7vw, 70px); line-height: .98; letter-spacing: -.055em; }
.age-hero-copy > span { display: block; font-size: 17px; line-height: 1.6; margin-bottom: 30px; max-width: 590px; }
.age-primary-button { min-height: 48px; padding: 0 22px; background: #fff; color: var(--age-navy); display: inline-flex; align-items: center; justify-content: center; gap: 15px; font-weight: 700; font-size: 13px; }
.age-category-band, .age-products-section { padding-block: 92px; }
.age-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 36px; }
.age-section-heading h2, .age-story-copy h2 { margin: 0; font-size: clamp(30px, 3vw, 48px); line-height: 1.05; letter-spacing: -.04em; }
.age-section-heading > a, .age-story-copy > a { border-bottom: 1px solid currentColor; padding: 8px 0; display: inline-flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 700; }
.age-category-grid, .age-product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.age-category-tile { position: relative; aspect-ratio: 1 / 1.08; background: var(--age-paper); overflow: hidden; }
.age-category-tile > img, .age-category-tile .woocommerce-placeholder { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; transition: transform .4s; }
.age-category-tile:hover > img { transform: scale(1.04); }
.age-category-tile span { position: absolute; inset-inline: 0; bottom: 0; padding: 20px; font-size: 20px; font-weight: 700; background: linear-gradient(transparent, rgba(255, 255, 255, .94)); }
.age-value-story { display: grid; grid-template-columns: 1fr 1.1fr; min-height: 620px; background: var(--age-navy); color: #fff; }
.age-story-copy { padding: clamp(48px, 7vw, 110px); align-self: center; }
.age-story-copy > p:not(:first-child) { color: #cdd0dc; line-height: 1.75; margin: 26px 0; }
.age-value-story > img { width: 100%; height: 100%; min-height: 620px; object-fit: cover; }
.age-product-card { min-width: 0; }
.age-product-image { display: block; width: 100%; aspect-ratio: 1 / 1.15; background: #f6f6f4; padding: 22px; overflow: hidden; }
.age-product-image img { width: 100% !important; height: 100% !important; object-fit: contain; mix-blend-mode: multiply; transition: transform .4s; }
.age-product-image:hover img { transform: scale(1.04); }
.age-product-series { margin: 18px 0 7px; color: #737581; font-size: 9px; letter-spacing: .12em; font-weight: 700; text-transform: uppercase; }
.age-product-card h3 { font-size: 14px; line-height: 1.45; margin: 0; min-height: 42px; }
.age-product-price { display: flex; align-items: center; justify-content: space-between; margin-top: 14px; font-weight: 700; }
.age-product-price > a { width: 36px; height: 36px; border: 1px solid var(--age-navy); display: grid; place-items: center; }
.age-data-note { margin-top: 30px; color: var(--age-muted); font-size: 11px; }
.age-editorial-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: #d9d9d9; margin-bottom: 100px; }
.age-editorial-grid article { background: var(--age-paper); padding: 42px; min-height: 300px; position: relative; }
.age-editorial-grid span { font-size: 10px; letter-spacing: .13em; font-weight: 700; }
.age-editorial-grid h3 { font-size: 27px; line-height: 1.1; margin: 55px 0 16px; }
.age-editorial-grid p { color: var(--age-muted); line-height: 1.6; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.age-editorial-grid article > a { position: absolute; bottom: 32px; inset-inline-end: 32px; }
.age-theme-root-usecase .age-value-story { background: #173b35; }
.age-theme-root-usecase .age-hero > img { object-position: 62% center; }
.age-theme-root-compare .age-value-story { background: #331c2c; }
.age-theme-root-compare .age-editorial-grid { margin-top: 92px; }
[dir="rtl"] .age-hero::after { background: linear-gradient(270deg, rgba(7, 9, 28, .62), rgba(7, 9, 28, .14) 52%, transparent 75%); }

@media (max-width: 760px) {
  .age-hero { min-height: 620px; height: calc(100dvh - 116px); }
  .age-hero > img { object-position: 72% center; }
  .age-hero::after { background: linear-gradient(0deg, rgba(6, 8, 25, .79), rgba(6, 8, 25, .03) 68%); }
  .age-hero-copy { inset-inline: 24px; top: auto; bottom: 46px; width: auto; transform: none; }
  .age-hero-copy h1 { font-size: 42px; }
  .age-hero-copy > span { font-size: 14px; }
  .age-category-band, .age-products-section { padding-block: 60px; }
  .age-section-heading { align-items: flex-start; }
  .age-section-heading h2 { font-size: 34px; }
  .age-section-heading > a { display: none; }
  .age-category-grid, .age-product-grid { grid-template-columns: repeat(2, 1fr); gap: 9px; }
  .age-category-tile span { font-size: 14px; padding: 13px; }
  .age-value-story { grid-template-columns: 1fr; min-height: 0; }
  .age-story-copy { padding: 52px 24px; }
  .age-value-story > img { min-height: 370px; }
  .age-product-image { padding: 9px; }
  .age-product-card h3 { font-size: 11px; }
  .age-product-series { font-size: 8px; }
  .age-editorial-grid { grid-template-columns: 1fr; margin-bottom: 70px; }
  .age-editorial-grid article { min-height: 250px; padding: 32px; }
}
