.crpl-page { overflow: clip; }
.crpl-page a { text-decoration-thickness: 1px; text-underline-offset: 0.2em; }
.crpl-page a:not(.button) { color: var(--color-ink); font-weight: 700; }
.crpl-page a:not(.button):hover { color: var(--color-copper); }
.crpl-hero, .crpl-high-roller { position: relative; isolation: isolate; color: var(--color-white); }
.crpl-hero { min-height: 45rem; display: grid; grid-template-columns: minmax(0, 1fr); align-items: end; background: var(--color-navy); }
.crpl-hero__media, .crpl-hero__overlay { position: absolute; inset: 0; z-index: -2; }
.crpl-hero__media img, .crpl-high-roller__media img { width: 100%; height: 100%; object-fit: cover; }
.crpl-hero__media img { object-position: center center; }
.crpl-hero__overlay { z-index: -1; background: linear-gradient(90deg, rgba(16,27,43,.78) 0%, rgba(16,27,43,.48) 39%, rgba(16,27,43,.16) 70%, rgba(16,27,43,.1) 100%); }
.crpl-hero__container { width: min(100% - (var(--gutter) * 2), var(--container-max)); padding-block: var(--space-10); }
.crpl-hero__copy { width: min(100%, 34rem); display: flex; flex-direction: column; gap: var(--space-4); }
.crpl-hero__copy > * { margin: 0; min-width: 0; }
.crpl-hero__copy .eyebrow, .crpl-high-roller__copy .eyebrow { color: var(--color-copper-bright); }
.crpl-hero__copy h1 { font-size: clamp(3.5rem, 6vw, 5.4rem); max-width: 10ch; }
.crpl-hero__copy .lead { max-width: 33rem; }
.crpl-hero__actions { width: 100%; }
.crpl-hero__note { font-size: var(--text-meta); color: var(--color-copper-mist); }
.crpl-hero__caption { position: absolute; right: var(--gutter); bottom: var(--space-5); width: min(100% - (var(--gutter) * 2), 22rem); margin: 0; color: var(--color-copper-mist); font-size: var(--text-utility); font-weight: 700; letter-spacing: var(--tracking-label); line-height: var(--leading-utility); text-align: right; text-transform: uppercase; }
.crpl-terms { display: flex; width: 100%; min-width: 0; gap: var(--space-3); padding-bottom: var(--space-3); border-bottom: 1px solid rgba(243,232,210,.35); overflow-x: auto; scrollbar-width: thin; color: var(--color-copper-bright); font-size: var(--text-utility); font-weight: 700; letter-spacing: var(--tracking-label); line-height: var(--leading-utility); text-transform: uppercase; white-space: nowrap; }
.crpl-terms span { flex: 0 0 auto; }
.crpl-terms span + span::before { margin-right: var(--space-3); color: var(--color-copper-mist); content: "•"; }
.crpl-conversation__intro { display: flex; flex-direction: column; width: min(100%, 39rem); gap: var(--space-4); }
.crpl-conversation__intro > * { margin: 0; }
.crpl-feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-8); }
.crpl-feature { min-width: 0; padding-top: var(--space-4); border-top: 1px solid var(--color-copper); }
.crpl-feature > :last-child { margin-bottom: 0; }
.crpl-feature p { max-width: 19rem; }
.crpl-journey__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: calc(var(--space-5) * 2); align-items: start; }
.crpl-journey__figure, .crpl-details__figure { width: 100%; min-width: 0; margin: 0; }
.crpl-journey__figure img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: 42% center; }
.crpl-journey__copy { min-width: 0; padding-top: var(--space-2); }
.crpl-journey__copy > .lead { max-width: 33.75rem; }
.crpl-moments { display: flex; flex-direction: column; gap: var(--space-6); margin: var(--space-6) 0 0; padding: 0; list-style: none; }
.crpl-moments li { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: var(--space-3); min-width: 0; }
.crpl-moments__number, .crpl-pathway__label, .crpl-expectation > span { color: var(--color-copper); font-size: var(--text-utility); font-weight: 700; letter-spacing: var(--tracking-label); line-height: var(--leading-utility); font-variant-numeric: tabular-nums; text-transform: uppercase; }
.crpl-moments h3 { margin-bottom: var(--space-2); font-size: clamp(1.5rem, 2vw, 1.8rem); }
.crpl-moments p { max-width: 26.875rem; margin-bottom: 0; }
.crpl-ritual__intro { display: flex; flex-direction: column; align-items: center; width: min(100%, 36.875rem); gap: var(--space-4); margin-inline: auto; text-align: center; }
.crpl-ritual__intro > * { margin: 0; }
.crpl-ritual__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-8); }
.crpl-ritual__entry { display: grid; grid-template-columns: 2.25rem minmax(0, 1fr); gap: var(--space-4); min-width: 0; padding: var(--space-5) 0; border-top: 1px solid var(--color-copper); }
.crpl-ritual__entry > div { min-width: 0; max-width: 21.25rem; }
.crpl-ritual__entry h3 { margin-bottom: var(--space-2); }
.crpl-ritual__entry p { margin-bottom: 0; }
.crpl-high-roller { min-height: 38.75rem; display: grid; grid-template-columns: minmax(0, 1fr); align-items: center; background: var(--color-navy); }
.crpl-high-roller__media, .crpl-high-roller__overlay { position: absolute; inset: 0; z-index: -2; }
.crpl-high-roller__media img { object-position: right center; }
.crpl-high-roller__overlay { z-index: -1; background: linear-gradient(90deg, rgba(16,27,43,.9) 0%, rgba(16,27,43,.71) 39%, rgba(16,27,43,.2) 75%); }
.crpl-high-roller__container { width: min(100% - (var(--gutter) * 2), var(--container-max)); padding-block: var(--space-9); }
.crpl-high-roller__copy { display: flex; flex-direction: column; width: min(100%, 31.875rem); gap: var(--space-4); }
.crpl-high-roller__copy > * { margin: 0; }
.crpl-high-roller__copy h2 { font-size: clamp(3rem, 6vw, 4.5rem); line-height: .94; }
.crpl-high-roller__copy p { max-width: 31.875rem; }
.crpl-high-roller__copy .button { align-self: flex-start; }
.crpl-pathways__intro { display: flex; flex-direction: column; width: min(100%, 35rem); gap: var(--space-4); }
.crpl-pathways__intro > * { margin: 0; }
.crpl-pathway-list { display: grid; grid-template-columns: minmax(0, 1fr); margin-top: var(--space-8); border-top: 1px solid var(--color-border); }
.crpl-pathway { display: grid; grid-template-columns: minmax(8rem, 2fr) minmax(0, 6fr) minmax(10rem, 3fr); gap: var(--space-5); align-items: center; min-width: 0; padding-block: var(--space-6); border-bottom: 1px solid var(--color-border); }
.crpl-pathway > * { min-width: 0; }
.crpl-pathway h3 { margin-bottom: var(--space-2); }
.crpl-pathway p { max-width: 33.75rem; margin-bottom: 0; }
.crpl-arrow-link { display: inline-flex; justify-self: end; align-items: center; gap: var(--space-2); min-height: 3rem; color: var(--color-copper) !important; font-size: var(--text-utility); letter-spacing: var(--tracking-label); text-decoration: none; text-transform: uppercase; }
.crpl-arrow-link span { transition: transform var(--transition-fast); }
.crpl-arrow-link:hover span { transform: translateX(3px); }
.crpl-details__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); align-items: start; }
.crpl-details__figure { grid-column: span 6; }
.crpl-details__figure img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; object-position: center; }
.crpl-details__copy { grid-column: 8 / span 5; min-width: 0; }
.crpl-details__copy > .lead { max-width: 31.25rem; }
.crpl-detail-note { max-width: 26.25rem; padding-top: var(--space-4); border-top: 1px solid var(--color-copper); }
.crpl-detail-note + .crpl-detail-note { margin-top: var(--space-5); }
.crpl-detail-note h3 { margin-bottom: var(--space-2); }
.crpl-detail-note p { margin-bottom: 0; }
.crpl-expectations__intro { display: flex; flex-direction: column; width: min(100%, 35.625rem); gap: var(--space-4); }
.crpl-expectations__intro > * { margin: 0; }
.crpl-expectations__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-8); }
.crpl-expectation { min-width: 0; padding-left: var(--space-5); border-left: 1px solid var(--color-copper); }
.crpl-expectation h3 { margin-top: var(--space-4); margin-bottom: var(--space-3); }
.crpl-expectation p { max-width: 21.25rem; margin-bottom: 0; }
.crpl-evening { background: var(--color-copper-mist); }
.crpl-evening__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 5fr)); justify-content: space-between; column-gap: 16.666%; }
.crpl-evening__grid article { min-width: 0; }
.crpl-evening__grid article > p { max-width: 28.75rem; }
.crpl-evening__grid article > :last-child { margin-bottom: 0; }
.crpl-text-link { display: inline-flex; align-items: center; min-height: 3rem; color: var(--color-copper) !important; font-size: var(--text-utility); letter-spacing: var(--tracking-label); text-transform: uppercase; }
.crpl-closing { padding-block: 7rem; }
.crpl-closing__content { display: flex; flex-direction: column; align-items: center; width: min(100%, 32.5rem); gap: var(--space-4); margin-inline: auto; text-align: center; }
.crpl-closing__content > * { margin: 0; }
.crpl-closing__content::before { width: 5rem; height: .35rem; border-top: 1px solid var(--color-copper); border-bottom: 1px solid var(--color-copper); content: ""; }
.crpl-closing__content h2 { font-size: clamp(2.5rem, 5vw, 3rem); }
.crpl-closing__content p { max-width: 32.5rem; }
.crpl-closing__actions { justify-content: center; width: 100%; }
.crpl-page .surface-navy .button--outline-copper { border-color: var(--color-copper); color: var(--color-copper-bright); }
.crpl-page .surface-navy .button--outline-copper:hover { background: var(--color-copper); color: var(--color-white); }
@media (max-width: 1024px) { .crpl-hero { min-height: 42rem; } .crpl-journey__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6); } .crpl-pathway { grid-template-columns: minmax(6.5rem, 1.5fr) minmax(0, 1fr) minmax(8.5rem, 2fr); gap: var(--space-4); } .crpl-details__copy { grid-column: 7 / span 6; } .crpl-evening__grid { column-gap: var(--space-6); } }
@media (max-width: 900px) { .crpl-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .crpl-feature:nth-child(3) { grid-column: span 2; } .crpl-pathway { grid-template-columns: minmax(7rem, 1fr) minmax(0, 1fr); } .crpl-pathway .crpl-arrow-link { grid-column: 2; justify-self: start; } .crpl-closing__actions { flex-direction: column; align-items: stretch; } .crpl-closing__actions > .button { width: 100%; } }
@media (max-width: 860px) { .crpl-journey__grid, .crpl-details__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); } .crpl-journey__figure, .crpl-details__figure, .crpl-details__copy { grid-column: 1; width: 100%; } .crpl-journey__figure img { aspect-ratio: 4 / 5; } .crpl-details__copy { padding-top: 0; } .crpl-evening__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); } .crpl-evening__grid article + article { padding-top: var(--space-6); border-top: 1px solid var(--color-copper); } }
@media (max-width: 760px) { .crpl-hero { display: flex; flex-direction: column; min-height: 0; } .crpl-hero__media { position: relative; inset: auto; width: 100%; height: 22.5rem; } .crpl-hero__media img { object-position: 60% center; } .crpl-hero__overlay { display: none; } .crpl-hero__container { width: 100%; padding: var(--space-7) var(--gutter-mobile); background: var(--color-navy); } .crpl-hero__copy { width: 100%; max-width: none; } .crpl-hero__copy h1 { font-size: clamp(3rem, 13vw, 3.5rem); } .crpl-hero__caption { position: static; width: 100%; padding: var(--space-3) var(--gutter-mobile); background: var(--color-navy); text-align: left; } .crpl-terms { margin-inline: calc(var(--gutter-mobile) * -1); width: calc(100% + (var(--gutter-mobile) * 2)); padding-inline: var(--gutter-mobile); } .crpl-conversation__intro, .crpl-pathways__intro, .crpl-expectations__intro { width: 100%; } .crpl-feature-grid, .crpl-ritual__grid, .crpl-expectations__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); margin-top: var(--space-7); } .crpl-feature:nth-child(3) { grid-column: 1; } .crpl-feature p, .crpl-moments p, .crpl-ritual__entry > div, .crpl-pathway p, .crpl-expectation p, .crpl-evening__grid article > p { max-width: none; } .crpl-journey__grid, .crpl-details__grid { gap: var(--space-5); } .crpl-journey__copy h2, .crpl-details__copy h2 { font-size: clamp(2.25rem, 10vw, 2.6rem); } .crpl-ritual__intro { align-items: flex-start; width: 100%; margin-inline: 0; text-align: left; } .crpl-ritual__entry { grid-template-columns: 2.25rem minmax(0, 1fr); } .crpl-high-roller { display: flex; flex-direction: column; min-height: 0; } .crpl-high-roller__media { position: relative; inset: auto; width: 100%; height: 27rem; } .crpl-high-roller__media img { object-position: 65% center; } .crpl-high-roller__overlay { display: none; } .crpl-high-roller__container { width: 100%; padding: var(--space-7) var(--gutter-mobile); background: var(--color-navy); } .crpl-high-roller__copy { width: 100%; max-width: none; } .crpl-high-roller__copy h2 { font-size: clamp(2.875rem, 12vw, 3.3rem); } .crpl-high-roller__copy .button { align-self: stretch; } .crpl-pathway { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); padding-block: var(--space-5); } .crpl-pathway .crpl-arrow-link { grid-column: 1; justify-self: start; } .crpl-details__figure img { aspect-ratio: 4 / 5; } .crpl-detail-note { max-width: none; } .crpl-expectation { padding: 0 0 var(--space-5); border-left: 0; border-bottom: 1px solid var(--color-copper); } .crpl-expectation h3 { margin-top: var(--space-3); } .crpl-closing { padding-block: var(--space-8); } .crpl-closing__content { width: 100%; } .crpl-closing__actions { flex-direction: column; align-items: stretch; } .crpl-closing__actions > .button { width: 100%; } }
@media (prefers-reduced-motion: reduce) { .crpl-arrow-link:hover span { transform: none; } }
