/* ========================================
   bedding-tech-hero
   ======================================== */

.bedding-tech-hero {
  --hero-end-height: 437px;
  position: relative;
  width: 100%;
  overflow: hidden;
}

.bedding-tech-hero__frame {
  position: relative;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
}

.bedding-tech-hero__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  transform: scale(1);
  transform-origin: center center;
  will-change: transform;
}

.bedding-tech-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background-color: #000;
  opacity: 0;
  pointer-events: none;
}

.bedding-tech-hero__container {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.bedding-tech-hero__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.875rem; /* 14px */
  text-align: center;
  opacity: 0;
}

.bedding-tech-hero__title,
.bedding-tech-hero__desc {
  margin: 0;
  color: #fff;
  line-height: 150%;
}

@media (min-width: 48rem) and (max-width: 63.9375rem) {
  .bedding-tech-hero {
    --hero-end-height: 400px;
  }

  .bedding-tech-hero__title {
    font-size: 3rem; /* 48px */
    line-height: 100%;
  }

  .bedding-tech-hero__desc {
    font-size: 1.25rem; /* 20px */
  }
}

@media (max-width: 47.9375rem) {
  .bedding-tech-hero {
    --hero-end-height: 244px;
  }

  .bedding-tech-hero__title {
    font-size: 1.875rem; /* 30px */
    line-height: 100%;
  }

  .bedding-tech-hero__desc {
    display: none;
  }
}

/* ========================================
   bedding-tech-overview
   ======================================== */

.bedding-tech-overview {
  display: none;
}

.bedding-tech-overview__container {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.bedding-tech-overview__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.bedding-tech-overview__title {
  margin: 0;
  font-family: var(--font-suit);
  font-weight: 600; /* Semibold */
  line-height: 150%;
  color: var(--color-brand-dark);
}

.bedding-tech-overview__char {
  display: inline-block;
  will-change: transform, opacity;
}

@media (max-width: 63.9375rem) {
  .bedding-tech-overview {
    display: block;
    width: 100%;
    background-color: var(--color-brand-light-2);
  }
}

@media (min-width: 48rem) and (max-width: 63.9375rem) {
  .bedding-tech-overview {
    height: 25rem; /* 400px */
  }

  .bedding-tech-overview__title {
    font-size: clamp(1.5rem, 3.128vw, 2rem); /* 32px */
  }
}

@media (max-width: 47.9375rem) {
  .bedding-tech-overview {
    height: 16.875rem; /* 270px */
  }

  .bedding-tech-overview__title {
    font-size: clamp(1.273rem, 6.364vw, 1.75rem); /* 28px */
  }
}

/* ========================================
   bedding-tech-design
   ======================================== */

.bedding-tech-design {
  position: relative;
  width: 100%;
  height: 67.5rem; /* 1080px */
}

.bedding-tech-design__frame {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.bedding-tech-design__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
}

.bedding-tech-design__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background-color: #000;
  opacity: 0;
  pointer-events: none;
}

.bedding-tech-design__container {
  position: relative;
  z-index: 2;
  height: 100%;
  padding-top: 9.375rem; /* 150px */
}

.bedding-tech-design__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.bedding-tech-design__title {
  margin: 0;
  font-family: var(--font-suit);
  font-weight: var(--fw-suit-bold); /* 600 */
  font-size: var(--fs-title); /* 40px */
  line-height: 130%;
  color: var(--color-white);
}

.bedding-tech-design__body {
  margin-top: 1.875rem; /* 30px */
  display: flex;
  flex-direction: column;
  gap: 0.625rem; /* 10px */
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.bedding-tech-design__desc {
  margin: 0;
  font-family: var(--font-suit);
  font-weight: 400;
  font-size: var(--fs-body-02); /* 22px */
  line-height: 150%;
  color: var(--color-white);
  white-space: normal;
}

@media (min-width: 48rem) {
  .bedding-tech-design__body-pc .bedding-tech-design__desc {
    word-break: keep-all;
    text-wrap: pretty;
  }
}

.bedding-tech-design__char {
  display: inline-block;
  will-change: transform, opacity;
}

@media (max-width: 63.9375rem) {
  .bedding-tech-design {
    height: 37.5rem; /* 600px */
  }

  .bedding-tech-design__title {
    display: none;
  }
}

@media (min-width: 48rem) and (max-width: 63.9375rem) {
  .bedding-tech-design__desc {
    font-size: clamp(1.032rem, 2.151vw, 1.375rem); /* 22px */
  }
}

.bedding-tech-design__body-mobile {
  display: none;
}

@media (max-width: 47.9375rem) {
  .bedding-tech-design__body-pc {
    display: none;
  }

  .bedding-tech-design__body-mobile {
    display: block;
  }

  .bedding-tech-design__desc {
    font-size: clamp(0.818rem, 4.091vw, 1.125rem); /* 18px */
    word-break: keep-all;
    text-wrap: pretty;
  }
}

.bedding-tech-design__char {
  display: inline-block;
  will-change: transform, opacity;
}

/* ========================================
   bedding-tech-process
   ======================================== */

.bedding-tech-process {
  width: 100%;
  height: 100vh;
  background-color: var(--color-white);
}

@media (max-width: 63.9375rem) {
  .bedding-tech-process {
    height: auto;
    min-height: 0;
  }
}

.bedding-tech-process .scroll-feature__feature-desc {
  word-break: keep-all;
  text-wrap: pretty;
}

@media (max-width: 47.9375rem) {
  .bedding-tech-process .scroll-feature__feature-desc {
    max-width: 21.25rem; /* 340px */
  }
}

/* ========================================
   bedding-tech-wool
   ======================================== */

.bedding-tech-wool {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  background-color: var(--color-brand-light-1);
}

.bedding-tech-wool__stage {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.bedding-tech-wool__brand {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0rem; /* 6px */
}

.bedding-tech-wool__brand-part {
  margin: 0;
  font-family: var(--font-paperlogy);
  font-weight: 900;
  font-size: 7.5rem; /* 120px */
  line-height: 1;
  letter-spacing: 0.1em;
  color: var(--color-brand-dark);
  will-change: transform;
}

.bedding-tech-wool__title {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 3;
  margin: 0;
  transform: translate(-50%, -50%);
  font-family: var(--font-suit);
  font-weight: 800;
  font-size: 6.25rem; /* 100px */
  line-height: 130%;
  color: var(--color-brand-dark);
  text-align: center;
  white-space: nowrap;
  pointer-events: none;
}

@media (min-width: 48rem) and (max-width: 63.9375rem) {
  .bedding-tech-wool__brand-part,
  .bedding-tech-wool__title {
    font-size: clamp(
      2.5rem,
      calc(2.5rem + (100vw - 47.9375rem) * 2.5 / 16),
      5rem
    ); /* 40px @768, 80px @1023 */
  }
}

@media (max-width: 47.9375rem) {
  .bedding-tech-design {
    height: 27.5rem;
  }
  .bedding-tech-wool__brand-part,
  .bedding-tech-wool__title {
    font-size: 2.5rem; /* 40px */
  }
  .bedding-tech-design__container {
    padding-top: 2rem; /* 32px */
  }
}

@media (max-width: 26.25rem) {
  .bedding-tech-wool__title {
    font-size: clamp(1.429rem, 7.143vw, 1.875rem); /* 30px @420 */
  }
}

.bedding-tech-wool__image {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  width: 72rem; /* 1152px */
  max-width: none;
  height: auto;
  opacity: 0;
  pointer-events: none;
  will-change: transform, opacity;
}

@media (min-width: 48rem) and (max-width: 63.9375rem) {
  .bedding-tech-wool__image {
    width: 45.5625rem; /* 729px */
  }
}

@media (max-width: 47.9375rem) {
  .bedding-tech-wool__image {
    width: 25rem; /* 400px */
  }
}

.bedding-tech-wool__char {
  display: inline-block;
  will-change: transform, opacity;
}

/* ========================================
   bedding-tech-seasonal
   (ANDLAB m5 영감 — EQUIL 톤)
   ======================================== */

.bedding-tech-seasonal {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 7.5rem var(--grid-margin); /* 120px — 다른 섹션과 동일한 상하 여백 */
  background-color: var(--color-brand-light-2);
}

.bedding-tech-seasonal__stage {
  width: 100%;
  display: flex;
  flex-direction: column;
}

.bedding-tech-seasonal__heading {
  align-items: flex-start;
  text-align: left;
  max-width: 46.875rem; /* 750px */
}

.bedding-tech-seasonal__cards {
  position: relative;
  margin-top: 3.125rem; /* 50px */
  display: flex;
  gap: 0.9375rem; /* 15px */
}

.bedding-tech-seasonal__card {
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 33.3333%;
  height: 65vh;
  padding: 1.875rem; /* 30px */
  overflow: hidden;
  background-color: var(--color-white);
}

.bedding-tech-seasonal__copy {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.bedding-tech-seasonal__media {
  position: absolute;
  top: 35%;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
}

.bedding-tech-seasonal__image {
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
}

.bedding-tech-seasonal__title {
  position: relative;
  z-index: 1;
  margin: 0;
  font-family: var(--font-suit);
  font-weight: 600;
  font-size: 1.75rem; /* 28px */
  line-height: 130%;
  letter-spacing: -0.02em;
  color: var(--color-brand-dark);
}

.bedding-tech-seasonal__desc {
  position: relative;
  z-index: 1;
  margin: 0.9375rem 0 0; /* 15px */
  font-family: var(--font-suit);
  font-weight: 400;
  font-size: 0.9375rem; /* 15px */
  line-height: 150%;
  color: var(--color-brand-dark);
}

.bedding-tech-seasonal__desc-mobile {
  display: none;
}

.bedding-tech-seasonal__pagination {
  display: none;
}

.bedding-tech-seasonal__break {
  display: none;
}

@media (max-width: 63.9375rem) {
  .bedding-tech-seasonal {
    height: auto;
    justify-content: flex-start;
    padding: 5rem var(--grid-margin); /* 80px */
    touch-action: pan-y;
  }

  .bedding-tech-seasonal__heading {
    max-width: none;
  }

  .bedding-tech-seasonal__cards {
    display: grid;
    margin-top: 3.125rem; /* 50px */
    gap: 0;
  }

  .bedding-tech-seasonal__card {
    grid-area: 1 / 1;
    width: 100%;
    height: auto;
    padding: 0;
    pointer-events: none;
  }

  .bedding-tech-seasonal__card.is-active {
    pointer-events: auto;
  }

  .bedding-tech-seasonal__copy {
    box-sizing: border-box;
    width: 100%;
    padding: 1.875rem; /* 30px */
  }

  .bedding-tech-seasonal__title {
    font-size: clamp(1.315rem, 2.737vw, 1.75rem); /* 28px */
  }

  .bedding-tech-seasonal__desc {
    margin-top: 1.5rem; /* 24px */
    font-size: clamp(0.844rem, 1.76vw, 1.125rem); /* 18px */
    height: 4.375rem; /* 70px */
  }

  .bedding-tech-seasonal__desc-pc {
    display: none;
  }

  .bedding-tech-seasonal__desc-mobile {
    display: block;
    word-break: keep-all;
    text-wrap: pretty;
  }

  .bedding-tech-seasonal__media {
    position: relative;
    top: auto;
    left: auto;
    z-index: 2;
    width: 100%;
    height: 33.6875rem; /* 539px */
    overflow: hidden;
    opacity: 0;
    transition: opacity 0.6s ease-in-out;
    will-change: opacity;
  }

  .bedding-tech-seasonal__card.is-active .bedding-tech-seasonal__media {
    z-index: 3;
    opacity: 1;
  }

  .bedding-tech-seasonal__pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.9375rem; /* 15px */
    margin-top: 0.875rem; /* 14px */
  }

  .bedding-tech-seasonal__dot {
    width: 0.375rem; /* 6px */
    height: 0.375rem; /* 6px */
    padding: 0;
    border: 0;
    border-radius: 6.25rem;
    background-color: var(--color-brand-light-1);
    cursor: pointer;
  }

  .bedding-tech-seasonal__dot.is-active {
    width: 1.25rem; /* 20px */
    background-color: var(--color-brand-dark);
  }
}

@media (max-width: 47.9375rem) {
  .bedding-tech-seasonal {
    padding-block: 3.75rem; /* 60px */
  }

  .bedding-tech-seasonal__break {
    display: block;
  }

  .bedding-tech-seasonal__copy {
    padding: 1.25rem; /* 20px */
  }

  .bedding-tech-seasonal__title {
    font-size: 1.75rem; /* 28px */
  }

  .bedding-tech-seasonal__desc {
    font-size: clamp(0.75rem, 3.636vw, 1rem); /* 16px */
    height: auto;
  }

  .bedding-tech-seasonal__media {
    height: 17.5rem; /* 280px */
  }

  .bedding-tech-seasonal__cards {
    margin-top: 2.5rem; /* 40px */
  }
}

/* ========================================
   bedding-tech-products
   (레이아웃은 product-compare 공통)
   ======================================== */

.bedding-tech-products__title-mobile {
  display: none;
}

@media (max-width: 47.9375rem) {
  .bedding-tech-products__title-pc {
    display: none;
  }

  .bedding-tech-products__title-mobile {
    display: inline;
  }
}
