/* ============================================================
   Front-page sections (the .sl-home block) + remove Kadence's
   page-title band on the home page. Loaded site-wide but every
   rule is scoped to .home or .sl-home, so other pages are safe.
   ============================================================ */

/* --- remove the grey "Home" title band + tighten the top --- */
.home .entry-hero.page-hero-section { display: none !important; }
.home .content-area { margin-top: 0 !important; margin-bottom: 0 !important; }
.home .entry-content-wrap { padding: 0 !important; }
.home .entry.single-entry, .home .entry.loop-entry { box-shadow: none !important; }
/* no white gap between the hero and the first section (kill default block spacing) */
.home .entry-content > *, .home .entry-content-wrap > * { margin-top: 0 !important; margin-bottom: 0 !important; }
/* Homepage: float the header over the hero so it reads as one continuous page.
   A light wash behind the menu keeps the dark logo/menu text readable. */
.home #masthead, .home .site-header { position: absolute !important; left: 0; right: 0; top: 0; z-index: 100; background: transparent !important; box-shadow: none !important; border-bottom: 0 !important; }
.home .site-header-wrap-inner, .home .site-main-header-wrap, .home .site-header-row-container, .home .site-header-row, .home .site-header-inner-wrap { background: transparent !important; }
.home .slhero { margin-top: 0 !important; }
.home .slhero .inner { padding-top: 8rem; }
.home .slhero::after {
	content: ""; position: absolute; left: 0; right: 0; top: 0; height: 160px;
	background: linear-gradient(180deg, rgba(250,251,255,.92) 0%, rgba(250,251,255,.8) 28%, rgba(250,251,255,0) 85%);
	z-index: 3; pointer-events: none;
}
@media (max-width: 720px) { .home .slhero .inner { padding-top: 6rem; } }

/* --- full-bleed wrapper for the lower sections --- */
.sl-home { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); font-family: 'Inter', sans-serif; color: #14213d; }
.sl-home h2, .sl-home h3 { font-family: 'Outfit', sans-serif; letter-spacing: -.01em; }

/* stats band */
.sl-home .stats { display: flex; justify-content: center; gap: 2.2rem; flex-wrap: wrap; padding: 1.5rem; background: #0b1430; color: #dce8ff; }
.sl-home .stats .s { text-align: center; }
.sl-home .stats .s b { display: block; font-family: 'Outfit', sans-serif; font-weight: 700; font-size: 1.6rem; color: #6f9dff; }
.sl-home .stats .s span { font-size: .72rem; text-transform: uppercase; letter-spacing: 1px; opacity: .8; }

/* generic section */
.sl-home .sec { padding: 3rem 1.6rem; }
.sl-home .sec.alt { background: #eff3ff; }
.sl-home .sec h2 { text-align: center; font-size: 1.95rem; font-weight: 700; margin: 0 0 .3rem; color: #14213d; }
.sl-home .sec .lead { text-align: center; color: #4a5677; max-width: 540px; margin: 0 auto 1.8rem; font-size: 1rem; line-height: 1.55; }

/* grids */
.sl-home .journey, .sl-home .grid3, .sl-home .lessons { max-width: 1040px; margin: 0 auto; display: grid; gap: 1rem; }
.sl-home .journey { grid-template-columns: repeat(4, 1fr); }
.sl-home .grid3 { grid-template-columns: repeat(3, 1fr); }
.sl-home .lessons { grid-template-columns: repeat(3, 1fr); }

.sl-home .jstep { background: #fff; border: 1px solid #e2e9f7; border-radius: 12px; padding: 1.2rem .95rem; text-align: center; box-shadow: 0 4px 14px rgba(20,40,110,.05); }
.sl-home .jstep .n { width: 34px; height: 34px; border-radius: 50%; background: #2f6fff; color: #fff; display: flex; align-items: center; justify-content: center; margin: 0 auto .6rem; font-weight: 700; font-family: 'Outfit', sans-serif; }
.sl-home .jstep b { font-size: .95rem; font-family: 'Outfit', sans-serif; }
.sl-home .jstep p { font-size: .8rem; color: #5a6889; margin: .35rem 0 0; line-height: 1.45; }

.sl-home .mod { background: #fff; border: 1px solid #e2e9f7; border-radius: 12px; padding: 1.1rem; border-top: 3px solid #2f6fff; text-decoration: none; color: inherit; display: block; }
.sl-home .mod b { font-size: .98rem; display: block; margin-bottom: .2rem; font-family: 'Outfit', sans-serif; }
.sl-home .mod span { font-size: .78rem; color: #7b88a6; }
.sl-home .mod.soon { border-top-color: #c2cee3; background: #fafbfe; }
.sl-home .mod.soon span { color: #9aa6bd; font-style: italic; }

/* Coming Soon page */
.sl-coming { max-width: 560px; margin: 1rem auto; text-align: center; }
.sl-coming .big { font-family: 'Outfit', sans-serif; font-size: 1.3rem; color: #14213d; font-weight: 600; margin-bottom: .6rem; }
.sl-coming p { color: #4a5677; line-height: 1.6; }
.sl-coming .btn-p { display: inline-block; background: #2f6fff; color: #fff; padding: .8rem 1.5rem; border-radius: 9px; font-weight: 600; text-decoration: none; font-family: 'Outfit', sans-serif; margin: 1.3rem 0; box-shadow: 0 0 22px rgba(47,111,255,.4); }
.sl-coming .back a { color: #7b88a6; text-decoration: none; font-size: .9rem; }

/* Countdown (self-contained — assets/countdown.js) */
.sl-countdown { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; margin: 1.4rem 0; }
.sl-countdown .cd-unit { background: #0b1430; color: #fff; border-radius: 12px; padding: 1rem 1.2rem; min-width: 84px; text-align: center; }
.sl-countdown .cd-unit span { display: block; font-family: 'Outfit', sans-serif; font-size: 2rem; font-weight: 700; color: #6f9dff; line-height: 1; }
.sl-countdown .cd-unit small { font-size: .7rem; text-transform: uppercase; letter-spacing: 1px; opacity: .7; }
.cd-expired { text-align: center; font-weight: 600; color: #2f6fff; font-family: 'Outfit', sans-serif; }

/* Mission statement (homepage closing section) */
.sl-home .sl-mission { max-width: 760px; margin: 0 auto; padding: 3.2rem 1.6rem; text-align: center; }
.sl-home .sl-mission p { color: #46506a; line-height: 1.75; font-size: 1.02rem; margin: 0 0 1.2rem; }
.sl-home .sl-mission .verse { font-style: italic; color: #1f3a63; font-size: 1.08rem; }
.sl-home .sl-mission .m-flame { margin-top: .4rem; }

/* Module overviews accordion (.sl-faq) — native details/summary, no JS */
.sl-home .sl-faq { max-width: 760px; margin: 0 auto; }
.sl-home .sl-faq .faq-item { border: 1px solid #e2e9f7; border-radius: 10px; margin: .6rem 0; background: #fff; overflow: hidden; }
.sl-home .sl-faq summary { cursor: pointer; padding: 1rem 1.2rem; font-family: 'Outfit', sans-serif; font-weight: 600; font-size: 1.02rem; color: #14213d; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.sl-home .sl-faq summary::-webkit-details-marker { display: none; }
.sl-home .sl-faq summary::after { content: "+"; color: #2f6fff; font-size: 1.4rem; font-weight: 400; line-height: 1; flex: 0 0 auto; }
.sl-home .sl-faq details[open] summary::after { content: "\2212"; }
.sl-home .sl-faq .faq-a { padding: 0 1.2rem 1.1rem; color: #46506a; line-height: 1.7; }
.sl-home .sl-faq .faq-a p { margin: .4rem 0 0; }

/* Header logo sizing + hide the old text site-title (logo is the brand now) */
.site-header .custom-logo, .site-branding img.custom-logo { max-height: 58px; width: auto; }
.site-branding .site-title, .site-header .site-title { display: none !important; }

/* Footer copyright — smaller */
.site-footer .footer-html, .site-footer .footer-html-inner, .site-info .footer-html { font-size: .78rem; }

/* ---- Site header navigation ---- */
#site-navigation .menu-item > a,
.header-navigation .menu > li > a { font-size: .92rem !important; font-weight: 500; letter-spacing: .01em; }
/* Sign Up For Free = standout button (it carries the .highlight class) */
#site-navigation .menu-item.highlight > a,
.header-navigation .menu-item.highlight > a {
	background: #2f6fff; color: #fff !important; border-radius: 8px;
	padding: .48rem 1.05rem !important; font-weight: 600; margin-left: .5rem;
	box-shadow: 0 2px 12px rgba(47,111,255,.35); transition: background .15s;
}
#site-navigation .menu-item.highlight > a:hover,
.header-navigation .menu-item.highlight > a:hover { background: #1f5fff; color: #fff !important; }

.sl-home .lcard { background: #fff; border: 1px solid #e2e9f7; border-radius: 12px; overflow: hidden; box-shadow: 0 4px 14px rgba(20,40,110,.05); text-decoration: none; color: inherit; display: block; }
.sl-home .lcard .top { height: 78px; background: linear-gradient(135deg, rgba(47,111,255,.16), rgba(11,20,48,.10)); }
.sl-home .lcard .bd { padding: .9rem; }
.sl-home .lcard .tag { font-size: .66rem; text-transform: uppercase; letter-spacing: .8px; color: #2f6fff; font-weight: 700; }
.sl-home .lcard b { display: block; font-size: .92rem; margin: .2rem 0; font-family: 'Outfit', sans-serif; }
.sl-home .lcard span { font-size: .78rem; color: #7b88a6; }

/* trust + capture */
.sl-home .trust { display: flex; gap: 1.4rem; align-items: center; max-width: 680px; margin: 0 auto; flex-wrap: wrap; justify-content: center; }
.sl-home .avatar { width: 92px; height: 92px; border-radius: 50%; background: linear-gradient(135deg, #2f6fff, #0b1430); flex: 0 0 auto; }
.sl-home .trust .q { flex: 1; min-width: 240px; }
.sl-home .trust .q p { font-size: 1.15rem; line-height: 1.5; color: #1f2c4a; font-weight: 500; font-family: 'Outfit', sans-serif; }
.sl-home .trust .q cite { font-size: .82rem; color: #7b88a6; font-style: normal; }

.sl-home .capture { max-width: 520px; margin: 1.6rem auto 0; background: #fff; border: 1px solid #e2e9f7; border-radius: 14px; padding: 1.4rem; text-align: center; box-shadow: 0 6px 20px rgba(20,40,110,.06); }
.sl-home .capture b { font-family: 'Outfit', sans-serif; font-size: 1.05rem; }
.sl-home .capture .row { display: flex; gap: .5rem; margin-top: .8rem; }
.sl-home .capture input { flex: 1; border: 1px solid #d4ddef; border-radius: 8px; padding: .65rem .85rem; font-size: .9rem; }
.sl-home .capture .go { background: #2f6fff; color: #fff; border: 0; border-radius: 8px; padding: .65rem 1rem; font-weight: 600; font-size: .9rem; cursor: pointer; }

/* flipbook (Heyzine "Example notes") */
.sl-home .flipbook { max-width: 900px; margin: 0 auto; }
.sl-home .flipbook iframe { width: 100%; height: 560px; border: 0; border-radius: 12px; box-shadow: 0 8px 28px rgba(20,40,110,.12); background: #fff; }
@media (max-width: 820px) { .sl-home .flipbook iframe { height: 460px; } }
@media (max-width: 520px) { .sl-home .flipbook iframe { height: 380px; } }

/* final CTA + footer */
.sl-home .final { text-align: center; padding: 3.4rem 1.6rem; background: #0b1430; color: #dce8ff; }
.sl-home .final h2 { font-size: 2.05rem; font-weight: 700; margin: 0 0 .5rem; color: #fff; }
.sl-home .final p { color: #b6c4e6; margin: 0 0 1.4rem; }
.sl-home .btn-p { display: inline-block; background: #2f6fff; color: #fff; padding: .8rem 1.5rem; border-radius: 9px; font-weight: 600; text-decoration: none; font-family: 'Outfit', sans-serif; box-shadow: 0 0 22px rgba(47,111,255,.45); }
.sl-home .foot { background: #070d1c; color: #7088b0; text-align: center; padding: 1.3rem; font-size: .8rem; }

@media (max-width: 820px) {
	.sl-home .journey, .sl-home .grid3, .sl-home .lessons { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 520px) {
	.sl-home .capture .row { flex-direction: column; }
	.sl-home .journey, .sl-home .grid3, .sl-home .lessons { grid-template-columns: 1fr; }
}
