/* Centered, compact presentation with self-contained challenge pricing. */
section{padding:52px 0}
section p,section .stack,section .info,section .pkg,section .service-list,section .service{ text-align:center }
section h1,section h2,section h3,section h4,section .price,section .mini{text-align:center!important}
.section-head{margin-bottom:20px!important}
.section-head p{max-width:680px}
.ctas{justify-content:center!important}
.hero-copy{text-align:center!important;align-items:center!important}
.hero-copy .quick{justify-content:center!important}
.hero .card,.hero .image-card,.hero-photo,.hero-copy{min-height:530px!important}

#round-two{padding:42px 0!important}
#round-two .rt-head{margin-bottom:20px!important}
#round-two .rt-head p{max-width:620px!important}
#round-two .rt-grid{display:block!important;max-width:1050px!important;margin:auto}
#round-two .rt-options{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
#round-two .rt-card{
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  height:auto!important;
  min-height:390px!important;
  padding:28px 22px!important;
  border-radius:46px!important;
  text-align:center!important;
  background:#fff!important;
  box-shadow:0 16px 38px rgba(2,45,42,.08)!important;
}
#round-two .rt-kicker{font-size:.7rem;font-weight:850;letter-spacing:.14em;color:var(--gold);margin-bottom:12px}
#round-two .rt-card b{min-height:0!important;font-size:.78rem!important}
#round-two .rt-card strong{margin:12px 0 10px!important;font-size:3.15rem!important}
#round-two .rt-card p{min-height:92px;margin:0 0 10px!important;font-size:.88rem!important;line-height:1.55!important}
#round-two .rt-card small{display:block;min-height:36px;margin-bottom:16px;color:var(--muted);font-size:.72rem;line-height:1.4}
#round-two .rt-book{width:100%;margin-top:auto}
#round-two .rt-card-popular{position:relative;border:2px solid var(--gold)!important;background:linear-gradient(160deg,#fff 0%,#fffaf0 100%)!important;box-shadow:0 22px 52px rgba(4,54,50,.14)!important;transform:translateY(-8px)}
#round-two .rt-card-popular:hover{transform:translateY(-12px)}
#round-two .rt-popular{display:inline-flex;align-items:center;justify-content:center;align-self:center;margin:-2px 0 12px;padding:7px 14px;border-radius:999px;background:var(--gold);color:#fff;font-size:.7rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 8px 18px rgba(185,138,60,.25)}

#private .pkg,#live .info,#massage .service{text-align:center!important}
#private .pkg:hover,.service:not(.massage-disabled):hover{transform:translateY(-3px)}
#private .two>.image-card{padding:0!important;border:0!important;background-color:transparent!important;box-shadow:none!important}
#private .two>.image-card .ig-photo{height:100%!important;min-height:100%!important;border:0!important}
#massage .two{align-items:stretch!important}
#massage .two>.image-card{height:auto!important;min-height:520px!important;border:0!important;background:#eef2ef!important}
#massage .two>.image-card .feature-photo{height:100%!important;min-height:520px!important;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
#community{padding-bottom:18px!important}
#community .card>p{display:block!important;width:100%!important;max-width:760px!important;margin:14px auto 0!important;text-align:center!important}
#events{padding-top:18px!important}
#live .card{grid-template-columns:1fr!important;max-width:900px!important;gap:16px!important;padding:28px!important}
#live .ctas{grid-column:1!important}
#start .start-card{grid-template-columns:1fr!important;max-width:860px!important;padding:32px!important;gap:18px!important}
#start .start-logo,#start .section-head,#start form,#start #contact-form-status{grid-column:1!important;grid-row:auto!important}
#start .start-logo{margin:auto!important}
.world{padding:58px 0!important}
.world .world-intro{display:block!important;width:100%!important;max-width:780px!important;margin:0 auto!important;text-align:center!important}
.world .notice{max-width:900px;margin:20px auto!important;text-align:center}
#contact{padding:34px 0}

#meal .card{max-width:980px!important;padding:12px!important}
#meal .feature-photo{min-height:390px!important;border-radius:22px!important}
#meal .thumb-grid{max-width:680px;margin:10px auto 0!important;gap:8px!important}
#meal .thumb{height:96px!important;border-radius:16px!important}
#meal .ctas{margin-top:14px!important;gap:9px!important}
#meal .btn{min-height:46px!important}

.site-footer{background:#012c29;color:#fff;padding:48px 0 28px;text-align:center}
.footer-inner{display:flex;flex-direction:column;align-items:center}
.footer-brand{display:flex;width:112px;height:112px;align-items:center;justify-content:center;border-radius:50%;border:2px solid rgba(223,194,131,.55);background:rgba(255,255,255,.04);color:#dfc283!important;font-family:Georgia,serif;font-size:2.6rem;font-weight:700;letter-spacing:.06em;text-decoration:none}
.site-footer p{margin:16px auto 20px;max-width:560px;color:rgba(255,255,255,.75)}
.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px}
.footer-nav a{color:#fff;font-weight:750;text-decoration:none}
.footer-nav a:hover{color:var(--gold)}
.footer-rule{width:100%;height:1px;background:rgba(255,255,255,.14);margin:30px 0 20px}
.footer-bottom{width:100%;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.6);font-size:.82rem}

.brand{display:flex!important;flex-direction:column;align-items:flex-start;text-decoration:none!important;background:transparent!important;padding:0!important}
.brand-wordmark{font-family:Georgia,serif;font-size:2rem;line-height:.92;font-weight:700;letter-spacing:-.045em;color:var(--ocean)!important}
.brand-subline{margin-top:5px;font-size:.6rem;line-height:1;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)!important}
#events{background:#fff!important}
#events .section-head{margin-bottom:14px!important}
#events .two{max-width:1000px;margin:auto;gap:14px!important}
#events .card{padding:10px!important;border:1px solid var(--line)!important;background:#fff!important;box-shadow:0 14px 34px rgba(2,45,42,.06)}
#events .poster{height:360px!important;border-radius:20px!important}
#events .ctas{margin-top:10px!important}
.quote-strip{padding:18px 0!important;background:var(--ocean)!important;color:#fff;border:0!important}
.quote-strip blockquote{margin:0;text-align:center;font-family:Georgia,serif;font-size:clamp(1.8rem,4vw,3.2rem);font-style:italic;letter-spacing:-.02em;color:#fff}

@media(max-width:760px){
  section{padding:40px 0}
  .hero .card,.hero .image-card,.hero-photo,.hero-copy{min-height:520px!important}
  #round-two{padding:34px 0!important}
  #round-two .rt-options{grid-template-columns:1fr!important;gap:12px!important}
  #round-two .rt-card{min-height:0!important;padding:25px 20px!important;border-radius:34px!important}
  #round-two .rt-card-popular{transform:none}
  #round-two .rt-card-popular:hover{transform:translateY(-4px)}
  #round-two .rt-card p{display:block!important;min-height:0;margin-bottom:10px!important}
  #round-two .rt-card small{min-height:0}
  #round-two .rt-book{grid-column:auto!important;min-height:42px!important}
  #private .two>.image-card .ig-photo{min-height:430px!important}
  #massage .two>.image-card,#massage .two>.image-card .feature-photo{min-height:430px!important}
  #community{padding-bottom:12px!important}
  #events{padding-top:12px!important}
  #events .two{gap:10px!important}
  #events .poster{height:300px!important}
  .quote-strip{padding:15px 0!important}
  #start .start-card{padding:24px 16px!important}
  .world{padding:48px 0!important}
  #contact{padding:26px 0}
  #meal .card{padding:8px!important}
  #meal .feature-photo{min-height:290px!important}
  #meal .thumb{height:74px!important;border-radius:13px!important}
  #meal .ctas{display:grid!important;grid-template-columns:1fr!important}
  .site-footer{padding:40px 0 24px}
  .brand-wordmark{font-size:1.65rem}
  .brand-subline{font-size:.5rem;letter-spacing:.11em}
  .footer-bottom{flex-direction:column;gap:6px}
}
