main.pe-page {
  background: var(--surface-page);
}

.pe-page .pe-hero {
  position: relative;
  min-height: 43rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: end;
  isolation: isolate;
  overflow: hidden;
}

.pe-page .pe-hero__image,
.pe-page .pe-hero__veil {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.pe-page .pe-hero__image {
  z-index: -2;
  object-fit: cover;
  object-position: 66% center;
}

.pe-page .pe-hero__veil {
  z-index: -1;
  background: linear-gradient(90deg, rgba(10, 11, 14, 0.92) 0%, rgba(10, 11, 14, 0.79) 40%, rgba(10, 11, 14, 0.34) 72%, rgba(10, 11, 14, 0.16) 100%);
}

.pe-page .pe-hero__inner {
  width: 100%;
  padding-block: var(--space-24);
}

.pe-page .pe-hero__copy {
  display: flex;
  flex-direction: column;
  width: min(100%, 36.875rem);
  min-width: 0;
  gap: var(--space-6);
}

.pe-page .pe-hero__copy > * { margin: 0; }
.pe-page .pe-hero__title { max-width: 13ch; }
.pe-page .pe-hero__lead { max-width: 34rem; color: var(--color-platinum); font-size: var(--text-18); }
.pe-page .pe-hero__action { align-self: flex-start; }

.pe-page .pe-section-header {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: var(--space-4);
}

.pe-page .pe-section-header > * { margin: 0; }
.pe-page .pe-section-header::before {
  width: 4rem;
  height: 1px;
  background: var(--color-gold);
  content: "";
}

.pe-page .pe-section-header__intro { color: var(--color-platinum); }
.pe-page .pe-section-header--three { max-width: 38.75rem; }
.pe-page .pe-section-header--formats { max-width: 40rem; }
.pe-page .pe-section-header--sequence { max-width: 41.25rem; }
.pe-page .pe-section-header--faq { max-width: 35rem; }

.pe-page .pe-pillars { background: var(--surface-raised); }
.pe-page .pe-pillars__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  gap: 0;
  margin-top: var(--space-12);
}

.pe-page .pe-pillar {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 0 var(--space-8);
  gap: var(--space-4);
  border-inline-start: 1px solid var(--border-neutral);
}

.pe-page .pe-pillar:first-child { padding-inline-start: 0; border-inline-start: 0; }
.pe-page .pe-pillar:last-child { padding-inline-end: 0; }
.pe-page .pe-pillar > * { margin: 0; }
.pe-page .pe-pillar__number { color: var(--color-gold); font-size: var(--text-14); font-weight: 700; letter-spacing: .12em; }
.pe-page .pe-pillar__title { font-size: var(--text-24); }
.pe-page .pe-pillar--salon { border-inline-start-color: rgba(122, 28, 56, .9); }

.pe-page .pe-formats__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  margin-top: var(--space-12);
  gap: var(--space-6);
}

.pe-page .pe-format {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 20rem;
  padding: var(--space-8);
  gap: var(--space-4);
  border: 1px solid var(--border-neutral);
  border-radius: var(--radius-sm);
  background: var(--surface-raised);
  transition: border-color var(--transition-fast), background-color var(--transition-fast);
}

.pe-page .pe-format:hover { border-color: var(--color-gold); }
.pe-page .pe-format > * { margin: 0; }
.pe-page .pe-format__copy { color: var(--color-platinum); }
.pe-page .pe-format__link { align-self: flex-start; margin-top: auto; min-height: 2.75rem; display: inline-flex; align-items: center; }
.pe-page .pe-format--panel { background: var(--surface-panel); }
.pe-page .pe-format--salon { background: var(--surface-salon); }
.pe-page .pe-format__status { align-self: flex-start; }

.pe-page .pe-spaces { background: var(--surface-raised); }
.pe-page .pe-spaces__grid {
  display: grid;
  grid-template-columns: minmax(26.25rem, 48fr) minmax(16.25rem, 30fr) minmax(13.75rem, 22fr);
  width: 100%;
  align-items: start;
  gap: var(--space-8);
}

.pe-page .pe-spaces__editorial {
  display: flex;
  flex-direction: column;
  min-width: 0;
  max-width: 35rem;
  gap: var(--space-6);
}
.pe-page .pe-spaces__editorial > * { margin: 0; }
.pe-page .pe-spaces__subsection { display: flex; flex-direction: column; min-width: 0; gap: var(--space-3); padding-top: var(--space-6); border-top: 1px solid var(--border-gold); }
.pe-page .pe-spaces__subsection > * { margin: 0; }
.pe-page .pe-spaces__subsection--salon { border-top-color: rgba(122, 28, 56, .9); }
.pe-page .pe-spaces__figure { width: 100%; min-width: 0; margin: 0; }
.pe-page .pe-spaces__figure img { width: 100%; height: 31rem; object-fit: cover; object-position: center bottom; }
.pe-page .pe-spaces__facts { display: flex; flex-direction: column; min-width: 0; padding-inline-start: var(--space-6); gap: var(--space-6); border-inline-start: 1px solid var(--color-gold); }
.pe-page .pe-spaces__facts > * { margin: 0; }
.pe-page .pe-spaces__facts-title { font-size: var(--text-24); }
.pe-page .pe-spaces__fact-list { display: flex; flex-direction: column; margin: 0; padding: 0; gap: var(--space-4); }
.pe-page .pe-spaces__fact-list li { padding-bottom: var(--space-4); border-bottom: 1px solid var(--border-neutral); color: var(--color-ivory); }

.pe-page .pe-sequence__list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  margin-top: var(--space-12);
  border-top: 1px solid var(--border-gold);
}

.pe-page .pe-sequence__item {
  display: grid;
  grid-template-columns: 5.25rem minmax(0, 1fr) 11.25rem;
  width: 100%;
  min-width: 0;
  gap: var(--space-6);
  padding: var(--space-8) 0;
  border-bottom: 1px solid var(--border-neutral);
}
.pe-page .pe-sequence__index { min-width: 0; color: var(--color-gold); font-size: var(--text-24); font-family: var(--font-heading); line-height: 1; }
.pe-page .pe-sequence__content { display: flex; flex-direction: column; min-width: 0; max-width: 42.5rem; gap: var(--space-3); }
.pe-page .pe-sequence__content > * { margin: 0; }
.pe-page .pe-sequence__label { min-width: 0; color: var(--color-platinum); font-size: var(--text-14); font-weight: 700; letter-spacing: .09em; line-height: 1.4; text-align: right; text-transform: uppercase; }
.pe-page .pe-sequence__item--salon { margin-inline: calc(var(--space-6) * -1); width: calc(100% + var(--space-12)); padding-inline: var(--space-6); background: var(--surface-salon); }
.pe-page .pe-sequence__badge { align-self: flex-start; }

.pe-page .pe-hospitality { background: var(--surface-panel); }
.pe-page .pe-hospitality__grid { display: grid; grid-template-columns: minmax(0, 46fr) minmax(0, 54fr); width: 100%; align-items: stretch; gap: var(--space-12); }
.pe-page .pe-hospitality__copy { display: flex; flex-direction: column; min-width: 0; max-width: 33.75rem; gap: var(--space-6); }
.pe-page .pe-hospitality__copy > * { margin: 0; }
.pe-page .pe-hospitality__principles { display: flex; flex-direction: column; margin: 0; padding: 0; gap: var(--space-6); }
.pe-page .pe-hospitality__principle { display: flex; flex-direction: column; min-width: 0; gap: var(--space-3); padding-top: var(--space-6); border-top: 1px solid var(--border-gold); }
.pe-page .pe-hospitality__principle > * { margin: 0; }
.pe-page .pe-hospitality__figure { min-width: 0; margin: 0; }
.pe-page .pe-hospitality__figure img { width: 100%; height: 100%; min-height: 31rem; object-fit: cover; object-position: 67% center; }
.pe-page .pe-hospitality__figure figcaption { margin: 0; }

.pe-page .pe-cards { background: var(--surface-salon); }
.pe-page .pe-cards__header { max-width: 42.5rem; margin-inline: auto; text-align: center; }
.pe-page .pe-cards__header::before { margin-inline: auto; }
.pe-page .pe-cards__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; margin-top: var(--space-12); gap: var(--space-6); }
.pe-page .pe-card-assurance { display: flex; flex-direction: column; min-width: 0; padding: var(--space-8); gap: var(--space-4); border: 1px solid rgba(247, 243, 235, .16); background: rgba(10, 11, 14, .28); }
.pe-page .pe-card-assurance > * { margin: 0; }
.pe-page .pe-card-assurance__number { color: var(--color-gold); font-size: var(--text-14); font-weight: 700; letter-spacing: .1em; }
.pe-page .pe-card-assurance--circle { border-inline-start: 2px solid var(--color-velvet); }

.pe-page .pe-faq__layout { display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, .35fr); width: 100%; gap: var(--space-12); }
.pe-page .pe-faq__content { min-width: 0; }
.pe-page .pe-faq__accordion { display: flex; flex-direction: column; width: min(100%, 47.5rem); min-width: 0; margin-top: var(--space-12); }
.pe-page .pe-faq__item { border-bottom: 1px solid var(--border-neutral); }
.pe-page .pe-faq__button { display: flex; align-items: center; justify-content: space-between; width: 100%; min-width: 0; min-height: 3.5rem; padding: var(--space-4) 0; gap: var(--space-4); border: 0; background: transparent; color: var(--color-ivory); font-family: var(--font-heading); font-size: var(--text-18); line-height: 1.3; text-align: left; }
.pe-page .pe-faq__icon { flex: 0 0 1.5rem; position: relative; width: 1.5rem; height: 1.5rem; }
.pe-page .pe-faq__icon::before, .pe-page .pe-faq__icon::after { position: absolute; top: 50%; left: 50%; width: .8rem; height: 1px; background: var(--color-gold); content: ""; transform: translate(-50%, -50%); }
.pe-page .pe-faq__icon::after { transition: transform var(--transition-fast); transform: translate(-50%, -50%) rotate(90deg); }
.pe-page .pe-faq__button[aria-expanded="true"] .pe-faq__icon::after { transform: translate(-50%, -50%) rotate(0); }
.pe-page .pe-faq__panel { display: none; min-width: 0; padding: 0 0 var(--space-6); }
.pe-page .pe-faq__panel.is-open { display: block; }
.pe-page .pe-faq__panel p { max-width: 43.75rem; margin: 0; }
.pe-page .pe-faq__note { margin-top: var(--space-4) !important; padding-left: var(--space-4); border-inline-start: 1px solid var(--color-velvet); color: var(--color-ivory); }
.pe-page .pe-faq__void { min-width: 0; }

.pe-page .pe-request { background: var(--surface-raised); }
.pe-page .pe-request__grid { display: grid; grid-template-columns: minmax(22.5rem, 42fr) minmax(32.5rem, 58fr); width: 100%; align-items: start; gap: var(--space-12); }
.pe-page .pe-request__context { display: flex; flex-direction: column; min-width: 0; max-width: 28.75rem; gap: var(--space-6); }
.pe-page .pe-request__context > * { margin: 0; }
.pe-page .pe-request__aside { display: flex; flex-direction: column; padding-left: var(--space-6); gap: var(--space-4); border-inline-start: 1px solid var(--color-gold); }
.pe-page .pe-request__aside > * { margin: 0; }
.pe-page .pe-request__form { min-width: 0; padding: var(--space-8); border: 1px solid var(--border-neutral); border-radius: var(--radius-sm); background: var(--surface-panel); }
.pe-page .pe-request__form > * { margin: 0; }
.pe-page .pe-form-summary { display: none; margin-bottom: var(--space-6) !important; padding: var(--space-4); border-inline-start: 2px solid var(--color-gold); background: rgba(25, 13, 20, .6); color: var(--color-ivory); }
.pe-page .pe-form-summary.is-visible { display: block; }
.pe-page .pe-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; gap: var(--space-6); }
.pe-page .pe-form-grid > * { min-width: 0; }
.pe-page .pe-form-grid .pe-form-field--full { grid-column: 1 / -1; }
.pe-page .pe-form-field { display: flex; flex-direction: column; margin: 0; gap: var(--space-2); }
.pe-page .pe-form-field label { margin: 0; }
.pe-page .pe-form-field small { color: var(--color-platinum); }
.pe-page .pe-form-field input, .pe-page .pe-form-field select, .pe-page .pe-form-field textarea { font-size: 1rem; }
.pe-page .pe-field-error { display: none; color: var(--color-ivory); font-size: var(--text-14); line-height: 1.4; }
.pe-page .pe-field-error.is-visible { display: block; }
.pe-page .pe-consent { display: flex; align-items: flex-start; min-width: 0; margin-top: var(--space-6); gap: var(--space-3); }
.pe-page .pe-consent input { flex: 0 0 1.1rem; width: 1.1rem; min-height: 1.1rem; margin-top: .25rem; accent-color: var(--color-gold); }
.pe-page .pe-consent label { margin: 0; font-size: var(--text-15); }
.pe-page .pe-submit { width: 100%; min-height: 3rem; margin-top: var(--space-6); }
.pe-page .pe-form-status { min-height: 1.65em; margin-top: var(--space-4) !important; color: var(--color-ivory); }

.pe-page .pe-closing { padding-block: var(--space-32); border-top: 1px solid var(--border-gold); }
.pe-page .pe-closing__content { display: flex; flex-direction: column; width: min(100%, 38.75rem); min-width: 0; margin-inline: auto; gap: var(--space-6); text-align: center; }
.pe-page .pe-closing__content > * { margin: 0; }
.pe-page .pe-closing__content .rt-button { align-self: center; }

@media (max-width: 1019px) {
  .pe-page .pe-spaces__grid { grid-template-columns: minmax(0, 1fr) minmax(16.25rem, .65fr); }
  .pe-page .pe-spaces__facts { grid-column: 1 / -1; display: grid; grid-template-columns: 12rem minmax(0, 1fr); align-items: start; }
  .pe-page .pe-spaces__fact-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); }
  .pe-page .pe-request__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); }
  .pe-page .pe-request__context { max-width: 28.75rem; }
}

@media (max-width: 939px) {
  .pe-page .pe-formats__grid { grid-template-columns: minmax(0, 1fr); }
  .pe-page .pe-format { min-height: 0; }
  .pe-page .pe-hospitality__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); }
  .pe-page .pe-hospitality__copy { max-width: 33.75rem; }
  .pe-page .pe-hospitality__figure img { min-height: 0; height: auto; aspect-ratio: 16 / 10; }
  .pe-page .pe-sequence__item { grid-template-columns: 5.25rem minmax(0, 1fr); }
  .pe-page .pe-sequence__label { grid-column: 2; grid-row: 1; text-align: left; }
  .pe-page .pe-sequence__content { grid-column: 2; grid-row: 2; }
}

@media (max-width: 899px) {
  .pe-page .pe-pillars__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-8) 0; }
  .pe-page .pe-pillar:nth-child(3) { grid-column: 1 / -1; padding-inline-start: 0; border-inline-start: 0; }
}

@media (max-width: 859px) {
  .pe-page .pe-cards__grid { grid-template-columns: minmax(0, 1fr); }
  .pe-page .pe-faq__layout { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .pe-page .pe-faq__void { display: none; }
}

@media (max-width: 759px) {
  .pe-page .pe-hero { min-height: 29rem; align-items: end; }
  .pe-page .pe-hero__veil { background: linear-gradient(180deg, rgba(10, 11, 14, .42) 0%, rgba(10, 11, 14, .9) 60%, rgba(10, 11, 14, .96) 100%); }
  .pe-page .pe-hero__inner { padding-block: var(--space-12); }
  .pe-page .pe-hero__copy { width: 100%; gap: var(--space-4); }
  .pe-page .pe-hero__title { max-width: 13ch; font-size: clamp(2.25rem, 10vw, 2.75rem); line-height: 1.08; }
  .pe-page .pe-hero__lead { max-width: 100%; font-size: var(--text-16); }
  .pe-page .pe-hero__action { width: 100%; min-height: 3rem; }
  .pe-page .pe-pillars__grid { grid-template-columns: minmax(0, 1fr); margin-top: var(--space-8); gap: 0; }
  .pe-page .pe-pillar, .pe-page .pe-pillar:first-child, .pe-page .pe-pillar:last-child { padding: var(--space-6) 0; border-inline-start: 0; border-top: 1px solid var(--border-gold); }
  .pe-page .pe-pillar:nth-child(3) { grid-column: auto; }
  .pe-page .pe-spaces__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); }
  .pe-page .pe-spaces__editorial { max-width: 100%; }
  .pe-page .pe-spaces__figure img { height: auto; max-height: 26.875rem; aspect-ratio: 4 / 5; }
  .pe-page .pe-spaces__facts { grid-column: auto; display: flex; padding-left: 0; border-inline-start: 0; border-top: 1px solid var(--color-gold); padding-top: var(--space-6); }
  .pe-page .pe-spaces__fact-list { display: flex; }
  .pe-page .pe-sequence__item, .pe-page .pe-sequence__item--salon { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); width: 100%; margin: 0; padding: var(--space-6) 0; }
  .pe-page .pe-sequence__item--salon { padding: var(--space-6); }
  .pe-page .pe-sequence__index, .pe-page .pe-sequence__label, .pe-page .pe-sequence__content { grid-column: auto; grid-row: auto; text-align: left; }
  .pe-page .pe-sequence__index { font-size: var(--text-14); font-family: var(--font-body); font-weight: 700; letter-spacing: .1em; }
  .pe-page .pe-hospitality__principles { gap: var(--space-5); }
  .pe-page .pe-closing { padding-block: var(--space-16); }
}

@media (max-width: 619px) {
  .pe-page .pe-formats__grid, .pe-page .pe-cards__grid { margin-top: var(--space-8); }
  .pe-page .pe-format, .pe-page .pe-card-assurance, .pe-page .pe-request__form { padding: var(--space-6); }
  .pe-page .pe-form-grid { grid-template-columns: minmax(0, 1fr); }
  .pe-page .pe-form-grid .pe-form-field--full { grid-column: auto; }
  .pe-page .pe-submit { min-height: 3rem; }
  .pe-page .pe-closing__content .rt-button { width: 100%; }
  .pe-page .pe-faq__button { min-height: 3.25rem; font-size: 1.0625rem; }
}

@media (prefers-reduced-motion: reduce) {
  .pe-page .pe-format, .pe-page .pe-faq__icon::after { transition: none; }
}
