/* Corporate hospitality: reception atmosphere, close craft, concise coordination. */
.corporate-page { background: var(--ink); }
.corporate-page [aria-current="page"] { text-decoration: underline; text-decoration-color: var(--brass); text-underline-offset: 7px; }
.corporate-wrap { width: min(88%, 1408px); margin-inline: auto; }
.corporate-section { padding-block: clamp(64px, 6.2vw, 100px); }
.corporate-page h1, .corporate-page h2, .corporate-page h3 { overflow-wrap: normal; }
.corporate-page h2 { font-size: clamp(2.8rem, 4.4vw, 4.4rem); line-height: 1.03; }
.corporate-page main p { line-height: 1.75; }
.corporate-page main .eyebrow { line-height: 1.5; }
.corporate-hero { position: relative; isolation: isolate; background: #191713; }
.corporate-hero-image, .corporate-hero-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.corporate-hero-image { z-index: -2; object-fit: cover; object-position: 65% 55%; }
.corporate-hero-shade { z-index: -1; background: linear-gradient(90deg, #11100feb 0%, #11100fa8 30%, #11100f38 52%, transparent 78%), linear-gradient(0deg, #11100f65, transparent 25%); }
.corporate-hero-inner { position: relative; min-height: clamp(700px, 51vw, 820px); display: flex; align-items: center; padding-block: 54px 76px; }
.corporate-hero-copy { max-width: 620px; }
.corporate-hero .eyebrow { font-size: .7rem; letter-spacing: .16em; margin-bottom: 24px; }
.corporate-hero h1 { font-size: clamp(4.2rem, 6vw, 6rem); line-height: .96; margin: 0 0 25px; }
.corporate-hero h1 em, .corporate-close h2 em { font-weight: 400; }
.corporate-hero-description { font-size: 1.0625rem; max-width: 360px; color: #f0e6db; margin: 0 0 25px; }
.corporate-hero .button, .corporate-close .button { min-height: 54px; gap: 36px; padding: 12px 28px; font-size: 1.5rem; }
.corporate-hero .button { background: var(--cream); border-color: var(--cream); color: var(--wine); }
.corporate-hero .button:hover { background: #e7dacb; }
.corporate-hero-foot { position: absolute; bottom: 23px; left: 0; margin: 0; font-size: .625rem; letter-spacing: .17em; text-transform: uppercase; color: #e6d6be; }
.corporate-faq { background: var(--cream); color: #3e3330; }
.corporate-faq h2, .corporate-faq .eyebrow { color: var(--wine); }
.corporate-faq-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 10%; }
.corporate-faq-layout > div:first-child > p:not(.eyebrow) { margin: 0; font-size: 1rem; max-width: 300px; }
.corporate-faq .faq-list summary { font-size: 1rem; padding-block: 22px; }
.corporate-faq .faq-list details p { font-size: .9375rem; line-height: 1.8; }
.corporate-close { padding-block: clamp(75px, 8vw, 128px) 38px; }
.corporate-close > .corporate-wrap > .eyebrow { color: #cbb38d; font-size: .6875rem; }
.corporate-close-layout { display: grid; grid-template-columns: 1.3fr .7fr; gap: 8%; align-items: center; }
.corporate-close h2 { font-size: clamp(3.7rem, 6.3vw, 6.3rem); line-height: .98; margin: 0; }
.corporate-close-action > p:first-child { font-size: 1rem; color: #d6c9bb; max-width: 330px; margin: 0 0 25px; }
@media (max-width: 1099px) {
  .corporate-wrap { width: calc(100% - 64px); }
  .corporate-hero-inner { min-height: 680px; }
  .corporate-hero-copy { max-width: 550px; }
  .corporate-hero h1 { font-size: 5.1rem; }
  .corporate-hero-shade { background: linear-gradient(90deg, #11100fe8 0%, #11100fa0 40%, #11100f18 85%); }
  .corporate-faq-layout { gap: 7%; }
  .corporate-close-layout { gap: 6%; grid-template-columns: 1.15fr .85fr; }
  .corporate-close h2 { font-size: 4.8rem; }
}
@media (max-width: 759px) {
  .corporate-wrap { width: calc(100% - 48px); }
  .corporate-section { padding-block: 48px; }
  .corporate-page h2 { font-size: clamp(2.65rem, 8.8vw, 3.7rem); }
  .corporate-hero-inner { display: block; min-height: 0; padding-block: 32px 295px; }
  .corporate-hero h1 { font-size: clamp(3.3rem, 11.7vw, 5rem); line-height: .98; margin-bottom: 20px; }
  .corporate-hero-copy { max-width: 490px; padding-bottom: 18px; }
  .corporate-hero .eyebrow { font-size: .625rem; letter-spacing: .1em; margin-bottom: 21px; }
  .corporate-hero-description { font-size: 1rem; line-height: 1.6; margin-bottom: 21px; max-width: 310px; }
  .corporate-desktop-break { display: none; }
  .corporate-hero .button { min-height: 50px; font-size: 1.375rem; padding-inline: 24px; }
  .corporate-hero-image { top: auto; bottom: 0; height: 295px; object-fit: cover; object-position: 86% 55%; }
  .corporate-hero-shade { top: auto; bottom: 0; height: 295px; background: linear-gradient(180deg, #191713, #19171380 14%, transparent 35%, transparent 78%, #11100fa0); }
  .corporate-hero-foot { bottom: 15px; font-size: .5625rem; letter-spacing: .1em; }
  .corporate-faq-layout, .corporate-close-layout { grid-template-columns: 1fr; gap: 28px; }
  .corporate-faq h2 { margin-bottom: 20px; }
  .corporate-faq-layout > div:first-child > p:not(.eyebrow) { max-width: 360px; }
  .corporate-faq .faq-list summary { font-size: 1rem; padding-block: 21px; }
  .corporate-faq .faq-list details p { padding-right: 0; }
  .corporate-close { padding-block: 58px 28px; }
  .corporate-close h2 { font-size: clamp(3.4rem, 11vw, 4.9rem); }
  .corporate-close-action > p:first-child { max-width: 380px; }
}
@media (max-width: 389px) {
  .corporate-wrap { width: calc(100% - 40px); }
  .corporate-hero .eyebrow { max-width: 265px; }
  .corporate-hero h1 { font-size: 3.15rem; }
  .corporate-hero-inner { padding-bottom: 270px; }
  .corporate-hero-image, .corporate-hero-shade { height: 270px; }
  .corporate-hero-foot { font-size: .5rem; }
  .corporate-page h2 { font-size: 2.6rem; }
  .corporate-close h2 { font-size: 3.3rem; }
}

/* Expanded service copy: open editorial rows with comfortable reading measures. */
.corporate-editorial-layout { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); column-gap: 9%; align-items: start; }
.corporate-editorial h2 { font-size: clamp(2.7rem, 3.8vw, 3.8rem); line-height: 1.08; margin: 0; max-width: 15ch; text-wrap: pretty; }
.corporate-prose { max-width: 65ch; min-width: 0; }
.corporate-prose p { font-size: 1rem; line-height: 1.85; margin: 0; }
.corporate-prose p + p { margin-top: 1.35em; }
.corporate-prose a, .corporate-wedding-link a { text-decoration-color: var(--brass); text-underline-offset: 5px; text-decoration-thickness: 1px; }
.corporate-prose a:hover, .corporate-wedding-link a:hover { text-decoration-thickness: 2px; }
.corporate-dark { background: var(--ink); }
.corporate-dark .corporate-prose { color: #d6c9bb; }
.corporate-wine { background: var(--wine); }
.corporate-wine .corporate-prose { color: #efe1da; }
.corporate-cream { background: var(--cream); color: #3e3330; }
.corporate-cream h2 { color: var(--wine); }
.corporate-cream + .corporate-cream { padding-top: 0; }
.corporate-cream + .corporate-cream > .corporate-wrap { padding-top: clamp(48px, 5vw, 80px); border-top: 1px solid #a58a5a70; }
.corporate-photo-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 7%; align-items: center; }
.corporate-photo-copy h2 { margin-bottom: 28px; max-width: 16ch; }
.corporate-editorial-photo { margin: 0; min-width: 0; }
.corporate-editorial-photo img { display: block; width: 100%; height: auto; }
.corporate-faq-layout { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 9%; align-items: start; }
.corporate-faq h2 { font-size: clamp(2.7rem, 3.8vw, 3.8rem); line-height: 1.08; max-width: 15ch; margin: 0; }
.corporate-faq .faq-list { min-width: 0; max-width: 65ch; }
.corporate-faq .faq-list details p { font-size: 1rem; line-height: 1.85; }
.corporate-close .corporate-wedding-link { display: block; }
@media (max-width: 1099px) {
  .corporate-editorial-layout, .corporate-faq-layout { column-gap: 7%; }
  .corporate-photo-layout { gap: 5%; }
  .corporate-editorial h2, .corporate-faq h2 { font-size: 3rem; }
}
@media (max-width: 899px) {
  .corporate-photo-layout { grid-template-columns: 1fr; gap: 36px; }
  .corporate-photo-copy { max-width: 65ch; }
  .corporate-photo-copy h2 { max-width: 22ch; }
  .corporate-editorial-photo { max-width: 760px; }
}
@media (max-width: 759px) {
  .corporate-editorial-layout, .corporate-faq-layout { grid-template-columns: 1fr; gap: 26px; }
  .corporate-editorial h2, .corporate-faq h2 { font-size: clamp(2.5rem, 8.5vw, 3.4rem); max-width: 22ch; }
  .corporate-prose p { line-height: 1.8; }
  .corporate-cream + .corporate-cream > .corporate-wrap { padding-top: 40px; }
  .corporate-photo-copy h2 { margin-bottom: 26px; }
  .corporate-faq h2 { margin: 0; }
}
