/**
 * Renewal — About / System (Figma: MUAH 최종 홈페이지 26.05.22 — 35:49982 PC, 35:53454 Mobile)
 * Scope: body.renewal .sys-r
 */
body.renewal .sys-r {
  font-family: 'Montserrat', var(--muah-font);
  color: #000;
  background: #f9fafb;
  word-break: keep-all;
}

body.renewal .sys-r :where(p, h2, h3, h4, ul, ol, dl, dd) {
  margin: 0;
}

body.renewal .sys-r img {
  display: block;
  max-width: 100%;
}

/* ── Hero ── */
body.renewal .sys-r-hero {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: clamp(109px, 24.1vw, 463px);
  padding: 0 80px;
  background: url("/img/renewal/system/hero.jpg") center / cover no-repeat;
  color: #fff;
  text-align: right;
}

body.renewal .sys-r-hero__tit {
  font-size: 36px;
  font-weight: 600;
  line-height: 34px;
}

body.renewal .sys-r-hero__desc {
  margin-top: 15px;
  font-size: 20px;
  font-weight: 400;
  line-height: 30px;
}

/* ── Section title ── */
body.renewal .sys-r-title {
  font-size: 24px;
  font-weight: 600;
  line-height: 34px;
}

body.renewal .sys-r-title--line {
  padding-top: 13px;
  border-top: 1px solid #000;
  width: 330px;
  max-width: 100%;
  white-space: nowrap;
}

body.renewal .sys-r-sub {
  margin-top: 9px;
  font-size: 14px;
  font-weight: 500;
  line-height: 21px;
}

/* ── Product information ── */
body.renewal .sys-r-product {
  padding: 18px 0 46px;
}

body.renewal .sys-r-product__grid {
  display: grid;
  grid-template-columns: minmax(0, 573px) 360px 101px;
  grid-template-areas:
    "title main thumbs"
    "specs main thumbs"
    "price main thumbs";
  grid-template-rows: auto auto 1fr;
  column-gap: 40px;
  align-items: start;
}

body.renewal .sys-r-product__title {
  grid-area: title;
  padding: 31px 0;
}

body.renewal .sys-r-product__specs {
  grid-area: specs;
  display: flex;
  gap: 70px;
  margin-top: 3px;
}

body.renewal .sys-r-product__price {
  grid-area: price;
  margin-top: 34px;
}

body.renewal .sys-r-product__main {
  grid-area: main;
  align-self: center;
  height: 420px;
  position: relative;
}

body.renewal .sys-r-product__main img {
  position: absolute;
  top: -10px;
  bottom: -10px;
  left: 50%;
  height: calc(100% + 20px);
  width: auto;
  max-width: none;
  transform: translateX(-50%);
}

body.renewal .sys-r-product__thumbs {
  grid-area: thumbs;
  align-self: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  list-style: none;
  padding: 0;
}

body.renewal .sys-r-product__thumbs li {
  display: flex;
  flex-direction: column;
  align-items: center;
}

body.renewal .sys-r-product__thumbs li + li {
  margin-top: 0;
}

body.renewal .sys-r-product__thumbs img {
  width: 101px;
  height: 101px;
  object-fit: cover;
  margin-bottom: -12px;
}

body.renewal .sys-r-product__thumbs span {
  font-size: 11px;
  line-height: 21px;
}

body.renewal .sys-r-spec-col {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 190px;
}

body.renewal .sys-r-spec-group {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

body.renewal .sys-r-spec-label {
  padding: 5px;
  border-radius: 5px;
  background: #ecebeb;
  font-size: 14px;
  line-height: 17px;
}

body.renewal .sys-r-spec-items {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

body.renewal .sys-r-spec-items dt {
  font-size: 11px;
  line-height: 21px;
  color: #5b5b5b;
}

body.renewal .sys-r-spec-items dd {
  margin: 0;
  white-space: nowrap;
  font-size: 14px;
  font-weight: 600;
  line-height: 21px;
}

body.renewal .sys-r-spec-items dd small {
  display: block;
  font-size: 9px;
  font-weight: 400;
  line-height: 15px;
}

body.renewal .sys-r-spec-items dd small.lg {
  font-size: 11px;
  line-height: 21px;
}

body.renewal .sys-r-price-label {
  font-size: 14px;
  line-height: 17px;
}

body.renewal .sys-r-price-desc {
  margin-top: 5px;
  font-size: 14px;
  font-weight: 600;
  line-height: 21px;
  max-width: 420px;
}

/* ── Specifications ── */
body.renewal .sys-r-spec {
  padding: 113px 0 0;
  background: linear-gradient(to bottom, #d9d9d9 0, rgba(217, 217, 217, 0) 742px) no-repeat;
}

body.renewal .sys-r-spec__stage {
  position: relative;
  width: 1122px;
  height: 694px;
  margin-top: -34px;
}

body.renewal .sys-r-spec__photo {
  position: absolute;
  top: 26px;
  left: 482px;
  width: 636px;
  height: 628px;
  object-fit: cover;
}

body.renewal .sys-r-spec__line {
  position: absolute;
  max-width: none;
}

body.renewal .sys-r-spec__line--1 { left: 162px; top: 83px; width: 813px; height: 127px; }
body.renewal .sys-r-spec__line--2 { left: 96px; top: 197px; width: 623px; height: 60px; }
body.renewal .sys-r-spec__line--3 { left: 132px; top: 333px; width: 491px; height: 39px; }
body.renewal .sys-r-spec__line--4 { left: 108px; top: 449px; width: 596px; height: 11px; }
body.renewal .sys-r-spec__line--5 { left: 226px; top: 519px; width: 627px; height: 47px; transform: scaleY(-1); }
body.renewal .sys-r-spec__line--6 { left: 166px; top: 569px; width: 672px; height: 111px; }

body.renewal .sys-r-spec__list {
  position: absolute;
  top: 72px;
  left: 0;
  display: flex;
  flex-direction: column;
  gap: 68px;
  list-style: none;
  padding: 0;
  counter-reset: sysspec;
}

body.renewal .sys-r-spec__list li {
  width: 462px;
  font-size: 14px;
  line-height: 21px;
}

body.renewal .sys-r-spec__list strong {
  display: block;
  margin-bottom: 5px;
  font-weight: 600;
}

body.renewal .sys-r-spec__mobile {
  display: none;
}

body.renewal .sys-r-spec__note {
  margin-top: 25px;
  text-align: right;
  font-size: 14px;
  line-height: 21px;
}

/* ── Main device / IoT ── */
body.renewal .sys-r-device {
  padding: 122px 0 0;
}

body.renewal .sys-r-device + .sys-r-device {
  padding-top: 107px;
}

body.renewal .sys-r-device__list {
  display: flex;
  justify-content: space-between;
  max-width: 1057px;
  margin-top: 23px;
  list-style: none;
  padding: 0;
}

body.renewal .sys-r-device__item {
  display: flex;
  align-items: center;
  gap: 12px;
}

body.renewal .sys-r-device__item--tab {
  align-items: flex-end;
  gap: 25px;
}

body.renewal .sys-r-device__img--quest { width: 261px; height: 287px; object-fit: cover; }
body.renewal .sys-r-device__img--tab { width: 232px; height: 171px; object-fit: cover; }

body.renewal .sys-r-device__txt {
  display: flex;
  flex-direction: column;
  gap: 16px;
  font-size: 14px;
}

body.renewal .sys-r-device__name {
  font-weight: 600;
  line-height: 21px;
}

body.renewal .sys-r-device__specs {
  list-style: none;
  padding: 0;
  line-height: 24px;
  white-space: nowrap;
}

body.renewal .sys-r-device__specs li::before {
  content: "• ";
}

body.renewal .sys-r-iot__list {
  display: flex;
  align-items: flex-end;
  gap: 125px;
  margin-top: 36px;
  list-style: none;
  padding: 0;
}

body.renewal .sys-r-iot__item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

body.renewal .sys-r-iot__item--diffuser {
  gap: 24px;
}

body.renewal .sys-r-iot__img {
  width: 260px;
  height: 232px;
  border-radius: 10px;
  object-fit: cover;
  flex-shrink: 0;
}

body.renewal .sys-r-iot__item--diffuser .sys-r-iot__img {
  width: 256px;
  height: 233px;
}

body.renewal .sys-r-iot__txt {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 207px;
}

body.renewal .sys-r-iot__item--diffuser .sys-r-iot__txt {
  width: 146px;
}

body.renewal .sys-r-iot__name {
  font-size: 14px;
  font-weight: 600;
  line-height: 21px;
}

body.renewal .sys-r-iot__desc {
  font-size: 11px;
  line-height: 21px;
}

/* ── Brand customization ── */
body.renewal .sys-r-brand {
  padding: 98px 0 98px;
}

body.renewal .sys-r-brand__wrap {
  display: flex;
  justify-content: space-between;
  gap: 49px;
  max-width: 1120px;
}

body.renewal .sys-r-brand__txt {
  display: flex;
  flex-direction: column;
  width: 500px;
  flex-shrink: 0;
  padding-top: 50px;
}

body.renewal .sys-r-brand__head {
  margin-top: 64px;
  font-size: 24px;
  font-weight: 600;
  line-height: 34px;
}

body.renewal .sys-r-brand__desc {
  margin-top: 9px;
  max-width: 467px;
  font-size: 14px;
  line-height: 21px;
}

body.renewal .sys-r-quote-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  padding: 10px;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 0 4.9px 0 rgba(0, 0, 0, 0.54);
  color: #000;
  font-size: 24px;
  font-weight: 600;
  line-height: 34px;
  white-space: nowrap;
}

body.renewal .sys-r-brand__txt .sys-r-quote-btn {
  margin-top: auto;
}

body.renewal .sys-r-brand__img {
  width: 570px;
  height: 394px;
  margin-top: 21px;
  border-radius: 9px;
  object-fit: cover;
  min-width: 0;
}

body.renewal .sys-r-mo-cta {
  display: none;
}

/* ── Bottom quote banner ── */
body.renewal .sys-r-banner {
  position: relative;
  z-index: 1;
  min-height: 271px;
  margin: 0 2px -18px;
  padding: 30px 80px 48px;
  border-radius: 15px;
  background: url("/img/renewal/system/banner-quote.jpg") 71% center / cover no-repeat;
  filter: drop-shadow(-8px -20px 5.95px rgba(0, 0, 0, 0.25));
  color: #fff;
  text-align: right;
}

body.renewal .sys-r-banner__tit {
  font-size: 32px;
  font-weight: 600;
  line-height: 42px;
}

body.renewal .sys-r-banner__desc {
  margin-top: 7px;
  font-size: 14px;
  line-height: 24px;
}

body.renewal .sys-r-banner__btn {
  display: inline-block;
  margin-top: 23px;
  padding: 0 12px;
  border-radius: 15px;
  background: #fff;
  color: #000;
  font-size: 18px;
  font-weight: 600;
  line-height: 34px;
}

/* ── < 1280: spec stage → numbered list ── */
@media (max-width: 1279px) {
  body.renewal .sys-r-spec__stage {
    display: none;
  }

  body.renewal .sys-r-spec__mobile {
    display: flex;
    align-items: flex-start;
    gap: 48px;
    margin-top: 36px;
  }

  body.renewal .sys-r-spec__figure {
    position: relative;
    flex-shrink: 0;
    width: 304px;
    height: 275px;
  }

  body.renewal .sys-r-spec__figure .sys-r-spec__photo {
    top: 0;
    left: 0;
    width: 303px;
    height: 273px;
  }

  body.renewal .sys-r-spec__mlines-a {
    position: absolute;
    left: 30.5px;
    top: 32px;
    width: 205px;
    height: 238px;
    max-width: none;
  }

  body.renewal .sys-r-spec__mlines-b {
    position: absolute;
    left: 73px;
    top: 218px;
    width: 100px;
    height: 48px;
    max-width: none;
    transform: scaleY(-1);
  }

  body.renewal .sys-r-spec__num {
    position: absolute;
    width: 18px;
    height: 18px;
    border-radius: 4px;
    background: #e6e6e6;
    font-size: 10px;
    line-height: 18px;
    text-align: center;
  }

  body.renewal .sys-r-spec__mlist {
    display: flex;
    flex-direction: column;
    gap: 19px;
    list-style: none;
    padding: 0;
    font-size: 14px;
    line-height: 21px;
  }

  body.renewal .sys-r-spec__mlist li {
    position: relative;
    padding-left: 27px;
  }

  body.renewal .sys-r-spec__mlist li .sys-r-spec__num {
    left: 0;
    top: 1px;
  }

  body.renewal .sys-r-spec__mlist strong {
    display: block;
    margin-bottom: 3px;
    font-weight: 600;
  }
}

/* ── Tablet ── */
@media (max-width: 1199px) {
  body.renewal .sys-r-hero {
    padding: 0 40px;
  }

  body.renewal .sys-r-product__grid {
    grid-template-columns: minmax(0, 1fr) 300px 90px;
    column-gap: 24px;
  }

  body.renewal .sys-r-product__specs {
    gap: 32px;
  }

  body.renewal .sys-r-product__main {
    height: 340px;
  }

  body.renewal .sys-r-product__thumbs img {
    width: 90px;
    height: 90px;
  }

  body.renewal .sys-r-device__list,
  body.renewal .sys-r-iot__list {
    flex-wrap: wrap;
    gap: 40px;
  }

  body.renewal .sys-r-brand__txt {
    width: 42%;
    flex-shrink: 1;
  }

  body.renewal .sys-r-brand__img {
    flex: 1;
    width: auto;
    height: auto;
    aspect-ratio: 570 / 394;
  }
}

/* ── Mobile (Figma 375) ── */
@media (max-width: 860px) {
  body.renewal .sys-r-hero {
    padding: 5px 10px;
  }

  body.renewal .sys-r-hero__tit {
    font-size: 14px;
    line-height: 20px;
  }

  body.renewal .sys-r-hero__desc {
    margin-top: 5px;
    font-size: 12px;
    line-height: 15px;
  }

  body.renewal .sys-r .inner {
    padding: 0 27px;
  }

  body.renewal .sys-r-title {
    font-size: 16px;
    line-height: 20px;
  }

  body.renewal .sys-r-title,
  body.renewal .sys-r-title--line {
    width: 122px;
    padding-top: 13px;
    border-top: 1px solid #000;
    white-space: nowrap;
  }

  body.renewal .sys-r-sub {
    font-size: 10px;
    font-weight: 500;
    line-height: 18px;
    max-width: 320px;
  }

  body.renewal .sys-r-device .sys-r-sub--pc {
    display: none;
  }

  /* product */
  body.renewal .sys-r-product {
    padding: 32px 0 0;
  }

  body.renewal .sys-r-product__grid {
    grid-template-columns: minmax(0, 1fr) 120px;
    grid-template-areas:
      "title title"
      "media media"
      "specs price";
    grid-template-rows: auto;
    column-gap: 14px;
  }

  body.renewal .sys-r-product__title {
    padding: 0;
  }

  body.renewal .sys-r-product__media {
    grid-area: media;
  }

  body.renewal .sys-r-product__main,
  body.renewal .sys-r-product__thumbs {
    grid-area: media;
  }

  body.renewal .sys-r-product__main {
    width: 232px;
    height: 231px;
    margin: -20px 0 0 -29px;
    align-self: start;
  }

  body.renewal .sys-r-product__main img {
    position: static;
    width: 232px;
    height: 231px;
    transform: none;
    object-fit: cover;
  }

  body.renewal .sys-r-product__thumbs {
    justify-self: start;
    align-self: start;
    margin: 10px 0 0 190px;
    gap: 0;
  }

  body.renewal .sys-r-product__thumbs img {
    width: 64px;
    height: 64px;
    margin-bottom: -6px;
  }

  body.renewal .sys-r-product__thumbs span {
    display: none;
  }

  body.renewal .sys-r-product__specs {
    flex-direction: column;
    gap: 16px;
    margin-top: -14px;
  }

  body.renewal .sys-r-spec-col {
    gap: 16px;
    width: 100%;
    max-width: 191px;
  }

  body.renewal .sys-r-spec-label {
    font-size: 10px;
    line-height: 17px;
    padding: 1px 5px;
  }

  body.renewal .sys-r-spec-items {
    gap: 6px;
  }

  body.renewal .sys-r-spec-items dt,
  body.renewal .sys-r-spec-items dd {
    font-size: 10px;
    line-height: 15px;
  }

  body.renewal .sys-r-spec-items dd small {
    font-size: 8px;
  }

  body.renewal .sys-r-spec-items dd small.lg {
    font-size: 10px;
    font-weight: 400;
    line-height: 16px;
  }

  body.renewal .sys-r-product__price {
    margin-top: -14px;
  }

  body.renewal .sys-r-price-label {
    font-size: 12px;
  }

  body.renewal .sys-r-price-desc {
    font-size: 10px;
    line-height: 18px;
  }

  /* specifications */
  body.renewal .sys-r-spec {
    padding-top: 100px;
    background: none;
  }

  body.renewal .sys-r-spec__mobile {
    flex-direction: column;
    align-items: center;
    gap: 32px;
    margin-top: -5px;
  }

  body.renewal .sys-r-spec__mlist {
    align-self: stretch;
    padding: 0 7px 0 13px;
    font-size: 10px;
    line-height: 18px;
  }

  body.renewal .sys-r-spec__note {
    margin-top: 16px;
    font-size: 10px;
    line-height: 15px;
  }

  /* devices */
  body.renewal .sys-r-device {
    padding-top: 100px;
  }

  body.renewal .sys-r-device + .sys-r-device {
    padding-top: 72px;
  }

  body.renewal .sys-r-device__list {
    flex-direction: column;
    gap: 46px;
    margin-top: 7px;
  }

  body.renewal .sys-r-device__item,
  body.renewal .sys-r-device__item--tab {
    align-items: flex-start;
    gap: 20px;
  }

  body.renewal .sys-r-device__item--tab {
    gap: 11px;
    margin-left: -9px;
  }

  body.renewal .sys-r-device__img--quest { width: 100px; height: 110px; margin-top: 4px; }
  body.renewal .sys-r-device__img--tab { width: 118px; height: 87px; margin-top: 10px; }

  body.renewal .sys-r-device__txt {
    gap: 3px;
  }

  body.renewal .sys-r-device__name {
    font-size: 12px;
  }

  body.renewal .sys-r-device__specs {
    font-size: 10px;
    line-height: 15px;
  }

  body.renewal .sys-r-iot__list {
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    margin-top: 13px;
  }

  body.renewal .sys-r-iot__item,
  body.renewal .sys-r-iot__item--diffuser {
    align-items: flex-end;
    gap: 10px;
  }

  body.renewal .sys-r-iot__img,
  body.renewal .sys-r-iot__item--diffuser .sys-r-iot__img {
    width: 108px;
    height: 97px;
  }

  body.renewal .sys-r-iot__txt {
    gap: 0;
    width: 199px;
  }

  body.renewal .sys-r-iot__name {
    font-size: 12px;
    line-height: 18px;
  }

  body.renewal .sys-r-iot__desc {
    font-size: 10px;
    line-height: 15px;
  }

  /* brand */
  body.renewal .sys-r-brand {
    padding: 126px 0 31px;
  }

  body.renewal .sys-r-brand__wrap {
    flex-direction: column;
    gap: 33px;
  }

  body.renewal .sys-r-brand__txt {
    width: 100%;
    padding-top: 0;
  }

  body.renewal .sys-r-brand__head {
    margin-top: 7px;
    font-size: 12px;
  }

  body.renewal .sys-r-brand__desc {
    margin-top: 0;
    font-size: 10px;
    line-height: 15px;
  }

  body.renewal .sys-r-brand__txt .sys-r-quote-btn {
    display: none;
  }

  body.renewal .sys-r-brand__img {
    width: 100%;
    max-width: 324px;
    margin-top: 0;
    border-radius: 5px;
  }

  body.renewal .sys-r-mo-cta {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom: 32px;
  }

  body.renewal .sys-r-mo-cta .sys-r-quote-btn {
    align-self: center;
    padding: 0 5px;
    font-size: 14px;
    line-height: 28px;
  }

  body.renewal .sys-r-mo-cta p {
    margin-top: 3px;
    font-size: 10px;
    line-height: 21px;
    color: #000;
  }

  body.renewal .sys-r-banner {
    display: none;
  }
}
