/* ========================================
   TABLET (max-width: 1024px)
   ======================================== */

@media (max-width: 1024px) {
  :root {
    --container-pad: 1.5rem;
  }

  .c-hero__title {
    font-size: 2rem;
  }

  .c-section-desc {
    max-width: none;
  }

  .c-hero {
    grid-template-columns: 1fr;
    min-height: auto;
    margin-bottom: var(--sp-2xl);
  }

  .c-hero__text {
    padding: var(--sp-xl) var(--container-pad);
    order: 1;
  }

  .c-hero__media {
    order: 0;
  }

  .c-hero__media-img {
    min-height: 350px;
  }

  .c-featured {
    margin-bottom: var(--sp-2xl);
  }

  .c-benefits {
    grid-template-columns: 1fr;
    min-height: auto;
    margin-bottom: var(--sp-2xl);
  }

  .c-benefits__media {
    order: 0;
  }

  .c-benefits__text {
    padding: var(--sp-md) var(--container-pad) var(--sp-xl);
    order: 1;
  }

  .c-benefits__list {
    margin-bottom: var(--sp-md);
  }

  .c-benefits__grid {
    grid-template-columns: repeat(3, 1fr);
    height: auto;
    align-content: start;
    gap: 10px;
    padding: 10px;
  }

  .c-benefits__grid-img {
    aspect-ratio: 2 / 5;
  }

  .c-benefits__grid-img:nth-child(4) {
    display: none;
  }

  .c-nutrition-gaps {
    grid-template-columns: 1fr;
    min-height: auto;
    margin-bottom: var(--sp-2xl);
  }

  .c-nutrition-gaps__media {
    order: 0;
  }

  .c-nutrition-gaps__text {
    padding: var(--sp-md) var(--container-pad) var(--sp-xl);
    order: 1;
  }

  .c-nutrition-gaps__media-img {
    min-height: 350px;
  }

  .c-post-hero__img {
    aspect-ratio: 16 / 9;
  }

  .l-grid-3 {
    grid-template-columns: repeat(2, 1fr);
  }

  .c-faq__layout {
    grid-template-columns: 1fr;
  }

  .c-pdp-hero {
    grid-template-columns: 1fr;
  }

  .c-pdp-hero__image {
    position: static;
    height: auto;
    align-self: auto;
  }

  .c-pdp-hero__details {
    padding: var(--sp-lg) var(--container-pad);
  }

  .c-pdp-benefits__grid {
    flex-direction: column;
    align-items: flex-start;
  }

  .c-pdp-benefits__item {
    padding: var(--sp-sm) var(--container-pad);
  }

  .c-nutrition__layout {
    grid-template-columns: 1fr;
  }

  .c-cross-sell__inner {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .c-cross-sell__content {
    padding: var(--sp-xl) 0;
  }

  .c-cross-sell__image {
    order: -1;
  }

  .c-faq__layout--full {
    grid-template-columns: 1fr;
  }

  .c-guarantee__card {
    flex-direction: column;
    text-align: center;
    padding: var(--sp-xl);
  }

  .c-guarantee__content {
    align-items: center;
  }

  .c-trust-bar__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .c-footer__inner {
    grid-template-columns: repeat(2, 1fr);
  }

  .c-carousel__arrow--prev {
    left: 4px;
  }

  .c-carousel__arrow--next {
    right: 4px;
  }
}

/* ========================================
   MOBILE (max-width: 768px)
   ======================================== */

@media (max-width: 768px) {
  .c-hero__title {
    font-size: 1.75rem;
  }

  .c-post-header__title {
    font-size: var(--text-2xl);
  }

  .c-post-header__meta {
    flex-wrap: wrap;
  }

  .c-pdp-hero__image {
    padding: 0;
  }

  .c-pdp-gallery__main {
    min-height: 250px;
  }

  .c-pdp-gallery__thumb {
    width: 52px;
    height: 52px;
  }

  .c-featured__track {
    padding: 30px 40px;
  }

  .c-featured__logo {
    max-height: 18px;
    margin-right: 30px;
  }

  .c-featured__fade {
    display: none;
  }

  .l-section {
    padding-top: var(--sp-xl);
    padding-bottom: var(--sp-xl);
  }

  .l-grid-3 {
    grid-template-columns: 1fr;
  }

  .c-hero__desc {
    max-width: none;
  }

  .c-footer__inner {
    grid-template-columns: 1fr 1fr;
    gap: var(--sp-xl) var(--sp-lg);
  }

  .c-footer__bottom-inner {
    flex-direction: column;
    gap: var(--sp-sm);
    text-align: center;
  }

  .c-footer__legal {
    flex-wrap: wrap;
    justify-content: center;
  }
}

/* ========================================
   SMALL MOBILE (max-width: 480px)
   ======================================== */

@media (max-width: 480px) {
  :root {
    --container-pad: 1rem;
  }

  .c-header__actions {
    gap: var(--sp-md);
  }

  .c-hero__title {
    font-size: 1.5rem;
  }

  .c-hero__label {
    font-size: var(--text-xs);
  }

  .c-btn {
    width: 100%;
    justify-content: center;
  }

  .c-trust-bar__grid {
    grid-template-columns: 1fr;
  }

  .c-trust-bar__item {
    justify-content: flex-start;
    padding: var(--sp-md) var(--sp-lg);
  }

  .c-footer__inner {
    grid-template-columns: 1fr;
  }

  .c-section-title {
    font-size: var(--text-xl);
  }
}
