/* V7 editorial Home composition. No DOM, data or commerce changes.
 * Loaded only by the strict ABA_V7_ENABLED homepage opt-in. */
.aba-v1.aba-v7-enabled[data-page="home"] {
  --v7-gutter: clamp(24px, 4vw, 72px);
  background: var(--white);
}
.aba-v1.aba-v7-enabled[data-page="home"] ::selection { background: var(--salmon); color: var(--charcoal); }
.aba-v1.aba-v7-enabled[data-page="home"] :focus-visible { outline: 3px solid var(--charcoal); outline-offset: 5px; }
.aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard {
  display: grid;
  grid-template-columns: minmax(0, 55fr) minmax(0, 45fr);
  aspect-ratio: auto;
  width: 100%;
  height: auto;
  min-height: 570px;
  max-height: none;
  margin: 0;
  border-radius: 0;
  background: var(--blue);
  overflow: hidden;
}
.aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard::before,
.aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard::after { display: none; }
.aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard .aba-hero-picture {
  position: relative;
  inset: auto;
  grid-column: 2;
  grid-row: 1;
  width: 100%;
  height: 100%;
  min-height: 570px;
}
.aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard .aba-hero-picture img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 77% center;
  transform: none;
}
.aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard .aba-hero-inner {
  position: relative;
  inset: auto;
  grid-column: 1;
  grid-row: 1;
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 570px;
  min-width: 0;
  height: auto;
  padding: 56px var(--v7-gutter);
  margin: 0;
  color: var(--charcoal);
}
.aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard .aba-hero-message { width: 100%; min-width: 0; max-width: 650px; padding: 0; background: transparent; }
.aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard .aba-hero-inner::after {
  content: "";
  position: absolute;
  bottom: 8px;
  left: 0;
  width: 100%;
  height: 48px;
  background: url("media/aba-flow.svg") center / 100% 100% no-repeat;
  filter: brightness(0) invert(1);
  opacity: .5;
  pointer-events: none;
}
.aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard h1 {
  max-width: 650px;
  margin: 0 0 36px;
  color: var(--charcoal);
  font-size: clamp(48px, 4.8vw, 76px);
  font-weight: 300;
  line-height: 1.03;
  letter-spacing: -.035em;
  text-wrap: balance;
  white-space: normal;
  overflow-wrap: break-word;
}
.aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard .aba-hero-cta {
  min-height: 54px;
  padding: 16px 24px;
  background: var(--charcoal);
  color: var(--white);
}
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-quick { width: auto; max-width: none; margin: 0; padding: 56px var(--v7-gutter) 64px; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-heading { margin-bottom: 28px; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-heading h2 { font-size: clamp(36px, 4vw, 60px); font-weight: 300; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-products { gap: 24px; scrollbar-color: var(--charcoal) var(--cream); }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-product { box-shadow: none; border-radius: 0; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-product-image { border-radius: 0; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-products { grid-auto-columns: calc((100% - 72px) / 4); padding: 6px 3px 12px; scroll-padding-inline: 3px; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-product { min-width: 0; display: flex; flex-direction: column; scroll-snap-align: start; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-product-copy { min-width: 0; display: flex; flex: 1; flex-direction: column; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-product-copy h3 { min-height: 2.8em; line-height: 1.4; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-buy-row { margin-top: auto; display: flex; flex-direction: column; align-items: stretch; gap: 12px; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-price { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 2px; min-height: 48px; white-space: normal; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-price :is(strong, del) { white-space: nowrap; line-height: 1.3; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-price strong { order: -1; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-buy-row button { width: 100%; min-width: 0; min-height: 44px; border-radius: 0; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-heading { align-items: center; gap: 16px; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-heading > div:first-child { min-width: 0; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-controls { flex-shrink: 0; }
.aba-v1.aba-v7-enabled[data-page="home"] .site-footer .aba-footer-legal { display: flex; flex-wrap: wrap; gap: 4px 20px; }
.aba-v1.aba-v7-enabled[data-page="home"] .site-footer .aba-footer-legal a { min-height: 44px; display: inline-flex; align-items: center; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-price strong { font-weight: 700; font-variant-numeric: tabular-nums; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-clinics { padding: 0; margin: 0; background: var(--salmon); }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-clinic-layout { width: 100%; max-width: none; padding: 0; gap: 0; grid-template-columns: 1.15fr 1fr; align-items: stretch; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-clinic-content { padding: 56px var(--v7-gutter); }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-help { padding: 56px var(--v7-gutter); background: var(--cream); border: 0; border-radius: 0; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-clinics h2 { font-size: clamp(40px, 4.4vw, 64px); font-weight: 300; line-height: 1.04; }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-clinic-selector button { min-height: 44px; color: var(--charcoal); border-color: var(--charcoal); }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-clinic-selector button[aria-pressed="true"] { color: var(--white); background: var(--charcoal); }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-concierge-copy { max-width: 38ch; color: var(--charcoal); }
.aba-v1.aba-v7-enabled[data-page="home"] .ah3-help .ah3-contact-open { background: var(--charcoal); color: var(--white); border-color: var(--charcoal); }
/* Whole-card desktop groups; the existing carousel derives its step from these widths. */
@media (min-width: 1200px) {
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-products { grid-auto-columns: calc((100% - 96px) / 5); }
}
@media (min-width: 1400px) {
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-products { grid-auto-columns: calc((100% - 120px) / 6); }
}
@media (min-width: 1600px) {
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-products { grid-auto-columns: calc((100% - 144px) / 7); }
}
@media (min-width: 1800px) {
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-products { grid-auto-columns: calc((100% - 168px) / 8); }
}
@media (max-width: 900px) {
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-products { grid-auto-columns: calc((100% - 48px) / 3); }
  .aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard { grid-template-columns: 53% 47%; min-height: 480px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard .aba-hero-picture,
  .aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard .aba-hero-inner { min-height: 480px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard h1 { font-size: 52px; }
}
@media (max-width: 600px) {
  .aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard .aba-hero-inner { grid-column: 1; grid-row: 1; min-height: 0; padding: 36px 24px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard h1 { font-size: clamp(39px, 10vw, 56px); margin-bottom: 24px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard .aba-hero-inner::after { display: none; }
  .aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard .aba-hero-picture { grid-column: 1; grid-row: 2; height: 250px; min-height: 0; }
  .aba-v1.aba-v7-enabled[data-page="home"] .aba-hero--standard .aba-hero-picture img { object-position: center; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-quick { padding-top: 36px; padding-bottom: 40px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-products { grid-auto-columns: calc((100% - 12px) / 2); gap: 12px; scroll-snap-type: x mandatory; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-heading { align-items: end; gap: 8px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-heading h2 { font-size: clamp(28px, 8vw, 36px); text-wrap: balance; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-controls { gap: 4px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-controls button { width: 44px; height: 44px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-product-copy h3 { font-size: 15px; min-height: 4.2em; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-price strong { font-size: 19px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-price del { font-size: 13px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-buy-row button { padding-inline: 8px; font-size: 13px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-clinic-layout { grid-template-columns: 1fr; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-clinic-content,
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-help { padding: 28px 24px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-clinics h2 { font-size: 38px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-clinic-detail { margin-block: 20px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .ah3-clinic-actions { gap: 16px; flex-wrap: wrap; }
  .aba-v1.aba-v7-enabled[data-page="home"] .site-footer .footer-bottom { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding-top: 16px; }
  .aba-v1.aba-v7-enabled[data-page="home"] .site-footer .aba-footer-legal { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; width: 100%; }
}
