:root {
  --hn-blue: #00559a;
  --hn-deep-blue: #004477;
  --hn-sky: #078dcc;
  --hn-green: #39b42a;
  --hn-ink: #12334d;
  --hn-soft: #f2f6ff;
  --hn-radius: 28px;
  --hn-shadow: 0 12px 35px rgba(0, 62, 108, 0.09);
}

.page-template-home-new .header {
  background: #fff;
  box-shadow: 0 4px 18px rgba(14, 52, 77, 0.06);
  z-index: 20;
}

.page-template-home-new .container_logo {
  width: 20%;
}

.page-template-home-new .listado_menu_header > .item_in_menu > .item_menu {
  font-family: Inter, sans-serif;
  font-size: 14px;
  padding-left: 15px;
  padding-right: 15px;
  white-space: nowrap;
}

.page-template-home-new .listado_menu_header > .item_in_menu > .item_contain_submenu {
  background-position: 100% 50%;
  background-size: auto;
  padding-left: 20px;
  padding-right: 20px;
}

/* En la propuesta, Agencias pasa a ser un acceso rápido del home. */
.page-template-home-new .listado_menu_header > li:has(> a[href*="/agencias/"]) {
  display: none;
}

.page-template-home-new .link_coope_linea {
  border: 2px solid var(--hn-blue) !important;
  box-shadow: 0 5px 16px rgba(0, 85, 154, 0.16);
  color: var(--hn-blue) !important;
  font-weight: 700 !important;
}

.page-template-home-new .link_coope_linea:hover,
.page-template-home-new .link_coope_linea:focus-visible {
  background: var(--hn-blue) !important;
  border-color: var(--hn-blue) !important;
  color: #fff !important;
  box-shadow: 0 6px 18px rgba(0, 85, 154, .22);
}

.page-template-home-new .item_contactanos {
  background: var(--hn-green) !important;
}

.page-template-home-new .cosami-home-new-work-item a {
  white-space: nowrap;
}

.hn-main {
  color: var(--hn-ink);
  font-family: Poppins, sans-serif;
  overflow: hidden;
  padding-top: 98px;
}

.hn-main *, .hn-main *::before, .hn-main *::after {
  box-sizing: border-box;
}

.hn-main a[href] {
  cursor: pointer;
}

.hn-shell {
  margin: 0 auto;
  max-width: 1320px;
  padding: 52px 28px 70px;
}

.hn-section {
  margin-top: 42px;
}

.hn-section h2 {
  color: var(--hn-blue);
  font-size: clamp(27px, 3vw, 39px);
  line-height: 1.08;
  margin: 0 0 18px;
}

.hn-section h3, .hn-section p {
  margin-top: 0;
}

.hn-button {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  font-size: 15px;
  font-weight: 700;
  justify-content: center;
  line-height: 1.15;
  min-height: 42px;
  padding: 11px 24px;
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.hn-button:hover, .hn-button:focus-visible {
  box-shadow: 0 8px 18px rgba(0, 68, 119, .18);
  transform: translateY(-2px);
}

.hn-button--green { background: var(--hn-green); color: #fff; }
.hn-button--blue { background: var(--hn-blue); color: #fff; }
.hn-button--outline { background: #fff; border: 2px solid var(--hn-blue); color: var(--hn-blue); }

.hn-hero-track {
  background: linear-gradient(120deg, #003e70, #0078bd);
  border-radius: 32px;
  box-shadow: var(--hn-shadow);
  display: grid;
  height: 381px;
  overflow: hidden;
  position: relative;
}

.hn-hero-slide {
  align-items: center;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  grid-area: 1 / 1;
  height: 100%;
  max-height: 381px;
  min-height: 0;
  opacity: 0;
  padding-left: max(70px, calc((100% - 1000px) / 2));
  padding-right: max(70px, calc((100% - 1000px) / 2));
  pointer-events: none;
  overflow: hidden;
  position: relative;
  transition: opacity .55s ease, transform .55s ease;
  transform: translateX(18px);
  visibility: hidden;
}

.hn-hero-slide::before {
  background: radial-gradient(circle, rgba(255,255,255,.1) 0 2px, transparent 3px);
  background-size: 22px 22px;
  content: "";
  height: 260px;
  opacity: .35;
  position: absolute;
  right: 30%;
  top: -80px;
  width: 260px;
}

.hn-hero-slide.is-active {
  opacity: 1;
  pointer-events: auto;
  transform: none;
  visibility: visible;
}

.hn-hero-copy {
  box-sizing: border-box;
  color: #fff;
  max-width: none;
  padding: 20px;
  position: relative;
  text-align: center;
  z-index: 2;
}

.hn-hero-copy h1 {
  color: #fff;
  font-family: Inter, sans-serif;
  font-size: 50px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
}

.hn-hero-copy p {
  font-family: Inter, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.45;
  margin: 0;
  padding: 20px 0;
}

.hn-hero-copy .hn-button { font-family: Inter, sans-serif; font-weight: 500; padding: 20px 25px; }

.hn-hero-image {
  align-self: end;
  height: 100%;
  justify-self: end;
  max-height: 381px;
  max-width: 100%;
  object-fit: contain;
  object-position: center bottom;
  position: relative;
  z-index: 1;
}

.hn-hero-picture {
  align-self: end;
  display: flex;
  height: 100%;
  justify-content: flex-end;
  max-height: 381px;
  min-height: 0;
  min-width: 0;
}

.hn-slider-arrow {
  background-color: transparent;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  border: 0;
  color: #fff;
  cursor: pointer;
  font-size: 0;
  height: 157px;
  position: absolute;
  top: calc(50% - 78px);
  width: 59px;
  z-index: 3;
}

.hn-slider-arrow--previous { background-image: url("../images/prev.svg"); left: 0; }
.hn-slider-arrow--next { background-image: url("../images/next.svg"); right: 0; }
.hn-slider-dots { bottom: 15px; display: flex; gap: 9px; left: 50%; position: absolute; transform: translateX(-50%); z-index: 4; }
.hn-slider-dot { background: transparent; border: 2px solid #fff; border-radius: 50%; cursor: pointer; height: 11px; padding: 0; width: 11px; }
.hn-slider-dot.is-active { background: #fff; }

.hn-quick {
  align-items: stretch;
  display: grid;
  gap: 25px;
  grid-template-columns: minmax(220px, .75fr) minmax(0, 2.6fr);
}

.hn-section-intro {
  align-self: center;
  padding: 25px 18px;
}

.hn-section-intro p, .hn-products-intro p, .hn-tools-intro p, .hn-business-copy p {
  color: #405768;
  font-size: 15px;
  line-height: 1.5;
}

.hn-quick-grid {
  background: #fafafa;
  border-radius: var(--hn-radius);
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  padding: 32px 18px;
}

.hn-quick-item {
  align-items: center;
  border-right: 1px solid #dde4e8;
  color: var(--hn-blue);
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 4px 18px;
  text-align: center;
  text-decoration: none;
  transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.hn-quick-item:last-child { border-right: 0; }
.hn-quick-item:hover, .hn-quick-item:focus-visible {
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 5px 16px rgba(0, 73, 126, .09);
}
.hn-quick-item img { height: 68px; margin-bottom: 13px; object-fit: contain; width: 72px; }
.hn-quick-item strong { font-size: 16px; line-height: 1.1; }
.hn-quick-item strong { align-items: center; display: flex; justify-content: center; min-height: 36px; }
.hn-quick-item span { color: #3d4c57; font-size: 11px; line-height: 1.3; margin: 8px 0; min-height: 43px; }
.hn-quick-item i { color: var(--hn-green); font-size: 25px; font-style: normal; margin-top: auto; transition: transform .2s ease; }
.hn-quick-item:hover i { transform: translateX(5px); }

.hn-products {
  background: #edf7ff;
  border-radius: 38px;
  display: grid;
  gap: 22px;
  grid-template-columns: .9fr 2.5fr;
  padding: 24px;
}

.hn-products-intro {
  align-self: center;
  padding: 28px 24px;
}

.hn-title-primary, .hn-title-accent { display: block; }
.hn-title-primary { color: var(--hn-blue); }
.hn-title-accent { color: var(--hn-green); }
.hn-products-grid { display: grid; gap: 18px; grid-template-columns: repeat(3, 1fr); }
.hn-product-card { background: #fff; border-radius: 28px; color: inherit; overflow: hidden; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.hn-product-card:hover, .hn-product-card:focus-visible { box-shadow: 0 8px 24px rgba(0, 72, 126, .12); }
.hn-product-card > img { aspect-ratio: 1.44; background: #eef5fb; border-radius: 28px 28px 0 0; display: block; height: auto; object-fit: cover; object-position: center; width: 100%; }
.hn-product-card > img { border-radius: 28px; }
.hn-product-card:nth-child(1) > img { object-position: center top; }
.hn-product-card:nth-child(2) > img { object-position: center 58%; }
.hn-product-card > div { min-height: 150px; padding: 20px 22px; position: relative; }
.hn-product-card h3 { color: var(--hn-blue); font-size: 26px; margin-bottom: 8px; }
.hn-product-card p { color: #344754; font-size: 13px; line-height: 1.35; margin: 0; max-width: calc(100% - 38px); }
.hn-product-card i { bottom: 22px; color: var(--hn-green); font-size: 34px; font-style: normal; position: absolute; right: 20px; }

.hn-tools { display: grid; gap: 20px; grid-template-columns: 1fr 1.25fr 1.25fr; }
.hn-tools-intro { align-self: center; padding: 22px; }
.hn-tools-intro h2 { font-size: 28px; }
.hn-tools-intro .hn-title-primary { white-space: nowrap; }
.hn-news-slider,
.hn-tool-card { border-radius: 11% / 20%; color: #fff; display: block; min-height: 0; overflow: hidden; padding: 0; position: relative; text-decoration: none; transition: box-shadow .25s ease, transform .25s ease; }
.hn-news-carousel { min-width: 0; width: 100%; }
.hn-news-slider { aspect-ratio: 16 / 9; display: grid; width: 100%; }
.hn-news-slide { display: block; grid-area: 1 / 1; height: 100%; opacity: 0; pointer-events: none; transition: opacity .45s ease; visibility: hidden; width: 100%; }
.hn-news-slide.is-active { opacity: 1; pointer-events: auto; visibility: visible; }
.hn-tool-card { aspect-ratio: 16 / 9; width: 100%; }
.hn-tool-background { background-position: center; background-repeat: no-repeat; background-size: cover; display: block; height: 100%; width: 100%; }
.hn-news-slide .hn-tool-background { background-color: var(--hn-blue); background-size: cover; }
.hn-news-dots { display: flex; gap: 7px; justify-content: center; margin-top: 10px; }
.hn-news-dot { background: #fff; border: 1px solid var(--hn-blue); border-radius: 50%; cursor: pointer; height: 9px; padding: 0; width: 9px; }
.hn-news-dot.is-active { background: var(--hn-blue); }
.hn-tool-card:hover, .hn-tool-card:focus-visible { box-shadow: 0 8px 20px rgba(0, 85, 154, .16); }
.hn-news-slider:hover, .hn-news-slider:focus-within { box-shadow: 0 8px 20px rgba(0, 85, 154, .16); }
.hn-tools-intro .hn-button:hover, .hn-tools-intro .hn-button:focus-visible { transform: none; }

#hn-products-title,
#hn-promotions-title,
#hn-education-title { font-size: clamp(25px, 2.7vw, 35px); font-weight: 600; }
.hn-promotions > h2 { margin-left: 26px; }
.hn-promotions-grid { display: grid; gap: 22px; grid-template-columns: repeat(4, 1fr); }
.hn-promotion-card { background: var(--hn-blue); border: 0; border-radius: 44px; box-shadow: 0 3px 15px rgba(0,65,112,.06); color: #fff; display: flex; flex-direction: column; min-height: 420px; overflow: hidden; position: relative; text-decoration: none; transition: box-shadow .22s ease, transform .22s ease; }
.hn-promotion-card:nth-child(odd) { background: var(--hn-sky); }
.hn-promotion-card:nth-child(even) { background: var(--hn-blue); }
.hn-promotion-card:hover, .hn-promotion-card:focus-visible { box-shadow: 0 8px 22px rgba(0, 85, 154, .18); transform: translateY(-2px); }
.hn-promotion-card > img { aspect-ratio: 4 / 5; border-radius: 42px 42px 0 0; display: block; height: auto; object-fit: cover; object-position: top center; width: 100%; }
.hn-promotion-card > div { align-items: center; display: flex; flex: 1; flex-direction: column; justify-content: space-between; min-height: 112px; padding: 16px 18px 18px; text-align: center; }
.hn-promotion-card h3 { color: #fff; font-size: 16px; font-weight: 600; line-height: 1.25; margin-bottom: 12px; }
.hn-promotion-card span { background: #fff; border-radius: 999px; color: var(--hn-blue); display: inline-block; font-size: 13px; font-weight: 700; padding: 8px 16px; }
.hn-promotion-card--full { aspect-ratio: 5 / 8; background: transparent; min-height: 0; }
.hn-promotion-card--full:nth-child(odd), .hn-promotion-card--full:nth-child(even) { background: transparent; }
.hn-promotion-card--full > img { aspect-ratio: 5 / 8; border-radius: inherit; height: 100%; object-fit: cover; width: 100%; }

.hn-metrics > h2 { text-align: center; }
.hn-metrics-grid { display: grid; gap: 25px; grid-template-columns: repeat(4, 1fr); margin: 36px auto; max-width: 1100px; }
.hn-metric { align-items: center; border-radius: 20px; color: #444c52; display: flex; flex-direction: column; padding: 16px 10px; text-align: center; text-decoration: none; transition: background-color .22s ease, box-shadow .22s ease, transform .22s ease; }
.hn-metric:hover, .hn-metric:focus-visible { background: rgba(237, 247, 255, .72); box-shadow: 0 8px 22px rgba(0, 85, 154, .11); transform: translateY(-2px); }
.hn-metric img { height: 70px; margin-bottom: 16px; object-fit: contain; width: 84px; }
.hn-metric strong { color: #444c52; font-size: 26px; font-variant-numeric: tabular-nums; font-weight: 600; line-height: 1.1; min-height: 29px; white-space: nowrap; }
.hn-metric span { font-size: 13px; margin-top: 9px; }
.hn-metric-icon { align-items: center; background: transparent; border: 0; border-radius: 14px; cursor: pointer; display: inline-flex; justify-content: center; margin: 0 0 16px; padding: 0; transition: box-shadow .2s ease, transform .2s ease; }
.hn-metric-icon img { margin-bottom: 0; }
.hn-metric-icon:hover, .hn-metric-icon:focus-visible { box-shadow: 0 6px 18px rgba(0, 85, 154, .16); outline: none; transform: translateY(-2px); }
body.hn-pdf-modal-open { overflow: hidden; }
.hn-institutional-grid { display: grid; gap: 28px; grid-template-columns: repeat(3, 1fr); }
.hn-institution-card { align-items: center; background: var(--hn-soft); border-radius: var(--hn-radius); display: flex; flex-direction: column; justify-content: center; min-height: 300px; padding: 36px; text-align: center; }
.hn-institution-card--blue { background: linear-gradient(140deg, #005188, #078fd0); color: #fff; }
.hn-institution-card h3 { color: var(--hn-blue); font-size: 28px; }
.hn-institution-card--blue h3 { color: #fff; }
.hn-institution-card p { font-size: 13px; line-height: 1.45; min-height: 58px; }

.hn-education > h2 { margin-left: 0; }
.hn-education-layout { align-items: stretch; display: grid; gap: 28px; grid-template-columns: 3fr .85fr; }
.hn-education-grid { display: grid; gap: 22px; grid-template-columns: repeat(3, 1fr); }
.hn-education-card { background: var(--hn-soft); border-radius: 24px; color: #202a31; overflow: hidden; text-decoration: none; }
.hn-education-card > .hn-education-art { aspect-ratio: 1.38; background-position: center; background-repeat: no-repeat; background-size: 112% auto; border: 0 !important; border-radius: 24px 24px 0 0 !important; display: block; flex: 0 0 auto; margin: 0; padding: 0 !important; transition: none !important; width: 100%; }
.hn-education-card:nth-child(1) .hn-education-art { background-position: center; }
.hn-education-card:nth-child(2) .hn-education-art { background-position: center; }
.hn-education-card:nth-child(3) .hn-education-art { background-position: center; }
.hn-education-card { display: flex; flex-direction: column; transition: box-shadow .2s ease; }
.hn-education-card:hover, .hn-education-card:focus-visible { box-shadow: 0 8px 22px rgba(0, 72, 126, .12); }
.hn-education-card > div { align-items: center; display: flex; flex: 1; flex-direction: column; min-height: 155px; padding: 18px; text-align: center; }
.hn-education-card h3 { font-size: 16px; line-height: 1.25; min-height: 40px; text-align: center; width: 100%; }
.hn-education-card > div > span { border: 1px solid var(--hn-blue); border-radius: 999px; color: var(--hn-blue); display: inline-block; font-size: 13px; font-weight: 700; margin-top: auto; padding: 8px 14px; transition: background-color .2s ease, color .2s ease; }
.hn-education-card:hover > div > span, .hn-education-card:focus-visible > div > span { background: var(--hn-green); border-color: var(--hn-green); color: #fff; }
.hn-education-cta { align-items: center; display: flex; flex-direction: column; justify-content: center; text-align: center; }
.hn-education-cta strong { color: var(--hn-green); font-size: 25px; margin-bottom: 18px; }

.hn-business { align-items: center; background: var(--hn-soft); border-radius: var(--hn-radius); display: grid; gap: 28px; grid-template-columns: 1fr 1.6fr .75fr; min-height: 265px; overflow: hidden; padding: 34px 34px 0 52px; }
.hn-business-copy { align-self: center; padding-bottom: 34px; }
.hn-business-copy h2 { font-size: 32px; }
.hn-business-services { align-self: center; display: grid; gap: 12px; grid-template-columns: 1fr 1fr; padding-bottom: 34px; }
.hn-business-services > div { align-items: center; background: #fff; border: 1px solid #d3ddea; border-radius: 7px; display: flex; font-size: 12px; gap: 10px; min-height: 42px; padding: 8px 12px; }
.hn-business-services img { height: 20px; object-fit: contain; width: 20px; }
.hn-business-services .hn-button { grid-column: 1 / -1; justify-self: center; margin-top: 8px; }
.hn-business-image { align-self: end; max-height: 250px; object-fit: contain; object-position: bottom; width: 100%; }

/* AOS ya existe en el tema; el movimiento se aplica a elementos internos para
 * mantener estable la altura de las secciones durante el scroll. */
.hn-main [data-aos] { opacity: 0; transition-duration: .85s !important; transition-property: opacity, transform; transition-timing-function: cubic-bezier(.22, 1, .36, 1); will-change: opacity, transform; }
.hn-main [data-aos="fade-right"] { transform: translate3d(-22px, 0, 0); }
.hn-main [data-aos="fade-left"] { transform: translate3d(22px, 0, 0); }
.hn-main [data-aos].aos-animate { opacity: 1; transform: translate3d(0, 0, 0); }
.hn-main [data-aos][data-aos-delay="70"].aos-animate { transition-delay: .07s; }
.hn-main [data-aos][data-aos-delay="80"].aos-animate { transition-delay: .08s; }
.hn-main [data-aos][data-aos-delay="90"].aos-animate { transition-delay: .09s; }
.hn-main [data-aos][data-aos-delay="100"].aos-animate { transition-delay: .1s; }
.hn-main [data-aos][data-aos-delay="120"].aos-animate { transition-delay: .12s; }
.hn-main [data-aos][data-aos-delay="140"].aos-animate { transition-delay: .14s; }
.hn-main [data-aos][data-aos-delay="160"].aos-animate { transition-delay: .16s; }
.hn-main [data-aos][data-aos-delay="180"].aos-animate { transition-delay: .18s; }
.hn-main [data-aos][data-aos-delay="210"].aos-animate { transition-delay: .21s; }
.hn-main [data-aos][data-aos-delay="220"].aos-animate { transition-delay: .22s; }
.hn-main [data-aos][data-aos-delay="240"].aos-animate { transition-delay: .24s; }

@media (prefers-reduced-motion: reduce) {
  .hn-main [data-aos] { opacity: 1; transform: none; transition: none; }
}

.hn-mobile-carousel-nav { display: none; }

@media (max-width: 1100px) {
  .hn-quick { grid-template-columns: 1fr; }
  .hn-section-intro { padding: 0 10px; }
  .hn-products { grid-template-columns: 1fr; }
  .hn-products-intro { padding: 10px; }
  .hn-tools { grid-template-columns: 1fr 1fr; }
  .hn-tools-intro { grid-column: 1 / -1; padding: 0 10px; }
  .hn-promotions-grid { grid-template-columns: repeat(2, 1fr); }
  .hn-business { grid-template-columns: 1fr 1.5fr; }
  .hn-business-image { display: none; }
}

@media (min-width: 1101px) {
  .hn-quick .hn-section-intro h2 { font-size: 29px; }
}

@media (max-width: 767px) {
  .hn-main { padding-top: 75px; }
  .hn-shell { padding: 24px 15px 50px; }
  .hn-section { margin-top: 30px; }
  .hn-hero-track { height: clamp(351px, 56vw, 430px); }
  .hn-hero-slide { grid-template-columns: 1fr; padding: 26px 34px 0; text-align: center; }
  .hn-hero-copy { margin: 0 auto; padding: 0; }
  .hn-hero-copy h1 { font-size: 30px; line-height: 1.15; margin-bottom: 10px; }
  .hn-hero-copy p { font-size: 14px; line-height: 1.4; margin-bottom: 14px; padding: 0; }
  .hn-hero-copy .hn-button { min-height: 38px; padding: 9px 18px; }
  .hn-hero-picture { height: 145px; justify-content: center; }
  .hn-hero-image { height: 145px; justify-self: center; }
  .hn-slider-arrow { background-size: 25px auto; height: 70px; top: calc(50% - 35px); width: 32px; }
  .hn-slider-arrow--previous { left: 0; }
  .hn-slider-arrow--next { right: 0; }
  .hn-quick-grid { display: flex; gap: 0; overflow-x: auto; padding: 12px; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .hn-quick-grid::-webkit-scrollbar { display: none; }
  .hn-quick-item { border-bottom: 0; border-right: 0; flex: 0 0 100%; padding: 18px 10px; scroll-snap-align: center; }
  .hn-quick-item:last-child { border-right: 0; }
  .hn-mobile-carousel-nav { display: flex; gap: 12px; justify-content: center; margin-top: 12px; }
  .hn-mobile-carousel-nav button { align-items: center; background: #fff; border: 1px solid rgba(0, 85, 154, .7); border-radius: 50%; color: var(--hn-blue); cursor: pointer; display: inline-flex; height: 38px; justify-content: center; padding: 0; position: relative; width: 38px; }
  .hn-mobile-carousel-nav button::before { border-bottom: 2px solid currentColor; border-right: 2px solid currentColor; content: ""; height: 7px; position: absolute; width: 7px; }
  .hn-mobile-carousel-nav button[data-home-new-scroll-previous]::before { margin-left: 3px; transform: rotate(135deg); }
  .hn-mobile-carousel-nav button[data-home-new-scroll-next]::before { margin-right: 3px; transform: rotate(-45deg); }
  .hn-mobile-carousel-nav button:hover, .hn-mobile-carousel-nav button:focus-visible { background: var(--hn-green); border-color: var(--hn-green); color: #fff; }
  .hn-products { border-radius: 25px; padding: 16px; }
  .hn-products-grid, .hn-institutional-grid, .hn-education-layout, .hn-business { grid-template-columns: 1fr; }
  .hn-products-grid { display: flex; gap: 14px; overflow-x: auto; padding: 4px 2px 12px; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .hn-products-grid::-webkit-scrollbar { display: none; }
  .hn-product-card { display: grid; flex: 0 0 100%; grid-template-columns: .95fr 1.05fr; min-width: 100%; scroll-snap-align: center; }
  .hn-product-card > img { aspect-ratio: auto; height: 100%; }
  .hn-product-card > div { min-height: 165px; }
  .hn-tool-card { min-height: 0; }
  .hn-news-slider { width: 100%; }
  .hn-promotions-grid { display: flex; gap: 16px; overflow-x: auto; padding: 4px 2px 14px; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .hn-promotions-grid::-webkit-scrollbar { display: none; }
  .hn-promotion-card { flex: 0 0 100%; min-height: 330px; min-width: 100%; scroll-snap-align: center; width: 100%; }
  .hn-promotion-card--full { min-height: 0; }
  .hn-promotion-card > img { height: auto; }
  .hn-metrics { min-width: 0; overflow: hidden; }
  .hn-metrics-grid { gap: 16px 10px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); max-width: 100%; width: 100%; }
  .hn-metric { min-width: 0; overflow: hidden; padding-left: 4px; padding-right: 4px; width: 100%; }
  .hn-metric strong { font-size: clamp(18px, 5.4vw, 24px); max-width: 100%; min-width: 0 !important; overflow-wrap: anywhere; white-space: normal; }
  .hn-metric span { max-width: 100%; overflow-wrap: anywhere; }
  .hn-education-layout { gap: 22px; }
  .hn-education-grid { grid-template-columns: 1fr; overflow: visible; padding-bottom: 0; }
  .hn-education-card { min-width: 0; }
  .hn-business { padding: 28px; }
  .hn-business-copy, .hn-business-services { padding-bottom: 0; }
  .hn-business-image { display: none; }
}

@media (max-width: 479px) {
  .hn-hero-track { height: 351px; }
  .hn-hero-slide { padding-left: 28px; padding-right: 28px; }
  .hn-hero-copy h1 { font-size: 28px; }
  .hn-hero-picture, .hn-hero-image { height: 140px; }
  .hn-product-card { grid-template-columns: 1fr; }
  .hn-product-card > img { aspect-ratio: 1.44; height: auto; }
  .hn-tools { grid-template-columns: 1fr; }
  .hn-promotions-grid { grid-template-columns: none; }
  .hn-promotion-card h3 { font-size: 13px; }
  .hn-metric strong { font-size: 21px; }
  .hn-business-services { grid-template-columns: 1fr; }
  .hn-business-services .hn-button { grid-column: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .hn-reveal { opacity: 1; transform: none; transition: none; }
  .hn-button, .hn-quick-item, .hn-product-card, .hn-tool-card, .hn-promotion-card, .hn-metric, .hn-metric-icon, .hn-education-card { transition: none; }
}
