.closing { position: relative; isolation: isolate; overflow: hidden; background: #0c0d0b; border-top: 1px solid rgba(246,246,242,.12); font-family: Archivo, Manrope, sans-serif; }
.closing::before { content: ""; position: absolute; z-index: -1; width: min(1100px, 140vw); height: 750px; left: 50%; bottom: -520px; transform: translateX(-50%); background: radial-gradient(ellipse, rgba(126,224,74,.2), transparent 68%); pointer-events: none; }
.closing__inner { width: min(1120px, calc(100% - 96px)); margin: auto; padding: clamp(96px, 10vw, 156px) 0 112px; text-align: center; }
.closing__eyebrow { margin: 0 0 28px; color: #b6c2ad; font: .75rem "JetBrains Mono", monospace; text-transform: uppercase; letter-spacing: .16em; }
.closing h2 { margin: 0; font-size: clamp(2.8rem, 5.5vw, 5.4rem); font-weight: 600; letter-spacing: -.045em; line-height: 1.08; text-wrap: balance; }
.closing h2 em { color: #7ee04a; font: italic 400 1em "Instrument Serif", Georgia, serif; }
.closing__copy { max-width: 46ch; margin: 28px auto 34px; font-size: 1.0625rem; color: #b6b8ae; line-height: 1.8; text-wrap: pretty; }
.closing__button { display: inline-flex; align-items: center; justify-content: center; gap: 28px; min-height: 58px; padding: 18px 28px; border-radius: 8px; background: #7ee04a; color: #11180c; border: 1px solid #7ee04a; font: 600 .9375rem Archivo, sans-serif; box-shadow: 0 10px 40px rgba(126,224,74,.12); }
.closing__button { transition: background .2s ease, transform .2s ease; }
.closing__button:hover { background: #98ed6c; transform: translateY(-2px); }
.closing__button span { font-size: 1.25rem; }
.closing__status { margin: 18px 0 0; color: #a8aaa0; font-size: .875rem; line-height: 1.6; }
.site-footer { background: #0c0d0b; font-family: Archivo, Manrope, sans-serif; border-top: 1px solid rgba(246,246,242,.12); }
.site-footer__top, .site-footer__bottom { width: min(1280px, calc(100% - 96px)); margin: auto; display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.site-footer__top { padding: 52px 0; }
.site-footer__top > p { margin: 0; color: #b6b8ae; font-size: .9375rem; line-height: 1.7; }
.site-footer nav { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 32px; font-size: .875rem; color: #c4c6bf; }
.site-footer a:hover { color: #7ee04a; }
.site-footer .brand:hover .brand__mark { stroke: #7ee04a; }
.site-footer__bottom { border-top: 1px solid rgba(246,246,242,.1); padding: 24px 0; color: #a8aaa0; font-size: .75rem; }
.site-footer__bottom a { padding: 8px 0; font-size: .875rem; }
.site-footer__bottom a span { margin-left: 16px; color: #7ee04a; }
.booking { padding: 32px max(24px, calc((100vw - 1280px) / 2)) 88px; background: #0c0d0b; font-family: Archivo, Manrope, sans-serif; }
.booking__heading { max-width: 650px; margin: 0 auto 36px; text-align: center; }
.booking h2 { margin: 0; color: #f6f6f2; font-size: clamp(2rem, 3.5vw, 3rem); line-height: 1.15; letter-spacing: -.035em; }
.booking__heading > p:last-child { font-size: 1rem; color: #b6b8ae; line-height: 1.75; margin: 20px 0 0; }
.booking__calendar { width: 100%; min-height: 640px; border: 1px solid rgba(126,224,74,.22); border-radius: 12px; overflow: auto; background: #111310; }
.booking__calendar[hidden] { display: none; }
.booking__calendar iframe { width: 100%; border: 0; }
.booking__fallback { text-align: center; color: #a8aaa0; font-size: .875rem; line-height: 1.75; margin: 24px 0 0; }
.booking__fallback a { color: #7ee04a; text-decoration: underline; text-underline-offset: 4px; }
.hero__proof > div { min-width: 180px; }
@media (max-width: 1100px) and (min-width: 901px) { .site-nav { gap: 20px; } }
@media (max-width: 900px) {
  .closing__inner, .site-footer__top, .site-footer__bottom { width: calc(100% - 44px); }
  .site-footer__top { flex-wrap: wrap; }
}
@media (max-width: 620px) {
  .closing__inner, .site-footer__top, .site-footer__bottom { width: calc(100% - 36px); }
  .closing__inner { padding: 80px 0; }
  .closing h2 { font-size: clamp(2.5rem, 10vw, 3.5rem); }
  .closing h2 br { display: none; }
  .closing__copy { font-size: 1rem; }
  .closing__eyebrow { letter-spacing: .1em; }
  .closing__button { width: 100%; max-width: 340px; }
  .hero__proof > div { min-width: 0; }
  .hero__proof strong { font-size: .75rem; }
  .booking { padding: 16px 12px 64px; }
  .booking__heading { padding: 0 6px; }
  .booking__calendar { min-height: 720px; }
  .site-footer__top { flex-direction: column; align-items: flex-start; gap: 28px; padding: 40px 0; }
  .site-footer nav { width: 100%; }
  .site-footer__bottom { gap: 16px; flex-wrap: wrap; }
}
