.salon-kart-page {
  background: var(--color-cloud-100);
}

.salon-kart-page .sk-hero__shell,
.salon-kart-page .sk-space__layout,
.salon-kart-page .sk-food__module {
  display: grid;
  min-width: 0;
  gap: var(--space-7);
}

.salon-kart-page .sk-hero {
  padding-top: var(--space-9);
}

.salon-kart-page .sk-hero__shell {
  position: relative;
  grid-template-columns: minmax(0, 42fr) minmax(0, 58fr);
  align-items: center;
  overflow: hidden;
  border: var(--border-subtle);
  border-radius: var(--radius-xl);
  background: linear-gradient(145deg, var(--color-white-100), var(--color-cloud-100));
  box-shadow: var(--shadow-card);
  padding: var(--space-8);
}

.salon-kart-page .sk-hero__content,
.salon-kart-page .sk-space__content,
.salon-kart-page .sk-food__content,
.salon-kart-page .sk-gallery__panel,
.salon-kart-page .sk-final__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
}

.salon-kart-page .sk-hero__content { gap: var(--space-4); }
.salon-kart-page .sk-hero__content > * { margin: 0; }
.salon-kart-page .sk-hero__content { max-width: 33.75rem; }
.salon-kart-page .sk-hero h1 { font-size: clamp(2.375rem, 4vw, 3.25rem); }
.salon-kart-page .sk-hero__lead { max-width: 31.25rem; font-size: var(--text-lg); }
.salon-kart-page .sk-hero__actions,
.salon-kart-page .sk-final__actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-4);
}
.salon-kart-page .sk-hero__actions > *,
.salon-kart-page .sk-final__actions > * { min-width: 0; }
.salon-kart-page .sk-text-link {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  color: var(--color-indigo-700);
  font-family: var(--font-heading);
  font-weight: 700;
  text-decoration: none;
}
.salon-kart-page .sk-text-link:hover,
.salon-kart-page .sk-text-link:focus-visible { text-decoration: underline; }
.salon-kart-page .sk-hero__media,
.salon-kart-page .sk-space__media,
.salon-kart-page .sk-food__media,
.salon-kart-page .sk-gallery__media { min-width: 0; margin: 0; overflow: hidden; }
.salon-kart-page .sk-hero__media { width: 100%; aspect-ratio: 4 / 3; border-radius: var(--radius-xl); }
.salon-kart-page .sk-hero__media img,
.salon-kart-page .sk-space__media img,
.salon-kart-page .sk-food__media img,
.salon-kart-page .sk-gallery__media img { width: 100%; height: 100%; object-fit: cover; }
.salon-kart-page .sk-hero__card-shape {
  position: absolute;
  right: 47%;
  bottom: -2.75rem;
  display: grid;
  width: 6.5rem;
  height: 8rem;
  place-items: center;
  border-radius: var(--radius-lg);
  background: var(--color-indigo-500);
  color: var(--color-white-100);
  font-size: 2.5rem;
  transform: rotate(-12deg);
  box-shadow: var(--shadow-raised);
}

.salon-kart-page .sk-section-intro { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.salon-kart-page .sk-section-intro > * { margin: 0; }
.salon-kart-page .sk-atmosphere__intro { max-width: 38.75rem; margin-bottom: var(--space-6); }
.salon-kart-page .sk-atmosphere__grid,
.salon-kart-page .sk-scenarios__grid { display: grid; min-width: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--grid-gap); }
.salon-kart-page .sk-atmosphere__grid > *,
.salon-kart-page .sk-scenarios__grid > * { min-width: 0; width: 100%; }
.salon-kart-page .sk-atmosphere-card,
.salon-kart-page .sk-scenario-card {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 15.625rem;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  overflow: hidden;
  border: var(--border-subtle);
  border-radius: var(--radius-lg);
  background: var(--color-white-100);
  box-shadow: var(--shadow-card);
  padding: var(--space-5);
}
.salon-kart-page .sk-atmosphere-card > *,
.salon-kart-page .sk-scenario-card > * { margin: 0; }
.salon-kart-page .sk-card-icon { display: grid; width: 2.75rem; height: 2.75rem; place-items: center; border-radius: 50%; background: var(--color-cloud-200); color: var(--color-indigo-700); font-size: 1.5rem; font-weight: 800; }
.salon-kart-page .sk-atmosphere-card--physical .sk-card-icon { background: rgba(240, 120, 99, .2); }
.salon-kart-page .sk-card-number { position: absolute; top: var(--space-4); right: var(--space-4); color: rgba(70, 66, 168, .12); font-family: var(--font-heading); font-size: 4rem; font-weight: 800; line-height: 1; }

.salon-kart-page .sk-space__layout { grid-template-columns: minmax(0, 48fr) minmax(0, 52fr); align-items: center; }
.salon-kart-page .sk-space__content { gap: var(--space-5); }
.salon-kart-page .sk-space__content > * { margin: 0; }
.salon-kart-page .sk-space__heading { max-width: 33.75rem; }
.salon-kart-page .sk-space__main-copy { max-width: 33.75rem; }
.salon-kart-page .sk-space__notes { display: grid; width: 100%; min-width: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.salon-kart-page .sk-space__notes > * { min-width: 0; width: 100%; }
.salon-kart-page .sk-space-note { border: var(--border-subtle); border-radius: var(--radius-md); background: var(--color-white-100); padding: var(--space-4); box-shadow: var(--shadow-card); }
.salon-kart-page .sk-space-note .tag { margin-bottom: var(--space-2); }
.salon-kart-page .sk-space-note h3 { font-size: var(--text-lg); }
.salon-kart-page .sk-space__media { width: 100%; aspect-ratio: 4 / 3; border-radius: var(--radius-xl); box-shadow: var(--shadow-card); }

.salon-kart-page .sk-steps { background: rgba(216, 230, 239, .45); }
.salon-kart-page .sk-steps__intro { display: flex; min-width: 0; max-width: 38.75rem; flex-direction: column; align-items: center; gap: var(--space-3); margin: 0 auto var(--space-6); text-align: center; }
.salon-kart-page .sk-steps__intro > * { margin: 0; }
.salon-kart-page .sk-steps__grid { display: grid; min-width: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--grid-gap); }
.salon-kart-page .sk-step-card { display: flex; min-width: 0; min-height: 18.25rem; flex-direction: column; align-items: flex-start; gap: var(--space-3); border: var(--border-subtle); border-radius: var(--radius-lg); background: var(--color-white-100); box-shadow: var(--shadow-card); padding: var(--space-5); }
.salon-kart-page .sk-step-card > * { margin: 0; }
.salon-kart-page .sk-step-card--highlight { background: var(--color-cloud-200); }
.salon-kart-page .sk-step-card__number { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; border-radius: 50%; background: var(--color-indigo-700); color: var(--color-white-100); font-family: var(--font-heading); font-weight: 800; }
.salon-kart-page .sk-step-card__link { margin-top: auto; }

.salon-kart-page .sk-etiquette__panel { position: relative; overflow: hidden; border: var(--border-subtle); border-radius: var(--radius-xl); background: var(--color-white-100); box-shadow: var(--shadow-card); padding: var(--space-8); }
.salon-kart-page .sk-etiquette__intro { position: relative; z-index: 1; max-width: 37.5rem; }
.salon-kart-page .sk-etiquette__details { position: relative; z-index: 1; display: flex; min-width: 0; max-width: 51.25rem; flex-direction: column; gap: var(--space-3); margin-top: var(--space-6); }
.salon-kart-page .sk-etiquette__details details { width: 100%; margin: 0; }
.salon-kart-page .sk-etiquette__details summary { display: flex; min-height: 3.25rem; align-items: center; gap: var(--space-2); }
.salon-kart-page .sk-etiquette__details summary .tag { margin-left: auto; }
.salon-kart-page .sk-etiquette__details p { max-width: 36.25rem; }
.salon-kart-page .sk-etiquette__shape { position: absolute; top: -2rem; right: 7%; color: rgba(112, 107, 224, .22); font-size: 12rem; transform: rotate(13deg); }

.salon-kart-page .sk-food__module { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; overflow: hidden; border-radius: var(--radius-xl); background: var(--color-white-100); box-shadow: var(--shadow-card); }
.salon-kart-page .sk-food__media { width: 100%; aspect-ratio: 4 / 3; }
.salon-kart-page .sk-food__content { justify-content: center; gap: var(--space-4); padding: var(--space-8); }
.salon-kart-page .sk-food__content > * { margin: 0; }
.salon-kart-page .sk-food__content > p { max-width: 31.25rem; }
.salon-kart-page .sk-food__action { display: flex; min-width: 0; max-width: 31.25rem; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.salon-kart-page .sk-food__action > * { margin: 0; }
.salon-kart-page .sk-food__action p { font-size: var(--text-sm); }

.salon-kart-page .sk-scenarios__intro { max-width: 40rem; margin-bottom: var(--space-6); }
.salon-kart-page .sk-scenario-card { min-height: 17.75rem; }
.salon-kart-page .sk-scenario-card .sk-text-link { margin-top: auto; }
.salon-kart-page .sk-scenario-card--indigo::before,
.salon-kart-page .sk-scenario-card--mustard::before,
.salon-kart-page .sk-scenario-card--coral::before { position: absolute; top: 0; left: 0; width: 100%; height: .5rem; content: ""; }
.salon-kart-page .sk-scenario-card--indigo::before { background: var(--color-indigo-500); }
.salon-kart-page .sk-scenario-card--mustard::before { background: var(--color-mustard-400); }
.salon-kart-page .sk-scenario-card--coral::before { background: var(--color-coral-500); }

.salon-kart-page .sk-faq { background: var(--color-cloud-200); }
.salon-kart-page .sk-faq__intro { max-width: 37.5rem; margin-bottom: var(--space-5); }
.salon-kart-page .sk-faq__grid { display: grid; min-width: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.salon-kart-page .sk-faq__grid details { width: 100%; min-width: 0; margin: 0; }
.salon-kart-page .sk-faq__grid summary { min-height: 3.25rem; }
.salon-kart-page .sk-faq__grid p { max-width: 31.25rem; }

.salon-kart-page .sk-gallery__shell { position: relative; min-width: 0; padding-bottom: var(--space-8); }
.salon-kart-page .sk-gallery__media { width: 100%; aspect-ratio: 16 / 9; border-radius: var(--radius-xl); box-shadow: var(--shadow-card); }
.salon-kart-page .sk-gallery__panel { position: relative; z-index: 1; width: min(46%, 30rem); gap: var(--space-4); margin: calc(var(--space-7) * -1) 0 0 var(--space-7); border: var(--border-subtle); border-radius: var(--radius-lg); background: var(--color-white-100); box-shadow: var(--shadow-raised); padding: var(--space-6); }
.salon-kart-page .sk-gallery__panel > * { margin: 0; }
.salon-kart-page .sk-gallery__panel p { max-width: 30rem; }

.salon-kart-page .sk-final__module { position: relative; overflow: hidden; border-radius: var(--radius-xl); background: var(--color-indigo-900); color: var(--color-white-100); padding: var(--space-8) var(--space-9); }
.salon-kart-page .sk-final__content { position: relative; z-index: 1; width: 55%; gap: var(--space-4); color: var(--color-white-100); }
.salon-kart-page .sk-final__content > * { margin: 0; }
.salon-kart-page .sk-final__content h2 { color: var(--color-white-100); }
.salon-kart-page .sk-final__content .tag { background: rgba(255,255,255,.18); color: var(--color-white-100); }
.salon-kart-page .sk-final__button { display: inline-flex; min-height: 3rem; align-items: center; justify-content: center; border-radius: var(--radius-md); background: var(--color-white-100); color: var(--color-indigo-900); padding: .75rem 1.125rem; font-family: var(--font-heading); font-weight: 800; text-decoration: none; box-shadow: 0 6px 0 rgba(0,0,0,.18); }
.salon-kart-page .sk-final__link { display: inline-flex; min-height: 2.75rem; align-items: center; color: var(--color-white-100); font-family: var(--font-heading); font-weight: 700; }
.salon-kart-page .sk-final__shape { position: absolute; color: rgba(112,107,224,.55); font-size: 11rem; line-height: 1; }
.salon-kart-page .sk-final__shape--one { top: -2.75rem; right: 7%; transform: rotate(14deg); }
.salon-kart-page .sk-final__shape--two { right: 21%; bottom: -4.5rem; color: rgba(240,120,99,.35); transform: rotate(-16deg); }

.salon-kart-page .sk-atmosphere-card,
.salon-kart-page .sk-scenario-card,
.salon-kart-page .sk-step-card,
.salon-kart-page .sk-space-note { transition: transform var(--transition-fast), box-shadow var(--transition-fast); }
.salon-kart-page .sk-atmosphere-card:hover,
.salon-kart-page .sk-scenario-card:hover,
.salon-kart-page .sk-step-card:hover,
.salon-kart-page .sk-space-note:hover { transform: translateY(-2px); box-shadow: var(--shadow-raised); }

@media (max-width: 1079px) {
  .salon-kart-page .sk-steps__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 899px) {
  .salon-kart-page .sk-hero__shell,
  .salon-kart-page .sk-space__layout,
  .salon-kart-page .sk-food__module { grid-template-columns: minmax(0, 1fr); }
  .salon-kart-page .sk-hero__content { max-width: 100%; }
  .salon-kart-page .sk-hero__media { grid-row: 2; }
  .salon-kart-page .sk-hero__card-shape { right: 4%; bottom: 1.5rem; }
  .salon-kart-page .sk-space__media { grid-row: 2; }
  .salon-kart-page .sk-space__content { grid-row: 3; }
  .salon-kart-page .sk-food__media { grid-row: 1; }
  .salon-kart-page .sk-food__content { grid-row: 2; }
  .salon-kart-page .sk-atmosphere__grid,
  .salon-kart-page .sk-scenarios__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .salon-kart-page .sk-atmosphere-card--social,
  .salon-kart-page .sk-scenario-card--coral { grid-column: 1 / -1; }
  .salon-kart-page .sk-gallery__panel { width: 100%; margin: var(--space-4) 0 0; }
}

@media (max-width: 759px) {
  .salon-kart-page .sk-final__module { padding: var(--space-6) var(--space-5); }
  .salon-kart-page .sk-final__content { width: 100%; }
  .salon-kart-page .sk-final__shape { display: none; }
}

@media (max-width: 719px) {
  .salon-kart-page .sk-faq__grid { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 639px) {
  .salon-kart-page .sk-hero { padding-top: var(--space-6); }
  .salon-kart-page .sk-hero__shell,
  .salon-kart-page .sk-etiquette__panel { padding: var(--space-5); }
  .salon-kart-page .sk-hero__shell { gap: var(--space-5); }
  .salon-kart-page .sk-hero h1 { font-size: clamp(2.125rem, 9vw, 2.375rem); }
  .salon-kart-page .sk-hero__lead { font-size: var(--text-base); }
  .salon-kart-page .sk-hero__actions,
  .salon-kart-page .sk-final__actions { align-items: stretch; }
  .salon-kart-page .sk-hero__actions > *,
  .salon-kart-page .sk-final__actions > * { width: 100%; }
  .salon-kart-page .sk-hero__card-shape { display: none; }
  .salon-kart-page .sk-atmosphere__grid,
  .salon-kart-page .sk-scenarios__grid,
  .salon-kart-page .sk-steps__grid,
  .salon-kart-page .sk-space__notes { grid-template-columns: minmax(0, 1fr); }
  .salon-kart-page .sk-atmosphere-card--social,
  .salon-kart-page .sk-scenario-card--coral { grid-column: auto; }
  .salon-kart-page .sk-atmosphere-card,
  .salon-kart-page .sk-scenario-card,
  .salon-kart-page .sk-step-card { min-height: 0; }
  .salon-kart-page .sk-space__layout { gap: var(--space-5); }
  .salon-kart-page .sk-space__notes { gap: var(--space-4); }
  .salon-kart-page .sk-etiquette__details { margin-top: var(--space-5); }
  .salon-kart-page .sk-etiquette__shape { display: none; }
  .salon-kart-page .sk-etiquette__details summary { padding-right: var(--space-3); }
  .salon-kart-page .sk-etiquette__details summary .tag { display: none; }
  .salon-kart-page .sk-food__content { padding: var(--space-5); }
  .salon-kart-page .sk-gallery__shell { padding-bottom: var(--space-5); }
  .salon-kart-page .sk-gallery__panel { padding: var(--space-5); }
}

@media (prefers-reduced-motion: reduce) {
  .salon-kart-page .sk-atmosphere-card:hover,
  .salon-kart-page .sk-scenario-card:hover,
  .salon-kart-page .sk-step-card:hover,
  .salon-kart-page .sk-space-note:hover { transform: none; }
}
