#headerTotalM{display:none}@media(max-width:1280px){#headerTotal{display:none}#headerTotalM{display:block}}

  @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap");
:where(body.home-view) * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  #main_section01 {
    --cwk-point: #3d474d;
    --cwk-point-soft: #a7b6be;

    margin: 0;
    background: #fff;
    color: #000;
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
    padding: 100px 0;
  }


  .main_container {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
  }

  #main_section01>div>h1 {
    margin: 0;
    flex: 0 1 50%;
    font-family: "Playfair Display", Georgia, "Times New Roman", serif;
    font-weight: 600;
    line-height: 1.05;
    letter-spacing: -0.02em;
    text-transform: uppercase;
  }

  #main_section01>div>h1 span:first-of-type {
    display: block;
    font-size: clamp(2.5rem, 6vw, 4.25rem);
    position: relative;
    padding-bottom: 0.35em;
  }

  #main_section01>div>h1 span:first-of-type::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: clamp(120px, 20vw, 220px);
    height: 2px;
    background: linear-gradient(90deg, var(--cwk-point) 0%, var(--cwk-point-soft) 100%);
  }

  #main_section01>div>h1 span:last-of-type {
    display: block;
    margin-top: 0.5em;
    font-size: clamp(2rem, 6vw, 2.5rem);
    font-weight: 400;
    color: var(--cwk-point);
  }

  #main_section01>div>p {
    margin: 0;
    flex: 0 1 45%;
    font-size: clamp(0.9375rem, 1.35vw, 1.0625rem);
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: 0.01em;
    word-break: keep-all;
    opacity: 0.7;
    text-align: right;
  }

  @media (max-width: 768px) {
    #main_section01 {
      padding: 3rem 20px;
    }

    #main_section01>div {
      flex-direction: column;
      align-items: flex-start;
      justify-content: center;
    }

    #main_section01>div>h1 {
      flex: none;
      width: 100%;
    }

    #main_section01>div>p {
      flex: none;
      max-width: 100%;
      margin-top: 2rem;
      text-align: left;
    }
  }

  #main_section01_keymessages,
  #main_section01_keymessages * {
    box-sizing: border-box;
  }

  #main_section01_keymessages {
    margin: 0;
    background: #fff;
    color: #000;
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
    word-break: keep-all;
  }

  #main_section01_viewport {
    position: relative;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 16 / 9;
    max-height: 50vh;
    line-height: 0;
  }

  #main_section01_track {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 0;
  }

  #main_section01_track>div {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    transition: opacity 0.55s ease;
    z-index: 0;
    pointer-events: none;
  }

  #main_section01_track>div[aria-hidden="false"] {
    opacity: 1;
    z-index: 1;
    pointer-events: auto;
  }

  @media (prefers-reduced-motion: reduce) {
    #main_section01_track>div {
      transition-duration: 0.01ms;
    }
  }

  #main_section01_track img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  #main_section01_track>div>button[type="button"] {
    position: absolute;
    right: clamp(1rem, 3vw, 2rem);
    bottom: clamp(1rem, 3vw, 2rem);
    width: 4.5rem;
    height: 4.5rem;
    border: none;
    border-radius: 50%;
    background: #000;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
  }

  #main_section01_track>div>button[type="button"] .bi {
    font-size: 1.75rem;
    line-height: 1;
    color: #fff;
    display: block;
    margin-left: 3px;
  }

  #main_section01_keymessages>div:last-of-type {
    padding: clamp(2rem, 5vw, 4rem) clamp(1.5rem, 20px, 5rem);
  }

  #main_section01_keymessages>div:last-of-type .main_container {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: clamp(1rem, 3vw, 5rem);
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
  }

  #main_section01_keymessages>div:last-of-type .main_container>div:first-child {
    flex: 0 1 52%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: clamp(1rem, 3vw, 3.5rem);
    min-height: 11rem;
  }

  #main_section01_keymessages>div:last-of-type .main_container>div:first-child h2 {
    margin: 0;
    font-family: "Playfair Display", Georgia, "Times New Roman", serif;
    font-weight: 600;
    font-size: clamp(1.75rem, 3.5vw, 2.5rem);
    line-height: 1.15;
    letter-spacing: -0.02em;
  }

  #main_section01_nav {
    display: flex;
    align-items: center;
    gap: 0.75rem;
  }

  #main_section01_prev,
  #main_section01_next {
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid rgba(0, 0, 0, 0.35);
    border-radius: 50%;
    background: transparent;
    color: #000;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
  }

  #main_section01_prev .bi,
  #main_section01_next .bi {
    font-size: 1.125rem;
    line-height: 1;
  }

  #main_section01_dots {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0 0.25rem;
  }

  #main_section01_dots button {
    display: inline-block;
    width: 6px;
    height: 6px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: #000;
    cursor: pointer;
    font-size: 0;
    line-height: 0;
  }

  #main_section01_dots button[aria-current="true"] {
    width: 12px;
    height: 12px;
    background: transparent;
    border: 1px solid #000;
    position: relative;
  }

  #main_section01_dots button[aria-current="true"]::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 4px;
    height: 4px;
    margin: -2px 0 0 -2px;
    border-radius: 50%;
    background: #000;
  }

  #main_section01_keymessages>div:last-of-type .main_container>div:last-child {
    flex: 0 1 40%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1.5rem;
  }

  #main_section01_keymessages>div:last-of-type .main_container>div:last-child p {
    margin: 0;
    font-size: clamp(1rem, 1.35vw, 1.125rem);
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: 0.01em;
    white-space: pre-line;
  }

  @media (max-width: 768px) {
    #main_section01_keymessages>div:last-of-type .main_container {
      flex-direction: column;
    }

    #main_section01_keymessages>div:last-of-type {
      padding-left: 24px;
      padding-right: 24px;
    }

    #main_section01_keymessages>div:last-of-type .main_container>div:first-child {
      flex: none;
      width: 100%;
      min-height: 0;
    }

    #main_section01_keymessages>div:last-of-type .main_container>div:last-child {
      flex: none;
      width: 100%;
    }

    #main_section01_track>div>button[type="button"] {
      width: 3.5rem;
      height: 3.5rem;
    }
  }


  #main_section02 {
    --ms02_bg: #000;
    --ms02_ink: #fff;
    --ms02_muted: rgba(255, 255, 255, 0.72);
    --ms02_hairline: rgba(255, 255, 255, 0.22);
    --ms02_point: #3d474d;
    --ms02_point-soft: #a7b6be;
    --ms02_container: 1320px;

    padding: clamp(64px, 8vw, 110px) 0 clamp(56px, 7vw, 96px);
    background: var(--ms02_bg);
    color: var(--ms02_ink);
    font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    word-break: keep-all;
  }

  #main_section02 *,
  #main_section02 *::before,
  #main_section02 *::after {
    box-sizing: border-box;
  }

  #main_section02 a {
    color: inherit;
    text-decoration: none;
  }

  #main_section02 .ms02_container {
    width: min(var(--ms02_container), calc(100% - 48px));
    margin: 0 auto;
  }

  #main_section02 .ms02_eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 0;
    font-size: 18px;
    text-transform: uppercase;
    color: var(--ms02_point-soft);
  }

  #main_section02 .ms02_headline {
    margin: 50px 0 0;
    font-family: "Playfair Display", Georgia, "Times New Roman", serif;
    font-weight: 500;
    font-size: clamp(36px, 4.6vw, 64px);
    line-height: 1.05;
    letter-spacing: -0.02em;
    text-align: center;
  }

  #main_section02 .ms02_top {
    margin-top: clamp(42px, 5.2vw, 100px);
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: clamp(28px, 4.2vw, 64px);
    align-items: start;
  }

  #main_section02 .ms02_left h3 {
    font-size: 1.5rem;
    font-weight: 500;
    letter-spacing: -0.01em;
  }

  #main_section02 .ms02_left p {
    margin: 20px 0;
    max-width: 56ch;
    font-size: clamp(0.9375rem, 1.35vw, 1.0625rem);
    line-height: 1.55;
  }

  #main_section02 .ms02_cta {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-size: 0.9375rem;
    font-weight: 500;
    letter-spacing: 0.01em;
  }

  #main_section02 .ms02_ctaCircle {
    width: 30px;
    height: 30px;
    border: 1px solid var(--ms02_hairline);
    border-radius: 999px;
    display: grid;
    place-items: center;
  }

  #main_section02 .ms02_ctaCircle svg {
    width: 14px;
    height: 14px;
  }

  #main_section02 .ms02_cta,
  #main_section02 .ms02_link {
    transition: opacity 180ms ease, transform 180ms ease;
  }

  #main_section02 .ms02_cta:hover {
    transform: translateX(2px);
  }

  #main_section02 .ms02_cta:focus-visible,
  #main_section02 .ms02_link:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.55);
    outline-offset: 3px;
    border-radius: 6px;
  }

  #main_section02 .ms02_cta,
  #main_section02 .ms02_link {
    position: relative;
  }

  #main_section02 .ms02_cta:focus-visible::before,
  #main_section02 .ms02_link:focus-visible::before {
    content: "";
    position: absolute;
    left: -1.1em;
    top: 0.75em;
    width: 0.85em;
    height: 2px;
    background: rgba(255, 255, 255, 0.55);
  }

  #main_section02 .ms02_ctaCircle {
    transition: transform 220ms cubic-bezier(0.2, 0.8, 0.2, 1), border-color 220ms ease;
  }

  #main_section02 .ms02_cta:hover .ms02_ctaCircle {
    transform: translateX(2px);
    border-color: rgba(255, 255, 255, 0.38);
  }

  #main_section02 .ms02_stat {
    padding-left: clamp(8px, 2.5vw, 30px);
    padding-top: 150px;
    display: flex;
    flex-direction: column;
    gap: 25px;
  }

  #main_section02 .ms02_statBig {
    font-family: "Playfair Display", Georgia, "Times New Roman", serif;
    font-weight: 500;
    font-size: clamp(44px, 5.2vw, 72px);
    line-height: 1;
    margin: 0;
    letter-spacing: -0.02em;
    position: relative;
    padding-left: 1.15em;
  }

  #main_section02 .ms02_statBig::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 0.9em;
    height: 2px;
    background: linear-gradient(90deg, var(--ms02_point) 0%, var(--ms02_point-soft) 100%);
  }

  #main_section02 .ms02_statLabel {
    margin: 0;
    font-size: 1.0625rem;
    font-weight: 500;
    letter-spacing: 0.01em;
  }

  #main_section02 .ms02_statNote {
    margin: 0;
    font-size: clamp(0.9375rem, 1.35vw, 0.9375rem);
    line-height: 1.55;
    color: var(--ms02_muted);
  }

  #main_section02 .ms02_grid {
    margin-top: clamp(48px, 6vw, 84px);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(18px, 2.4vw, 28px);
    align-items: start;
  }

  #main_section02 .ms02_card {
    display: grid;
    gap: 30px;
  }

  #main_section02 .ms02_card figure {
    margin: 0;
    aspect-ratio: 1;
    overflow: hidden;
    position: relative;
  }

  #main_section02 .ms02_card figure::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.62);
    opacity: 0;
    transition: opacity 220ms ease;
    pointer-events: none;
    z-index: 1;
  }

  #main_section02 .ms02_badge {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, calc(-50% + 10px));
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: rgba(255, 255, 255, 0.98);
    font-family: "Playfair Display", Georgia, "Times New Roman", serif;
    font-size: clamp(1.25rem, 2.4vw, 2rem);
    letter-spacing: -0.01em;
    text-transform: uppercase;
    text-align: center;
    white-space: nowrap;
    text-shadow: 0 12px 28px rgba(0, 0, 0, 0.65);
    opacity: 0;
    transition: opacity 220ms ease, transform 220ms ease;
    pointer-events: none;
    z-index: 2;
  }

  @media (hover: hover) and (pointer: fine) {
    #main_section02 .ms02_card:hover figure::after {
      opacity: 1;
    }

    #main_section02 .ms02_card:hover .ms02_badge {
      opacity: 1;
      transform: translate(-50%, -50%);
    }
  }

  #main_section02 .ms02_card:focus-within .ms02_badge {
    opacity: 1;
    transform: translate(-50%, -50%);
  }

  #main_section02 .ms02_card:focus-within figure::after {
    opacity: 1;
  }

  #main_section02 .ms02_card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: relative;
    z-index: 0;
  }

  #main_section02 .ms02_card {
    transition: color 220ms ease;
  }

  @media (hover: hover) and (pointer: fine) {
    #main_section02 .ms02_card:hover {
      color: rgba(255, 255, 255, 0.92);
    }
  }

  #main_section02 .ms02_card h4 {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 500;
    letter-spacing: -0.01em;
  }

  #main_section02 .ms02_card p {
    margin: 0;
    font-size: clamp(0.9375rem, 1.35vw, 1.0625rem);
    line-height: 1.55;
    color: var(--ms02_muted);
  }

  #main_section02 .ms02_link {
    margin-top: 6px;
    font-size: 0.9375rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.88);
  }

  #main_section02 .ms02_link span {
    padding-bottom: 3px;
    background-image: linear-gradient(currentColor, currentColor);
    background-repeat: no-repeat;
    background-size: 0% 1px;
    background-position: 0 100%;
    transition: background-size 240ms ease;
  }

  #main_section02 .ms02_link:hover {
    opacity: 1;
    transform: none;
  }

  #main_section02 .ms02_link:hover span {
    background-size: 100% 1px;
  }

  @media (prefers-reduced-motion: reduce) {

    #main_section02 .ms02_card,
    #main_section02 .ms02_card img,
    #main_section02 .ms02_cta,
    #main_section02 .ms02_ctaCircle,
    #main_section02 .ms02_link {
      transition-duration: 0.01ms !important;
      animation-duration: 0.01ms !important;
    }
  }

  @media (max-width: 980px) {
    #main_section02 .ms02_container {
      width: min(var(--ms02_container), calc(100% - 32px));
    }

    #main_section02 .ms02_top {
      grid-template-columns: 1fr;
    }

    #main_section02 .ms02_stat {
      border-left: none;
      padding-left: 0;
      border-top: 1px solid var(--ms02_hairline);
      padding-top: 22px;
    }

    #main_section02 .ms02_grid {
      grid-template-columns: 1fr;
    }

    #main_section02 .ms02_card figure {
      aspect-ratio: 16 / 9;
    }
  }


  #main_section04,
  #main_section04 * {
    box-sizing: border-box;
  }

  #main_section04 {
    margin: 0;
    padding: clamp(48px, 6vh, 120px) 0 clamp(32px, 6vh, 64px);
    overflow-x: hidden;
    overflow-y: visible;
    background: #000;
    color: #fff;
    font-family: Inter, system-ui, sans-serif;
    -webkit-font-smoothing: antialiased;
  }

  #main_section04 .flow_marquee {
    position: relative;
    width: 100%;
    overflow-x: hidden;
    overflow-y: visible;
    padding: 0.06em 0 0.22em;
    mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
  }

  #main_section04 .flow_track {
    display: flex;
    width: max-content;
    align-items: center;
    animation: main_section04_flow_scroll 45s linear infinite;
  }

  @keyframes main_section04_flow_scroll {
    to {
      transform: translateX(-50%);
    }
  }

  #main_section04 .flow_segment {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    gap: clamp(2rem, 5vw, 4.5rem);
    padding: 0.04em clamp(2rem, 5vw, 4.5rem) 0.14em 0;
    font-family: "Playfair Display", Georgia, serif;
    font-weight: 500;
    font-size: clamp(3.75rem, 10vw, 10.5rem);
    line-height: 1.18;
    letter-spacing: -0.02em;
    color: #fff;
    white-space: nowrap;
  }

  #main_section04 .flow_segment em {
    font-style: italic;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.92);
  }

  #main_section04 .flow_dot {
    opacity: 0.35;
    font-style: normal;
    font-weight: 400;
    user-select: none;
  }

  #main_section04 .flow_note {
    max-width: 52ch;
    margin: clamp(28px, 4vw, 48px) auto 0;
    padding: 0 clamp(20px, 4vw, 40px);
    font-size: clamp(0.8125rem, 1.8vw, 0.9375rem);
    font-weight: 400;
    line-height: 1.55;
    color: rgba(255, 255, 255, 0.62);
    text-align: center;
  }

  @media (max-width: 480px) {
    #main_section04 {
      padding: 56px 0 40px;
    }

    #main_section04 .flow_marquee {
      mask-image: none;
      -webkit-mask-image: none;
    }

    #main_section04 .flow_track {
      animation-duration: 28s;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #main_section04 .flow_marquee {
      mask-image: none;
      -webkit-mask-image: none;
    }

    #main_section04 .flow_track {
      animation: none;
      transform: none;
      width: 100%;
      max-width: 56rem;
      margin: 0 auto;
      flex-wrap: wrap;
      justify-content: center;
      row-gap: 0.35em;
    }

    #main_section04 .flow_segment[aria-hidden="true"] {
      display: none;
    }

    #main_section04 .flow_segment {
      flex-wrap: wrap;
      justify-content: center;
      white-space: normal;
      text-align: center;
      font-size: clamp(2rem, 6vw, 3.25rem);
      padding-right: 0;
    }
  }


  #main_section03_pw {
    --pw_bg: #000;
    --pw_ink: rgba(255, 255, 255, 0.96);
    --pw_muted: rgba(255, 255, 255, 0.68);
    --pw_hair: rgba(255, 255, 255, 0.18);
    --pw_point: #3d474d;
    --pw_point-soft: #a7b6be;
    --pw_card: rgba(255, 255, 255, 0.06);
    --pw_card2: rgba(255, 255, 255, 0.04);
    --pw_container: 1400px;

    margin: 0;
    padding: clamp(88px, 9vw, 140px) 0;
    background: var(--pw_bg);
    color: var(--pw_ink);
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    word-break: keep-all;
  }

  #main_section03_pw *,
  #main_section03_pw *::before,
  #main_section03_pw *::after {
    box-sizing: border-box;
  }

  #main_section03_pw a {
    color: inherit;
    text-decoration: none;
  }

  #main_section03_pw .pw_container {
    width: min(var(--pw_container), calc(100% - 48px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: clamp(34px, 5.6vw, 90px);
    align-items: center;
    min-height: clamp(520px, 62vh, 640px);
  }

  #main_section03_pw .pw_kickerRow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
  }

  #main_section03_pw .pw_kicker {
    margin: 0;
    font-size: 18px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--pw_point-soft);
    white-space: nowrap;
  }

  #main_section03_pw .pw_kickerLine {
    width: clamp(56px, 7vw, 90px);
    height: 2px;
    border-radius: 1px;
    background: linear-gradient(90deg, var(--pw_point-soft) 0%, var(--pw_point) 100%);
  }

  #main_section03_pw .pw_itemMeta {
    color: rgba(255, 255, 255, 0.68);
    font-size: 15px;
    line-height: 1.65;
    transition: color 200ms ease;
  }

  #main_section03_pw .pw_title {
    margin: 80px 0;
    font-family: "Playfair Display", Georgia, "Times New Roman", serif;
    font-weight: 500;
    font-size: clamp(44px, 5.2vw, 76px);
    line-height: 1.3;
    letter-spacing: -0.02em;
  }

  #main_section03_pw .pw_desc {
    margin: 0px 0 80px 150px;
    max-width: 40ch;
    font-size: 18px;
    line-height: 1.75;
    color: var(--pw_muted);
  }

  #main_section03_pw .pw_cta {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    font-size: 24px;
    color: rgba(255, 255, 255, 0.9);
    transition: color 200ms ease;
  }

  #main_section03_pw .pw_ctaCircle {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.26);
    display: grid;
    place-items: center;
    transition: transform 180ms ease, border-color 180ms ease, color 200ms ease;
  }

  #main_section03_pw .pw_ctaCircle svg {
    width: 14px;
    height: 14px;
  }

  @media (hover: hover) and (pointer: fine) {
    #main_section03_pw .pw_cta:hover .pw_ctaCircle {
      transform: translateX(2px);
      border-color: rgba(255, 255, 255, 0.42);
    }
  }

  #main_section03_pw .pw_panel {
    position: relative;
    /* border-radius: 22px; */
    padding: clamp(28px, 3.2vw, 48px);
    overflow: hidden;
    isolation: isolate;
    background: linear-gradient(155deg,
        rgba(255, 255, 255, 0.09) 0%,
        rgba(255, 255, 255, 0.035) 42%,
        rgba(255, 255, 255, 0.055) 100%);
    backdrop-filter: blur(22px) saturate(1.25);
    -webkit-backdrop-filter: blur(22px) saturate(1.25);
    border: 1px solid rgba(255, 255, 255, 0.11);
    box-shadow:
      0 0 0 1px rgba(255, 255, 255, 0.05) inset,
      0 1px 0 rgba(255, 255, 255, 0.1) inset,
      0 28px 56px rgba(0, 0, 0, 0.42),
      0 8px 20px rgba(0, 0, 0, 0.22);
    transition:
      border-color 260ms ease,
      box-shadow 260ms ease,
      transform 260ms ease;
  }

  #main_section03_pw .pw_panel::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: radial-gradient(120% 80% at 10% -20%,
        rgba(255, 255, 255, 0.14) 0%,
        transparent 55%);
    opacity: 0.65;
    pointer-events: none;
    z-index: 0;
    transition: opacity 260ms ease;
  }

  #main_section03_pw .pw_panel::after {
    content: "";
    position: absolute;
    top: 0;
    left: 10%;
    right: 10%;
    height: 1px;
    background: linear-gradient(90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.38) 50%,
        transparent 100%);
    pointer-events: none;
    z-index: 1;
    transition: background 260ms ease;
  }

  #main_section03_pw .pw_list {
    position: relative;
    z-index: 2;
    list-style: none;
    padding: 0;
    margin: 0;
  }

  #main_section03_pw .pw_item {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 18px;
    padding: 28px 0;
  }

  #main_section03_pw .pw_item+.pw_item {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }

  #main_section03_pw .pw_itemTitle {
    margin: 0;
    font-size: 36px;
    font-weight: 400;
    line-height: 1.45;
    color: rgba(255, 255, 255, 0.9);
    transition: color 200ms ease;
  }

  #main_section03_pw .pw_itemIcon {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(255, 255, 255, 0.88);
    display: grid;
    place-items: center;
    transition: transform 200ms ease, border-color 200ms ease, background-color 200ms ease, color 200ms ease;
  }

  #main_section03_pw .pw_itemIcon svg {
    width: 24px;
    height: 24px;
  }

  @media (hover: hover) and (pointer: fine) {
    #main_section03_pw .pw_panel:has(.pw_item:hover) {
      transform: translateY(-4px);
      border-color: rgba(167, 182, 190, 0.28);
      box-shadow:
        0 0 0 1px rgba(167, 182, 190, 0.12) inset,
        0 1px 0 rgba(255, 255, 255, 0.14) inset,
        0 36px 72px rgba(0, 0, 0, 0.5),
        0 14px 32px rgba(0, 0, 0, 0.28),
        0 0 0 1px rgba(61, 71, 77, 0.35);
    }

    #main_section03_pw .pw_panel:has(.pw_item:hover)::before {
      opacity: 0.88;
    }

    #main_section03_pw .pw_panel:has(.pw_item:hover)::after {
      background: linear-gradient(90deg,
          transparent 0%,
          rgba(167, 182, 190, 0.55) 45%,
          rgba(61, 71, 77, 0.45) 55%,
          transparent 100%);
    }

    #main_section03_pw .pw_item:hover .pw_itemTitle {
      color: #fff;
    }

    #main_section03_pw .pw_item:hover .pw_itemMeta {
      color: var(--pw_point-soft);
    }

    #main_section03_pw .pw_item:hover .pw_itemIcon {
      transform: scale(1.04);
      border-color: rgba(167, 182, 190, 0.35);
      background-color: rgba(255, 255, 255, 0.08);
      color: var(--pw_point-soft);
    }
  }

  @media (max-width: 980px) {
    #main_section03_pw .pw_container {
      grid-template-columns: 1fr;
    }

    #main_section03_pw .pw_panel {
      margin-top: 18px;
    }

    #main_section03_pw .pw_title {
      margin: 42px 0 22px;
      font-size: clamp(32px, 8vw, 52px);
      line-height: 1.22;
    }

    #main_section03_pw .pw_desc {
      margin: 0 0 28px 0;
      max-width: none;
      font-size: 16px;
    }

    #main_section03_pw .pw_item {
      grid-template-columns: 1fr;
      align-items: start;
    }

    #main_section03_pw .pw_itemTitle {
      font-size: clamp(22px, 6.2vw, 28px);
    }

    #main_section03_pw .pw_itemIcon {
      width: 44px;
      height: 44px;
      border-radius: 12px;
    }
    #main_section03_pw .pw_title{
      margin: 50px 0;
    }
    #main_section03_pw .pw_desc{
      margin-left: 0;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #main_section03_pw .pw_panel {
      transition-duration: 0.01ms !important;
    }

    #main_section03_pw .pw_ctaCircle,
    #main_section03_pw .pw_itemIcon,
    #main_section03_pw .pw_itemTitle,
    #main_section03_pw .pw_itemMeta {
      transition-duration: 0.01ms !important;
    }

    #main_section03_pw .pw_panel::before,
    #main_section03_pw .pw_panel::after {
      transition-duration: 0.01ms !important;
    }
  }


  @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap");

  #main_section05 {
    --ms05_ink: #000;
    --ms05_point: #3d474d;
    --ms05_point-soft: #a7b6be;
    --ms05_container: 1400px;

    margin: 0;
    padding: clamp(88px, 9vw, 140px) 0;
    background: #fff;
    color: var(--ms05_ink);
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    word-break: keep-all;
  }

  #main_section05 *,
  #main_section05 *::before,
  #main_section05 *::after {
    box-sizing: border-box;
  }

  #main_section05 a {
    color: inherit;
    text-decoration: none;
  }

  #main_section05 .ms05_container {
    width: min(var(--ms05_container), calc(100% - 48px));
    margin: 80px auto 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(200px, 650px) auto;
    gap: clamp(34px, 5.6vw, 90px);
    align-items: stretch;
    justify-items: start;
  }

  #main_section05 .ms05_colText {
    align-self: start;
  }

  #main_section05 .ms05_kickerRow {
    display: flex;
    align-items: center;
    gap: 14px;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 24px;
  }

  #main_section05 .ms05_kicker {
    margin: 0;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--ms05_point);
    white-space: nowrap;
  }

  #main_section05 .ms05_kickerLine {
    width: clamp(56px, 7vw, 90px);
    height: 2px;
    border-radius: 1px;
    background: linear-gradient(90deg, var(--ms05_point) 0%, var(--ms05_point-soft) 100%);
  }

  #main_section05 .ms05_headline {
    margin: 0;
    font-family: "Playfair Display", Georgia, "Times New Roman", serif;
    font-weight: 500;
    font-size: clamp(36px, 4.6vw, 76px);
    line-height: 1.3;
  }

  #main_section05 .ms05_visual {
    margin: 0;
    width: 100%;
    aspect-ratio: 3 / 4.2;
    max-height: min(72vh, 560px);
    overflow: hidden;
    background: #f2f3f5;
    align-self: start;
    position: relative;
    isolation: isolate;
  }

  #main_section05 .ms05_img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
    opacity: 0;
    transition: opacity 400ms ease;
    pointer-events: none;
  }

  #main_section05 .ms05_img--inquiry {
    opacity: 1;
  }

  @media (hover: hover) and (pointer: fine) {
    #main_section05:has(.ms05_link--visit:hover) .ms05_img--inquiry {
      opacity: 0;
    }

    #main_section05:has(.ms05_link--visit:hover) .ms05_img--visit {
      opacity: 1;
    }

    #main_section05:has(.ms05_link--inquiry:hover) .ms05_img--inquiry {
      opacity: 1;
    }

    #main_section05:has(.ms05_link--inquiry:hover) .ms05_img--visit {
      opacity: 0;
    }
  }

  #main_section05:has(.ms05_link--visit:focus-visible) .ms05_img--inquiry {
    opacity: 0;
  }

  #main_section05:has(.ms05_link--visit:focus-visible) .ms05_img--visit {
    opacity: 1;
  }

  #main_section05:has(.ms05_link--inquiry:focus-visible) .ms05_img--inquiry {
    opacity: 1;
  }

  #main_section05:has(.ms05_link--inquiry:focus-visible) .ms05_img--visit {
    opacity: 0;
  }

  #main_section05 .ms05_links {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: clamp(14px, 2vw, 22px);
    justify-self: end;
    align-self: end;
    font-size: clamp(0.9375rem, 1.35vw, 1.0625rem);
    font-weight: 500;
    letter-spacing: 0.01em;
    line-height: 1.55;
    text-align: right;
    white-space: nowrap;
  }

  #main_section05 .ms05_link {
    position: relative;
    padding-bottom: 3px;
    background-image: linear-gradient(currentColor, currentColor);
    background-repeat: no-repeat;
    background-size: 0% 1px;
    background-position: 0 100%;
    transition: color 180ms ease, background-size 240ms ease, opacity 180ms ease;
  }

  @media (hover: hover) and (pointer: fine) {
    #main_section05 .ms05_link:hover {
      color: var(--ms05_point);
      background-size: 100% 1px;
      opacity: 1;
    }
  }

  #main_section05 .ms05_link:focus-visible {
    outline: 2px solid var(--ms05_point-soft);
    outline-offset: 3px;
    border-radius: 6px;
  }

  @media (max-width: 960px) {
    #main_section05 {
      padding: clamp(64px, 8vw, 96px) 0;
    }

    #main_section05 .ms05_container {
      grid-template-columns: 1fr;
      gap: clamp(28px, 4.2vw, 48px);
      justify-items: stretch;
    }

    #main_section05 .ms05_colText {
      max-width: none;
    }

    #main_section05 .ms05_visual {
      max-height: none;
      aspect-ratio: 16 / 9;
      max-width: min(100%, 560px);
      margin: 0 auto;
    }

    #main_section05 .ms05_img {
      object-position: center center;
    }

    #main_section05 .ms05_links {
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: flex-start;
      justify-self: stretch;
      align-self: stretch;
      text-align: left;
      white-space: normal;
      gap: 20px 28px;
    }
    #main_section05 .ms05_kickerRow{
      padding: 0 20px;
    }
  }

  @media (max-width: 480px) {
    #main_section05 .ms05_container {
      width: calc(100% - 32px);
      margin-top: 44px;
    }

    #main_section05 .ms05_kickerRow {
      flex-wrap: wrap;
      gap: 10px 12px;
    }

    #main_section05 .ms05_headline {
      font-size: clamp(28px, 9vw, 40px);
      line-height: 1.2;
    }
  }

  @media (prefers-reduced-motion: reduce) {

    #main_section05 .ms05_link,
    #main_section05 .ms05_img {
      transition-duration: 0.01ms !important;
    }
  }


#footer0105 * {list-style:none; color:#959595!important;}
#footer0105 #footer {z-index:100;width:100%; background:#252525;clear:both;overflow:hidden; padding:10px 0 20px 0;}
#footer0105 .copyrights {max-width:1400px;text-align:left;margin:0 auto;}
#footer0105 .pvuse_wrap{ width:100%; padding:15px 0; overflow:hidden; background:#252525;}
#footer0105 .pvusebox {max-width:1400px; margin:0 auto; display: flex; justify-content: space-between; width :100%;}
#footer0105 .pvuse {font-size:14px;text-align:left; }
#footer0105 .pvuse2 {font-size:14px;text-align:right;}
#footer0105 .copy {max-width:1400px; padding:15px 0; text-align:left;}
#footer0105 .admin_btn {position:relative; top:0px;}
#footer0105 .admin_btn ul li {padding-top:0px; display:inline;}
#footer0105 .toplink {font-family:"Malgun Gothic";font-size:15px;}
#footer0105 .toplink li {float:left;display:inline;padding-right:30px;}

#footer0105 .toplink a:link {text-decoration:none; font-family:"Malgun Gothic";font-size:13px;}
#footer0105 .toplink a:visited {text-decoration:none; font-family:"Malgun Gothic";font-size:13px;}
#footer0105 .toplink a:text {text-decoration:none; font-family:"Malgun Gothic";font-size:13px;}
#footer0105 .toplink a:active {text-decoration:none; font-family:"Malgun Gothic";font-size:13px;}
#footer0105 .toplink a:hover {text-decoration:none;font-family:"Malgun Gothic";font-size:13px;}

/* Mobile optimization */
@media (max-width: 768px){
	#footer0105 #footer{ padding:12px 0 18px 0; }
	#footer0105 .pvuse_wrap{ padding:12px 0; }
	#footer0105 .pvusebox{
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
		padding: 0 16px;
		box-sizing: border-box;
	}
	#footer0105 .pvuse,
	#footer0105 .pvuse2{
		width: 100%;
		text-align: left;
		font-size: 13px;
	}
	#footer0105 .pvuse span{ white-space: nowrap; }

	#footer0105 .admin_btn ul.toplink{
		display: flex;
		flex-wrap: wrap;
		gap: 8px 14px;
		margin: 0;
		padding: 0;
	}
	#footer0105 .toplink li{
		float: none;
		display: inline-flex;
		padding-right: 0;
	}
	#footer0105 .toplink a{
		display: inline-block;
		padding: 6px 2px;
		font-size: 13px;
	}

	#footer0105 .copyrights{ padding: 0 16px; box-sizing: border-box; }
	#footer0105 .copy{ padding: 12px 0; }
}

html,body{margin:0;padding:0}body{background:#fff}#winw{width:100%;position:relative;overflow-x:hidden}img{border:0;vertical-align:middle;max-width:100%}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #7b8c96;outline-offset:3px}[hidden]{display:none!important}#header01 #headersub,#header01 .web_logo{width:1400px!important}#sidebar-box .logoArea img{width:250px;height:65px;object-fit:contain}#footer0105 .mf_logo img{width:250px;height:65px;object-fit:contain}#route-outlet:empty{display:none}.layout-notice{font:12px/1.6 'Noto Sans KR',sans-serif;text-align:center;color:#777;padding:12px}.template-dialog{border:1px solid #ddd;padding:30px;max-width:calc(100vw - 48px);box-shadow:0 12px 45px #0003}.template-dialog::backdrop{background:#0006}.template-dialog button{display:block;margin:25px auto 0;padding:8px 24px;background:#333;color:#fff;border:0}.board-empty{padding:55px;text-align:center;color:#888}.search-icon{display:inline-block;width:20px;height:20px;border:0;background:none;cursor:pointer}#layout11 .layout11-content-wrapper:has(#contact-layout){width:1400px}#layout11 .login-new-input:disabled{background:#fff}.prototype-footer-note{font:11px/1.5 sans-serif;text-align:center;padding:8px;color:#999;background:#252525}@media(max-width:1440px){#layout11 .layout11-content-wrapper:has(#contact-layout){width:100%}}
.headerM .m-top-menu{line-height:50px;width:21px}#sidebar-box .logoArea img{height:auto}#footer0105 .mf_logo img{width:216px;height:49px}@font-face{font-family:Pretendard;src:url("Pretendard-Regular.woff") format("woff");font-weight:400;font-display:swap}