@import url("mirror-assets/fonts.googleapis.com/css2.8be139dc68.css");

@font-face {
  font-family: "KoPubWorld_Batang_Pro_m";
  src: url("mirror-assets/ptldesign.cafe24.com/line/theme/line/fonts/KoPubWorld_Batang_Pro_Medium.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "SUIT Variable";
  src: url("mirror-assets/ptldesign.cafe24.com/line/theme/line/fonts/SUIT-Variable.woff2") format("woff2-variations");
  font-weight: 100 900;
  font-style: normal;
}

:root {
  --cg-main-display-font: "Sorts Mill Goudy";
  --cg-main-korean-font: "KoPubWorld_Batang_Pro_m";
  --cg-main-ui-font: "SUIT Variable";
  --cg-main-display-stack: var(--cg-main-display-font), var(--cg-main-korean-font), "Times New Roman", serif;
  --cg-main-korean-stack: var(--cg-main-korean-font), "KoPubWorld Batang", "Noto Serif KR", serif;
  --cg-main-ui-stack: var(--cg-main-ui-font), "SUIT", "Pretendard", "Noto Sans KR", sans-serif;
  --cg-sub-display-size: clamp(42px, 4vw, 56px);
  --cg-sub-section-size: clamp(34px, 3vw, 44px);
  --cg-sub-subhead-size: 21px;
  --cg-sub-copy-size: 18px;
  --cg-sub-label-size: 17px;
  --cg-sub-button-size: 15px;
  --cg-sub-display-line: 1.25;
  --cg-sub-section-line: 1.32;
  --cg-sub-copy-line: 1.8;
  --cg-sub-label-line: 1.2;
  --cg-sub-display-tracking: 1.1px;
  --cg-sub-body-tracking: 0;
  --cg-motion-section-y: 6px;
  --cg-motion-image-y: 8px;
  --cg-motion-image-nested-y: 4px;
  --cg-motion-image-scale: 1.012;
  --cg-motion-delay: 100ms;
  --cg-motion-section-duration: 900ms;
  --cg-motion-opacity-duration: 900ms;
  --cg-motion-image-duration: 1150ms;
  --cg-motion-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --cg-editorial-gutter: 25px;
  --cg-emphasis-gutter: 15px;
  --cg-editorial-width: min(calc(100dvw - var(--cg-viewport-scrollbar, 0px) - (var(--cg-editorial-gutter) * 2)), 363px);
  --cg-emphasis-width: min(calc(100dvw - var(--cg-viewport-scrollbar, 0px) - (var(--cg-emphasis-gutter) * 2)), 400px);
}

@keyframes cg-sub-header-shell-show {
  0% {
    transform: translateY(-100%);
    opacity: 0;
  }

  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page) {
  --font-ko: var(--cg-main-korean-stack);
  --font-en: var(--cg-main-display-stack);
  --font-ui: var(--cg-main-ui-stack);
  font-family: var(--cg-main-ui-stack);
  letter-spacing: var(--cg-sub-body-tracking);
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}

:is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header, .policy-header)
  :is(.brand, .mock-logo)::before {
  content: "";
  flex: 0 0 auto;
  display: block;
  width: 106px;
  aspect-ratio: 425 / 57;
  background: url("local-assets/brand/cg-wordmark-dark@4x.png") center / contain no-repeat;
}

:is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header, .policy-header)
  :is(.brand, .mock-logo)
  span {
  display: none !important;
}

:is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header, .policy-header)
  :is(.brand, .mock-logo)
  img {
  display: none !important;
}

.lentigo-page {
  width: min(390px, 100%) !important;
  max-width: 100%;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
  :is(.ota-center-note, .adm-center-note, .xan-story-note) {
  display: block;
  width: min(82%, 350px) !important;
  max-width: 350px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

@media (min-width: 1025px) {
  body:not(.mobile-page).xanthelasma-page .xan-story-note {
    width: min(100%, 460px) !important;
    max-width: 460px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).xanthelasma-page .xan-story-note strong,
  body:not(.mobile-page).xanthelasma-page .xan-story-note p {
    text-align: left !important;
  }

  body:not(.mobile-page).ota-page .ota-story .xan-story-serif {
    margin-bottom: 22px !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    letter-spacing: 0.02em !important;
    color: rgba(84, 70, 58, 0.78) !important;
  }

  body:not(.mobile-page).adm-page .adm-story .xan-story-serif {
    color: rgba(80, 66, 54, 0.8) !important;
  }

  body:not(.mobile-page).ota-page .ota-story :is(h1, h2):not(.cta-title) {
    margin-top: 0 !important;
  }

  body:not(.mobile-page).ota-page .ota-story h1 + p,
  body:not(.mobile-page).ota-page .ota-story h2 + p,
  body:not(.mobile-page).ota-page .ota-story h2 + .xan-story-lead {
    margin-top: 24px !important;
  }

  body:not(.mobile-page).ota-page .ota-two-column {
    width: min(1040px, 88%) !important;
    max-width: 1040px !important;
  }

  body:not(.mobile-page).ota-page .ota-two-column article {
    padding: 2.3rem 2rem !important;
  }

  body:not(.mobile-page).ota-page .ota-two-column article p {
    max-width: 470px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body:not(.mobile-page).ota-page .ota-center-note {
    width: min(780px, 76%) !important;
    max-width: 780px !important;
    padding-top: 0 !important;
    border-top: 0 !important;
  }

  body:not(.mobile-page).ota-page .ota-strategy {
    grid-template-columns: minmax(600px, 1fr) minmax(360px, 0.64fr) !important;
    column-gap: clamp(64px, 5vw, 88px) !important;
  }

  body:not(.mobile-page).ota-page .ota-strategy .xan-story-copy {
    max-width: 680px !important;
  }

  body:not(.mobile-page).ota-page .ota-strategy-scale span br,
  body:not(.mobile-page).ota-page .ota-device-grid br {
    display: none !important;
  }

  body:not(.mobile-page).ota-page .ota-device-grid p {
    min-height: 0 !important;
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
  }

  body:not(.mobile-page).ota-page .ota-difference {
    grid-template-columns: minmax(500px, 0.9fr) minmax(520px, 0.92fr) !important;
    column-gap: clamp(62px, 5vw, 88px) !important;
  }

  body:not(.mobile-page).ota-page .ota-difference .xan-story-copy {
    width: min(100%, 680px) !important;
    max-width: 680px !important;
  }

  body:not(.mobile-page).ota-page .ota-difference-rows span {
    line-height: 1.72 !important;
  }

  body:not(.mobile-page).ota-page .ota-difference-rows p {
    grid-template-columns: 190px 1fr !important;
    gap: 1.75rem !important;
  }

  body:not(.mobile-page).ota-page .ota-difference-rows strong {
    white-space: nowrap !important;
    font-size: 1.58rem !important;
    line-height: 1.16 !important;
  }
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
  :is(h1, h2, h3, p, li, dt, dd, a, button, span, strong) {
  letter-spacing: var(--cg-sub-body-tracking);
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
  :is(h1, .hero-copy h1, .advanced-hero h1, .xan-story h1, .rp-hero h1, .solar-hero h1, .hero h1) {
  font-family: var(--cg-main-display-stack) !important;
  font-size: var(--cg-sub-display-size) !important;
  font-weight: 400 !important;
  line-height: var(--cg-sub-display-line) !important;
  letter-spacing: var(--cg-sub-display-tracking) !important;
  word-break: keep-all;
  text-wrap: balance;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
  :is(h2, .section-title, .rp-statement h2, .split-copy h2, .proof-copy h2, .method-copy h2, .closing-main) {
  font-family: var(--cg-main-display-stack) !important;
  font-size: var(--cg-sub-section-size) !important;
  font-weight: 400 !important;
  line-height: var(--cg-sub-section-line) !important;
  letter-spacing: var(--cg-sub-display-tracking) !important;
  word-break: keep-all;
  text-wrap: balance;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
  :is(h3, .value-card h3, .promise-list h3, .visit-block h3, .device-copy h3, .xan-step-copy h3) {
  font-family: var(--cg-main-korean-stack) !important;
  font-size: var(--cg-sub-subhead-size) !important;
  font-weight: 500 !important;
  line-height: 1.42 !important;
  word-break: keep-all;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
  main :is(p, li, dd):not(.eyebrow):not(.hero-label):not(.serif-label):not(.serif-en):not(.point-label):not(.advanced-serif):not(.xan-story-serif):not(.ac-eyebrow):not(.ac-panel-label):not(.laser-title):not(.english-title):not(.cta-title):not(.ac-display):not(.value-index):not(.intro-number):not(.statement-heading):not(.closing-main) {
  font-family: var(--cg-main-ui-stack) !important;
  font-size: var(--cg-sub-copy-size) !important;
  font-weight: 500 !important;
  line-height: var(--cg-sub-copy-line) !important;
  letter-spacing: var(--cg-sub-body-tracking) !important;
  word-break: keep-all;
  overflow-wrap: break-word;
  text-wrap: pretty;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
  main :is(.eyebrow, .hero-label, .serif-label, .serif-en, .point-label, .advanced-serif, .xan-story-serif, .ac-eyebrow, .ac-panel-label) {
  font-family: var(--cg-main-display-stack) !important;
  font-size: var(--cg-sub-label-size) !important;
  font-weight: 400 !important;
  line-height: var(--cg-sub-label-line) !important;
  letter-spacing: 0.025em !important;
  word-break: keep-all;
  text-wrap: balance;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
  main :is(.laser-title, .english-title, .cta-title, .ac-display) {
  font-family: var(--cg-main-display-stack) !important;
  font-size: var(--cg-sub-display-size) !important;
  font-weight: 400 !important;
  line-height: 1.14 !important;
  letter-spacing: var(--cg-sub-display-tracking) !important;
  text-wrap: balance;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
  main :is(.hero-text, .section-text, .body-copy, .copy, .hero-sub, .lead, .cta-ko, .closing-sub) {
  max-width: min(84%, 340px);
  margin-left: auto !important;
  margin-right: auto !important;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
  main :is(.round-button, .m_more_btn, .visit-actions a, .visit-actions span, .map-actions a, .laser-tabs button) {
  font-family: var(--cg-main-ui-stack) !important;
  font-size: var(--cg-sub-button-size) !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page) .reveal {
  opacity: 0 !important;
  transform: translateY(var(--cg-motion-section-y)) !important;
  transition:
    opacity var(--cg-motion-section-duration) ease-out var(--cg-motion-delay),
    transform var(--cg-motion-section-duration) ease-out var(--cg-motion-delay) !important;
  will-change: opacity, transform;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page) :is(.image-slot, .image-frame, .cg-image-motion) {
  opacity: 0 !important;
  transform: translateY(var(--cg-motion-image-y)) scale(var(--cg-motion-image-scale)) !important;
  transition:
    opacity var(--cg-motion-opacity-duration) ease-out var(--cg-motion-delay),
    transform var(--cg-motion-image-duration) var(--cg-motion-ease) var(--cg-motion-delay) !important;
  backface-visibility: hidden;
  will-change: opacity, transform;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page) .reveal :is(.image-slot, .image-frame, .cg-image-motion) {
  transform: translateY(var(--cg-motion-image-nested-y)) scale(var(--cg-motion-image-scale)) !important;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page) :is(.reveal.is-visible, .reveal.active),
:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page) :is(.image-slot.is-visible, .image-frame.is-visible, .cg-image-motion.is-visible),
:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page) :is(.is-visible, .active) :is(.image-slot, .image-frame, .cg-image-motion) {
  opacity: 1 !important;
  transform: translateY(0) scale(1) !important;
}

html.cg-hash-jump-instant {
  scroll-behavior: auto !important;
}

html.cg-hash-jump-instant
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
  :is(.cg-anchor-target-instant, .cg-anchor-target-instant :is(.image-slot, .image-frame, .cg-image-motion)) {
  opacity: 1 !important;
  transform: translateY(0) scale(1) !important;
  transition: none !important;
}

body.mobile-page .pigment-hero .xan-story-copy .pigment-hero-face-image {
  transform: translateX(-50%) translateY(var(--cg-motion-image-nested-y)) scale(var(--cg-motion-image-scale)) !important;
}

body.mobile-page .pigment-hero .xan-story-copy .pigment-hero-face-image:is(.is-visible, .active),
body.mobile-page :is(.pigment-hero.is-visible, .pigment-hero.active) .xan-story-copy .pigment-hero-face-image {
  transform: translateX(-50%) translateY(0) scale(1) !important;
}

/* Aman-inspired image rhythm: keep hero/device media large, steady repeated editorial media. */
body.mobile-page.about-page .philosophy-photo.no-crop-photo {
  width: var(--cg-editorial-width) !important;
}

body.mobile-page.about-page .doctor-photo.no-crop-photo {
  width: var(--cg-emphasis-width) !important;
}

body.about-page .doctor-photo.no-crop-photo {
  isolation: isolate;
  background: #e9e1d5;
}

body.about-page .doctor-photo.no-crop-photo::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(255, 250, 242, 0.08), rgba(232, 219, 202, 0.13)),
    rgba(244, 237, 228, 0.04);
}

body.about-page .doctor-photo.no-crop-photo::after {
  z-index: 2;
}

body.about-page .doctor-photo.no-crop-photo img {
  position: relative;
  z-index: 0;
  filter: grayscale(0.32) sepia(0.08) saturate(0.82) contrast(0.97) brightness(1.035) blur(0.38px);
  opacity: 0.93;
}

body.about-page #doctor-message {
  scroll-margin-top: 96px;
}

body.mobile-page.about-page #doctor-message {
  scroll-margin-top: 88px;
}

body.lifting-page :is(#thermage, #ulthera, #ulthermage) {
  scroll-margin-top: 112px;
}

body.mobile-page.lifting-page :is(#thermage, #ulthera, #ulthermage) {
  scroll-margin-top: 88px;
}

body.mobile-page.pigment-page
  :is(.pigment-texture-image, .pigment-observation-image, .pigment-candidate-image) {
  width: var(--cg-editorial-width) !important;
  max-width: 363px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.mobile-page.pigment-page .pigment-candidate-image {
  margin-bottom: 3.2rem !important;
}

.solar-page :is(.diagnosis-image, .face-image, .patient-grid, .care .wide-image) {
  width: var(--cg-editorial-width) !important;
  max-width: 363px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.solar-page :is(.hero-image, .care .residual-care-image) {
  width: var(--cg-emphasis-width) !important;
  max-width: 400px !important;
}

.solar-page :is(.device-image, .proof-image) {
  width: 100% !important;
  max-width: none !important;
}

:is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
  :is(
    .xan-story-section + .xan-story-section,
    .advanced-section,
    .xan-device-lines,
    .xan-device-lines p,
    .xan-safety-grid,
    .xan-safety-grid p,
    .xan-difference-rows,
    .xan-difference-rows p,
    .xan-story-note,
    .about-intro,
    .ota-depth-lines,
    .ota-depth-lines p,
    .ota-two-column,
    .ota-two-column article,
    .adm-two-column,
    .adm-two-column article,
    .ota-center-note,
    .adm-center-note,
    .ota-strategy-scale,
    .ota-strategy-scale p,
    .adm-strategy-scale,
    .adm-strategy-scale p,
    .ota-compare-table,
    .ota-compare-table p,
    .adm-device-grid,
    .adm-device-grid p,
    .pigment-line-list,
    .pigment-line-list p,
    .pigment-candidate-list,
    .pigment-candidate-list p,
    .eye-process-lines,
    .eye-process-lines p,
    .eye-candidate-list,
    .eye-candidate-list p,
    .standard-lines,
    .standard-lines span,
    .process-list,
    .process-item,
    .pill-list,
    .pill-list p,
    .care-copy p,
    .care-copy li,
    .difference-list,
    .difference-list article,
    .difference-list p,
    .recovery-list,
    .recovery-list p,
    .microfat-area-list,
    .microfat-area-list p,
    .microfat-process-list,
    .microfat-process-list p,
    .advanced-proof-lines,
    .advanced-proof-lines p,
    .advanced-device-lines,
    .advanced-device-lines p,
    .advanced-candidate-list,
    .advanced-candidate-list p,
    .values-list,
    .promise-list,
    .promise-list article,
    .visit-block,
    .solar-section,
    .laser-tabs,
    .hero,
    .rp-footer
  ) {
  border-top: 0 !important;
  border-bottom: 0 !important;
}

@media (prefers-reduced-motion: reduce) {
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page) :is(.reveal, .image-slot, .image-frame, .cg-image-motion) {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    will-change: auto;
  }

  body.mobile-page .pigment-hero .xan-story-copy .pigment-hero-face-image {
    transform: translateX(-50%) !important;
  }
}

@media (max-width: 1024px) {
  :root {
    --cg-sub-display-size: 32px;
    --cg-sub-section-size: 30px;
    --cg-sub-subhead-size: 18px;
    --cg-sub-copy-size: 16px;
    --cg-sub-label-size: 15.5px;
    --cg-sub-button-size: 13.5px;
  }
}

@media (max-width: 434px) {
  :root {
    --cg-sub-display-size: 30px;
    --cg-sub-section-size: 28px;
    --cg-sub-subhead-size: 17px;
    --cg-sub-copy-size: 15px;
    --cg-sub-label-size: 14.5px;
    --cg-sub-button-size: 13px;
  }
}

@media (max-width: 360px) {
  :root {
    --cg-sub-display-size: 27.5px;
    --cg-sub-section-size: 25.5px;
    --cg-sub-subhead-size: 16px;
    --cg-sub-copy-size: 14px;
    --cg-sub-label-size: 13.5px;
    --cg-sub-button-size: 12.5px;
  }
}

.cg-history-controls {
  position: fixed;
  left: max(22px, calc(env(safe-area-inset-left, 0px) + 22px));
  bottom: max(24px, calc(env(safe-area-inset-bottom, 0px) + 24px));
  z-index: 9998;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

body.mobile-page .cg-history-controls {
  display: none !important;
}

.cg-history-button {
  --cg-return-cut: 5px;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  padding: 0;
  font: inherit;
  line-height: 1;
  color: rgba(30, 31, 30, 0.94);
  background: rgba(255, 253, 248, 0.94);
  border: 0;
  border-radius: 10px;
  cursor: pointer;
  clip-path: polygon(
    var(--cg-return-cut) 0,
    calc(100% - var(--cg-return-cut)) 0,
    100% var(--cg-return-cut),
    100% calc(100% - var(--cg-return-cut)),
    calc(100% - var(--cg-return-cut)) 100%,
    var(--cg-return-cut) 100%,
    0 calc(100% - var(--cg-return-cut)),
    0 var(--cg-return-cut)
  );
  filter:
    drop-shadow(0 14px 24px rgba(28, 24, 20, 0.16))
    drop-shadow(0 2px 5px rgba(28, 24, 20, 0.08));
  -webkit-appearance: none;
  appearance: none;
  text-decoration: none;
  transform: translateZ(0);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  transition: background-color 180ms ease, color 180ms ease, filter 180ms ease, transform 180ms ease;
}

.cg-history-button::before {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: inherit;
  clip-path: inherit;
  border: 1px solid rgba(255, 255, 255, 0.72);
  pointer-events: none;
}

.cg-history-button:hover,
.cg-history-button:focus-visible {
  color: rgba(10, 12, 12, 0.98);
  background: rgba(255, 254, 250, 0.98);
  filter:
    drop-shadow(0 16px 28px rgba(28, 24, 20, 0.18))
    drop-shadow(0 3px 7px rgba(28, 24, 20, 0.1));
  transform: translateX(-2px);
}

.cg-main-forward:hover,
.cg-main-forward:focus-visible {
  transform: translateX(2px);
}

.cg-history-button:focus-visible {
  outline: 1px solid rgba(31, 31, 30, 0.32);
  outline-offset: 4px;
}

.cg-history-button:disabled,
.cg-history-controls.is-navigating .cg-history-button {
  cursor: default;
  pointer-events: none;
}

.cg-main-return__mark {
  position: relative;
  z-index: 1;
  display: block;
  flex: 0 0 auto;
  width: 19px;
  height: 29px;
  overflow: visible;
  transform: translateX(-1px);
}

.cg-main-forward .cg-main-return__mark {
  transform: translateX(1px);
}

.cg-main-return__mark path {
  vector-effect: non-scaling-stroke;
}

.cg-main-return__sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

body.cg-main-nav-open {
  overflow: hidden !important;
}

body.open #gnb.gnb-container.open {
  overflow-y: auto !important;
  overscroll-behavior: contain;
}

@media (min-width: 1025px) {
  #gnb.gnb-container {
    right: 0 !important;
    width: min(80vw, 1430px);
    max-width: 100vw;
    overflow-x: hidden;
  }

  #gnb.gnb-container.open {
    top: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
    pointer-events: auto;
    transition:
      opacity 520ms cubic-bezier(0.23, 1, 0.32, 1),
      transform 760ms cubic-bezier(0.19, 1, 0.22, 1) !important;
    will-change: transform, opacity;
  }

  #gnb.gnb-container .gnb-menu-list02 {
    flex-wrap: nowrap;
  }

  #gnb.gnb-container .gnb-menu-list02 .gnb-menu-depth1_1 {
    flex: 0 0 auto;
    width: auto;
    min-width: 12.75rem;
    margin-right: clamp(2rem, 2.5vw, 3.563rem);
  }

  #gnb.gnb-container .gnb-menu-depth1_1 .gnb-menu-depth1-inner > a.hd_gnb_title01 {
    display: inline-block;
    white-space: nowrap;
    font-size: clamp(1.12rem, 1.12vw, 1.24rem);
    line-height: 1.35;
  }

  #gnb.gnb-container .gnb-menu-depth1-inner a.h4,
  #gnb.gnb-container .gnb-menu-depth2 > li > a {
    white-space: nowrap;
  }
}

@media (max-width: 1024px) {
  #gnb.gnb-container {
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1 !important;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translate3d(0, -18px, 0) scale(0.992) !important;
    transition:
      opacity 240ms ease,
      transform 640ms cubic-bezier(0.19, 1, 0.22, 1),
      visibility 0s linear 640ms !important;
    will-change: transform, opacity;
  }

  body.open #gnb.gnb-container.open {
    z-index: 1 !important;
    opacity: 1 !important;
    visibility: visible;
    pointer-events: auto;
    background: #fff !important;
    box-shadow: 0 0 0 100vmax #fff !important;
    transform: translate3d(0, 0, 0) scale(1) !important;
    transition:
      transform 680ms cubic-bezier(0.19, 1, 0.22, 1),
      visibility 0s linear 0s !important;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y pinch-zoom;
  }

  #gnb.gnb-container .gnb-wrapper {
    opacity: 0;
    transform: translateY(-8px);
    transition:
      opacity 420ms ease,
      transform 680ms cubic-bezier(0.19, 1, 0.22, 1);
  }

  body.open #gnb.gnb-container.open .gnb-wrapper {
    opacity: 1 !important;
    transform: translateY(0);
    transition:
      transform 680ms cubic-bezier(0.19, 1, 0.22, 1);
  }

  body.open #gnb.gnb-container.open {
    z-index: 10010 !important;
  }

  body.open #gnb.gnb-container.open .cg-main-menu-close {
    display: block;
  }

  body.cg-history-restored:not(.open) .main-header {
    top: 0 !important;
    opacity: 1 !important;
    transform: none !important;
    pointer-events: auto !important;
    animation: none !important;
  }

  body.open .main-header {
    z-index: 9996 !important;
    opacity: 1 !important;
    pointer-events: none !important;
  }

  body.open .main-header > .ht-inner {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
}

body.cg-main-nav-open .cg-history-controls {
  opacity: 0;
  pointer-events: none;
}

@media (max-width: 1024px) {
  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header),
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header) {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) 46px;
    align-items: center !important;
    justify-content: stretch !important;
    width: calc(100vw - var(--cg-viewport-scrollbar, 0px)) !important;
    max-width: 100% !important;
    min-height: 64px !important;
    height: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 17px 25.8px !important;
    border-bottom: 1px solid var(--cg-header-border, rgba(66, 58, 48, 0.07)) !important;
    background: var(--cg-header-bg, #faf7f3) !important;
    color: var(--cg-header-ink, #2f2a24) !important;
    opacity: 0;
    transform: translateY(-100%);
    transform-origin: center;
    animation: cg-sub-header-shell-show 1s ease-out 1s forwards;
    will-change: transform, opacity;
  }

  body.cg-history-restored:not(.cg-main-nav-open).mobile-page
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header),
  body.cg-history-restored:not(.cg-main-nav-open)
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header) {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
    pointer-events: auto !important;
  }

  body.cg-main-nav-open.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header),
  body.cg-main-nav-open :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header) {
    z-index: 9996 !important;
    opacity: 0 !important;
    transform: translateY(-8px) !important;
    pointer-events: none !important;
  }

  .lentigo-page .mock-header {
    width: calc(100vw - var(--cg-viewport-scrollbar, 0px)) !important;
    margin-left: calc(50% - 50vw + var(--cg-viewport-scrollbar-half, 0px)) !important;
    margin-right: calc(50% - 50vw + var(--cg-viewport-scrollbar-half, 0px)) !important;
  }

  body.cg-main-nav-open .lentigo-page .mock-header {
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }

  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.brand, .mock-logo),
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.brand, .mock-logo) {
    position: static !important;
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    align-self: center;
    left: auto !important;
    right: auto !important;
    transform: none;
    margin: 0 !important;
  }

  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.brand, .mock-logo),
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.brand, .mock-logo) {
    opacity: 0;
    transform: translateY(-10px);
    animation: none;
  }

  body.cg-sub-header-motion-ready.mobile-page
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.brand, .mock-logo),
  body.cg-sub-header-motion-ready
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.brand, .mock-logo) {
    animation: cg-header-content-drop 0.86s cubic-bezier(0.19, 1, 0.22, 1) 1.12s both;
  }

  body.cg-history-restored:not(.cg-main-nav-open).mobile-page
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.brand, .mock-logo),
  body.cg-history-restored:not(.cg-main-nav-open)
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.brand, .mock-logo) {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }

  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu),
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) {
    position: relative !important;
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    align-self: center;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    z-index: 3;
    display: inline-flex !important;
    width: 36px !important;
    height: 26px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--cg-header-ink, #2f2a24) !important;
    transform: none;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
  }

  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.header-actions, .menu-button, .mock-menu),
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.header-actions, .menu-button, .mock-menu) {
    opacity: 0;
    transform: translateY(-10px);
    animation: none;
  }

  body.cg-sub-header-motion-ready.mobile-page
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.header-actions, .menu-button, .mock-menu),
  body.cg-sub-header-motion-ready
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.header-actions, .menu-button, .mock-menu) {
    animation: cg-header-content-drop 0.86s cubic-bezier(0.19, 1, 0.22, 1) 1.04s both;
  }

  body.cg-history-restored:not(.cg-main-nav-open).mobile-page
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.header-actions, .menu-button, .mock-menu),
  body.cg-history-restored:not(.cg-main-nav-open)
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.header-actions, .menu-button, .mock-menu) {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
    pointer-events: auto !important;
  }

  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span,
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span {
    position: static !important;
    left: auto !important;
    right: auto !important;
    display: block !important;
    width: 21px !important;
    height: 1px !important;
    margin: 0 !important;
    margin-left: 3px !important;
    background: currentColor !important;
    transform-origin: center !important;
    transition:
      margin 240ms ease 120ms,
      transform 320ms cubic-bezier(0.19, 1, 0.22, 1),
      opacity 180ms ease,
      background-color 220ms ease !important;
  }

  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(1),
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(1) {
    margin-bottom: 6px !important;
  }

  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(2),
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(2) {
    opacity: 1 !important;
  }

  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(3),
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(3) {
    margin-top: 6px !important;
  }

  body.cg-main-nav-open.mobile-page
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span,
  body.cg-main-nav-open :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span,
  body.cg-main-nav-open :is(.menu-button, .mock-menu) span {
    background: #2b2b2b !important;
    transition:
      margin 220ms ease,
      transform 340ms cubic-bezier(0.19, 1, 0.22, 1) 90ms,
      opacity 180ms ease,
      background-color 220ms ease !important;
  }

  body.cg-main-nav-open.mobile-page
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(1),
  body.cg-main-nav-open :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(1),
  body.cg-main-nav-open :is(.menu-button, .mock-menu) span:nth-child(1) {
    margin-top: 7.5px !important;
    margin-bottom: -1px !important;
    opacity: 1 !important;
    transform: rotate(45deg);
    animation: cg-sub-menu-top 560ms cubic-bezier(0.19, 1, 0.22, 1) both !important;
  }

  body.cg-main-nav-open.mobile-page
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(2),
  body.cg-main-nav-open :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(2),
  body.cg-main-nav-open :is(.menu-button, .mock-menu) span:nth-child(2) {
    opacity: 1 !important;
    transform: rotate(135deg);
    animation: cg-sub-menu-middle 520ms cubic-bezier(0.19, 1, 0.22, 1) both !important;
  }

  body.cg-main-nav-open.mobile-page
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(3),
  body.cg-main-nav-open :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(3),
  body.cg-main-nav-open :is(.menu-button, .mock-menu) span:nth-child(3) {
    margin-top: 6px !important;
    opacity: 0;
    transform: rotate(135deg) scaleX(0.72);
    animation: cg-sub-menu-bottom 560ms cubic-bezier(0.19, 1, 0.22, 1) both !important;
  }

  body.mobile-page.cg-main-nav-open .cg-main-nav-portal {
    z-index: 10010;
  }

  body.mobile-page.cg-main-nav-open .cg-main-nav-close {
    display: block !important;
  }

  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header) .header-actions,
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header) .header-actions {
    position: static !important;
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    align-self: center;
    margin: 0 !important;
    display: flex !important;
    width: 36px !important;
    height: 26px !important;
    align-items: center !important;
  }

  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header) .return-link,
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header) .return-link {
    display: none !important;
  }

  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.brand, .mock-logo)::before,
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.brand, .mock-logo)::before {
    width: 114px;
  }
}

@media (max-width: 1024px) and (prefers-reduced-motion: reduce) {
  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header),
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header),
  body.mobile-page :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.brand, .mock-logo, .header-actions, .menu-button, .mock-menu),
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.brand, .mock-logo, .header-actions, .menu-button, .mock-menu) {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

.cg-main-nav-portal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9997;
  width: calc(100vw - var(--cg-viewport-scrollbar, 0px));
  max-width: 100%;
  height: 100vh;
  --cg-main-nav-rem: 13px;
  color: #151515;
  background: #fff;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate3d(0, -10px, 0) scale(0.992);
  transition:
    opacity 180ms ease,
    transform 360ms cubic-bezier(0.16, 1, 0.3, 1),
    visibility 0s linear 320ms;
  will-change: transform, opacity;
}

body.cg-main-nav-open .cg-main-nav-portal {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate3d(0, 0, 0) scale(1);
  transition:
    opacity 160ms ease,
    transform 420ms cubic-bezier(0.16, 1, 0.3, 1),
    visibility 0s linear 0s;
}

.cg-main-nav-portal *,
.cg-main-nav-portal *::before,
.cg-main-nav-portal *::after {
  box-sizing: border-box;
}

.cg-main-nav-portal ul,
.cg-main-nav-portal li,
.cg-main-nav-portal p {
  margin: 0;
  padding: 0;
}

.cg-main-nav-portal ul,
.cg-main-nav-portal li {
  list-style: none;
}

.cg-main-nav-portal a {
  color: inherit;
  text-decoration: none;
}

.cg-main-nav-close {
  position: fixed;
  top: max(18px, env(safe-area-inset-top, 0px));
  left: max(18px, calc(env(safe-area-inset-left, 0px) + 18px));
  right: auto;
  z-index: 10001;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #151515;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

.cg-main-menu-close {
  display: none;
  position: fixed;
  top: max(18px, env(safe-area-inset-top, 0px));
  left: max(18px, calc(env(safe-area-inset-left, 0px) + 18px));
  right: auto;
  z-index: 10011;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #151515;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

.cg-main-nav-close::before,
.cg-main-menu-close::before {
  content: "";
  position: absolute;
  left: 9px;
  top: 21px;
  width: 26px;
  height: 1px;
  background: currentColor;
  transform-origin: center;
  opacity: 0;
}

.cg-main-nav-close span {
  position: absolute;
  left: 9px;
  top: 21px;
  width: 26px;
  height: 1px;
  background: currentColor;
}

.cg-main-menu-close span {
  position: absolute;
  left: 9px;
  top: 21px;
  width: 26px;
  height: 1px;
  background: currentColor;
}

.cg-main-nav-close span:first-child {
  transform: rotate(45deg);
}

.cg-main-menu-close span:first-child {
  transform: rotate(45deg);
}

.cg-main-nav-close span:last-child {
  transform: rotate(-45deg);
}

.cg-main-menu-close span:last-child {
  transform: rotate(-45deg);
}

body.cg-main-nav-open .cg-main-nav-close span:first-child {
  animation: cg-menu-close-top 560ms cubic-bezier(0.19, 1, 0.22, 1) both;
}

body.cg-main-nav-open .cg-main-nav-close::before {
  animation: cg-menu-close-middle 520ms cubic-bezier(0.19, 1, 0.22, 1) both;
}

body.cg-main-nav-open .cg-main-nav-close span:last-child {
  animation: cg-menu-close-bottom 560ms cubic-bezier(0.19, 1, 0.22, 1) both;
}

body.open #gnb.gnb-container.open .cg-main-menu-close span:first-child {
  animation: cg-menu-close-top 560ms cubic-bezier(0.19, 1, 0.22, 1) both;
}

body.open #gnb.gnb-container.open .cg-main-menu-close::before {
  animation: cg-menu-close-middle 520ms cubic-bezier(0.19, 1, 0.22, 1) both;
}

body.open #gnb.gnb-container.open .cg-main-menu-close span:last-child {
  animation: cg-menu-close-bottom 560ms cubic-bezier(0.19, 1, 0.22, 1) both;
}

@keyframes cg-menu-close-top {
  0% {
    transform: translateY(-7px) rotate(0deg);
  }

  45% {
    transform: translateY(0) rotate(0deg);
  }

  100% {
    transform: translateY(0) rotate(45deg);
  }
}

@keyframes cg-menu-close-middle {
  0% {
    opacity: 1;
    transform: scaleX(1);
  }

  48% {
    opacity: 1;
    transform: scaleX(0.88);
  }

  100% {
    opacity: 0;
    transform: scaleX(0.22);
  }
}

@keyframes cg-menu-close-bottom {
  0% {
    transform: translateY(7px) rotate(0deg);
  }

  45% {
    transform: translateY(0) rotate(0deg);
  }

  100% {
    transform: translateY(0) rotate(-45deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  body.cg-main-nav-open .cg-main-nav-close span,
  body.cg-main-nav-open .cg-main-nav-close::before,
  body.open #gnb.gnb-container.open .cg-main-menu-close span,
  body.open #gnb.gnb-container.open .cg-main-menu-close::before {
    animation: none;
  }
}

body.menu-open :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
  :is(.menu-button, .mock-menu) span:nth-child(1) {
  margin-top: 7.5px !important;
  margin-bottom: -1px !important;
  opacity: 1 !important;
}

body.menu-open :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
  :is(.menu-button, .mock-menu) span:nth-child(3) {
  margin-top: 6px !important;
  opacity: 0;
}

body.menu-open :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
  :is(.menu-button, .mock-menu) span:nth-child(1) {
  animation: cg-sub-menu-top 560ms cubic-bezier(0.19, 1, 0.22, 1) both !important;
}

body.menu-open :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
  :is(.menu-button, .mock-menu) span:nth-child(2) {
  animation: cg-sub-menu-middle 520ms cubic-bezier(0.19, 1, 0.22, 1) both !important;
}

body.menu-open :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
  :is(.menu-button, .mock-menu) span:nth-child(3) {
  animation: cg-sub-menu-bottom 560ms cubic-bezier(0.19, 1, 0.22, 1) both !important;
}

@keyframes cg-sub-menu-top {
  0% {
    opacity: 1;
    transform: translateY(-7.5px) rotate(0deg);
  }

  45% {
    opacity: 1;
    transform: translateY(0) rotate(0deg);
  }

  100% {
    opacity: 1;
    transform: translateY(0) rotate(45deg);
  }
}

@keyframes cg-sub-menu-middle {
  0% {
    opacity: 1;
    transform: rotate(0deg);
  }

  45% {
    opacity: 1;
    transform: rotate(0deg);
  }

  100% {
    opacity: 1;
    transform: rotate(135deg);
  }
}

@keyframes cg-sub-menu-bottom {
  0% {
    opacity: 1;
    transform: rotate(0deg) scaleX(1);
  }

  45% {
    opacity: 0.72;
    transform: rotate(0deg) scaleX(0.88);
  }

  100% {
    opacity: 0;
    transform: rotate(135deg) scaleX(0.72);
  }
}

@media (prefers-reduced-motion: reduce) {
  body.cg-main-nav-open :is(.menu-button, .mock-menu) span,
  body.menu-open :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span {
    animation: none !important;
  }
}

.cg-main-nav-portal .gnb-container {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: calc(100vw - var(--cg-viewport-scrollbar, 0px));
  max-width: 100%;
  height: 100vh;
  max-width: none;
  padding:
    calc(var(--cg-main-nav-rem) * 10)
    calc(var(--cg-main-nav-rem) * 2)
    var(--cg-main-nav-rem)
    calc(var(--cg-main-nav-rem) * 2);
  overflow-x: hidden;
  overflow-y: scroll;
  background: #fff;
  opacity: 1;
  visibility: visible;
  transform: none;
  transition: none;
}

.cg-main-nav-portal .gnb-wrapper {
  display: block;
  width: 100%;
  height: 115%;
  padding: 0;
  border-top: none;
  align-items: flex-start;
  opacity: 0;
  transform: translateY(-8px);
  transition:
    opacity 220ms ease,
    transform 420ms cubic-bezier(0.16, 1, 0.3, 1);
}

body.cg-main-nav-open .cg-main-nav-portal .gnb-wrapper {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 60ms;
}

.cg-main-nav-portal .pc_cont_1024,
.cg-main-nav-portal .gnb-inner,
.cg-main-nav-portal .login_wrap {
  display: none !important;
}

.cg-main-nav-portal .m_cont_1024 {
  display: block !important;
}

.cg-main-nav-portal .gnb-menu-list_m {
  display: block !important;
  width: 100%;
  height: auto;
  padding: 0;
  overflow-x: hidden;
  overflow-y: auto;
  opacity: 1;
  visibility: visible;
  border-radius: 0;
  transform-origin: left top;
  transition: all 1.2s ease;
  gap: var(--cg-main-nav-rem) calc(var(--cg-main-nav-rem) * 1.5);
}

.cg-main-nav-portal .gnb-menu-depth1 {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  margin-left: 0;
  padding: 0 calc(var(--cg-main-nav-rem) * 0.5);
  overflow: hidden;
  border-bottom: 1px solid transparent;
  font-family: "SUIT Variable", sans-serif;
  font-size: calc(var(--cg-main-nav-rem) * 1.5);
  font-weight: 500;
}

@media (min-width: 1025px) {
  .main-header .ht-inner__center {
    min-height: 1.8rem;
  }

  .main-header .hd_reserve {
    align-items: center;
    justify-content: center;
    line-height: 1;
    letter-spacing: 0.12em;
    word-spacing: 0.34em;
    transform: translateY(0);
    will-change: transform, opacity;
  }

  .main-header.scrolled .hd_reserve {
    display: inline-flex;
    animation: cg-reserve-rise 1.05s cubic-bezier(0.19, 1, 0.22, 1) 0.06s both;
  }

  body.open .main-header .hd_reserve,
  .main-header.open .hd_reserve {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    transform: translateY(-6px) !important;
    pointer-events: none !important;
    animation: none !important;
    transition: none !important;
  }
}

@keyframes cg-reserve-rise {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.skin-index-section {
  --skin-index-line: rgba(50, 43, 34, 0.14);
  --skin-index-ink: #27231e;
  --skin-index-muted: rgba(58, 51, 43, 0.68);
  --skin-index-warm: #9a7b55;
  --skin-index-panel: rgba(255, 252, 246, 0.28);
  position: relative;
  display: grid;
  grid-template-columns: minmax(170px, 0.25fr) minmax(0, 1fr);
  gap: clamp(18px, 3vw, 42px);
  align-items: center;
  border-top: 1px solid var(--skin-index-line);
  border-bottom: 1px solid var(--skin-index-line);
}

.appointment-page .skin-index-section {
  padding-top: 42px;
  padding-bottom: 42px;
}

.events-page .skin-index-section {
  padding-top: clamp(34px, 3.4vw, 54px);
  padding-bottom: clamp(34px, 3.4vw, 54px);
}

body.events-page .skin-index-section.events-section {
  padding: clamp(34px, 3.4vw, 54px) 7.4vw;
}

.skin-index-head {
  align-self: center;
}

.skin-index-kicker {
  margin: 0 0 9px !important;
  color: var(--skin-index-warm);
  font-family: var(--cg-main-display-stack) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
}

.skin-index-head h2 {
  margin: 0;
  color: var(--skin-index-ink);
  font-family: var(--cg-main-display-stack) !important;
  font-size: clamp(26px, 3.1vw, 36px) !important;
  font-weight: 400 !important;
  line-height: 1.14 !important;
  letter-spacing: 0 !important;
}

.skin-index-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--skin-index-line);
  border-left: 1px solid var(--skin-index-line);
  background: rgba(255, 252, 246, 0.1);
}

.skin-index-metric,
.skin-index-note {
  min-width: 0;
  padding: clamp(14px, 1.45vw, 19px);
  border-right: 1px solid var(--skin-index-line);
  border-bottom: 1px solid var(--skin-index-line);
  background: var(--skin-index-panel);
}

.skin-index-metric {
  min-height: 118px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.skin-index-note {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(96px, 0.16fr) minmax(0, 1fr);
  gap: clamp(12px, 1.8vw, 24px);
  align-items: center;
  background: rgba(38, 34, 29, 0.9);
  color: #fbf7f1;
}

.skin-index-symbol {
  position: relative;
  display: block;
  width: 23px;
  height: 23px;
  margin-bottom: 10px;
  color: var(--skin-index-warm);
}

.skin-index-symbol::before,
.skin-index-symbol::after {
  content: "";
  position: absolute;
  display: block;
}

.skin-index-symbol.is-uv::before {
  left: 50%;
  top: 50%;
  width: 42%;
  height: 42%;
  border: 1px solid currentColor;
  border-radius: 50%;
  background: rgba(154, 123, 85, 0.08);
  transform: translate(-50%, -50%);
}

.skin-index-symbol.is-uv::after {
  left: 50%;
  top: 8%;
  width: 1px;
  height: 84%;
  background: currentColor;
  transform: translateX(-50%) rotate(45deg);
  transform-origin: center;
  opacity: 0.48;
}

.skin-index-symbol.is-uv-low::before {
  width: 34%;
  height: 34%;
  opacity: 0.68;
}

.skin-index-symbol.is-uv-low::after {
  top: 28%;
  height: 44%;
  transform: translateX(-50%) rotate(90deg);
  opacity: 0.28;
}

.skin-index-symbol.is-uv-moderate::before {
  width: 42%;
  height: 42%;
}

.skin-index-symbol.is-uv-moderate::after {
  opacity: 0.5;
}

.skin-index-symbol.is-uv-high::before {
  width: 48%;
  height: 48%;
  box-shadow: 0 0 0 4px rgba(154, 123, 85, 0.1);
}

.skin-index-symbol.is-uv-high::after {
  top: 1%;
  height: 98%;
  opacity: 0.78;
  box-shadow: 0 0 0 0.5px currentColor;
}

.skin-index-symbol.is-uv-very-high::before {
  width: 54%;
  height: 54%;
  background: rgba(128, 97, 61, 0.14);
  box-shadow: 0 0 0 5px rgba(128, 97, 61, 0.12);
}

.skin-index-symbol.is-uv-very-high::after {
  top: 0;
  height: 100%;
  opacity: 0.92;
  box-shadow: 0 0 0 0.8px currentColor, 0 0 10px rgba(128, 97, 61, 0.28);
}

.skin-index-symbol.is-humidity::before {
  left: 25%;
  top: 8%;
  width: 50%;
  height: 66%;
  border: 1px solid currentColor;
  border-radius: 55% 55% 55% 12%;
  transform: rotate(45deg);
}

.skin-index-symbol.is-humidity::after {
  left: 32%;
  bottom: 18%;
  width: 36%;
  height: 4px;
  border-radius: 999px;
  background: currentColor;
  opacity: 0.46;
}

.skin-index-symbol.is-humidity-dry::after {
  left: 50%;
  bottom: 24%;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  transform: translateX(-50%);
  opacity: 0.32;
}

.skin-index-symbol.is-humidity-balanced::after {
  left: 30%;
  bottom: 18%;
  width: 40%;
  height: 4px;
  opacity: 0.52;
}

.skin-index-symbol.is-humidity-humid::after {
  left: 18%;
  right: 18%;
  bottom: 9%;
  width: auto;
  height: 3px;
  border-top: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  background: transparent;
  opacity: 0.58;
}

.skin-index-symbol.is-pollen {
  color: #8b7456;
}

.skin-index-symbol.is-pollen::before {
  left: 50%;
  top: 18%;
  width: 1px;
  height: 68%;
  background: currentColor;
  border-radius: 1px;
  transform: translateX(-50%);
}

.skin-index-symbol.is-pollen::after {
  left: 50%;
  top: 28%;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  transform: translateX(-50%);
  opacity: 0.42;
}

.skin-index-symbol.is-pollen-off {
  opacity: 0.58;
}

.skin-index-symbol.is-pollen-off::before {
  top: 30%;
  height: 52%;
  opacity: 0.45;
}

.skin-index-symbol.is-pollen-off::after {
  width: 8px;
  height: 8px;
  border: 1px solid currentColor;
  background: transparent;
  opacity: 0.45;
}

.skin-index-symbol.is-pollen-pine::before {
  top: 28%;
  height: 62%;
}

.skin-index-symbol.is-pollen-pine::after {
  left: 50%;
  top: 8%;
  width: 0;
  height: 0;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 15px solid currentColor;
  border-radius: 2px;
  background: transparent;
  transform: translateX(-50%);
  opacity: 0.68;
}

.skin-index-symbol.is-pollen-oak::before {
  left: 49%;
  top: 44%;
  height: 42%;
  transform: rotate(28deg);
  transform-origin: top;
}

.skin-index-symbol.is-pollen-oak::after {
  left: 25%;
  top: 10%;
  width: 54%;
  height: 48%;
  border: 1px solid currentColor;
  border-radius: 58% 42% 58% 42%;
  background: rgba(139, 116, 86, 0.1);
  transform: rotate(-28deg);
  opacity: 0.9;
}

.skin-index-symbol.is-pollen-weed::before {
  top: 24%;
  height: 62%;
}

.skin-index-symbol.is-pollen-weed::after {
  left: 50%;
  top: 26%;
  width: 1px;
  height: 58%;
  border-radius: 1px;
  background: currentColor;
  box-shadow: -5px 4px 0 -0.2px currentColor, 5px 7px 0 -0.2px currentColor;
  transform: translateX(-50%) rotate(-18deg);
  opacity: 0.75;
}

.skin-index-label,
.skin-index-note span {
  display: block;
  color: var(--skin-index-warm);
  font-family: var(--cg-main-display-stack) !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
  word-break: keep-all;
}

.skin-index-metric strong {
  display: block;
  margin-top: 15px;
  color: var(--skin-index-ink);
  font-family: var(--cg-main-korean-stack) !important;
  font-size: clamp(20px, 1.9vw, 27px) !important;
  font-weight: 500 !important;
  line-height: 1.15 !important;
  letter-spacing: 0 !important;
  word-break: keep-all;
}

.skin-index-note p,
.skin-index-footnote {
  font-family: var(--cg-main-ui-stack) !important;
  letter-spacing: 0 !important;
  word-break: keep-all;
}

.skin-index-note p {
  margin: 0 !important;
  color: rgba(251, 247, 241, 0.88);
  font-size: clamp(13px, 1.05vw, 15px) !important;
  font-weight: 500 !important;
  line-height: 1.7 !important;
}

.skin-index-footnote {
  grid-column: 2;
  margin: 10px 0 0 !important;
  color: rgba(58, 51, 43, 0.48);
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
}

.skin-index-metric.is-caution strong {
  color: #80613d;
}

.skin-index-metric.is-dry strong {
  color: #5f6f6c;
}

.skin-index-metric.is-seasonal strong {
  color: #4d4a43;
}

@media (max-width: 1024px) {
  .skin-index-section,
  .appointment-page .skin-index-section,
  .events-page .skin-index-section {
    width: min(100% - 38px, 390px);
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .events-page .skin-index-section {
    padding-left: 0;
    padding-right: 0;
  }

  body.mobile-page.events-page .skin-index-section.events-section {
    padding: 24px 0;
  }

  body.mobile-page.events-page .events-page-shell > .skin-index-section:first-child {
    padding-top: 24px;
  }

  .skin-index-head {
    text-align: center;
  }

  .skin-index-kicker {
    margin-bottom: 7px !important;
    font-size: 12px !important;
  }

  .skin-index-head h2 {
    font-size: 22px !important;
    line-height: 1.16 !important;
  }

  .skin-index-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 14px;
  }

  .skin-index-metric,
  .skin-index-note {
    padding: 10px 8px;
  }

  .skin-index-metric {
    min-height: 80px;
  }

  .skin-index-symbol {
    width: 18px;
    height: 18px;
    margin-bottom: 6px;
  }

  .skin-index-metric strong {
    margin-top: 8px;
    font-size: 16px !important;
    line-height: 1.16 !important;
  }

  .skin-index-label,
  .skin-index-note span {
    font-size: 10.8px !important;
    line-height: 1.24 !important;
  }

  .skin-index-note {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    padding: 11px 12px;
  }

  .skin-index-note p {
    margin-top: 0 !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
  }

  .skin-index-footnote {
    margin: 7px 0 0 !important;
    color: rgba(58, 51, 43, 0.54);
    font-size: 10.8px !important;
    line-height: 1.55 !important;
    text-align: center;
  }
}

.cg-main-nav-portal .gnb-menu-depth1-inner {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.cg-main-nav-portal .gnb-menu-depth1 > a,
.cg-main-nav-portal .gnb-menu-depth1-inner > a {
  position: relative;
  display: inline-block;
  width: 100%;
  font-family: "KoPubWorld_Batang_Pro_m", "KoPubWorld Batang", "Noto Serif KR", serif;
  font-size: calc(var(--cg-main-nav-rem) * 1.3);
  margin: 0 0 var(--cg-main-nav-rem);
  text-align: left;
}

.cg-main-nav-portal .gnb-menu-depth1 > a::before,
.cg-main-nav-portal .gnb-menu-depth1 > a::after,
.cg-main-nav-portal .gnb-menu-depth1-inner > a::before,
.cg-main-nav-portal .gnb-menu-depth1-inner > a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  left: auto;
  width: calc(var(--cg-main-nav-rem) * 0.7);
  height: 1.3px;
  background: #131313;
}

.cg-main-nav-portal .gnb-menu-depth1 > a::after,
.cg-main-nav-portal .gnb-menu-depth1-inner > a::after {
  transform: rotate(90deg);
}

.cg-main-nav-portal .gnb-menu-depth1 > a.on::after,
.cg-main-nav-portal .gnb-menu-depth1-inner > a.on::after {
  display: none;
}

.cg-main-nav-portal .gnb-menu-depth2 {
  position: static;
  display: none;
  width: 100%;
  height: auto;
  padding:
    0
    var(--cg-main-nav-rem)
    calc(var(--cg-main-nav-rem) * 1.3);
  opacity: 1;
  transform: none;
}

.cg-main-nav-portal .gnb-menu-depth2.is-open {
  display: block;
}

.cg-main-nav-portal .gnb-menu-depth2 > li {
  display: block;
  width: 100%;
  margin: 0 0 calc(var(--cg-main-nav-rem) * 0.4);
  padding: 0;
  text-align: left;
}

.cg-main-nav-portal .gnb-menu-depth2 a {
  display: block;
  width: auto;
  padding: 6px 0 6px 0;
  font-size: calc(var(--cg-main-nav-rem) * 1.05);
  font-weight: 400;
  color: #454545;
  letter-spacing: -0.02em;
}

.cg-main-nav-portal .gnb-menu-depth2 a.gnb_li,
#gnb .gnb-menu-list_m .gnb-menu-depth2 > li > a.gnb_li {
  display: block !important;
  width: 100% !important;
  min-height: 36px;
  box-sizing: border-box;
}

.cg-main-nav-portal .gnb-menu-depth2 a.gnb_li > p,
#gnb .gnb-menu-list_m .gnb-menu-depth2 > li > a.gnb_li > p {
  display: block;
  width: 100%;
  margin: 0;
}

body.cg-main-nav-open .menu-button span:nth-child(1),
body.cg-main-nav-open .mock-menu span:nth-child(1) {
  margin-top: 7.5px;
  margin-bottom: -1px;
  opacity: 1;
  transform: rotate(45deg);
}

body.cg-main-nav-open .menu-button span:nth-child(2),
body.cg-main-nav-open .mock-menu span:nth-child(2) {
  opacity: 1;
  transform: rotate(135deg);
}

body.cg-main-nav-open .menu-button span:nth-child(3),
body.cg-main-nav-open .mock-menu span:nth-child(3) {
  margin-top: 6px;
  opacity: 0;
  transform: rotate(135deg) scaleX(0.72);
}

@media (max-width: 434px) {
  .cg-main-nav-portal {
    --cg-main-nav-rem: 12px;
  }
}

@media (max-width: 360px) {
  .cg-main-nav-portal {
    --cg-main-nav-rem: 11px;
  }
}

@media (max-width: 1024px) {
  body:not(.mobile-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header) {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    display: flex !important;
    grid-template-columns: none !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    height: 92px !important;
    padding: 0 34px !important;
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    will-change: auto !important;
  }

  body:not(.mobile-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header).is-scrolled {
    height: 78px !important;
  }

  body:not(.mobile-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > :is(.brand, .mock-logo) {
    position: static !important;
    grid-column: auto !important;
    grid-row: auto !important;
    justify-self: auto !important;
    align-self: center !important;
    margin: 0 !important;
    opacity: 1 !important;
    animation: none !important;
    transform: translateY(0) !important;
    transition: transform 0.4s ease !important;
  }

  body:not(.mobile-page) .sub-header.is-scrolled > .brand,
  body:not(.mobile-page) .sub-header.is-scrolled > .mock-logo {
    transform: translateY(7px) !important;
  }

  body:not(.mobile-page) .rp-header.is-scrolled > .brand,
  body:not(.mobile-page) .rp-header.is-scrolled > .mock-logo {
    transform: translateY(7.5px) !important;
  }

  body:not(.mobile-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    > .header-actions {
    position: static !important;
    grid-column: auto !important;
    grid-row: auto !important;
    justify-self: auto !important;
    align-self: center !important;
    display: flex !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    pointer-events: auto !important;
  }

  body:not(.mobile-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    .return-link {
    display: inline-flex !important;
  }

  body:not(.mobile-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    display: inline-flex !important;
    width: 42px !important;
    height: 42px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: inherit !important;
    transform: none !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body:not(.mobile-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span {
    position: absolute !important;
    left: 8px !important;
    right: 8px !important;
    display: block !important;
    width: auto !important;
    height: 1px !important;
    margin: 0 !important;
    background: currentColor !important;
    transform-origin: center !important;
  }

  body:not(.mobile-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(1) {
    top: 14px !important;
  }

  body:not(.mobile-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(2) {
    top: 21px !important;
  }

  body:not(.mobile-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.menu-button, .mock-menu) span:nth-child(3) {
    top: 28px !important;
  }
}

@media (min-width: 1025px) {
  body:not(.mobile-page) :is(.sub-header, .rp-header) > .brand {
    transform: translateY(0);
    transition: transform 0.4s ease;
  }

  body:not(.mobile-page) .sub-header.is-scrolled > .brand {
    transform: translateY(7px);
  }

  body:not(.mobile-page) .rp-header.is-scrolled > .brand {
    transform: translateY(7.5px);
  }

  .cg-history-controls {
    display: none !important;
  }

  body:not(.mobile-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    .header-actions,
  body:not(.mobile-page)
    :is(.sub-header, .solar-header, .light-header, .mock-header, .rp-header)
    :is(.return-link, .menu-button, .mock-menu),
  body:not(.mobile-page)
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    > .menu-panel {
    display: none !important;
  }

  .main_clar .sec_business .list_area .swiper-container,
  .main_clar .sec_business .list_area .swiper-container .swiper-slide a {
    pointer-events: auto;
  }

  body:not(.mobile-page) {
    --cg-desktop-copy-max: 560px;
  }

  body:not(.mobile-page)
    :is(.sub-shell, .solar-page, .light-page, .rp-page)
    main
    :is(.hero-text, .section-text, .body-copy, .copy, .lead, .closing-sub) {
    max-width: var(--cg-desktop-copy-max);
  }

  body:not(.mobile-page)
    :is(
      .sub-hero,
      .about-intro,
      .philosophy,
      .doctor-section,
      .advanced-hero,
      .advanced-science,
      .advanced-difference,
      .advanced-lifting,
      .advanced-volume,
      .xan-story-intro,
      .xan-story-protocol,
      .xan-story-precision,
      .pigment-energy,
      .pigment-candidates,
      .solar-hero,
      .diagnosis,
      .care,
      .laser-section,
      .intro,
      .analysis,
      .plan,
      .rp-hero,
      .rp-split,
      .rp-method
    )
    :is(
      .eyebrow,
      .advanced-serif,
      .xan-story-serif,
      .serif-label,
      .point-label,
      h1,
      h2,
      h3,
      .hero-text,
      .section-text,
      .body-copy,
      .copy,
      .lead,
      .xan-story-lead
    ) {
    text-align: left !important;
  }

  body:not(.mobile-page)
    :is(
      .sub-hero,
      .about-intro,
      .philosophy,
      .doctor-section,
      .advanced-hero,
      .advanced-science,
      .advanced-difference,
      .advanced-lifting,
      .advanced-volume,
      .xan-story-intro,
      .xan-story-protocol,
      .xan-story-precision,
      .pigment-energy,
      .pigment-candidates,
      .solar-hero,
      .diagnosis,
      .care,
      .laser-section,
      .intro,
      .analysis,
      .plan,
      .rp-hero,
      .rp-split,
      .rp-method
    )
    :is(.hero-text, .section-text, .body-copy, .copy, .lead, .xan-story-lead) {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body:not(.mobile-page)
    :is(
      .sub-hero,
      .about-intro,
      .philosophy,
      .doctor-section,
      .advanced-hero,
      .advanced-science,
      .advanced-difference,
      .advanced-lifting,
      .advanced-volume,
      .xan-story-intro,
      .xan-story-protocol,
      .xan-story-precision,
      .pigment-energy,
      .pigment-candidates,
      .solar-hero,
      .diagnosis,
      .care,
      .laser-section,
      .intro,
      .analysis,
      .plan,
      .rp-hero,
      .rp-split,
      .rp-method
    )
    :is(.hero-copy, .advanced-hero-copy, .advanced-copy, .advanced-difference-copy, .advanced-lifting-copy, .section-copy, .xan-story-copy, .doctor-copy, .device-copy) {
    text-align: left !important;
  }

  body:not(.mobile-page) .main_clar .tit02 {
    max-width: 520px;
    margin-left: 0;
    margin-right: 0;
  }

  body:not(.mobile-page) .main_about .bttm .txt01 {
    line-height: 1.82;
  }
}

@media (max-width: 480px) {
  .cg-history-controls {
    left: max(18px, calc(env(safe-area-inset-left, 0px) + 18px));
    bottom: max(20px, calc(env(safe-area-inset-bottom, 0px) + 20px));
    gap: 9px;
  }

  .cg-history-button {
    width: 56px;
    height: 56px;
  }

  .cg-main-return__mark {
    width: 18px;
    height: 28px;
  }
}

body:not(.mobile-page) .main_glow .tits {
  transform: translateY(1.6rem);
}

body:not(.mobile-page) .main_glow .tit01 + .tit02 {
  margin-top: 0.85rem;
}

@media (max-width: 1024px) {
  .m_main_glow {
    padding-bottom: 72px !important;
  }

  .m_main_glow .imgs {
    margin-top: 2.25rem !important;
  }

  .m_main_vis {
    margin-top: 104px !important;
    padding-bottom: 50px !important;
  }

  .m_main_vis .tit01 {
    font-size: 1.68rem !important;
    line-height: 1.32 !important;
    letter-spacing: 0.55px !important;
  }

  .m_main_vis .main-vis-kicker {
    width: min(84%, 320px);
    margin: 18px auto 0;
    color: #6b655d;
    font-family: var(--cg-main-korean-stack);
    font-size: 1.02rem;
    font-weight: 400;
    line-height: 1.58;
    letter-spacing: 0;
    text-align: center;
    word-break: keep-all;
  }

  .m_main_vis .imgs {
    margin-top: 2.2rem !important;
  }

  .m_main_refi {
    padding-top: 86px !important;
    padding-bottom: 56px !important;
  }

  .m_main_refi .tit01,
  .m_main_clar .tit01,
  .m_main_less .tit01,
  .m_main_glow .tit01 {
    font-size: 2.3rem !important;
    line-height: 1.34 !important;
    letter-spacing: 0.75px !important;
  }

  .m_main_refi .txt01,
  .m_main_clar .tit02,
  .m_main_less .tit02 {
    font-size: 1.18rem !important;
    font-weight: 500 !important;
    line-height: 1.86 !important;
    letter-spacing: 0 !important;
  }

  .m_main_clar .tit00,
  .m_main_less .tit00 {
    font-size: 1.12rem !important;
    font-weight: 400 !important;
    letter-spacing: 0.02em !important;
  }

  .m_main_clar {
    padding-top: 66px !important;
  }

  .m_main_clar .sec_business {
    margin-top: 32px !important;
  }

  .m_main_clar .sec_business .list_area {
    margin-top: 24px !important;
  }

  .m_main_clar .txt01 {
    font-size: 1.42rem !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
    letter-spacing: 0.2px !important;
  }

  .m_main_clar .txt02 {
    font-size: 1.2rem !important;
    line-height: 1.45 !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
  }

  .m_main_doctor .tit01 {
    font-size: 1.7rem !important;
    font-weight: 400 !important;
    line-height: 1.62 !important;
    letter-spacing: 0.15px !important;
  }

  .m_main_note .tit02 {
    font-size: 1.02rem !important;
    font-weight: 500 !important;
    line-height: 1.65 !important;
    letter-spacing: 0 !important;
  }

  .m_main_note ul li {
    font-size: 0.98rem !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    letter-spacing: 0 !important;
  }

  .m_main_note ul li a {
    white-space: normal !important;
    overflow: visible !important;
  }

  .m_more_btn {
    height: 3.25rem !important;
    line-height: 3.25rem !important;
    font-size: 0.98rem !important;
    letter-spacing: 0 !important;
  }

  .quick.discover.cg-bottom-action-bar {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    overflow: hidden;
    text-decoration: none;
    height: 42px !important;
    bottom: max(18px, calc(env(safe-area-inset-bottom, 0px) + 18px)) !important;
  }

  .quick.discover.cg-bottom-action-bar::before {
    content: none !important;
  }

  .quick.discover.cg-bottom-action-bar .cg-bottom-action-link {
    position: relative;
    flex: 1 1 50%;
    min-width: 0;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: inherit;
    font-family: var(--cg-main-korean-stack);
    font-size: 0.96rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
  }

  .quick.discover.cg-bottom-action-bar .cg-bottom-action-link + .cg-bottom-action-link::before {
    content: "";
    position: absolute;
    left: 0;
    top: 31%;
    width: 1px;
    height: 38%;
    background: rgba(243, 238, 231, 0.28);
  }

  .quick.discover.cg-bottom-action-bar .cg-bottom-action-link-primary {
    font-weight: 500;
  }
}

@media (min-width: 600px) and (max-width: 1024px) and (min-height: 650px) {
  .quick.discover.cg-bottom-action-bar,
  .quick.discover.cg-bottom-action-bar.is-discover-visible {
    left: 50% !important;
    right: auto !important;
    width: min(430px, calc(100vw - 40px)) !important;
    max-width: 430px !important;
    transform: translateX(-50%) !important;
  }
}

@media (max-width: 1024px) {
  body.mobile-page .cg-sub-quick-menu {
    position: fixed;
    right: max(16px, calc(env(safe-area-inset-right, 0px) + 16px));
    bottom: max(18px, calc(env(safe-area-inset-bottom, 0px) + 18px));
    z-index: 44;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.32s ease, transform 0.32s ease;
  }

  body.mobile-page.cg-main-nav-open .cg-sub-quick-menu,
  body.mobile-page.menu-open .cg-sub-quick-menu,
  body.mobile-page.open .cg-sub-quick-menu {
    opacity: 0;
    pointer-events: none;
    transform: translateY(8px);
  }

  body.mobile-page .cg-sub-quick-actions {
    position: absolute;
    right: 0;
    bottom: 58px;
    display: grid;
    gap: 8px;
    opacity: 0;
    pointer-events: none;
    transform: translateY(10px);
    transition: opacity 0.34s ease, transform 0.34s cubic-bezier(0.22, 0.86, 0.34, 1);
  }

  body.mobile-page .cg-sub-quick-menu.is-open .cg-sub-quick-actions {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }

  body.mobile-page .cg-sub-quick-link,
  body.mobile-page .cg-sub-quick-toggle {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(57, 49, 42, 0.16);
    box-shadow: 0 14px 28px rgba(33, 27, 22, 0.14);
    -webkit-tap-highlight-color: transparent;
  }

  body.mobile-page .cg-sub-quick-link {
    background: rgba(255, 252, 247, 0.96);
    transform: translateY(8px) scale(0.94);
    transition: transform 0.32s cubic-bezier(0.22, 0.86, 0.34, 1), box-shadow 0.32s ease;
  }

  body.mobile-page .cg-sub-quick-menu.is-open .cg-sub-quick-link {
    transform: translateY(0) scale(1);
  }

  body.mobile-page .cg-sub-quick-menu.is-open .cg-sub-quick-link:nth-child(1) {
    transition-delay: 0.02s;
  }

  body.mobile-page .cg-sub-quick-menu.is-open .cg-sub-quick-link:nth-child(2) {
    transition-delay: 0.055s;
  }

  body.mobile-page .cg-sub-quick-menu.is-open .cg-sub-quick-link:nth-child(3) {
    transition-delay: 0.09s;
  }

  body.mobile-page .cg-sub-quick-menu.is-open .cg-sub-quick-link:nth-child(4) {
    transition-delay: 0.125s;
  }

  body.mobile-page .cg-sub-quick-menu.is-open .cg-sub-quick-link:nth-child(5) {
    transition-delay: 0.16s;
  }

  body.mobile-page .cg-sub-quick-menu.is-open .cg-sub-quick-link:nth-child(6) {
    transition-delay: 0.195s;
  }

  body.mobile-page .cg-sub-quick-icon {
    width: 24px;
    height: 24px;
    display: block;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
  }

  body.mobile-page .cg-sub-quick-link[data-channel="phone"] .cg-sub-quick-icon {
    background-image: url("mirror-assets/ptldesign.cafe24.com/line/theme/line/img/icon-social-call_m.png");
  }

  body.mobile-page .cg-sub-quick-link[data-channel="kakao"] .cg-sub-quick-icon {
    background-image: url("mirror-assets/ptldesign.cafe24.com/line/theme/line/img/icon-social-kakao_m.png");
  }

  body.mobile-page .cg-sub-quick-link[data-channel="naver"] .cg-sub-quick-icon {
    background: #03c75a;
    border-radius: 50%;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "GWS Suit", "SUIT", "Noto Sans KR", sans-serif;
    font-size: 15px;
    font-weight: 780;
    line-height: 1;
    letter-spacing: 0;
  }

  body.mobile-page .cg-sub-quick-link[data-channel="naver"] .cg-sub-quick-icon::before {
    content: "N";
    transform: translateY(-0.5px);
  }

  body.mobile-page .cg-sub-quick-link[data-channel="promotion"] .cg-sub-quick-icon {
    background: #c98378;
    border-radius: 50%;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "GWS Suit", "SUIT", "Noto Sans KR", sans-serif;
    font-size: 9px;
    font-weight: 780;
    line-height: 1;
    letter-spacing: 0;
  }

  body.mobile-page .cg-sub-quick-link[data-channel="promotion"] .cg-sub-quick-icon::before {
    content: "News";
    transform: translateY(-0.25px);
  }

  body.mobile-page .cg-sub-quick-link[data-channel="blog"] .cg-sub-quick-icon {
    background-image: url("mirror-assets/ptldesign.cafe24.com/line/theme/line/img/q_blog_icon_m.png");
  }

  body.mobile-page .cg-sub-quick-link[data-channel="youtube"] .cg-sub-quick-icon {
    background-image: url("mirror-assets/ptldesign.cafe24.com/line/theme/line/img/icon-social-youtube_m.png");
  }

  body.mobile-page .cg-sub-quick-toggle {
    position: relative;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: rgba(47, 41, 35, 0.94);
    color: #fffaf1;
    cursor: pointer;
    transition: transform 0.32s ease, background 0.32s ease, box-shadow 0.32s ease;
  }

  body.mobile-page .cg-sub-quick-toggle-mark,
  body.mobile-page .cg-sub-quick-toggle-mark::before {
    position: absolute;
    width: 15px;
    height: 1px;
    border-radius: 999px;
    background: currentColor;
    transition: transform 0.34s cubic-bezier(0.22, 0.86, 0.34, 1);
  }

  body.mobile-page .cg-sub-quick-toggle-mark {
    transform: rotate(0deg);
  }

  body.mobile-page .cg-sub-quick-toggle-mark::before {
    content: "";
    left: 0;
    top: 0;
    transform: rotate(90deg);
  }

  body.mobile-page .cg-sub-quick-menu.is-open .cg-sub-quick-toggle {
    background: rgba(34, 29, 25, 0.96);
    transform: rotate(90deg);
  }

  body.mobile-page .cg-sub-quick-menu.is-open .cg-sub-quick-toggle-mark {
    transform: rotate(45deg);
  }

  body.mobile-page .cg-sub-quick-menu.is-open .cg-sub-quick-toggle-mark::before {
    transform: rotate(90deg);
  }
}

@media (min-width: 1025px) {
  .cg-sub-quick-menu {
    display: none !important;
  }

  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.kakao,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.blog,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.tube,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.naver {
    padding: 11px 0 10px;
  }

  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.promotion {
    padding: 11px 0 11px;
  }

  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.kakao .icon-social.kakao,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.kakao:hover .icon-social.kakao,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.blog .icon-social.blog,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.blog:hover .icon-social.blog,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.tube .icon-social.tube,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.tube:hover .icon-social.tube {
    width: 30px;
    height: 30px;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    background-color: transparent !important;
    border-radius: 0;
    transition: all 0.3s ease-in-out;
  }

  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.kakao .icon-social.kakao,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.kakao:hover .icon-social.kakao {
    background-image: url("mirror-assets/ptldesign.cafe24.com/line/theme/line/img/icon-social-kakao_m.png") !important;
  }

  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.blog .icon-social.blog,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.blog:hover .icon-social.blog {
    background-image: url("mirror-assets/ptldesign.cafe24.com/line/theme/line/img/q_blog_icon_m.png") !important;
  }

  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.tube .icon-social.tube,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.tube:hover .icon-social.tube {
    background-image: url("mirror-assets/ptldesign.cafe24.com/line/theme/line/img/icon-social-youtube_m.png") !important;
  }

  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.naver .icon-social.naver,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.naver:hover .icon-social.naver {
    width: 30px;
    height: 30px;
    background: #03c75a !important;
    border-radius: 50%;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: "GWS Suit", "SUIT", "Noto Sans KR", sans-serif;
    font-size: 16px;
    font-weight: 780;
    line-height: 1;
    letter-spacing: 0;
  }

  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.naver .icon-social.naver::before {
    content: "N";
    transform: translateY(-0.5px);
  }

  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.promotion .icon-social.promotion,
  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.promotion:hover .icon-social.promotion {
    width: 30px;
    height: 30px;
    background: #c98378 !important;
    border-radius: 50%;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: "GWS Suit", "SUIT", "Noto Sans KR", sans-serif;
    font-size: 9px;
    font-weight: 780;
    line-height: 1;
    letter-spacing: 0;
  }

  body:not(.mobile-page) #quick .quick-social-icon .title-wrap.promotion .icon-social.promotion::before {
    content: "News";
    transform: translateY(-0.25px);
  }
}

body:not(.mobile-page).about-page .sub-shell .eyebrow {
  margin-bottom: 22px !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
}

body:not(.mobile-page).about-page .sub-shell .hero-copy h1 {
  max-width: 650px !important;
  font-size: 52px !important;
  line-height: 1.1 !important;
  letter-spacing: 0 !important;
}

body:not(.mobile-page).about-page .sub-shell .hero-kicker {
  margin-top: 34px !important;
  font-size: 16.5px !important;
  line-height: 1.88 !important;
  letter-spacing: 0 !important;
}

body:not(.mobile-page).about-page .sub-shell .hero-text,
body:not(.mobile-page).about-page .sub-shell .section-text,
body:not(.mobile-page).about-page .sub-shell .section-heading-ko,
body:not(.mobile-page).about-page .sub-shell .value-card p,
body:not(.mobile-page).about-page .sub-shell .doctor-profile-list,
body:not(.mobile-page).about-page .sub-shell .visit-block p,
body:not(.mobile-page).about-page .sub-shell .visit-block dd,
body:not(.mobile-page).about-page .sub-shell .cta-ko {
  font-size: 16.5px !important;
  font-weight: 400 !important;
  line-height: 1.92 !important;
  letter-spacing: 0 !important;
}

body:not(.mobile-page).about-page .sub-shell .hero-text {
  max-width: 560px !important;
  margin-top: 30px !important;
}

body:not(.mobile-page).about-page .sub-shell .section-title {
  font-size: 40px !important;
  line-height: 1.18 !important;
  letter-spacing: 0 !important;
  white-space: nowrap;
}

body:not(.mobile-page).about-page .sub-shell .section-heading-ko {
  margin-top: 28px !important;
}

body:not(.mobile-page).about-page .sub-shell .philosophy .section-text {
  max-width: 540px !important;
  margin-top: 28px !important;
  margin-bottom: 0 !important;
}

body:not(.mobile-page).about-page .sub-shell .about-intro .section-text,
body:not(.mobile-page).about-page .sub-shell .values .section-text,
body:not(.mobile-page).about-page .sub-shell .visit-head .section-text {
  max-width: 560px !important;
}

body:not(.mobile-page).about-page .sub-shell .value-card h3 {
  font-family: var(--font-en) !important;
  font-size: 27px !important;
  font-weight: 400 !important;
  line-height: 1.22 !important;
  letter-spacing: 0 !important;
  white-space: nowrap;
}

body:not(.mobile-page).about-page .sub-shell .value-card p {
  max-width: 320px !important;
  margin-top: 24px !important;
}

body:not(.mobile-page).about-page .sub-shell .doctor-quote {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
  font-size: 19px !important;
  line-height: 1.9 !important;
}

body:not(.mobile-page).about-page .sub-shell .doctor-name strong {
  font-size: 28px !important;
  letter-spacing: 0 !important;
}

body:not(.mobile-page).about-page .sub-shell .doctor-name span {
  font-size: 13px !important;
}

body:not(.mobile-page).about-page .sub-shell .visit-block h3 {
  margin-bottom: 18px !important;
  font-size: 22px !important;
  line-height: 1.42 !important;
  letter-spacing: 0 !important;
}

body:not(.mobile-page).about-page .sub-shell .visit-phone {
  margin-bottom: 24px !important;
  font-size: 38px !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

body:not(.mobile-page).about-page .sub-shell .cta-title {
  font-size: 50px !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  white-space: nowrap;
}

body:not(.mobile-page).about-page .sub-shell .cta-ko {
  margin-top: 55px !important;
  margin-bottom: 89px !important;
}

body:not(.mobile-page).about-page {
  --cg-sub-display-size: 52px;
  --cg-sub-section-size: 40px;
  --cg-sub-subhead-size: 22px;
  --cg-sub-copy-size: 16.5px;
  --cg-sub-label-size: 11px;
  --cg-sub-display-line: 1.1;
  --cg-sub-section-line: 1.18;
  --cg-sub-copy-line: 1.92;
  --cg-sub-label-line: 1.45;
  --cg-sub-display-tracking: 0;
  --cg-sub-body-tracking: 0;
}

body:not(.mobile-page).about-page
  :is(.sub-shell)
  main
  :is(p, li, dd):not(.eyebrow):not(.hero-label):not(.serif-label):not(.serif-en):not(.point-label):not(.advanced-serif):not(.xan-story-serif):not(.ac-eyebrow):not(.ac-panel-label):not(.laser-title):not(.english-title):not(.cta-title):not(.ac-display):not(.value-index):not(.intro-number):not(.closing-main) {
  font-size: 16.5px !important;
  font-weight: 400 !important;
  line-height: 1.92 !important;
  letter-spacing: 0 !important;
}

body:not(.mobile-page).about-page .sub-shell .values-head {
  margin-bottom: 82px !important;
}

body:not(.mobile-page).about-page .sub-shell .values .section-text,
body:not(.mobile-page).about-page .sub-shell .visit-head .section-text {
  margin-top: 28px !important;
}

body:not(.mobile-page).about-page .sub-shell .doctor-profile-list {
  gap: 0.76rem !important;
  line-height: 1.9 !important;
}

body:not(.mobile-page).about-page .sub-shell .visit-head {
  margin-bottom: 80px !important;
}

body:not(.mobile-page).about-page .sub-shell .visit-info {
  gap: 50px !important;
}

body:not(.mobile-page).about-page .sub-shell .visit-block h3 {
  margin-bottom: 26px !important;
}

body:not(.mobile-page).about-page .sub-shell .visit-hours dl {
  gap: 18px !important;
}

body.about-page .sub-shell .map-actions a {
  transition:
    border-color 180ms ease,
    background-color 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease;
}

body.about-page .sub-shell .map-actions a:nth-child(1) {
  border-color: rgba(3, 199, 90, 0.32) !important;
  color: #2f7f59 !important;
  background: rgba(3, 199, 90, 0.055) !important;
}

body.about-page .sub-shell .map-actions a:nth-child(2) {
  border-color: rgba(195, 151, 30, 0.34) !important;
  color: #8b6d28 !important;
  background: rgba(254, 229, 0, 0.11) !important;
}

body.about-page .sub-shell .map-actions a:nth-child(3) {
  border-color: rgba(46, 107, 164, 0.32) !important;
  color: #386f9f !important;
  background: rgba(46, 107, 164, 0.06) !important;
}

body.about-page .sub-shell .map-actions a:hover {
  box-shadow: 0 10px 24px rgba(68, 56, 44, 0.08);
}

body:not(.mobile-page).about-page .sub-shell .visit-contact .visit-actions {
  gap: 12px !important;
}

body:not(.mobile-page).about-page .sub-shell .visit-contact .visit-actions a {
  min-width: 134px !important;
  min-height: 44px !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  font-size: 15px !important;
}

body:not(.mobile-page).about-page .sub-shell .cta-section {
  min-height: 68vh !important;
  padding-top: 148px !important;
  padding-bottom: 148px !important;
}

body:not(.mobile-page).about-page .sub-shell .cta-inner .eyebrow {
  margin-bottom: 34px !important;
}

@media (min-width: 1025px) and (max-width: 1120px) {
  body:not(.mobile-page).about-page .about-intro > div {
    grid-template-columns: 414px minmax(0, 1fr);
    gap: 24px;
  }

  body:not(.mobile-page).about-page .sub-shell .about-intro .section-text {
    max-width: 430px !important;
  }
}

@media (min-width: 1025px) {
  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page,
      .laser-solution-page,
      .before-after-page,
      .appointment-page,
      .events-page
    ) {
    --cg-sub-display-size: 52px;
    --cg-sub-section-size: 40px;
    --cg-sub-subhead-size: 22px;
    --cg-sub-copy-size: 16.5px;
    --cg-sub-label-size: 11px;
    --cg-sub-button-size: 15px;
    --cg-sub-display-line: 1.12;
    --cg-sub-section-line: 1.18;
    --cg-sub-copy-line: 1.92;
    --cg-sub-label-line: 1.45;
    --cg-sub-display-tracking: 0;
    --cg-sub-body-tracking: 0;
  }

  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page,
      .laser-solution-page,
      .before-after-page,
      .appointment-page,
      .events-page
    )
    .sub-shell
    main
    :is(h1, .advanced-hero h1, .xan-story h1, .hero h1, .events-hero h1) {
    font-size: var(--cg-sub-display-size) !important;
    font-weight: 400 !important;
    line-height: var(--cg-sub-display-line) !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
  }

  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page,
      .laser-solution-page,
      .before-after-page,
      .appointment-page,
      .events-page
    )
    .sub-shell
    main
    :is(
      h2,
      .advanced-section h2,
      .xan-story h2,
      .laser-title,
      .section-title,
      .events-section-heading h2,
      .skin-index-head h2,
      .ba-notice h2
    ):not(.cta-title) {
    font-size: var(--cg-sub-section-size) !important;
    font-weight: 400 !important;
    line-height: var(--cg-sub-section-line) !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
  }

  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page,
      .laser-solution-page,
      .before-after-page,
      .appointment-page,
      .events-page
    )
    .sub-shell
    main
    :is(h3, .advanced-microfat h3, .visit-block h3, .xan-process-lines h3) {
    font-size: var(--cg-sub-subhead-size) !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;
    letter-spacing: 0 !important;
  }

  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page,
      .laser-solution-page,
      .before-after-page,
      .appointment-page,
      .events-page
    )
    .sub-shell
    main
    :is(p, li, dd):not(.eyebrow):not(.hero-label):not(.serif-label):not(.serif-en):not(.point-label):not(.advanced-serif):not(.xan-story-serif):not(.ac-eyebrow):not(.ac-panel-label):not(.laser-title):not(.english-title):not(.cta-title):not(.ac-display):not(.value-index):not(.intro-number):not(.statement-heading):not(.closing-main) {
    font-size: var(--cg-sub-copy-size) !important;
    font-weight: 400 !important;
    line-height: var(--cg-sub-copy-line) !important;
    letter-spacing: 0 !important;
  }

  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page,
      .laser-solution-page,
      .before-after-page,
      .appointment-page,
      .events-page
    )
    .sub-shell
    main
    :is(.eyebrow, .advanced-serif, .xan-story-serif, .point-label, .serif-label, .events-kicker, .skin-index-kicker, .ac-eyebrow, .ac-panel-label) {
    font-size: var(--cg-sub-label-size) !important;
    line-height: var(--cg-sub-label-line) !important;
    letter-spacing: 0 !important;
  }

  body:not(.mobile-page):not(.about-page):is(.advanced-page, .events-page)
    .sub-shell
    main
    :is(.advanced-hero h1 span, .events-hero h1 span),
  body:not(.mobile-page):not(.about-page)
    .sub-shell
    main
    :is(.cta-title span, .cta-ko span) {
    display: inline !important;
    white-space: normal !important;
  }

  body:not(.mobile-page):not(.about-page):is(.advanced-page, .events-page)
    .sub-shell
    main
    :is(.advanced-hero h1 span, .events-hero h1 span)
    + span::before,
  body:not(.mobile-page):not(.about-page)
    .sub-shell
    main
    :is(.cta-title span, .cta-ko span)
    + span::before {
    content: " ";
  }

  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page,
      .laser-solution-page,
      .before-after-page,
      .appointment-page,
      .events-page
    )
    .sub-shell
    .cta-section {
    min-height: 68vh !important;
    padding-top: 148px !important;
    padding-bottom: 148px !important;
  }

  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page,
      .laser-solution-page,
      .before-after-page,
      .appointment-page,
      .events-page
    )
    .sub-shell
    .cta-inner {
    width: min(100%, 1200px) !important;
    max-width: 1200px !important;
  }

  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page,
      .laser-solution-page,
      .before-after-page,
      .appointment-page,
      .events-page
    )
    .sub-shell
    .cta-inner
    .eyebrow {
    margin-bottom: 34px !important;
  }

  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page,
      .laser-solution-page,
      .before-after-page,
      .appointment-page,
      .events-page
    )
    .sub-shell
    .cta-title {
    font-size: 50px !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
  }

  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page,
      .laser-solution-page,
      .before-after-page,
      .appointment-page,
      .events-page
    )
    .sub-shell
    .cta-ko {
    max-width: 640px !important;
    margin-top: 55px !important;
    margin-bottom: 89px !important;
    font-size: var(--cg-sub-copy-size) !important;
    line-height: var(--cg-sub-copy-line) !important;
    letter-spacing: 0 !important;
    text-align: center !important;
  }

  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page,
      .laser-solution-page,
      .before-after-page,
      .appointment-page,
      .events-page
    )
    .sub-shell
    .round-button {
    min-width: 176px !important;
    height: 54px !important;
    padding-left: 28px !important;
    padding-right: 28px !important;
    font-size: var(--cg-sub-button-size) !important;
    letter-spacing: 0 !important;
  }
}

@media (min-width: 1025px) {
  body:not(.mobile-page):not(.about-page):is(.desktop-treatment-page, .refractory-page)
    :is(.solar-page, .light-page, .rp-page)
    main
    h1 {
    font-size: 52px !important;
    font-weight: 400 !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
  }

  body:not(.mobile-page):not(.about-page):is(.desktop-treatment-page, .refractory-page)
    :is(.solar-page, .light-page, .rp-page)
    main
    h2:not(.cta-title) {
    font-size: 40px !important;
    font-weight: 400 !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
  }

  body:not(.mobile-page):not(.about-page):is(.desktop-treatment-page, .refractory-page)
    :is(.solar-page, .light-page, .rp-page)
    main
    h3 {
    font-size: 22px !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;
    letter-spacing: 0 !important;
  }

  body:not(.mobile-page):not(.about-page):is(.desktop-treatment-page, .refractory-page)
    :is(.solar-page, .light-page, .rp-page)
    main
    :is(p, li, dd):not(.eyebrow):not(.hero-label):not(.serif-label):not(.serif-en):not(.point-label):not(.advanced-serif):not(.xan-story-serif):not(.ac-eyebrow):not(.ac-panel-label):not(.laser-title):not(.english-title):not(.cta-title):not(.ac-display):not(.value-index):not(.intro-number):not(.statement-heading):not(.closing-main) {
    font-size: 16.5px !important;
    font-weight: 400 !important;
    line-height: 1.92 !important;
    letter-spacing: 0 !important;
  }

  body:not(.mobile-page):not(.about-page):is(.desktop-treatment-page, .refractory-page)
    :is(.solar-page, .light-page, .rp-page)
    main
    :is(.eyebrow, .serif-label, .point-label, .ac-eyebrow, .ac-panel-label) {
    font-size: 11px !important;
    line-height: 1.45 !important;
    letter-spacing: 0 !important;
  }

  body:not(.mobile-page).desktop-treatment-page .sub-shell .cta-section {
    min-height: 68vh !important;
    padding-top: 148px !important;
    padding-bottom: 148px !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page) .cta-section {
    min-height: 68vh !important;
    padding-top: 148px !important;
    padding-bottom: 148px !important;
  }

  body:not(.mobile-page).desktop-treatment-page .sub-shell .cta-inner {
    width: min(100%, 1200px) !important;
    max-width: 1200px !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page) .cta-inner {
    width: min(100%, 1200px) !important;
    max-width: 1200px !important;
  }

  body:not(.mobile-page).desktop-treatment-page .sub-shell .cta-inner .eyebrow {
    margin-bottom: 34px !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page) .cta-inner .eyebrow {
    margin-bottom: 34px !important;
  }

  body:not(.mobile-page).desktop-treatment-page .sub-shell .cta-title {
    display: block !important;
    width: min(100%, 1200px) !important;
    max-width: 1200px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    font-size: 50px !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page) .cta-title {
    display: block !important;
    width: min(100%, 1200px) !important;
    max-width: 1200px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    font-size: 50px !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
    text-wrap: balance;
  }

  body:not(.mobile-page).desktop-treatment-page .sub-shell .cta-ko {
    display: block !important;
    width: min(100%, 640px) !important;
    max-width: 640px !important;
    margin: 55px auto 89px !important;
    font-size: 16.5px !important;
    line-height: 1.92 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page) .cta-ko {
    display: block !important;
    width: min(100%, 640px) !important;
    max-width: 640px !important;
    margin: 55px auto 89px !important;
    font-size: 16.5px !important;
    line-height: 1.92 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
  }

  body:not(.mobile-page).desktop-treatment-page .sub-shell .round-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 176px !important;
    height: 54px !important;
    padding-right: 28px !important;
    padding-left: 28px !important;
    font-size: 15px !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page) .cta-section .round-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 176px !important;
    height: 54px !important;
    padding-right: 28px !important;
    padding-left: 28px !important;
    font-size: 15px !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
  }
}

@media (min-width: 1280px) {
  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-hero {
    grid-template-columns: minmax(660px, 0.9fr) minmax(420px, 0.8fr) !important;
    gap: clamp(52px, 4.5vw, 76px) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-hero-copy,
  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-hero-copy
    h1 {
    max-width: 720px !important;
  }

  body:not(.mobile-page).pigment-page .xan-story-intro {
    grid-template-columns: minmax(650px, 0.9fr) minmax(420px, 0.84fr) !important;
    gap: clamp(52px, 4.5vw, 76px) !important;
  }

  body:not(.mobile-page).pigment-page .xan-story-intro .xan-story-copy,
  body:not(.mobile-page).pigment-page .xan-story-intro h1 {
    max-width: 700px !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page) .rp-hero {
    width: min(1240px, calc(100% - 8vw)) !important;
    grid-template-columns: minmax(660px, 0.95fr) minmax(390px, 0.85fr) !important;
    gap: clamp(52px, 4.5vw, 76px) !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    .rp-hero
    .hero-copy,
  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    .rp-hero
    h1 {
    max-width: 720px !important;
  }
}

@media (min-width: 1025px) {
  body:not(.mobile-page):not(.about-page)
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    :is(.hero-text, .section-text, .body-copy, .copy, .hero-sub, .lead, .closing-sub) {
    max-width: min(100%, 680px) !important;
  }

  body:not(.mobile-page).advanced-page
    .advanced-hero-copy
    p:not(.advanced-serif),
  body:not(.mobile-page).advanced-page
    .advanced-section
    :is(.advanced-copy, .advanced-difference-copy, .advanced-lifting-copy, .section-copy)
    p {
    max-width: min(100%, 660px) !important;
  }

  body:not(.mobile-page).advanced-page
    .advanced-section
    :is(.advanced-copy, .advanced-difference-copy, .advanced-lifting-copy, .section-copy),
  body:not(.mobile-page).advanced-page
    .advanced-section
    :is(.advanced-copy, .advanced-difference-copy, .advanced-lifting-copy, .section-copy)
    h2 {
    max-width: 700px !important;
  }

  body:not(.mobile-page).advanced-page
    .advanced-section
    :is(h2, .microfat-area-copy h2),
  body:not(.mobile-page).lifting-page .lifting-dual h2 {
    font-size: 38px !important;
    line-height: 1.18 !important;
  }

  body:not(.mobile-page).microfat-page .microfat-area-copy p {
    max-width: min(100%, 620px) !important;
  }

  body:not(.mobile-page).xan-page
    .xan-story-intro
    .xan-story-copy,
  body:not(.mobile-page).xan-page
    .xan-story-intro
    .xan-story-copy
    h1,
  body:not(.mobile-page).xan-page
    .xan-story-intro
    .xan-story-copy
    p {
    max-width: 680px !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    .rp-hero
    .hero-copy
    :is(.lead, p),
  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    :is(.rp-split, .rp-proof, .rp-method)
    :is(.split-copy, .proof-copy, .method-copy)
    p {
    max-width: min(100%, 680px) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).solar-desktop-page
    :is(.solar-hero, .section-copy, .device-copy)
    :is(.body-copy, p) {
    max-width: min(100%, 680px) !important;
  }

  body:not(.mobile-page).light-desktop-page
    main
    :is(.intro, .principle, .plan, .closing)
    :is(.copy, p) {
    max-width: min(100%, 680px) !important;
  }

  body:not(.mobile-page).events-page .events-hero-copy,
  body:not(.mobile-page).events-page .events-hero-copy p {
    width: min(100%, 680px) !important;
    max-width: 680px !important;
  }

  body:not(.mobile-page).appointment-page .ac-channel-copy,
  body:not(.mobile-page).appointment-page .ac-channel-copy h2,
  body:not(.mobile-page).appointment-page .ac-channel-copy .ac-copy {
    max-width: 680px !important;
  }
}

@media (min-width: 1280px) {
  body:not(.mobile-page).advanced-page .advanced-science {
    grid-template-columns: minmax(670px, 0.98fr) minmax(450px, 0.74fr) !important;
    gap: clamp(36px, 3.8vw, 48px) !important;
  }

  body:not(.mobile-page).advanced-page .advanced-difference {
    grid-template-columns: minmax(460px, 0.72fr) minmax(670px, 0.98fr) !important;
    gap: clamp(36px, 3.8vw, 48px) !important;
  }

  body:not(.mobile-page).advanced-page
    :is(.advanced-lifting, .advanced-volume) {
    grid-template-columns: minmax(670px, 0.98fr) minmax(420px, 0.74fr) !important;
    gap: clamp(40px, 4vw, 56px) !important;
  }

  body:not(.mobile-page).lifting-page .lifting-dual {
    grid-template-columns: minmax(670px, 0.95fr) repeat(2, minmax(220px, 0.42fr)) !important;
    gap: clamp(30px, 3.2vw, 35px) !important;
  }

  body:not(.mobile-page).microfat-page .microfat-areas {
    grid-template-columns: minmax(620px, 0.95fr) minmax(420px, 0.72fr) !important;
    gap: clamp(44px, 4.8vw, 68px) !important;
  }

  body:not(.mobile-page).xan-page .xan-story-intro {
    grid-template-columns: minmax(610px, 0.9fr) minmax(430px, 0.82fr) !important;
    gap: clamp(48px, 5vw, 76px) !important;
  }

  body:not(.mobile-page).solar-desktop-page .solar-hero {
    grid-template-columns: minmax(560px, 0.84fr) minmax(480px, 0.92fr) !important;
    gap: clamp(52px, 5vw, 80px) !important;
  }

  body:not(.mobile-page).events-page .events-hero {
    grid-template-columns: minmax(660px, 0.9fr) minmax(480px, 0.84fr) !important;
    gap: clamp(36px, 3.8vw, 40px) !important;
  }

  body:not(.mobile-page).appointment-page .ac-channel-section {
    grid-template-columns: minmax(630px, 0.94fr) minmax(510px, 1fr) !important;
    gap: clamp(36px, 3.2vw, 40px) !important;
  }
}

@media (min-width: 1025px) {
  body:not(.mobile-page):not(.about-page):is(
      .advanced-page,
      .xan-page,
      .desktop-treatment-page,
      .refractory-page
    ) {
    --cg-sub-section-size: 38px !important;
    --cg-sub-section-line: 1.18 !important;
  }

  body:not(.mobile-page):not(.about-page).advanced-page
    .sub-shell
    main
    .advanced-section
    h2,
  body:not(.mobile-page):not(.about-page).advanced-page
    .sub-shell
    main
    .microfat-area-copy
    h2,
  body:not(.mobile-page):not(.about-page).lifting-page
    .sub-shell
    main
    .lifting-dual
    h2 {
    font-size: 38px !important;
    line-height: 1.18 !important;
  }
}

@media (min-width: 1280px) {
  body:not(.mobile-page).xan-page
    :is(.pigment-statement, .pigment-energy, .pigment-candidates, .ota-depth, .ota-strategy, .adm-diagnosis, .adm-strategy)
    .xan-story-copy {
    max-width: 700px !important;
  }

  body:not(.mobile-page).xan-page
    :is(.pigment-statement, .pigment-energy, .ota-depth, .ota-strategy, .adm-diagnosis, .adm-strategy) {
    grid-template-columns: minmax(680px, 0.98fr) minmax(420px, 0.72fr) !important;
    gap: clamp(36px, 3.8vw, 48px) !important;
  }

  body:not(.mobile-page).xan-page
    :is(.ota-device, .ota-difference, .adm-device, .adm-difference) {
    grid-template-columns: minmax(420px, 0.72fr) minmax(680px, 0.98fr) !important;
    gap: clamp(36px, 3.8vw, 48px) !important;
  }

  body:not(.mobile-page).xan-page
    :is(.ota-device, .ota-difference, .adm-device, .adm-difference)
    .xan-story-copy,
  body:not(.mobile-page).xan-page
    :is(.pigment-candidates, .ota-compare, .adm-compare)
    h2 {
    max-width: 700px !important;
  }

  body:not(.mobile-page).xan-page
    :is(.pigment-statement, .pigment-energy, .pigment-candidates, .ota-depth, .ota-strategy, .ota-device, .ota-difference, .adm-diagnosis, .adm-strategy, .adm-device, .adm-difference)
    h2 {
    font-size: 38px !important;
    line-height: 1.18 !important;
  }

  body:not(.mobile-page).solar-desktop-page
    :is(.diagnosis, .recurrence, .care) {
    grid-template-columns: minmax(660px, 0.98fr) minmax(420px, 0.72fr) !important;
    gap: clamp(36px, 3.8vw, 48px) !important;
  }

  body:not(.mobile-page).solar-desktop-page
    :is(.diagnosis, .recurrence, .care, .section-copy)
    h2 {
    max-width: 700px !important;
    font-size: 38px !important;
    line-height: 1.18 !important;
  }

  body:not(.mobile-page).refractory-page
    :is(.rp-split, .rp-method) {
    grid-template-columns: minmax(680px, 0.98fr) minmax(420px, 0.72fr) !important;
    gap: clamp(36px, 3.8vw, 48px) !important;
  }

  body:not(.mobile-page).refractory-page
    :is(.split-copy, .method-copy)
    h2 {
    max-width: 700px !important;
    font-size: 38px !important;
    line-height: 1.18 !important;
  }

  body:not(.mobile-page).light-desktop-page .analysis {
    grid-template-columns: minmax(660px, 0.98fr) minmax(420px, 0.72fr) !important;
    column-gap: clamp(36px, 3.8vw, 48px) !important;
  }

  body:not(.mobile-page).light-desktop-page .plan {
    grid-template-columns: minmax(420px, 0.72fr) minmax(660px, 0.98fr) !important;
    gap: clamp(36px, 3.8vw, 48px) !important;
  }

  body:not(.mobile-page).light-desktop-page
    :is(.analysis, .plan)
    h2 {
    max-width: 700px !important;
    font-size: 38px !important;
    line-height: 1.18 !important;
  }
}

@media (min-width: 1280px) {
  body:not(.mobile-page).pigment-page .pigment-candidates {
    grid-template-columns: minmax(500px, 0.78fr) minmax(660px, 0.98fr) !important;
    gap: clamp(40px, 3.4vw, 52px) !important;
  }

  body:not(.mobile-page).pigment-page .pigment-candidates .pigment-candidate-image {
    grid-column: 1 !important;
  }

  body:not(.mobile-page).pigment-page
    .pigment-candidates
    :is(.xan-story-copy, .pigment-candidate-list) {
    grid-column: 2 !important;
    max-width: 700px !important;
  }

  body:not(.mobile-page).ota-page:not(.adm-page) .ota-depth {
    grid-template-columns: minmax(420px, 0.72fr) minmax(680px, 0.98fr) !important;
  }

  body:not(.mobile-page).ota-page:not(.adm-page) .ota-depth .ota-depth-image {
    grid-column: 1 !important;
  }

  body:not(.mobile-page).ota-page:not(.adm-page)
    .ota-depth
    :is(.xan-story-center, .ota-depth-lines) {
    grid-column: 2 !important;
    max-width: 700px !important;
  }

  body:not(.mobile-page).adm-page .adm-diagnosis {
    grid-template-columns: minmax(680px, 0.98fr) minmax(420px, 0.72fr) !important;
  }

  body:not(.mobile-page).adm-page .adm-diagnosis .xan-story-center {
    grid-column: 1 !important;
    max-width: 700px !important;
  }

  body:not(.mobile-page).adm-page .adm-diagnosis .adm-diagnosis-image {
    grid-column: 2 !important;
  }

  body:not(.mobile-page).adm-page .adm-diagnosis .adm-marker-list {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }

  body:not(.mobile-page).solar-desktop-page .diagnosis {
    grid-template-columns: minmax(420px, 0.72fr) minmax(680px, 0.98fr) !important;
  }

  body:not(.mobile-page).solar-desktop-page .diagnosis .diagnosis-image {
    grid-column: 1 !important;
  }

  body:not(.mobile-page).solar-desktop-page .diagnosis .section-copy {
    grid-column: 2 !important;
    max-width: 700px !important;
  }

  body:not(.mobile-page).solar-desktop-page :is(.recurrence, .care) {
    grid-template-columns: minmax(680px, 0.98fr) minmax(420px, 0.72fr) !important;
  }

  body:not(.mobile-page).solar-desktop-page :is(.recurrence, .care) > :not(figure, .fine-list, .care-steps) {
    grid-column: 1 !important;
    max-width: 700px !important;
  }

  body:not(.mobile-page).solar-desktop-page :is(.recurrence, .care) > figure {
    grid-column: 2 !important;
  }

  body:not(.mobile-page).refractory-page :is(.rp-split, .rp-method) {
    grid-template-columns: minmax(420px, 0.72fr) minmax(680px, 0.98fr) !important;
  }

  body:not(.mobile-page).refractory-page :is(.rp-split, .rp-method) > figure {
    grid-column: 1 !important;
  }

  body:not(.mobile-page).refractory-page :is(.split-copy, .method-copy) {
    grid-column: 2 !important;
    max-width: 700px !important;
  }

  body:not(.mobile-page).ota-page:not(.adm-page) .ota-compare > h2 {
    width: min(100%, 980px) !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body:not(.mobile-page).adm-page .adm-compare > h2 {
    width: min(100%, 980px) !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body:not(.mobile-page).adm-page .adm-strategy {
    grid-template-columns: minmax(740px, 1fr) minmax(360px, 0.62fr) !important;
  }

  body:not(.mobile-page).adm-page .adm-strategy .xan-story-copy {
    max-width: 740px !important;
  }

  body:not(.mobile-page).adm-page .adm-strategy h2 {
    max-width: 740px !important;
  }

  body:not(.mobile-page).adm-page
    .adm-hero
    > .xan-story-copy:not(.adm-hero-body) {
    justify-self: start !important;
    width: 100% !important;
    max-width: 680px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body:not(.mobile-page).light-desktop-page .analysis,
  body:not(.mobile-page).light-desktop-page .plan {
    grid-template-columns: minmax(720px, 1fr) minmax(360px, 0.62fr) !important;
  }

  body:not(.mobile-page).light-desktop-page .plan {
    padding-left: max(56px, calc((100vw - 1360px) / 2 + 56px)) !important;
    padding-right: max(56px, calc((100vw - 1360px) / 2 + 56px)) !important;
    grid-template-columns: minmax(400px, 0.52fr) minmax(720px, 1fr) !important;
    column-gap: clamp(44px, 3.6vw, 52px) !important;
    row-gap: 0 !important;
  }

  body:not(.mobile-page).light-desktop-page .plan .image-frame {
    grid-column: 2 !important;
    justify-self: end !important;
    width: min(100%, 820px) !important;
    aspect-ratio: 5731 / 3821 !important;
  }

  body:not(.mobile-page).light-desktop-page .plan .image-frame img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  body:not(.mobile-page).light-desktop-page
    :is(.analysis, .plan)
    h2 {
    max-width: 740px !important;
    font-size: 36px !important;
    line-height: 1.2 !important;
  }

  body:not(.mobile-page).refractory-page :is(.rp-split, .rp-method) {
    grid-template-columns: minmax(380px, 0.62fr) minmax(740px, 1fr) !important;
  }

  body:not(.mobile-page).refractory-page
    :is(.rp-split, .rp-method)
    :is(.split-copy, .method-copy)
    h2 {
    max-width: 740px !important;
    font-size: 36px !important;
    line-height: 1.22 !important;
  }

  body:not(.mobile-page):not(.about-page).desktop-treatment-page.light-desktop-page
    .light-page
    main
    .plan
    :is(.point-label, h2, .copy, ol) {
    grid-column: 1 !important;
  }

  body:not(.mobile-page):not(.about-page).desktop-treatment-page.light-desktop-page
    .light-page
    main
    :is(.analysis, .plan)
    h2:not(.cta-title) {
    max-width: 740px !important;
    font-size: 36px !important;
    line-height: 1.2 !important;
  }

  body:not(.mobile-page):not(.about-page).refractory-page
    .rp-page
    main
    :is(.rp-split, .rp-method)
    :is(.split-copy, .method-copy)
    h2:not(.cta-title) {
    max-width: 740px !important;
    font-size: 36px !important;
    line-height: 1.22 !important;
  }
}

@media (min-width: 1025px) {
  body:not(.mobile-page).pigment-page {
    --premium-section-x: max(88px, calc((100vw - 1240px) / 2 + 50px));
    --premium-title-copy-gap: 34px;
    --premium-list-gap: 24px;
  }

  body:not(.mobile-page).pigment-page .pigment-story .xan-story-section {
    padding-left: var(--premium-section-x) !important;
    padding-right: var(--premium-section-x) !important;
  }

  body:not(.mobile-page).pigment-page
    .pigment-story
    :is(.xan-story-serif, .eyebrow) {
    margin-bottom: 22px !important;
  }

  body:not(.mobile-page).pigment-page
    .pigment-story
    :is(h1, h2):not(.cta-title) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  body:not(.mobile-page).pigment-page .pigment-hero .xan-story-copy h1 + p,
  body:not(.mobile-page).pigment-page .pigment-energy .xan-story-copy h2 + p,
  body:not(.mobile-page).pigment-page .pigment-difference h2 + .xan-story-lead,
  body:not(.mobile-page).pigment-page .pigment-balance h2 + .xan-story-lead {
    margin-top: var(--premium-title-copy-gap) !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement {
    grid-template-columns: minmax(650px, 1fr) minmax(430px, 0.66fr) !important;
    grid-template-areas:
      "label image"
      "title image"
      "lead image"
      "note image" !important;
    align-items: center !important;
    column-gap: clamp(46px, 4.4vw, 58px) !important;
    row-gap: 0 !important;
    min-height: min(820px, calc(100vh - 84px)) !important;
    padding-top: clamp(116px, 9vw, 150px) !important;
    padding-bottom: clamp(118px, 9vw, 156px) !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement > .xan-story-serif {
    grid-area: label !important;
    margin: 0 0 22px !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement > h2 {
    grid-area: title !important;
    width: min(100%, 680px) !important;
    max-width: 680px !important;
    margin: 0 !important;
    text-align: left !important;
    text-wrap: nowrap !important;
    white-space: nowrap !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement > .xan-story-lead {
    grid-area: lead !important;
    width: min(100%, 620px) !important;
    max-width: 620px !important;
    margin: var(--premium-title-copy-gap) 0 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement > .xan-story-note {
    grid-area: note !important;
    width: min(100%, 620px) !important;
    max-width: 620px !important;
    margin: 36px 0 0 !important;
    padding-top: 0 !important;
    border-top: 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement > .xan-story-note strong,
  body:not(.mobile-page).pigment-page .pigment-statement > .xan-story-note p {
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement > .xan-story-note strong {
    margin-bottom: 16px !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement > .pigment-statement-image {
    grid-area: image !important;
    width: min(100%, 430px) !important;
    max-width: 430px !important;
    margin: 0 0 0 auto !important;
    aspect-ratio: 0.88 / 1 !important;
  }

  body:not(.mobile-page).pigment-page .pigment-diagnosis {
    grid-template-columns: minmax(560px, 0.98fr) minmax(500px, 0.82fr) !important;
    column-gap: clamp(58px, 5vw, 84px) !important;
    align-items: center !important;
    padding-top: clamp(126px, 10vw, 164px) !important;
    padding-bottom: clamp(126px, 10vw, 164px) !important;
  }

  body:not(.mobile-page).pigment-page .pigment-diagnosis .xan-story-center {
    width: min(100%, 560px) !important;
    max-width: 560px !important;
    margin: 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-diagnosis .xan-story-center p:not(.xan-story-serif) {
    max-width: 540px !important;
    margin-top: var(--premium-title-copy-gap) !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-diagnosis .pigment-line-list {
    width: min(100%, 560px) !important;
    max-width: 560px !important;
    margin: 44px 0 0 !important;
    border-top: 0 !important;
  }

  body:not(.mobile-page).pigment-page .pigment-diagnosis .pigment-line-list p {
    padding: 0 !important;
    border-bottom: 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-diagnosis .pigment-line-list p + p {
    margin-top: var(--premium-list-gap) !important;
  }

  body:not(.mobile-page).pigment-page .pigment-energy {
    grid-template-columns: minmax(600px, 0.96fr) minmax(420px, 0.7fr) !important;
    align-items: center !important;
    column-gap: clamp(64px, 6vw, 92px) !important;
  }

  body:not(.mobile-page).pigment-page .pigment-energy .xan-story-copy {
    align-self: center !important;
    max-width: 660px !important;
    transform: translateY(-36px) !important;
  }

  body:not(.mobile-page).pigment-page .pigment-energy .pigment-device-stack {
    display: grid !important;
    gap: clamp(34px, 3vw, 46px) !important;
    align-self: center !important;
    margin-top: 0 !important;
  }

  body:not(.mobile-page).pigment-page .pigment-energy .pigment-device-image + .pigment-device-image {
    margin-top: 0 !important;
  }

  body:not(.mobile-page).pigment-page
    :is(.pigment-hero, .pigment-statement, .pigment-diagnosis, .pigment-energy, .pigment-candidates)
    :is(.xan-story-serif, h1, h2, p, strong, span) {
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page
    :is(.pigment-balance, .pigment-difference)
    :is(.xan-story-serif, h2, .xan-story-lead) {
    text-align: center !important;
  }

  body:not(.mobile-page).pigment-page .pigment-balance .xan-story-lead,
  body:not(.mobile-page).pigment-page .pigment-difference .xan-story-lead {
    width: min(100%, 780px) !important;
    max-width: 780px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body:not(.mobile-page).pigment-page .pigment-difference .xan-difference-rows {
    width: min(100%, 860px) !important;
    max-width: 860px !important;
    margin-top: 58px !important;
    border-top: 0 !important;
  }

  body:not(.mobile-page).pigment-page .pigment-difference .xan-difference-rows p {
    display: grid !important;
    grid-template-columns: 230px 1fr !important;
    align-items: baseline !important;
    gap: 42px !important;
    padding: 0 !important;
    border-bottom: 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-difference .xan-difference-rows p + p {
    margin-top: 28px !important;
  }

  body:not(.mobile-page).pigment-page .pigment-difference .xan-difference-rows strong,
  body:not(.mobile-page).pigment-page .pigment-difference .xan-difference-rows span {
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-candidates {
    grid-template-columns: minmax(500px, 0.78fr) minmax(650px, 0.98fr) !important;
    column-gap: clamp(48px, 4.2vw, 64px) !important;
    min-height: 610px !important;
    padding-top: clamp(122px, 9vw, 152px) !important;
    padding-bottom: clamp(122px, 9vw, 152px) !important;
  }

  body:not(.mobile-page).pigment-page .pigment-candidates .xan-story-copy {
    width: min(100%, 650px) !important;
    max-width: 650px !important;
    margin: 0 !important;
  }

  body:not(.mobile-page).pigment-page .pigment-candidates .pigment-candidate-list {
    width: min(100%, 650px) !important;
    max-width: 650px !important;
    margin: 44px 0 0 !important;
    border-top: 0 !important;
  }

  body:not(.mobile-page).pigment-page .pigment-candidates .pigment-candidate-list p {
    padding: 0 !important;
    border-bottom: 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-candidates .pigment-candidate-list p + p {
    margin-top: var(--premium-list-gap) !important;
  }

  body:not(.mobile-page).pigment-page .pigment-candidates .pigment-candidate-image {
    width: min(100%, 500px) !important;
    align-self: center !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement {
    grid-template-areas: "copy image" !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement-copy {
    grid-area: copy !important;
    width: min(100%, 680px) !important;
    max-width: 680px !important;
    align-self: center !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement-copy .xan-story-serif {
    margin: 0 0 22px !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement-copy h2 {
    width: min(100%, 680px) !important;
    max-width: 680px !important;
    margin: 0 !important;
    text-align: left !important;
    text-wrap: nowrap !important;
    white-space: nowrap !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement-copy .xan-story-lead {
    width: min(100%, 620px) !important;
    max-width: 620px !important;
    margin: var(--premium-title-copy-gap) 0 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement-copy .xan-story-note {
    width: min(100%, 620px) !important;
    max-width: 620px !important;
    margin: 36px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement-copy .xan-story-note strong {
    display: block !important;
    margin-bottom: 16px !important;
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-statement-copy .xan-story-note p {
    text-align: left !important;
  }

  body:not(.mobile-page).pigment-page .pigment-diagnosis-copy {
    grid-column: 2 !important;
    width: min(100%, 560px) !important;
    max-width: 560px !important;
    align-self: center !important;
  }

  body:not(.mobile-page).pigment-page .pigment-diagnosis-copy .xan-story-center {
    width: 100% !important;
    max-width: 560px !important;
    margin: 0 !important;
  }

  body:not(.mobile-page).pigment-page .pigment-diagnosis-copy .pigment-line-list {
    width: 100% !important;
    max-width: 560px !important;
    margin: 40px 0 0 !important;
    border: 0 !important;
  }

  body:not(.mobile-page).pigment-page .pigment-candidates-copy {
    grid-column: 2 !important;
    width: min(100%, 650px) !important;
    max-width: 650px !important;
    align-self: center !important;
  }

  body:not(.mobile-page).pigment-page .pigment-candidates-copy .xan-story-copy {
    width: 100% !important;
    max-width: 650px !important;
    margin: 0 !important;
  }

  body:not(.mobile-page).pigment-page .pigment-candidates-copy .pigment-candidate-list {
    width: 100% !important;
    max-width: 650px !important;
    margin: 42px 0 0 !important;
    border: 0 !important;
  }

  body:not(.mobile-page).pigment-page .cta-section .cta-ko {
    max-width: 560px !important;
  }
}

@media (min-width: 1025px) {
  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page) {
    --advanced-section-x: max(88px, calc((100vw - 1240px) / 2 + 50px));
    --advanced-title-copy-gap: 34px;
    --advanced-copy-gap: 22px;
    --advanced-list-gap: 24px;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-story
    .advanced-section {
    padding-left: var(--advanced-section-x) !important;
    padding-right: var(--advanced-section-x) !important;
    border-top: 0 !important;
    scroll-margin-top: 112px;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-story
    :is(.advanced-serif, .eyebrow) {
    margin-bottom: 22px !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-story
    :is(h1, h2, h3):not(.cta-title) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    letter-spacing: 0 !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-story
    :is(.advanced-hero, .advanced-science, .advanced-difference, .advanced-lifting, .advanced-volume)
    :is(.advanced-serif, .advanced-point, h1, h2, h3, p, li, strong, span) {
    text-align: left !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-hero-copy
    h1
    + .advanced-lead {
    margin-top: var(--advanced-title-copy-gap) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-hero-copy
    .advanced-lead
    + p,
  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-copy
    p
    + p,
  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-difference-copy
    p
    + p,
  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-lifting-copy
    p
    + p {
    margin-top: var(--advanced-copy-gap) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-difference-copy
    h2
    + p,
  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-lifting-copy
    h2
    + p {
    margin-top: var(--advanced-title-copy-gap) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-science {
    grid-template-columns: minmax(600px, 0.98fr) minmax(480px, 0.78fr) !important;
    column-gap: clamp(58px, 5vw, 84px) !important;
    row-gap: clamp(70px, 6vw, 92px) !important;
    align-items: center !important;
    padding-top: clamp(132px, 10vw, 166px) !important;
    padding-bottom: clamp(128px, 9vw, 156px) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-science-image {
    width: min(980px, 84%) !important;
    margin-top: 0 !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-triad {
    margin-top: 0 !important;
    border: 0 !important;
    column-gap: clamp(48px, 5vw, 76px) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-triad
    p {
    padding: 0 !important;
    border: 0 !important;
    text-align: center !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-triad
    strong {
    font-size: 27px !important;
    line-height: 1.22 !important;
    text-align: center !important;
    white-space: nowrap;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-triad
    span {
    display: block !important;
    margin-top: 18px !important;
    text-align: center !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-difference {
    column-gap: clamp(58px, 5vw, 84px) !important;
    row-gap: 0 !important;
    align-items: center !important;
    padding-top: clamp(128px, 9vw, 156px) !important;
    padding-bottom: clamp(132px, 10vw, 166px) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    :is(.advanced-proof-lines, .advanced-device-lines) {
    border: 0 !important;
    margin-top: 56px !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    :is(.advanced-proof-lines, .advanced-device-lines)
    p {
    padding: 0 !important;
    border: 0 !important;
    grid-template-columns: 230px 1fr !important;
    gap: 42px !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    :is(.advanced-proof-lines, .advanced-device-lines)
    p
    + p {
    margin-top: 28px !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-lifting {
    column-gap: clamp(64px, 6vw, 92px) !important;
    row-gap: 0 !important;
    align-items: center !important;
    padding-top: clamp(188px, 13vw, 224px) !important;
    padding-bottom: clamp(132px, 10vw, 166px) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-lifting-head {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: center !important;
    width: min(100%, 670px) !important;
    max-width: 670px !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-point {
    margin: 0 0 22px !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
    color: rgba(117, 98, 75, 0.82) !important;
    letter-spacing: 0 !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-lifting-copy {
    grid-column: auto !important;
    width: min(100%, 670px) !important;
    max-width: 670px !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-layer {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-device-lines {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-device-showcase {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    margin-top: 64px !important;
    gap: clamp(42px, 4.2vw, 60px) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-volume {
    column-gap: clamp(64px, 6vw, 92px) !important;
    row-gap: var(--advanced-title-copy-gap) !important;
    align-items: center !important;
    padding-top: clamp(132px, 10vw, 166px) !important;
    padding-bottom: clamp(132px, 10vw, 166px) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-volume-copy {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: center !important;
    width: min(100%, 670px) !important;
    max-width: 670px !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-volume-copy
    .advanced-copy {
    grid-column: auto !important;
    max-width: 660px !important;
    margin-top: var(--advanced-title-copy-gap) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-contour {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-microfat {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    margin-top: 66px !important;
    padding-top: 0 !important;
    border: 0 !important;
    column-gap: clamp(64px, 6vw, 92px) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-microfat
    li {
    padding: 0 !important;
    border: 0 !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-microfat
    li
    + li {
    margin-top: var(--advanced-list-gap) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-candidates {
    padding-top: clamp(132px, 10vw, 166px) !important;
    padding-bottom: clamp(132px, 10vw, 166px) !important;
    text-align: center !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-candidate-list {
    margin-top: 52px !important;
    border: 0 !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-candidate-list
    p {
    padding: 0 !important;
    border: 0 !important;
    text-align: center !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .advanced-candidate-list
    p
    + p {
    margin-top: var(--advanced-list-gap) !important;
  }

  body:not(.mobile-page).advanced-page:not(.lifting-page):not(.microfat-page)
    .cta-section
    .cta-ko {
    max-width: 640px !important;
    color: rgba(255, 255, 255, 0.78) !important;
  }
}

@media (min-width: 1025px) {
  body:not(.mobile-page).eye-page .eye-story :is(h1, h2) {
    letter-spacing: 0 !important;
    text-wrap: normal !important;
  }

  body:not(.mobile-page).eye-page
    .eye-story
    :is(.eye-process, .eye-delicate, .eye-personal)
    .xan-story-copy
    h2,
  body:not(.mobile-page).eye-page .eye-story .cta-title {
    white-space: nowrap !important;
    text-wrap: nowrap !important;
  }

  body:not(.mobile-page).eye-page .eye-story .cta-ko {
    max-width: 640px !important;
  }

}

@media (max-width: 1024px) {
  body.mobile-page.xanthelasma-page .xan-story .cta-title {
    font-size: clamp(30px, 7.5vw, 34px) !important;
    line-height: 1.1 !important;
  }

  body.mobile-page.xanthelasma-page .xan-story .cta-title span {
    white-space: normal !important;
    text-wrap: balance !important;
    overflow-wrap: normal !important;
  }
}

/* Solar lentigo pull statement: keep it above body-copy scale after global copy normalization. */
.solar-page .statement > p {
  width: min(94%, 360px) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  font-family: var(--cg-main-korean-stack) !important;
  font-size: 21px !important;
  font-weight: 500 !important;
  line-height: 1.62 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  text-wrap: normal !important;
}

@media (max-width: 360px) {
  .solar-page .statement > p {
    font-size: 19.5px !important;
    line-height: 1.6 !important;
  }
}

@media (min-width: 1025px) {
  body:not(.mobile-page).solar-desktop-page .solar-page .statement > p {
    width: min(100%, 1040px) !important;
    max-width: 1040px !important;
    font-size: clamp(32px, 3vw, 48px) !important;
    line-height: 1.25 !important;
    text-wrap: balance !important;
  }

  body:not(.mobile-page).solar-desktop-page .solar-page .difference-list article + article {
    margin-top: 0 !important;
  }
}

/* Reactive pigmentation: allow Korean sentences to wrap naturally on mobile. */
@media (max-width: 1024px) {
  .rp-page .mobile-lines span {
    display: inline !important;
  }

  .rp-page .mobile-lines span + span::before {
    content: " ";
  }

  .rp-page .rp-hero h1 {
    width: min(calc(100vw - 24px), 366px) !important;
    max-width: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
    font-size: clamp(24px, 6.8vw, 28px) !important;
    line-height: 1.08 !important;
    white-space: nowrap !important;
    text-wrap: nowrap !important;
  }

  .rp-page main :is(.rp-statement h2, .split-copy h2, .proof-copy h2, .method-copy h2, .closing-main, .cta-title) {
    line-height: 1.1 !important;
  }

  .rp-page main :is(.rp-statement h2, .split-copy h2, .proof-copy h2, .method-copy h2) {
    width: min(calc(100vw - 24px), 366px) !important;
    max-width: none !important;
    text-wrap: normal !important;
  }

  .rp-page main :is(.rp-statement h2, .split-copy h2, .method-copy h2) {
    white-space: nowrap !important;
  }

  .rp-page .rp-hero .hero-image {
    margin-top: 24px !important;
    margin-bottom: 24px !important;
  }

  .rp-page main :is(.rp-statement, .rp-split, .rp-proof, .rp-method, .rp-closing)
    :is(.eyebrow) {
    margin-bottom: 18px !important;
  }

  .rp-page main :is(.split-copy h2, .proof-copy h2, .method-copy h2) {
    margin-bottom: 30px !important;
  }

  .rp-page .rp-method .texture-image {
    margin-bottom: 42px !important;
  }

  .rp-page main :is(.hero-copy p, .split-copy p, .proof-copy p, .method-copy p, .statement-grid p) {
    width: min(100%, 340px) !important;
    max-width: 340px !important;
  }

  .rp-page main :is(.split-copy p, .proof-copy p, .method-copy p, .closing-sub, .cta-ko) {
    text-wrap: balance !important;
  }

  .rp-page main :is(.closing-sub, .cta-ko) {
    max-width: min(100%, 330px) !important;
  }
}

@media (min-width: 1025px) {
  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    .rp-page
    main
    .eyebrow {
    margin-bottom: 22px !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    .rp-page
    .rp-hero
    .hero-copy
    .lead {
    margin-top: 34px !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    .rp-page
    :is(.rp-split, .rp-method) {
    width: min(1280px, calc(100% - 7vw)) !important;
    gap: clamp(42px, 4vw, 62px) !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    .rp-page
    .rp-split {
    grid-template-columns: minmax(380px, 0.55fr) minmax(760px, 1fr) !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    .rp-page
    .rp-method {
    grid-template-columns: minmax(760px, 1fr) minmax(380px, 0.55fr) !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    .rp-page
    :is(.split-copy, .method-copy) {
    max-width: 820px !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    .rp-page
    .proof-copy {
    max-width: 760px !important;
  }

  body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    .rp-page
    :is(.split-copy, .method-copy)
    p:not(.eyebrow) {
    max-width: min(100%, 820px) !important;
  }

body:not(.mobile-page):is(.desktop-treatment-page, .refractory-page)
    .rp-page
    .proof-copy
    p:not(.eyebrow) {
    max-width: min(100%, 760px) !important;
  }
}

/* Micro fat grafting: soften the editorial rhythm and remove numeric/divider-heavy treatment blocks. */
@media (min-width: 1025px) {
  body:not(.mobile-page).microfat-page {
    --microfat-title-copy-gap: 34px;
    --microfat-copy-gap: 22px;
    --microfat-row-gap: 24px;
  }

  body:not(.mobile-page).microfat-page .advanced-story .advanced-section {
    border: 0 !important;
    scroll-margin-top: 112px;
  }

  body:not(.mobile-page).microfat-page
    .advanced-story
    :is(.advanced-serif, .advanced-point) {
    margin-bottom: 22px !important;
  }

  body:not(.mobile-page).microfat-page
    .advanced-story
    :is(h1, h2, h3):not(.cta-title) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    letter-spacing: 0 !important;
  }

  body:not(.mobile-page).microfat-page .advanced-hero-copy h1 + .advanced-lead {
    margin-top: var(--microfat-title-copy-gap) !important;
  }

  body:not(.mobile-page).microfat-page
    .advanced-story
    :is(.advanced-hero-copy .advanced-lead, .advanced-copy p, .advanced-difference-copy p, .advanced-lifting-copy p)
    + p {
    margin-top: var(--microfat-copy-gap) !important;
  }

  body:not(.mobile-page).microfat-page
    .advanced-story
    :is(.advanced-difference-copy h2, .advanced-lifting-copy h2, .microfat-area-copy h2)
    + p {
    margin-top: var(--microfat-title-copy-gap) !important;
  }

  body:not(.mobile-page).microfat-page .advanced-point {
    font-size: 11px !important;
    line-height: 1.45 !important;
    letter-spacing: 0 !important;
    color: rgba(117, 98, 75, 0.82) !important;
  }

  body:not(.mobile-page).microfat-page .microfat-hero .advanced-hero-image img {
    height: 112% !important;
    object-position: 50% 38% !important;
    filter: saturate(0.9) contrast(0.94) brightness(1.04) !important;
  }

  body:not(.mobile-page).microfat-page .microfat-benefits.advanced-volume {
    grid-template-columns: minmax(620px, 0.9fr) minmax(500px, 0.78fr) !important;
    column-gap: clamp(52px, 5vw, 76px) !important;
  }

  body:not(.mobile-page).microfat-page .microfat-benefits .advanced-contour {
    width: min(100%, 500px) !important;
    justify-self: end !important;
  }

  body:not(.mobile-page).microfat-page
    .advanced-story
    :is(.advanced-triad, .advanced-proof-lines, .advanced-device-lines, .advanced-microfat, .microfat-area-list, .microfat-synergy, .microfat-process-list, .advanced-candidate-list) {
    border: 0 !important;
  }

  body:not(.mobile-page).microfat-page
    .advanced-story
    :is(.advanced-triad p, .advanced-proof-lines p, .advanced-device-lines p, .advanced-microfat li, .microfat-area-list p, .microfat-process-list p, .advanced-candidate-list p) {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border: 0 !important;
  }

  body:not(.mobile-page).microfat-page .advanced-triad {
    margin-top: 0 !important;
    column-gap: clamp(44px, 4.4vw, 68px) !important;
  }

  body:not(.mobile-page).microfat-page
    .advanced-story
    :is(.advanced-proof-lines, .advanced-device-lines) {
    margin-top: 52px !important;
  }

  body:not(.mobile-page).microfat-page
    .advanced-story
    :is(.advanced-proof-lines, .advanced-device-lines)
    p {
    grid-template-columns: 210px 1fr !important;
    gap: 38px !important;
  }

  body:not(.mobile-page).microfat-page
    .advanced-story
    :is(.advanced-proof-lines, .advanced-device-lines)
    p
    + p {
    margin-top: 26px !important;
  }

  body:not(.mobile-page).microfat-page .advanced-microfat {
    display: grid !important;
    grid-template-columns: minmax(320px, 0.68fr) minmax(520px, 1fr) !important;
    column-gap: clamp(56px, 6vw, 88px) !important;
    align-items: start !important;
    margin-top: 58px !important;
    padding-top: 0 !important;
  }

  body:not(.mobile-page).microfat-page
    .sub-shell
    main.advanced-story
    .advanced-microfat
    > .advanced-serif {
    grid-column: 1 !important;
    grid-row: 1 !important;
    margin: 0 0 22px !important;
  }

  body:not(.mobile-page).microfat-page
    .sub-shell
    main.advanced-story
    .advanced-microfat
    > h3 {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: min(100%, 420px) !important;
    max-width: 420px !important;
    margin-top: 52px !important;
    font-size: 38px !important;
    line-height: 1.18 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).microfat-page
    .sub-shell
    main.advanced-story
    .advanced-microfat
    > ul {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: start !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body:not(.mobile-page).microfat-page .advanced-microfat li {
    text-align: left !important;
    line-height: 1.82 !important;
  }

  body:not(.mobile-page).microfat-page .advanced-microfat li + li,
  body:not(.mobile-page).microfat-page .advanced-candidate-list p + p {
    margin-top: var(--microfat-row-gap) !important;
  }

  body:not(.mobile-page).microfat-page .microfat-area-list {
    row-gap: 22px !important;
    column-gap: clamp(28px, 3vw, 44px) !important;
  }

  body:not(.mobile-page).microfat-page .microfat-synergy {
    margin-top: 42px !important;
    padding-top: 0 !important;
  }

  body:not(.mobile-page).microfat-page .microfat-process-list {
    margin-top: 52px !important;
    border: 0 !important;
  }

  body:not(.mobile-page).microfat-page .microfat-process-list p {
    grid-template-columns: 180px minmax(0, 1fr) !important;
    gap: 34px !important;
  }

  body:not(.mobile-page).microfat-page .microfat-process-list p + p {
    margin-top: var(--microfat-row-gap) !important;
  }

  body:not(.mobile-page).microfat-page .microfat-process-list strong {
    font-size: 24px !important;
    line-height: 1.22 !important;
    letter-spacing: 0 !important;
  }
}

@media (max-width: 1024px) {
  body.mobile-page.microfat-page .advanced-hero h1 {
    width: min(calc(100vw - 48px), 342px) !important;
    max-width: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
    font-size: clamp(30px, 8vw, 34px) !important;
    line-height: 1.12 !important;
    white-space: nowrap !important;
    text-wrap: nowrap !important;
  }

  body.mobile-page.microfat-page
    .advanced-story
    :is(.advanced-section h2, .advanced-microfat h3) {
    width: min(calc(100vw - 48px), 342px) !important;
    max-width: none !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important;
    text-wrap: balance !important;
  }

  body.mobile-page.microfat-page
    .advanced-story
    :is(.advanced-serif, .advanced-point) {
    margin-bottom: 18px !important;
    letter-spacing: 0 !important;
  }

  body.mobile-page.microfat-page .advanced-point {
    width: min(calc(100vw - 48px), 342px) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    color: rgba(117, 98, 75, 0.82) !important;
  }

  body.mobile-page.microfat-page .microfat-hero .advanced-hero-image img {
    height: 116% !important;
    object-position: 50% 35% !important;
    filter: saturate(0.9) contrast(0.94) brightness(1.04) !important;
  }

  body.mobile-page.microfat-page .microfat-benefits .advanced-contour {
    width: min(calc(100vw - 50px), 340px) !important;
  }

  body.mobile-page.microfat-page
    .advanced-story
    :is(.advanced-hero-copy p, .advanced-section > p, .advanced-copy p, .advanced-difference > p, .advanced-microfat > p, .microfat-area-copy p) {
    width: min(100%, 340px) !important;
    max-width: 340px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  body.mobile-page.microfat-page
    .advanced-story
    :is(.advanced-triad, .advanced-proof-lines, .advanced-device-lines, .advanced-microfat, .microfat-area-list, .microfat-synergy, .microfat-process-list, .advanced-candidate-list) {
    border: 0 !important;
  }

  body.mobile-page.microfat-page
    .advanced-story
    :is(.advanced-triad p, .advanced-proof-lines p, .advanced-device-lines p, .advanced-microfat li, .microfat-area-list p, .microfat-process-list p, .advanced-candidate-list p) {
    border: 0 !important;
  }

  body.mobile-page.microfat-page
    .advanced-story
    :is(.advanced-triad p, .advanced-proof-lines p, .advanced-device-lines p) {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body.mobile-page.microfat-page
    .advanced-story
    :is(.advanced-triad p, .advanced-proof-lines p, .advanced-device-lines p)
    + p {
    margin-top: 22px !important;
  }

  body.mobile-page.microfat-page
    .advanced-story
    :is(.advanced-triad strong, .advanced-proof-lines strong, .advanced-device-lines strong) {
    margin-bottom: 8px !important;
    font-size: 22px !important;
    line-height: 1.18 !important;
  }

  body.mobile-page.microfat-page .advanced-microfat {
    display: block !important;
    margin-top: 42px !important;
    padding-top: 0 !important;
    text-align: center !important;
  }

  body.mobile-page.microfat-page .advanced-microfat > .advanced-serif {
    margin-bottom: 18px !important;
  }

  body.mobile-page.microfat-page .advanced-microfat > h3 {
    width: min(calc(100vw - 48px), 342px) !important;
    max-width: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
    font-size: 28px !important;
    line-height: 1.18 !important;
    text-align: center !important;
  }

  body.mobile-page.microfat-page .advanced-microfat ul {
    width: min(100%, 320px) !important;
    margin: 26px auto 0 !important;
    padding: 0 !important;
  }

  body.mobile-page.microfat-page .advanced-microfat li {
    width: min(100%, 320px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding: 0 !important;
    line-height: 1.72 !important;
    text-align: center !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
  }

  body.mobile-page.microfat-page .advanced-microfat li + li,
  body.mobile-page.microfat-page .advanced-candidate-list p + p,
  body.mobile-page.microfat-page .microfat-area-list p + p {
    margin-top: 16px !important;
  }

  body.mobile-page.microfat-page .microfat-synergy {
    margin-top: 34px !important;
    padding-top: 0 !important;
  }

  body.mobile-page.microfat-page .microfat-process-list {
    width: min(100%, 340px) !important;
    margin-top: 42px !important;
    border: 0 !important;
  }

  body.mobile-page.microfat-page .microfat-process-list p {
    display: grid !important;
    grid-template-columns: 92px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: baseline !important;
    padding: 0 !important;
    text-align: left !important;
  }

  body.mobile-page.microfat-page .microfat-process-list p + p {
    margin-top: 20px !important;
  }

  body.mobile-page.microfat-page .microfat-process-list strong {
    margin-bottom: 0 !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
  }

  body.mobile-page.microfat-page .microfat-process-list span {
    line-height: 1.78 !important;
  }
}

/* Mobile subpage text rhythm normalization. */
@media (max-width: 1024px) {
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page) {
    --cg-mobile-copy-width: min(calc(100dvw - var(--cg-viewport-scrollbar, 0px) - 48px), 342px);
    --cg-mobile-tight-copy-width: min(calc(100dvw - var(--cg-viewport-scrollbar, 0px) - 64px), 320px);
    --cg-sub-display-size: clamp(30px, 8vw, 34px);
    --cg-sub-section-size: clamp(27px, 7.35vw, 30px);
    --cg-sub-subhead-size: 18px;
    --cg-sub-copy-size: 15.5px;
    --cg-sub-label-size: 13px;
    --cg-sub-button-size: 14px;
    --cg-sub-display-line: 1.18;
    --cg-sub-section-line: 1.32;
    --cg-sub-copy-line: 1.84;
    --cg-sub-label-line: 1.45;
    --cg-sub-display-tracking: 0;
    --cg-sub-body-tracking: 0;
  }

  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    :is(h1, h2, h3):not(.cta-title) {
    letter-spacing: 0 !important;
    overflow-wrap: normal !important;
    text-wrap: balance !important;
  }

  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    :is(
      h1,
      h2,
      .section-title,
      .advanced-section h2,
      .xan-story h2,
      .rp-statement h2,
      .split-copy h2,
      .proof-copy h2,
      .method-copy h2,
      .laser-title,
      .events-section-heading h2,
      .skin-index-head h2,
      .ba-notice h2
    ):not(.cta-title) {
    width: min(100%, var(--cg-mobile-copy-width)) !important;
    max-width: var(--cg-mobile-copy-width) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    line-height: var(--cg-sub-section-line) !important;
    text-align: center !important;
  }

  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    :is(
      p,
      li,
      dd,
      .hero-text,
      .section-text,
      .body-copy,
      .copy,
      .hero-sub,
      .lead,
      .closing-sub
    ):not(.eyebrow):not(.hero-label):not(.serif-label):not(.serif-en):not(.point-label):not(.advanced-serif):not(.xan-story-serif):not(.ac-eyebrow):not(.ac-panel-label):not(.laser-title):not(.english-title):not(.cta-title):not(.ac-display):not(.value-index):not(.intro-number):not(.statement-heading):not(.closing-main) {
    width: auto !important;
    max-width: var(--cg-mobile-copy-width) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    font-size: var(--cg-sub-copy-size) !important;
    font-weight: 400 !important;
    line-height: var(--cg-sub-copy-line) !important;
    letter-spacing: 0 !important;
    word-break: keep-all !important;
    overflow-wrap: break-word !important;
    text-wrap: pretty !important;
  }

  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    :is(.eyebrow, .hero-label, .serif-label, .serif-en, .point-label, .advanced-serif, .xan-story-serif, .ac-eyebrow, .ac-panel-label, .events-kicker, .skin-index-kicker) {
    margin-right: auto !important;
    margin-left: auto !important;
    font-size: var(--cg-sub-label-size) !important;
    line-height: var(--cg-sub-label-line) !important;
    letter-spacing: 0.02em !important;
    text-align: center !important;
  }

  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    :is(.cta-title, .english-title) {
    width: min(100%, calc(100dvw - var(--cg-viewport-scrollbar, 0px) - 56px), 328px) !important;
    max-width: min(calc(100dvw - var(--cg-viewport-scrollbar, 0px) - 56px), 328px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    font-size: clamp(28px, 7.8vw, 32px) !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-wrap: balance !important;
  }

  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    .cta-ko {
    width: min(100%, var(--cg-mobile-tight-copy-width)) !important;
    max-width: var(--cg-mobile-tight-copy-width) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    font-size: 15px !important;
    line-height: 1.84 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    word-break: keep-all !important;
    overflow-wrap: break-word !important;
    text-wrap: pretty !important;
  }

  .rp-page .rp-hero h1,
  .rp-page main :is(.rp-statement h2, .split-copy h2, .proof-copy h2, .method-copy h2, .closing-main) {
    width: min(100%, var(--cg-mobile-copy-width)) !important;
    max-width: var(--cg-mobile-copy-width) !important;
    line-height: 1.3 !important;
    white-space: normal !important;
    text-wrap: balance !important;
  }

  .rp-page .rp-hero h1 {
    font-size: clamp(27px, 7.4vw, 30px) !important;
  }

  body.mobile-page.microfat-page .advanced-hero h1 {
    white-space: normal !important;
    text-wrap: balance !important;
  }

  body.mobile-page.advanced-page .advanced-story {
    overflow-x: clip !important;
    overflow-y: visible !important;
  }

  body.mobile-page.advanced-page
    .advanced-story
    > :is(.advanced-hero, .advanced-section) {
    width: 100% !important;
    max-width: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  body.mobile-page.microfat-page
    .advanced-story
    :is(.advanced-section h2, .advanced-microfat h3) {
    width: min(100%, var(--cg-mobile-copy-width)) !important;
    max-width: var(--cg-mobile-copy-width) !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  body.mobile-page.lifting-page
    :is(.thermage-tip-slide .tip-label, .thermage-tip-slide h3, .thermage-tip-slide p) {
    width: auto !important;
    max-width: 100% !important;
    text-align: center !important;
    word-break: keep-all !important;
    overflow-wrap: break-word !important;
  }

  body.mobile-page.laser-solution-page .laser-category-tile {
    width: min(320px, calc(100dvw - var(--cg-viewport-scrollbar, 0px) - 56px)) !important;
    min-height: 126px !important;
    padding: 18px 18px 17px !important;
  }

  body.mobile-page.laser-solution-page
    .laser-category-tile
    :is(span, strong, small, em),
  body.mobile-page.events-page .events-news-title {
    width: auto !important;
    max-width: 100% !important;
    text-align: left !important;
    word-break: keep-all !important;
    overflow-wrap: break-word !important;
    text-wrap: pretty !important;
  }

  body.mobile-page.laser-solution-page .laser-feature-lines {
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: stretch !important;
  }

  body.mobile-page.laser-solution-page .laser-feature-lines p {
    justify-self: stretch !important;
    width: 100% !important;
    min-width: 100% !important;
    inline-size: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
  }

  body.mobile-page.laser-solution-page .laser-feature-lines p::before {
    display: none !important;
  }

  body.mobile-page.events-page .events-news-row {
    grid-template-columns: 4.6rem minmax(0, 1fr) 16px !important;
    gap: 0.5rem !important;
    padding: 1rem 0.88rem !important;
  }

  body.mobile-page.events-page .events-news-title {
    font-size: 0.98rem !important;
    line-height: 1.48 !important;
  }
}

@media (max-width: 360px) {
  :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page) {
    --cg-mobile-copy-width: min(calc(100dvw - var(--cg-viewport-scrollbar, 0px) - 38px), 322px);
    --cg-mobile-tight-copy-width: min(calc(100dvw - var(--cg-viewport-scrollbar, 0px) - 48px), 306px);
    --cg-sub-display-size: 28px;
    --cg-sub-section-size: 25.5px;
    --cg-sub-copy-size: 14.5px;
  }
}

/* Cross-page text alignment stabilization. Keep this late so page-specific
   desktop and mobile rules settle without bleeding across breakpoints. */
@media (max-width: 1024px) {
  body.mobile-page
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    :is(.eyebrow, .hero-label, .serif-label, .serif-en, .point-label, .advanced-serif, .xan-story-serif, .ac-eyebrow, .ac-panel-label, .events-kicker, .skin-index-kicker) {
    display: block !important;
    width: min(100%, var(--cg-mobile-copy-width)) !important;
    max-width: var(--cg-mobile-copy-width) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center !important;
  }

  body.mobile-page
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    :is(.fine-list, .care-steps, .advanced-proof-lines, .advanced-device-lines, .advanced-triad, .microfat-area-list, .microfat-process-list, .advanced-candidate-list, .eye-process-lines, .eye-candidate-list, .ota-depth-lines, .pigment-line-list)
    :is(p, li, article) {
    max-width: var(--cg-mobile-copy-width) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    word-break: keep-all !important;
    overflow-wrap: break-word !important;
    text-wrap: pretty !important;
  }

  body.mobile-page.about-page .sub-shell .values,
  body.mobile-page.about-page .sub-shell .values-head,
  body.mobile-page.about-page .sub-shell .values-list,
  body.mobile-page.about-page .sub-shell .value-card {
    text-align: center !important;
  }

  body.mobile-page.about-page
    .sub-shell
    .values
    :is(.eyebrow, .section-title, .section-text, .value-card h3, .value-card p) {
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center !important;
  }

  body.mobile-page.about-page .sub-shell .values .section-text {
    max-width: min(100%, 292px) !important;
  }

  body.mobile-page.about-page .sub-shell .value-card p {
    max-width: min(100%, 300px) !important;
  }
}

@media (min-width: 1025px) {
  body:not(.mobile-page)
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    :is(.cta-title, .english-title) {
    width: min(100%, 980px) !important;
    max-width: 980px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    white-space: normal !important;
    text-wrap: balance !important;
  }

  body:not(.mobile-page)
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    :is(.closing-main, .closing-sub, .cta-ko) {
    max-width: 760px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center !important;
    text-wrap: balance !important;
  }

  body:not(.mobile-page).about-page .sub-shell .cta-title,
  body:not(.mobile-page).eye-page .eye-story .cta-title {
    white-space: normal !important;
    text-wrap: balance !important;
  }

  body:not(.mobile-page).solar-desktop-page .recurrence > :is(.serif-label, h2, .body-copy) {
    grid-column: 1 !important;
    max-width: 680px !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).solar-desktop-page .recurrence .face-image {
    grid-column: 2 !important;
    align-self: center !important;
  }

  body:not(.mobile-page).solar-desktop-page .recurrence .fine-list {
    grid-column: 1 !important;
    width: min(100%, 680px) !important;
    max-width: 680px !important;
    margin: clamp(26px, 2.8vw, 40px) 0 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 22px !important;
  }

  body:not(.mobile-page).solar-desktop-page .recurrence .fine-list p {
    max-width: none !important;
    margin: 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).adm-page .adm-diagnosis .adm-marker-list {
    grid-column: 1 / -1 !important;
    width: min(100%, 1040px) !important;
    max-width: 1040px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px !important;
  }

  body:not(.mobile-page).adm-page .adm-diagnosis .adm-marker-list p {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    text-align: left !important;
  }

  body:not(.mobile-page).ota-page .ota-compare > :is(.xan-story-serif, h2, .xan-story-lead),
  body:not(.mobile-page).adm-page .adm-compare > :is(.xan-story-serif, h2, .xan-story-lead) {
    width: min(100%, 900px) !important;
    max-width: 900px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center !important;
  }

  body:not(.mobile-page).ota-page .ota-compare > .xan-story-lead,
  body:not(.mobile-page).adm-page .adm-compare > .xan-story-lead {
    max-width: 760px !important;
  }

  body:not(.mobile-page).advanced-page
    :is(.advanced-proof-lines, .advanced-device-lines)
    p,
  body:not(.mobile-page).microfat-page
    :is(.advanced-proof-lines, .advanced-device-lines)
    p,
  body:not(.mobile-page).lifting-page
    :is(.advanced-proof-lines, .advanced-device-lines)
    p {
    max-width: 760px !important;
  }
}

@media (min-width: 1025px) and (max-width: 1279px) {
  body:not(.mobile-page).solar-desktop-page .recurrence .fine-list,
  body:not(.mobile-page).adm-page .adm-diagnosis .adm-marker-list {
    grid-template-columns: 1fr !important;
  }
}

body.pigment-page .sub-shell main.pigment-story #balance .pigment-safety-grid > p {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  text-wrap: nowrap !important;
}

body.mobile-page.pigment-page .sub-shell main.pigment-story .pigment-hero .xan-story-copy {
  width: min(100%, var(--cg-mobile-copy-width, 342px)) !important;
  max-width: var(--cg-mobile-copy-width, 342px) !important;
}

body.mobile-page.pigment-page .sub-shell main.pigment-story .pigment-hero h1 {
  font-size: clamp(25px, 7.1vw, 28px) !important;
  line-height: 1.28 !important;
  white-space: nowrap !important;
  text-wrap: nowrap !important;
}

body.mobile-page.pigment-page
  .sub-shell
  main.pigment-story
  :is(
    .pigment-statement .xan-story-note,
    .pigment-diagnosis .xan-story-center,
    .pigment-energy .xan-story-copy,
    .pigment-line-list,
    .xan-difference-rows,
    .pigment-candidate-list
  ) {
  width: min(100%, var(--cg-mobile-copy-width, 342px)) !important;
  max-width: var(--cg-mobile-copy-width, 342px) !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

body.mobile-page.pigment-page
  .sub-shell
  main.pigment-story
  :is(.pigment-line-list p, .xan-difference-rows span, .pigment-candidate-list p) {
  max-width: var(--cg-mobile-copy-width, 342px) !important;
}

@media (max-width: 1024px) {
  body.mobile-page
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page) {
    --cg-mobile-title-label-gap: 18px;
    --cg-mobile-title-pair-line: 1.22;
  }

  body.mobile-page
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    :is(
      .eyebrow,
      .hero-label,
      .serif-label,
      .serif-en,
      .point-label,
      .advanced-serif,
      .xan-story-serif,
      .ac-eyebrow,
      .ac-panel-label,
      .ma-eyebrow,
      .events-kicker,
      .skin-index-kicker
    ) {
    margin-top: 0 !important;
    margin-bottom: var(--cg-mobile-title-label-gap) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
  }

  body.mobile-page
    :is(.sub-shell, .solar-page, .light-page, .lentigo-page, .rp-page)
    main
    :is(
      .eyebrow,
      .hero-label,
      .serif-label,
      .serif-en,
      .point-label,
      .advanced-serif,
      .xan-story-serif,
      .ac-eyebrow,
      .ac-panel-label,
      .ma-eyebrow,
      .events-kicker,
      .skin-index-kicker
    )
    + :is(h1, h2, .section-title) {
    margin-top: 0 !important;
    line-height: var(--cg-mobile-title-pair-line) !important;
  }

  body.mobile-page:is(.reactive-mobile-page, .refractory-page)
    .rp-page
    .rp-hero {
    gap: 0 !important;
    row-gap: 0 !important;
  }

  body.mobile-page.events-page
    .sub-shell
    main
    .skin-index-head
    > .skin-index-kicker:not(#cg-title-spacing),
  body.mobile-page.member-auth-page
    .sub-shell
    main
    .ma-copy
    > .ma-eyebrow:not(#cg-title-spacing) {
    margin-top: 0 !important;
    margin-bottom: var(--cg-mobile-title-label-gap) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
  }
}
