.features-page { background: var(--color-ink-950); }
.features-page a:focus-visible { outline: 2px solid var(--color-felt-300); outline-offset: 2px; }
.features-hero { background: var(--color-felt-700); padding-block: var(--space-9); }
.features-hero__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(24px, 1fr) minmax(0, 6fr); align-items: stretch; }
.features-hero__copy { grid-column: 1 / 2; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; justify-content: center; gap: var(--space-4); padding-block: var(--space-4); }
.features-hero__copy > * { min-width: 0; margin: 0; }
.features-hero__copy h1 { max-width: 15ch; }
.features-hero__copy .lead { max-width: 44ch; }
.features-hero__image { grid-column: 3 / 4; width: 100%; min-width: 0; margin: 0; }
.features-hero__image img { width: 100%; height: 100%; min-height: 34rem; object-fit: cover; object-position: 70% center; }
.features-hero__actions { width: 100%; }
.features-proof { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; min-width: 0; margin-top: var(--space-2); border-top: 1px solid color-mix(in srgb, var(--color-ivory-50) 35%, transparent); }
.features-proof__item { display: flex; min-width: 0; flex-direction: column; gap: var(--space-2); padding: var(--space-3); border-right: 1px solid color-mix(in srgb, var(--color-ivory-50) 26%, transparent); }
.features-proof__item:first-child { padding-left: 0; }
.features-proof__item:last-child { border-right: 0; }
.features-proof__item span { color: var(--color-felt-300); font-size: var(--text-xs); font-weight: 700; letter-spacing: .1em; line-height: var(--leading-xs); text-transform: uppercase; }
.features-proof__item strong { color: var(--color-ivory-50); font-size: var(--text-sm); line-height: var(--leading-sm); }
.features-ready__intro { width: 41.666%; min-width: 0; }
.features-ready__intro .lead { max-width: 64ch; }
.features-ready__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
.features-feature { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding-top: var(--space-4); border-top: var(--border-default); }
.features-feature > * { min-width: 0; margin: 0; }
.features-feature h3, .features-feature p { max-width: 40ch; }
.features-feature__rule { width: 2.5rem; height: 2px; background: var(--color-felt-300); }
.features-feature--detail .utility-label { color: var(--color-copper-400); }
.features-feature__quote { padding: var(--space-3); background: var(--color-ink-800); color: var(--color-ivory-50); font-weight: 700; }
.features-atmosphere__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(24px, 1fr) minmax(0, 4fr); align-items: start; }
.features-atmosphere__figure { grid-column: 1 / 2; min-width: 0; margin: 0; }
.features-atmosphere__image { width: 100%; }
.features-atmosphere__image img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; object-position: center center; }
.features-atmosphere__copy { grid-column: 3 / 4; display: flex; min-width: 0; flex-direction: column; gap: var(--space-5); }
.features-atmosphere__copy > * { min-width: 0; }
.features-atmosphere__narrative .lead { max-width: 56ch; }
.features-atmosphere__statement { padding-top: var(--space-4); border-top: var(--border-default); }
.features-atmosphere__statement h3, .features-atmosphere__statement p { max-width: 48ch; }
.features-atmosphere__statement a { display: inline-block; padding-block: var(--space-2); }
.features-gather__intro { width: 50%; min-width: 0; }
.features-gather__intro .lead { max-width: 66ch; }
.features-gather__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-3); margin-top: var(--space-7); }
.features-intent { grid-column: span 3; display: flex; min-width: 0; flex-direction: column; gap: var(--space-3); padding: var(--space-5); border: var(--border-default); }
.features-intent--primary { grid-column: span 6; background: var(--color-ink-900); }
.features-intent > * { min-width: 0; margin: 0; }
.features-intent p { max-width: 46ch; }
.features-intent .utility-label { color: var(--color-felt-300); }
.features-intent a { display: inline; }
.features-lounge__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(24px, 1fr) minmax(0, 6fr); align-items: center; }
.features-lounge__card { grid-column: 1 / 2; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding: var(--space-6); border-top: 1px solid var(--color-copper-400); background: var(--color-ivory-50); color: #405048; }
.features-lounge__card > * { min-width: 0; margin: 0; }
.features-lounge__card :is(h2, h3, strong) { color: var(--color-ink-950); }
.features-lounge__card p { max-width: 54ch; }
.features-lounge__card .eyebrow { color: #8c5832; }
.features-lounge__link { color: var(--color-felt-700); }
.features-lounge__link:hover { color: var(--color-ink-950); }
.features-lounge__image { grid-column: 3 / 4; width: 100%; min-width: 0; margin: 0; }
.features-lounge__image img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; object-position: center; }
.features-prepare__intro { width: 41.666%; min-width: 0; }
.features-prepare__intro .lead { max-width: 62ch; }
.features-steps { display: grid; grid-template-columns: minmax(0, 1fr); margin-top: var(--space-7); border-top: var(--border-default); }
.features-step { display: grid; grid-template-columns: minmax(4.5rem, 12%) minmax(0, 60%) minmax(0, 28%); align-items: start; min-width: 0; padding-block: var(--space-5); border-bottom: var(--border-default); }
.features-step__number { grid-column: 1; min-width: 0; color: var(--color-felt-300); font-family: var(--font-heading); font-size: var(--text-3xl); font-weight: 700; font-variant-numeric: tabular-nums; line-height: 1; }
.features-step__content { grid-column: 2; min-width: 0; }
.features-step__content h3, .features-step__content p { max-width: 52ch; }
.features-step__action { grid-column: 3; justify-self: end; min-width: 220px; align-self: center; }
.features-location__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(24px, 1fr) minmax(0, 4fr); align-items: start; }
.features-location__panel { grid-column: 3 / 4; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.features-location__panel > * { min-width: 0; margin: 0; }
.features-location__panel p { max-width: 52ch; }
.features-location__panel address { color: var(--color-ivory-50); font-variant-numeric: tabular-nums; }
.features-location__next { padding-top: var(--space-4); border-top: var(--border-default); }
.features-entry { padding-block: var(--space-9); background: var(--color-felt-700); }
.features-entry__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); }
.features-entry__copy { grid-column: 2 / span 7; min-width: 0; }
.features-entry__copy h2, .features-entry__copy h3, .features-entry__copy p { max-width: 58ch; }
.features-entry__label { margin-bottom: var(--space-2); color: var(--color-danger-400); font-size: var(--text-xs); font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.features-entry__rule { width: 100%; max-width: 58ch; height: 1px; margin-block: var(--space-5); background: color-mix(in srgb, var(--color-ivory-50) 38%, transparent); }
.features-entry__copy a { display: inline-block; padding: var(--space-2) 0; color: var(--color-ivory-50); }
.features-enquiry__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--space-5); row-gap: var(--space-6); }
.features-enquiry__intro { grid-column: 1 / span 5; min-width: 0; }
.features-enquiry__intro .lead { max-width: 60ch; }
.features-enquiry__reminder { grid-column: 10 / span 3; align-self: end; min-width: 0; padding-top: var(--space-4); border-top: 1px solid var(--color-copper-400); }
.features-enquiry__reminder p { max-width: 34ch; }
.features-form-panel { grid-column: 1 / span 8; display: flex; min-width: 0; flex-direction: column; gap: var(--space-5); border-top-color: var(--color-copper-400); }
.features-form-panel > * { min-width: 0; margin: 0; }
.features-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.features-field { min-width: 0; }
.features-field--full { grid-column: 1 / -1; min-width: 0; }
.features-field label { display: inline-block; }
.features-field .helper-text { margin: var(--space-2) 0 0; }
.features-field .error-message { margin: var(--space-2) 0 0; }
.features-consent { display: grid; grid-template-columns: 1.25rem minmax(0, 1fr); column-gap: var(--space-2); align-items: start; }
.features-consent input { grid-column: 1; margin-top: .1rem; }
.features-consent label { grid-column: 2; margin: 0; }
.features-consent .error-message { grid-column: 2; }
.features-form-grid .button { min-width: 15rem; }
.features-form-summary, .features-form-success { padding: var(--space-3); border-left: 2px solid var(--color-danger-400); background: var(--color-ink-800); color: var(--color-ivory-50); }
.features-form-success { border-left-color: var(--color-felt-300); }
.features-form-summary p, .features-form-success p { margin: 0; }
.features-form-summary ul { display: grid; gap: var(--space-2); margin: var(--space-2) 0 0; }
.features-form-note { padding-top: var(--space-5); border-top: var(--border-default); }
.features-form-note h3, .features-form-note p { max-width: 54ch; }
.features-close { padding-block: var(--space-8); border-top: var(--border-default); border-bottom: var(--border-default); }
.features-close__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); }
.features-close__copy { grid-column: 3 / span 6; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.features-close__copy > * { min-width: 0; margin: 0; }
.features-close__copy p { max-width: 46ch; }
.features-close__actions { width: 100%; }
@media (max-width: 979px) {
  .features-ready__intro, .features-gather__intro, .features-prepare__intro { width: 58.333%; }
  .features-ready__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .features-ready__grid > :nth-child(3) { grid-column: 1 / -1; }
  .features-gather__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .features-intent, .features-intent--primary { grid-column: auto; }
  .features-intent--primary { grid-row: span 2; }
}
@media (max-width: 899px) {
  .features-hero__grid, .features-atmosphere__grid, .features-lounge__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .features-hero__copy, .features-hero__image, .features-atmosphere__figure, .features-atmosphere__copy, .features-lounge__card, .features-lounge__image { grid-column: 1; }
  .features-hero__image img { min-height: 0; aspect-ratio: 16 / 9; }
  .features-hero__copy h1 { max-width: 18ch; }
  .features-atmosphere__copy { max-width: 44rem; }
  .features-enquiry__reminder { grid-column: 1 / span 8; grid-row: 2; align-self: start; }
  .features-form-panel { grid-row: 3; }
}
@media (max-width: 859px) {
  .features-location__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
  .features-location__panel { grid-column: 1; }
  .features-location__panel { grid-row: 1; }
}
@media (max-width: 759px) {
  .features-hero { padding-block: var(--space-7); }
  .features-hero__copy { gap: var(--space-4); }
  .features-hero__copy h1 { font-size: clamp(2.625rem, 13vw, 3.25rem); line-height: .98; }
  .features-hero__copy .lead { max-width: none; }
  .features-hero__actions { align-items: stretch; }
  .features-hero__actions .button { width: 100%; }
  .features-proof { grid-template-columns: minmax(0, 1fr); }
  .features-proof__item { padding: var(--space-3) 0; border-right: 0; border-bottom: 1px solid color-mix(in srgb, var(--color-ivory-50) 26%, transparent); }
  .features-proof__item:last-child { border-bottom: 0; }
  .features-hero__image img { aspect-ratio: 3 / 2; object-position: 68% center; }
  .features-ready__intro, .features-gather__intro, .features-prepare__intro { width: 100%; }
  .features-ready__grid, .features-gather__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
  .features-ready__grid > :nth-child(3) { grid-column: auto; }
  .features-intent, .features-intent--primary { grid-column: auto; grid-row: auto; padding: var(--space-4); }
  .features-feature h3, .features-feature p, .features-intent p { max-width: none; }
  .features-lounge__card { padding: var(--space-5) var(--space-4); }
  .features-lounge__card p { max-width: none; }
  .features-step { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); padding-block: var(--space-5); }
  .features-step__number, .features-step__content, .features-step__action { grid-column: 1; }
  .features-step__action { justify-self: stretch; width: 100%; }
  .features-location__panel { align-items: stretch; }
  .features-directions { width: 100%; }
  .features-entry { padding-block: var(--space-7); }
  .features-entry__grid, .features-enquiry__grid, .features-close__grid { grid-template-columns: minmax(0, 1fr); }
  .features-entry__copy, .features-enquiry__intro, .features-enquiry__reminder, .features-form-panel, .features-close__copy { grid-column: 1; grid-row: auto; }
  .features-entry__copy h2, .features-entry__copy h3, .features-entry__copy p { max-width: none; }
  .features-entry__copy h2, .features-enquiry__intro h2, .features-close__copy h2 { font-size: var(--text-2xl); }
  .features-enquiry__grid { row-gap: var(--space-5); }
  .features-enquiry__reminder { padding: var(--space-3); background: var(--color-ink-900); }
  .features-form-grid { grid-template-columns: minmax(0, 1fr); }
  .features-field--full { grid-column: 1; }
  .features-form-grid .button { width: 100%; min-width: 0; }
  .features-close { padding-block: var(--space-7); }
  .features-close__actions { align-items: stretch; }
  .features-close__actions .button { width: 100%; }
}
@media (max-width: 699px) { .features-close__actions { flex-direction: column; align-items: stretch; } }
@media (prefers-reduced-motion: reduce) { .features-page * { scroll-behavior: auto; } }