/* Public content pages: Contact Us, About Us, Pricing, Privacy, Security, Terms, Refund (body.sp).
   Same black / yellow look as the rest of the site: compact hero band + clean readable content card. Presentation only. */
body.sp { margin: 0; background: #faf8f1; color: #262626; font-family: "Montserrat", "Inter", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif; -webkit-font-smoothing: antialiased; }
body.sp *, body.sp *::before, body.sp *::after { box-sizing: border-box; }

/* hero band (replaces the old empty banner with the big gradient "ZINGARA") */
.sp-hero { position: relative; overflow: hidden; background: #0b0b0b; color: #fff; text-align: center; padding: 42px 0 38px; border-bottom: 3px solid #ffb400; }
.sp-hero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(520px 260px at 82% 10%, rgba(255, 180, 0, .22), transparent 70%), radial-gradient(380px 220px at 6% 100%, rgba(255, 180, 0, .12), transparent 70%); }
.sp-hero .sp-wrap { position: relative; max-width: 980px; margin: 0 auto; padding: 0 20px; }
.sp-eyebrow { display: block; font-size: .7rem; font-weight: 800; letter-spacing: .3em; text-transform: uppercase; color: #ffb400; margin-bottom: 10px; }
body.sp .sp-hero h1 { margin: 0 0 8px; font-size: clamp(1.7rem, 3.8vw, 2.5rem); font-weight: 800; color: #fff; background: none; -webkit-text-fill-color: #fff; letter-spacing: 0; }
.sp-hero p { margin: 0 auto; max-width: 620px; color: #e7e2d0; font-size: .92rem; }

/* content */
body.sp section.section-b-space, body.sp #section1 { padding: 34px 0 !important; margin: 0 !important; background: transparent; }
body.sp .container { max-width: 1000px; }
body.sp section.section-b-space > .container { background: #fff; border: 1px solid #ece6d2; border-radius: 14px; padding: 28px 34px; box-shadow: 0 10px 30px rgba(20, 20, 20, .05); }
body.sp #section1 .container { max-width: 1120px; }
body.sp .container p, body.sp .container li, body.sp .container td, body.sp .container font, body.sp .container span, body.sp .container div { font-family: inherit !important; }
body.sp .container p, body.sp .container li { font-size: .94rem; line-height: 1.75 !important; color: #2b2b2b; }
body.sp .container p { margin-bottom: .85rem; }
body.sp .container h1, body.sp .container h2, body.sp .container h3, body.sp .container h4 { font-family: inherit; font-weight: 800; color: #111; line-height: 1.3; margin: 1.3em 0 .5em; }
body.sp .container > h1:first-child, body.sp .container > h2:first-child { margin-top: 0; }
body.sp .container h2 { font-size: 1.35rem; } body.sp .container h3 { font-size: 1.12rem; }
body.sp .container a { color: #b87900; }
body.sp .container ul, body.sp .container ol { padding-left: 1.4rem; margin-bottom: 1rem; }
body.sp .container table { width: 100%; border-collapse: collapse; margin-bottom: 1rem; }
body.sp .container th, body.sp .container td { border: 1px solid #ece6d2; padding: 8px 10px; font-size: .88rem; vertical-align: top; }
body.sp .container th { background: #faf8f1; }
@media (max-width: 767.98px) { .sp-hero { padding: 30px 0 28px; } body.sp section.section-b-space > .container { padding: 20px 18px; border-radius: 10px; } body.sp section.section-b-space, body.sp #section1 { padding: 22px 0 !important; } }

/* Pricing / Refund keep their own wrapper div: give it the same card and typography */
body.sp .pricing-policy, body.sp .refund-policy { max-width: 1000px; margin: 34px auto !important; padding: 28px 34px !important; background: #fff; border: 1px solid #ece6d2; border-radius: 14px !important; box-shadow: 0 10px 30px rgba(20, 20, 20, .05) !important; }
body.sp .pricing-policy p, body.sp .pricing-policy li, body.sp .refund-policy p, body.sp .refund-policy li { font-size: .94rem; line-height: 1.75; color: #2b2b2b; margin-bottom: .6rem; }
body.sp .pricing-policy h2, body.sp .refund-policy h2 { font-size: 1.5rem; font-weight: 800; color: #111; margin: 0 0 14px; }
body.sp .pricing-policy h3, body.sp .refund-policy h3 { font-size: 1.15rem; font-weight: 800; color: #111; margin: 1.5em 0 .5em; }
body.sp .pricing-policy h4, body.sp .refund-policy h4 { font-size: 1rem; font-weight: 700; color: #222; margin: 1.1em 0 .4em; }
body.sp .pricing-policy ul, body.sp .refund-policy ul { padding-left: 1.4rem; margin: 0 0 1rem; }
@media (max-width: 767.98px) { body.sp .pricing-policy, body.sp .refund-policy { margin: 22px 12px !important; padding: 20px 18px !important; } }

/* legacy Word-style text: keep one readable size / left alignment */
body.sp .container font { font-size: inherit !important; }
body.sp .container p[align] { text-align: left; }

/* Contact page: map fills its column */
body.sp #section1 iframe { width: 100% !important; max-width: 100%; border: 0; border-radius: 10px; }

/* the template resets list-style; bring bullets / numbers back inside the content */
body.sp .container ul, body.sp .pricing-policy ul, body.sp .refund-policy ul { list-style: disc; }
body.sp .container ol, body.sp .pricing-policy ol, body.sp .refund-policy ol { list-style: decimal; }
body.sp .container li, body.sp .pricing-policy li, body.sp .refund-policy li { display: list-item; }
body.sp .pricing-policy h2, body.sp .refund-policy h2 { text-transform: none; }
body.sp .container h2.text-center { font-size: 1.25rem; text-transform: none; }
body.sp .container ul > li, body.sp .pricing-policy ul > li, body.sp .refund-policy ul > li { list-style-type: disc !important; }
body.sp .container ol > li, body.sp .pricing-policy ol > li, body.sp .refund-policy ol > li { list-style-type: decimal !important; }

/* old template bottom tab bar (only a Home icon) duplicates the header menu on phones */
body.sp .mobile-menu { display: none !important; }
