:root {
  --base-font-family: "Pretendard", sans-serif;
  --base-text-color: #222222;
  --content-max-width: 172.8rem;
  --content-inner-padding: 11.6rem 2rem;
  --primary-color: #D44331;
  --white-color: #ffffff;
  --gray-color: #F8F8F8;
  --gray-color2: #E0E0E0;
  --gray-color3: #666666;
}

@media screen and (max-width: 768px) {
  :root {
    --content-inner-padding: 4rem 2rem;
  }
}
@font-face {
  font-family: "Pretendard";
  src: url(/assets/fonts/woff2/Pretendard-Thin.woff2) format("woff2") url(/assets/fonts/woff/Pretendard-Thin.woff) format("woff");
  font-style: normal;
  font-weight: 100;
}
@font-face {
  font-family: "Pretendard";
  src: url(/assets/fonts/woff2/Pretendard-ExtraLight.woff2) format("woff2") url(/assets/fonts/woff/Pretendard-ExtraLight.woff) format("woff");
  font-style: normal;
  font-weight: 200;
}
@font-face {
  font-family: "Pretendard";
  src: url(/assets/fonts/woff2/Pretendard-Light.woff2) format("woff2") url(/assets/fonts/woff/Pretendard-Light.woff) format("woff");
  font-style: normal;
  font-weight: 300;
}
@font-face {
  font-family: "Pretendard";
  src: url(/assets/fonts/woff2/Pretendard-Regular.woff2) format("woff2") url(/assets/fonts/woff/Pretendard-Regular.woff) format("woff");
  font-style: normal;
  font-weight: 400;
}
@font-face {
  font-family: "Pretendard";
  src: url(/assets/fonts/woff2/Pretendard-Medium.woff2) format("woff2") url(/assets/fonts/woff/Pretendard-Medium.woff) format("woff");
  font-style: normal;
  font-weight: 500;
}
@font-face {
  font-family: "Pretendard";
  src: url(/assets/fonts/woff2/Pretendard-SemiBold.woff2) format("woff2") url(/assets/fonts/woff/Pretendard-SemiBold.woff) format("woff");
  font-style: normal;
  font-weight: 600;
}
@font-face {
  font-family: "Pretendard";
  src: url(/assets/fonts/woff2/Pretendard-Bold.woff2) format("woff2") url(/assets/fonts/woff/Pretendard-Bold.woff) format("woff");
  font-style: normal;
  font-weight: 700;
}
@font-face {
  font-family: "Pretendard";
  src: url(/assets/fonts/woff2/Pretendard-ExtraBold.woff2) format("woff2") url(/assets/fonts/woff/Pretendard-ExtraBold.woff) format("woff");
  font-style: normal;
  font-weight: 800;
}
@font-face {
  font-family: "Pretendard";
  src: url(/assets/fonts/woff2/Pretendard-Black.woff2) format("woff") url(/assets/fonts/woff/Pretendard-Black.woff) format("woff");
  font-style: normal;
  font-weight: 900;
}
/* Reset Asll Element */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i, hr,
dl, dt, dd, ol, ul, li,
form, fieldset, legend, label, button, input,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
main, menu, nav, footer, header, hgroup, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: inherit;
  font-family: inherit;
  background: transparent;
}

main, header, footer, section, article, aside, nav, hgroup, details, menu, figure, figcaption {
  display: block;
}

div {
  box-sizing: border-box;
}

em, address, i {
  font-style: normal;
}

a {
  text-decoration: none;
  color: var(--base-text-color);
}

img {
  width: 100%;
  vertical-align: top;
}

/* Form */
legend {
  position: absolute;
  width: 0.1rem;
  height: 0.1rem;
  margin: -0.1rem;
  padding: 0;
  border: 0;
  overflow: hidden;
  white-space: nowrap;
  clip: rect(0.1rem, 0.1rem, 0.1rem, 0.1rem);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
}

select, textarea, input, label {
  vertical-align: middle;
}

select, textarea, input {
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
}

input[type=search] {
  -webkit-appearance: textfield;
     -moz-appearance: textfield;
          appearance: textfield;
}

input[type=checkbox], input[type=radio] {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

button {
  cursor: pointer;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #222222;
}

select::-ms-expand {
  display: none;
}

/* Table */
table {
  border-collapse: collapse;
}

caption {
  position: absolute;
  width: 0.1rem;
  height: 0.1rem;
  margin: -0.1rem;
  padding: 0;
  border: 0;
  overflow: hidden;
  white-space: nowrap;
  clip: rect(0.1rem, 0.1rem, 0.1rem, 0.1rem);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  position: initial;
}

/* List */
ul, ol {
  list-style: none;
}

li {
  list-style: none;
}

:root {
  font-size: 0.625rem;
  color: var(--base-text-color);
  word-break: keep-all;
  word-wrap: break-word;
}

html, body {
  font-family: var(--base-font-family);
  font-size: 1.6rem;
  font-weight: 400;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -o-text-size-adjust: none;
  text-size-adjust: none;
  width: 100%;
  height: 100%;
  line-height: 1.4;
  color: var(--base-text-color);
  scroll-behavior: smooth;
  -webkit-tap-highlight-color: transparent;
  overscroll-behavior: none;
}

#wrap {
  display: flex;
  flex-flow: column;
}

#contents {
  flex: 1;
  overflow: hidden;
  height: 100%;
}
#contents > section:first-child .inner {
  padding-top: 12.8rem;
}

section {
  position: relative;
}

.inner {
  max-width: var(--content-max-width);
  padding: var(--content-inner-padding);
  width: 100%;
  height: 100%;
  min-height: 100vh;
  margin: 0 auto;
}
.inner.auto {
  min-height: auto;
}

.contents-swiper {
  width: 100%;
  height: 100%;
}
.contents-swiper > .swiper-wrapper {
  flex-direction: column;
}
.contents-swiper > .swiper-wrapper > .swiper-slide {
  height: 100%;
}

.heading {
  font-family: var(--base-font-family);
  font-size: 6.4rem;
  font-weight: 700;
  display: block;
  width: 100%;
}
.heading span {
  display: inline-block;
}
.heading + .desc {
  margin-top: 4rem;
  font-weight: 600;
}
.heading + .desc span:not(:first-child) {
  margin-top: 1.6rem;
}

.title {
  font-family: var(--base-font-family);
  font-size: 4.8rem;
  font-weight: 700;
  display: block;
  width: 100%;
}
.title.medium {
  font-size: 3.6rem;
}
.title + .desc {
  font-weight: 600;
  color: var(--gray-color3);
}

.desc {
  font-size: 1.8rem;
  font-weight: 400;
  display: block;
  width: 100%;
}
.desc.large {
  font-size: 2.4rem;
}
.desc.medium {
  font-size: 1.6rem;
}
.desc span {
  display: block;
}
.desc span:not(:first-child) {
  margin-top: 0.8rem;
}

.subject {
  font-size: 2.4rem;
  font-weight: 600;
  color: var(--gray-color3);
}

.sr-only {
  position: absolute;
  width: 0.1rem;
  height: 0.1rem;
  margin: -0.1rem;
  padding: 0;
  border: 0;
  overflow: hidden;
  white-space: nowrap;
  clip: rect(0.1rem, 0.1rem, 0.1rem, 0.1rem);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
}

.l-block, .m-block, .s-block {
  display: block;
}

.xs-block {
  display: none;
}

.partner-wrap {
  display: flex;
  align-items: center;
  flex-flow: column;
}
.partner-wrap ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8rem;
  height: 8rem;
  width: -moz-max-content;
  width: max-content;
  background-color: var(--white-color);
  will-change: transform;
}
.partner-wrap ul:not(:first-child) {
  margin-top: 3.4rem;
}
.partner-wrap ul li {
  display: flex;
  justify-content: center;
  align-items: center;
}
.partner-wrap [data-img-name=heungkuk] {
  width: 18.5rem;
}
.partner-wrap [data-img-name=hana] {
  width: 18rem;
}
.partner-wrap [data-img-name=nps] {
  width: 21rem;
}
.partner-wrap [data-img-name=hanaone] {
  width: 17.9rem;
}
.partner-wrap [data-img-name=nara] {
  width: 21.2rem;
}
.partner-wrap [data-img-name=aia] {
  width: 26.5rem;
}
.partner-wrap [data-img-name=kblife] {
  width: 25.8rem;
}
.partner-wrap [data-img-name=dbinsure] {
  width: 17.1rem;
}
.partner-wrap [data-img-name=pufon] {
  width: 19rem;
}
.partner-wrap [data-img-name=future] {
  width: 21.5rem;
}
.partner-wrap [data-img-name=daeshin] {
  width: 19.4rem;
}
.partner-wrap [data-img-name=shinhan] {
  width: 18.5rem;
}
.partner-wrap [data-img-name=dbinsure2] {
  width: 12.6rem;
}
.partner-wrap [data-img-name=nh] {
  width: 21.9rem;
}
.partner-wrap [data-img-name=lina] {
  width: 19.8rem;
}
.partner-wrap [data-img-name=lgu] {
  width: 17.7rem;
}
.partner-wrap [data-img-name=hanaone2] {
  width: 24.4rem;
}
.partner-wrap [data-img-name=skgas] {
  width: 9.9rem;
}
.partner-wrap [data-img-name=tworld] {
  width: 4.5rem;
}
.partner-wrap [data-img-name=lg] {
  width: 18.2rem;
}
.partner-wrap [data-img-name=bc] {
  width: 16.7rem;
}
.partner-wrap [data-img-name=sgi] {
  width: 20.1rem;
}
.partner-wrap [data-img-name=krx] {
  width: 22.4rem;
}
.partner-wrap [data-img-name=kfi] {
  width: 20.3rem;
}
.partner-wrap [data-img-name=hanwhacapital] {
  width: 18.8rem;
}
.partner-wrap [data-img-name=uhanata] {
  width: 23.6rem;
}
.partner-wrap [data-img-name=sktelecom] {
  width: 12.4rem;
}

.tab-links ul {
  display: flex;
}
.tab-links ul li {
  flex: 1;
}
.tab-links ul li:not(:first-child) a {
  border-left-width: 0;
}
.tab-links ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 7.2rem;
  border: 0.2rem solid #E3E3E5;
  font-weight: 700;
  background-color: var(--gray-color);
}
.tab-links ul li.active a {
  border-top-color: var(--primary-color);
  border-bottom-width: 0;
  background-color: var(--white-color);
}

.scroll-down {
  position: absolute;
  bottom: 0;
  left: 50%;
  z-index: 100;
  transform: translateX(-50%);
}
.scroll-down .progress {
  position: relative;
  display: block;
  width: 0.2rem;
  height: 5.6rem;
  margin: 0 auto;
  background-color: rgba(255, 255, 255, 0.5);
}
.scroll-down .progress .bar {
  position: absolute;
  bottom: 0;
  display: block;
  width: 100%;
  height: 56%;
  background-color: var(--white-color);
}

.mobile-menu {
  max-width: 100%;
  max-height: 100%;
}
.mobile-menu .modal-dialog {
  width: 100vw;
  max-width: 100%;
  height: 100dvh;
  max-height: 100dvh;
}
.mobile-menu .modal-content {
  background: url("/assets/images/icons/icon_logo_slash.svg") 0 100%/15.5rem 21rem no-repeat;
  max-height: calc(100dvh - 4.8rem);
  padding: 0 2rem;
  margin-top: 4.8rem;
}
.mobile-menu .modal-content .logo {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  position: absolute;
  top: 1.2rem;
  left: 2rem;
  width: 7.7rem;
  height: 2.4rem;
}
.mobile-menu .modal-content .logo::before {
  background: url("/assets/images/icons/logo_b_redsy.svg") 50% 50%/cover no-repeat;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
.mobile-menu .modal-content ul {
  display: flex;
  align-items: flex-end;
  flex-flow: column;
  margin-top: 6.4rem;
}
.mobile-menu .modal-content ul li:not(:first-child) {
  margin-top: 2.4rem;
}
.mobile-menu .modal-content ul li a {
  display: block;
  font-size: 4rem;
  font-weight: 700;
}
.mobile-menu .modal-actions {
  padding: 0 !important;
}
.mobile-menu .modal-actions .modal-close {
  top: 0.8rem;
  right: 2rem;
  background-color: transparent;
}

@media screen and (max-width: 1024px) {
  .l-block {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  #wrap {
    height: auto;
  }
  #contents > section:first-child .inner {
    padding-top: 6.4rem;
  }
  .heading {
    font-size: 3.2rem;
  }
  .heading + .desc {
    margin-top: 1.6rem;
  }
  .title {
    font-size: 2.4rem;
  }
  .title.medium {
    font-size: 2.2rem;
  }
  .desc {
    font-size: 1.4rem;
  }
  .desc.large {
    font-size: 2rem;
  }
  .desc.medium {
    font-size: 1.6rem;
  }
  .subject {
    font-size: 1.8rem;
  }
  .m-block {
    display: none;
  }
  .partner-wrap ul {
    height: 6.4rem;
  }
  .partner-wrap ul:not(:first-child) {
    margin-top: 2.4rem;
  }
  .partner-wrap [data-img-name=heungkuk] {
    width: 12.3rem;
  }
  .partner-wrap [data-img-name=hana] {
    width: 12rem;
  }
  .partner-wrap [data-img-name=nps] {
    width: 14.8rem;
  }
  .partner-wrap [data-img-name=hanaone] {
    width: 12rem;
  }
  .partner-wrap [data-img-name=nara] {
    width: 13.6rem;
  }
  .partner-wrap [data-img-name=aia] {
    width: 22.1rem;
  }
  .partner-wrap [data-img-name=kblife] {
    width: 15rem;
  }
  .partner-wrap [data-img-name=dbinsure] {
    width: 11.4rem;
  }
  .partner-wrap [data-img-name=pufon] {
    width: 17.2rem;
  }
  .partner-wrap [data-img-name=future] {
    width: 10.7rem;
  }
  .partner-wrap [data-img-name=daeshin] {
    width: 14.6rem;
  }
  .partner-wrap [data-img-name=shinhan] {
    width: 10.8rem;
  }
  .partner-wrap [data-img-name=dbinsure2] {
    width: 8.4rem;
  }
  .partner-wrap [data-img-name=nh] {
    width: 16.4rem;
  }
  .partner-wrap [data-img-name=lina] {
    width: 13.2rem;
  }
  .partner-wrap [data-img-name=lgu] {
    width: 11.8rem;
  }
  .partner-wrap [data-img-name=hanaone2] {
    width: 16.2rem;
  }
  .partner-wrap [data-img-name=skgas] {
    width: 6.3rem;
  }
  .partner-wrap [data-img-name=tworld] {
    width: 3rem;
  }
  .partner-wrap [data-img-name=lg] {
    width: 12.1rem;
  }
  .partner-wrap [data-img-name=bc] {
    width: 11.4rem;
  }
  .partner-wrap [data-img-name=sgi] {
    width: 16rem;
  }
  .partner-wrap [data-img-name=krx] {
    width: 17.9rem;
  }
  .partner-wrap [data-img-name=kfi] {
    width: 16.2rem;
  }
  .partner-wrap [data-img-name=hanwhacapital] {
    width: 14.1rem;
  }
  .partner-wrap [data-img-name=uhanata] {
    width: 18.8rem;
  }
  .partner-wrap [data-img-name=sktelecom] {
    width: 9.3rem;
  }
}
@media screen and (max-width: 440px) {
  .s-block {
    display: none;
  }
  .xs-block {
    display: block;
  }
}
.skip-link {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 10000;
  background-color: var(--white-color);
}
.skip-link a:not(:focus) {
  position: absolute;
  width: 0.1rem;
  height: 0.1rem;
  margin: -0.1rem;
  padding: 0;
  border: 0;
  overflow: hidden;
  white-space: nowrap;
  clip: rect(0.1rem, 0.1rem, 0.1rem, 0.1rem);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
}
.skip-link a:focus {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 3rem;
  margin: 0.7rem;
  color: var(--white-color);
  background-color: #000;
}

header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1000;
  height: 6.4rem;
  color: var(--white-color);
}
header.bg-white {
  color: var(--base-text-color);
}
header.bg-white .logo::before {
  background-image: url("/assets/images/icons/logo_b_redsy.svg");
}
header.bg-white .menu::before {
  background-color: var(--base-text-color);
}
header .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: auto;
  padding: 0 2rem;
}
header .logo {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: block;
  width: 10.1rem;
  height: 3.2rem;
}
header .logo::before {
  background: url("/assets/images/icons/logo_redsy.svg") 50% 50%/cover no-repeat;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
header nav ul {
  display: flex;
  align-items: center;
  gap: 5.6rem;
}
header nav ul a {
  color: inherit;
  font-weight: 600;
}
header .menu {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: none;
  width: 3.2rem;
  height: 3.2rem;
}
header .menu::before {
  background-color: var(--white-color);
  -webkit-mask-image: url("/assets/images/icons/icon_menu.svg");
          mask-image: url("/assets/images/icons/icon_menu.svg");
  -webkit-mask-position: 50% 50%;
          mask-position: 50% 50%;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 768px) {
  header {
    height: 4.8rem;
  }
  header .logo {
    width: 7.6rem;
    height: 2.4rem;
  }
  header nav {
    display: none;
  }
  header .menu {
    display: block;
  }
}
.footer {
  height: 31rem !important;
  min-height: auto !important;
  padding-top: 2.4rem;
  text-align: left !important;
  color: var(--white-color);
  background-color: var(--base-text-color);
}
.footer .inner {
  min-height: auto;
  padding: 0 2rem;
}
.footer .row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 2.4rem;
}
.footer .row:nth-of-type(2) {
  margin-top: 6.6rem;
}
.footer .row:nth-of-type(3) {
  margin-top: 3.6rem;
}
.footer .logo {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: block;
  width: 7.7rem;
  height: 2.4rem;
}
.footer .logo::before {
  background: url("/assets/images/icons/logo_redsy.svg") 50% 50%/cover no-repeat;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
.footer nav ul {
  display: flex;
  align-items: center;
  gap: 6.4rem;
}
.footer nav ul a {
  font-size: 1.4rem;
  font-weight: 600;
  color: inherit;
}
.footer address {
  display: flex;
  flex-flow: column;
  gap: 0.9rem;
}
.footer address + .contact {
  display: none;
}
.footer address .en {
  font-size: 1.4rem;
}
.footer .line {
  padding-top: 2.9rem;
  border-top: 0.1rem solid var(--white-color);
}
.footer .contact {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5.6rem;
}
.footer .contact a {
  color: inherit;
}

@media screen and (max-width: 768px) {
  .footer {
    height: auto !important;
  }
  .footer .inner {
    padding: 4rem 2rem;
  }
  .footer .row {
    flex-flow: column;
    align-items: flex-start;
  }
  .footer .row:nth-of-type(1) {
    margin-top: 0;
  }
  .footer .row:nth-of-type(2) {
    margin-top: 3.2rem;
  }
  .footer .row:nth-of-type(3) {
    margin-top: 2.4rem;
  }
  .footer nav ul {
    gap: 1.2rem;
  }
  .footer address + .contact {
    display: flex;
    gap: 0.8rem;
    margin-top: -0.8rem;
    font-size: 1.2rem;
  }
  .footer address .ko {
    font-size: 1.4rem;
  }
  .footer address .en {
    font-size: 1.2rem;
  }
  .footer .line {
    padding-top: 2.4rem;
  }
  .footer .copy {
    font-size: 1.2rem;
  }
  .footer .contact {
    display: none;
  }
}
.btn-wrap {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.8rem;
  width: 100%;
  margin-top: 6.4rem;
}

.btn {
  border-radius: 3.6rem;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 130%;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  padding: 1.4rem 2.3rem;
  border: 0.1rem solid var(--white-color);
  box-sizing: border-box;
  background-color: rgba(255, 255, 255, 0.2);
  color: var(--white-color);
  -webkit-backdrop-filter: blur(0.4rem);
          backdrop-filter: blur(0.4rem);
}
.btn.more {
  padding: 1.6rem 2.3rem;
  font-size: 1.6rem;
  font-weight: 600;
}
.btn.more::after {
  background-color: var(--white-color);
  -webkit-mask-image: url("/assets/images/icons/icon_plus.svg");
          mask-image: url("/assets/images/icons/icon_plus.svg");
  -webkit-mask-position: 50% 50%;
          mask-position: 50% 50%;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  content: "";
  width: 1.6rem;
  height: 1.6rem;
}
.btn.arrow {
  padding: 1.6rem 2.3rem;
  font-size: 1.6rem;
  font-weight: 600;
}
.btn.arrow::after {
  background-color: var(--white-color);
  -webkit-mask-image: url("/assets/images/icons/icon_arrow.svg");
          mask-image: url("/assets/images/icons/icon_arrow.svg");
  -webkit-mask-position: 50% 50%;
          mask-position: 50% 50%;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.large {
  min-width: 24rem;
  padding: 1.7rem 2.3rem;
  font-size: 1.6rem;
}
.btn.primary {
  background-color: var(--primary-color);
  color: var(--white-color);
}
.btn.white {
  background-color: var(--white-color);
  color: var(--base-text-color);
}
.btn.black {
  background-color: var(--base-text-color);
  color: var(--white-color);
}

@media screen and (max-width: 768px) {
  .btn-wrap {
    margin-top: 3.2rem;
  }
  .btn-wrap.full .btn {
    flex: 1 1 20rem;
  }
  .btn-wrap.full .btn.large {
    flex: 1 1 24rem;
  }
  .btn {
    padding: 0.6rem 1.2rem;
  }
  .btn.more, .btn.arrow {
    font-size: 1.4rem;
  }
  .btn.more::after, .btn.arrow::after {
    width: 1.6rem;
    height: 1.6rem;
  }
}
dialog {
  height: -moz-max-content;
  height: max-content;
  padding: 0;
  border: none;
  overflow: hidden;
}

.modal-dialog {
  display: flex;
  flex-flow: column;
  width: 100%;
  max-width: 95.6rem;
  height: -moz-fit-content;
  height: fit-content;
  max-height: 95dvh;
}

.mobile-menu {
  width: 100vw;
  max-width: 100%;
  height: 100dvh;
  max-height: 100dvh;
}

.modal-header {
  margin-bottom: -2.4rem;
  padding: 7.2rem 10.8rem 0;
  text-align: center;
}
.modal-header:has(.sr-only:only-child) {
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 768px) {
  .modal-header {
    margin-bottom: 0;
    padding: 3.6rem 2.4rem 0;
  }
}

.modal-content {
  flex: 1;
  padding: 7.2rem 10.8rem 0;
  overflow-y: auto;
}
@media screen and (max-width: 768px) {
  .modal-content {
    max-height: 63vh;
    padding: 3.6rem 2.4rem 0;
  }
}

.modal-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  padding: 4.8rem 10.8rem 7.2rem;
}
.modal-actions:has(.modal-close:only-child) {
  padding: 7.2rem 0 0;
}
.modal-actions .btn-wrap {
  margin: 0;
}
.modal-actions .modal-close {
  border-radius: 50%;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  position: absolute;
  top: 2.4rem;
  right: 2.4rem;
  background: url("/assets/images/icons/icon_close.svg") 50% 50%/3.2rem no-repeat;
  display: block;
  width: 3.6rem;
  height: 3.6rem;
  background-color: rgba(255, 255, 255, 0.84);
}
@media screen and (max-width: 768px) {
  .modal-actions {
    padding: 3.6rem 2.4rem 2.4rem;
  }
  .modal-actions:has(.modal-close:only-child) {
    padding: 3.6rem 0 0;
  }
  .modal-actions:has(button:not(.modal-close):only-child) {
    padding-top: 2.4rem;
  }
}