/* Site-level CSS that Weebly applied outside the theme stylesheet. */

/* The <body style="…"> Weebly emits on every page. */
body { overflow-x: hidden !important; max-width: 100% !important; }

/* Section reveal (see site.js). Weebly's sites.css hides reveal content until
   its runtime marks it visible; we do the same with our own classes. */
body.sr-ready .wsite-section-effect-reveal .wsite-section-content > *,
body.sr-done .wsite-section-effect-reveal .wsite-section-content > * { visibility: visible; }
body.sr-ready .wsite-section-effect-reveal .wsite-section-elements > * {
  transition: transform 0.3s ease-in 0.3s, opacity 0.3s ease-in 0.3s;
}
body.sr-ready .wsite-section-effect-reveal .wsite-section-elements > .sr-pending {
  opacity: 0; transform: translateY(-10px);
}
/* No JS at all: never leave content hidden. */
@media (scripting: none) { .wsite-section-effect-reveal .wsite-section-content > * { visibility: visible; } }

/* Fallback for the Common Ninja pricing table — hidden unless the widget
   fails to render (site.js decides).
   Colours and borders are the widget's own (#d4a5a5 price/button, 5px black border). */
.cn-fallback:not([hidden]) { display: flex; flex-wrap: wrap; gap: 24px; justify-content: center; padding: 20px 0; }
.cn-fallback-plan { background: #fff; border: 5px solid #000; width: 395px; max-width: 100%; padding: 15px 20px 20px; text-align: center; color: #000; }
.cn-fallback-title { font-size: 20px; margin: 0 0 8px; }
.cn-fallback-price { font-size: 32px; color: #d4a5a5; margin: 0 0 12px; }
.cn-fallback-plan ul { list-style: none; margin: 0 0 15px; padding: 0; font-size: 14px; line-height: 1.6; }
