/**
 * Cloudflare Pages standalone shell — luxury page chrome when not embedded in GHL.
 * Embed mode: html.abie-embed-mode (set by amb-standalone.js) keeps transparent parent.
 */

html {
  background-color: #050505;
  background-image: radial-gradient(
    ellipse 120% 80% at 50% -20%,
    rgba(212, 175, 55, 0.12) 0%,
    rgba(212, 175, 55, 0.04) 35%,
    transparent 70%
  );
  min-height: 100%;
}

body {
  margin: 0;
  min-height: 100vh;
  background: transparent;
  color: #f5f5f5;
}

html.abie-embed-mode,
html.abie-embed-mode body {
  background: transparent !important;
  background-image: none !important;
}

/* Standalone: page padding (desktop); mobile full-bleed in amb-mobile.css */
@media (min-width: 761px) {
  html:not(.abie-embed-mode) body {
    padding: clamp(12px, 3vw, 28px) clamp(10px, 2.5vw, 20px) 48px;
    box-sizing: border-box;
  }
}

html:not(.abie-embed-mode) #abie-path-app,
html:not(.abie-embed-mode) #abie-booking-app,
html:not(.abie-embed-mode) #abie-contact-app,
html:not(.abie-embed-mode) #abie-event-app,
html:not(.abie-embed-mode) #abie-thank-you-app,
html:not(.abie-embed-mode) #amb-review-root,
html:not(.abie-embed-mode) #amb-payment-root,
html:not(.abie-embed-mode) #amb-after-service-root,
html:not(.abie-embed-mode) #amb-secure-root {
  /* Card fragments keep internal whites; page supplies black luxury backdrop */
  background: transparent !important;
}

html:not(.abie-embed-mode) #abie-booking-complete-app,
html:not(.abie-embed-mode) #abie-booking-confirmed-app {
  background: #050505 !important;
}

/* Step-back links (select / contact / event) */
a.amb-step-back {
  display: block;
  width: 100%;
  margin: 0 0 12px;
  padding: 13px 14px;
  background: transparent;
  color: #111;
  border: 1px solid rgba(17, 17, 17, 0.18);
  font-size: 12px;
  letter-spacing: 1px;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
  appearance: none;
  border-radius: 0;
}

a.amb-step-back:hover {
  background: #fbfaf7;
}

/* Subtle navigation (mobile dock pages); full button style on desktop via amb-mobile */
a.amb-step-back.amb-link-quiet,
button.amb-text-link {
  display: inline-block;
  width: auto;
  margin: 0 0 14px;
  padding: 0;
  background: none !important;
  border: none !important;
  color: #8a7145;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.4;
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-transform: none;
  cursor: pointer;
  appearance: none;
  min-height: 0;
  box-shadow: none;
}

button.amb-text-link:hover,
a.amb-step-back.amb-link-quiet:hover {
  color: #5a4728;
  background: none !important;
}

/* Cold / deep-link session recovery */
.amb-cold-session {
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
  padding: 24px 16px 32px;
  box-sizing: border-box;
}

.amb-cold-session-card {
  background: #fff;
  color: #111;
  border: 1px solid rgba(17, 17, 17, 0.12);
  padding: 32px 28px 28px;
  text-align: center;
  font-family: Arial, Helvetica, sans-serif;
}

.amb-cold-session-eyebrow {
  letter-spacing: 4px;
  font-size: 10px;
  color: #c7a15a;
  margin-bottom: 12px;
}

.amb-cold-session-title {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(28px, 5vw, 36px);
  font-weight: 400;
  margin: 0 0 12px;
  line-height: 1.1;
}

.amb-cold-session-copy {
  margin: 0 0 22px;
  font-size: 14px;
  line-height: 1.5;
  color: #555;
}

a.amb-cold-session-cta {
  display: inline-block;
  width: 100%;
  max-width: 320px;
  padding: 15px 18px;
  background: #050505;
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  letter-spacing: 1px;
  box-sizing: border-box;
}

a.amb-cold-session-cta:hover {
  background: #111;
}

html:not(.abie-embed-mode) #amb-review-root .amb-cold-session,
html:not(.abie-embed-mode) #amb-payment-root .amb-cold-session {
  max-width: 920px;
}
