.ef-public{--ef-ink:#24213b;--ef-purple:#6252df;--ef-muted:#625e73;--ef-line:#e9e6ee;color:var(--ef-ink);font-family:'DM Sans',sans-serif}
.ef-public h1,.ef-public h2,.ef-public h3{font-family:'DM Sans',sans-serif;color:var(--ef-ink);font-weight:800;letter-spacing:-.045em}
.ef-public h1{font-size:clamp(2.85rem,5.2vw,5.25rem);line-height:1.08;margin:0 0 25px;max-width:720px}
.ef-public h2{font-size:clamp(2.15rem,3.65vw,3.65rem);line-height:1.13;margin:0 0 22px}
.ef-public h3{font-size:1.2rem;line-height:1.3;letter-spacing:-.028em}
.ef-public p{line-height:1.74}
.ef-public .ef-hero{background:#f8f6f3;min-height:min(790px,calc(100svh - 70px));display:flex;align-items:center;padding:60px 0}
.ef-public .ef-hero-homeschool{background:#f8f7f4}
.ef-public .ef-hero-school{background:#f7f7fc}
.ef-public .ef-hero-bible{background:#f9f6f2}
.ef-public .ef-hero-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);align-items:center;gap:clamp(42px,7vw,115px);width:100%}
.ef-public .ef-hero-copy{padding:22px 0}
.ef-public .ef-hero-copy>p{max-width:580px;color:var(--ef-muted);font-size:clamp(1.06rem,1.5vw,1.28rem);line-height:1.7;margin:0 0 29px}
.ef-public .ef-hero-copy .ef-price-note{margin:20px 0 0;font-size:.93rem;color:#777187}
.ef-public .ef-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.ef-public .ef-button{display:inline-flex;align-items:center;justify-content:center;gap:13px;border:1px solid var(--ef-purple);border-radius:11px;background:var(--ef-purple);padding:15px 24px;min-height:53px;text-decoration:none;font-size:.96rem;font-weight:750;color:#fff;white-space:normal;line-height:1.25;transition:background .18s,border-color .18s,transform .18s;cursor:pointer}
.ef-public .ef-button:hover{background:#4d3cc5;border-color:#4d3cc5;color:#fff;transform:translateY(-1px)}
.ef-public .ef-button .material-symbols-outlined,.ef-public .ef-text-link .material-symbols-outlined{font-size:20px;line-height:1}
.ef-public .ef-button-outline{color:var(--ef-purple);background:transparent}
.ef-public .ef-button-outline:hover{color:#fff}
.ef-public .ef-text-link{display:inline-flex;align-items:center;gap:8px;color:#4c3ec4;font-size:.97rem;font-weight:750;text-decoration:none}
.ef-public .ef-text-link:hover{text-decoration:underline;color:#3724a9}
.ef-public .ef-hero-photo{height:clamp(420px,42vw,610px);border-radius:25px;overflow:hidden;background:#e9e3de;box-shadow:0 22px 60px rgba(34,25,68,.075)}
.ef-public .ef-hero-photo img,.ef-public .ef-editorial-photo img{height:100%;width:100%;display:block;object-fit:cover}
.ef-public .ef-section{padding:clamp(68px,8vw,120px) 0}
.ef-public .ef-section-white{background:#fff}
.ef-public .ef-section-warm{background:#f8f7f4}
.ef-public .ef-section-heading{max-width:750px;margin-bottom:38px}
.ef-public .ef-section-heading h2{margin:0}
.ef-public .ef-benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.ef-public .ef-benefit{padding:26px 6px 8px 0;border-top:1px solid #dfdbe8}
.ef-public .ef-benefit>.material-symbols-outlined{font-size:33px;color:var(--ef-purple);margin-bottom:25px;font-weight:300}
.ef-public .ef-benefit h3{margin-bottom:11px;font-size:1.27rem}
.ef-public .ef-benefit p{font-size:1rem;color:var(--ef-muted);margin:0;max-width:370px}
.ef-public .ef-editorial-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(45px,8vw,115px);align-items:center}
.ef-public .ef-editorial-photo{height:clamp(345px,34vw,535px);background:#e5e1d9;border-radius:23px;overflow:hidden}
.ef-public .ef-editorial-copy{max-width:570px}
.ef-public .ef-editorial-copy p{font-size:1.1rem;color:var(--ef-muted);margin:0 0 18px}
.ef-public .ef-editorial-copy .ef-text-link,.ef-public .ef-editorial-copy .ef-button{margin-top:15px}
.ef-public .ef-editorial-reverse .ef-editorial-copy{grid-column:1;grid-row:1}
.ef-public .ef-editorial-reverse .ef-editorial-photo{grid-column:2;grid-row:1}
.ef-public .ef-groups-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(40px,7vw,95px)}
.ef-public .ef-groups-copy{max-width:570px}
.ef-public .ef-groups-copy p{font-size:1.15rem;color:var(--ef-muted);margin-bottom:27px}
.ef-public .ef-resource-card{padding:clamp(27px,4vw,48px);background:#fff;border:1px solid #eae7e1;border-radius:22px;box-shadow:0 14px 35px rgba(40,25,67,.04)}
.ef-public .ef-resource-logo{display:flex;align-items:center;gap:14px;max-height:86px;margin-bottom:25px;text-decoration:none;color:#50449e}
.ef-public .ef-resource-logo img{max-width:138px;max-height:76px;object-fit:contain}
.ef-public .ef-resource-logo strong{font-size:1.45rem;letter-spacing:-.03em}
.ef-public .ef-resource-card h3{font-size:1.47rem;margin:0 0 12px}
.ef-public .ef-resource-card p{font-size:.98rem;color:var(--ef-muted);margin:0 0 22px}
.ef-public .ef-group-banner{background:#25213f;color:#fff;padding:clamp(34px,5vw,67px);border-radius:23px;display:flex;align-items:center;justify-content:space-between;gap:40px}
.ef-public .ef-group-banner h2{font-size:clamp(1.85rem,3vw,3.05rem);color:#fff;margin-bottom:15px;max-width:700px}
.ef-public .ef-group-banner p{font-size:1.08rem;line-height:1.65;color:#dad6ed;max-width:720px;margin:0}
.ef-public .ef-group-banner .ef-button{flex:0 0 auto}
.ef-public .ef-button-light{border-color:#fff;background:#fff;color:#282145}
.ef-public .ef-button-light:hover{border-color:#f2eeff;background:#f2eeff;color:#282145}
.ef-public .ef-request-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(38px,8vw,105px)}
.ef-public .ef-request-copy p{font-size:1.12rem;color:var(--ef-muted);max-width:440px}
.ef-public .ef-school-form{border-radius:20px;border:1px solid var(--ef-line);background:#fff;padding:clamp(25px,4vw,45px);display:grid;gap:9px;box-shadow:0 12px 35px rgba(20,12,57,.04)}
.ef-public .ef-school-form h3{font-size:1.7rem;margin:0 0 15px}
.ef-public .ef-school-form label{display:block;font-weight:700;font-size:.92rem;margin:11px 0 2px;color:var(--ef-ink)}
.ef-public .ef-school-form input,.ef-public .ef-school-form select,.ef-public .ef-school-form textarea{width:100%;border:1px solid #d8d4e1;border-radius:10px;background:#fff;padding:13px 15px;min-height:49px;font-size:1rem;line-height:1.4;font-family:inherit;color:#24213b}
.ef-public .ef-school-form textarea{min-height:105px;resize:vertical}
.ef-public .ef-school-form :is(input,select,textarea):focus-visible{outline:3px solid #c5bcfd;outline-offset:2px}
.ef-public .ef-school-form button{margin-top:18px;width:100%}
.ef-public .ef-pricing-hero{background:#f8f7fc;padding:clamp(90px,10vw,145px) 0}
.ef-public .ef-pricing-grid{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);align-items:center;gap:clamp(35px,8vw,100px)}
.ef-public .ef-pricing-copy h1{max-width:700px}
.ef-public .ef-pricing-copy p{font-size:1.18rem;color:var(--ef-muted);max-width:580px;margin:0 0 27px}
.ef-public .ef-pricing-card{padding:clamp(29px,4.5vw,48px);border:1px solid #e7e2f4;background:#fff;border-radius:22px;box-shadow:0 26px 65px rgba(54,38,105,.075)}
.ef-public .ef-price-figure{display:flex;align-items:baseline;gap:10px;border-bottom:1px solid var(--ef-line);padding-bottom:20px;margin-bottom:23px}
.ef-public .ef-price-figure strong{font-size:clamp(3.8rem,5.8vw,5.4rem);line-height:1;font-weight:800;letter-spacing:-.07em;color:var(--ef-ink)}
.ef-public .ef-price-figure span{color:var(--ef-muted);font-size:1.1rem}
.ef-public .ef-pricing-card ul{list-style:none;margin:0 0 30px;padding:0;display:grid;gap:16px}
.ef-public .ef-pricing-card li{display:flex;align-items:flex-start;gap:11px;color:#484359;font-size:1rem}
.ef-public .ef-pricing-card li .material-symbols-outlined{font-size:20px;color:var(--ef-purple);flex:none}
.ef-public .ef-pricing-card .ef-button{width:100%}
.ef-public .ef-faq-layout{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(30px,7vw,90px);align-items:start}
.ef-public .ef-faq-list{border-top:1px solid var(--ef-line)}
.ef-public .ef-faq-list details{border-bottom:1px solid var(--ef-line);padding:23px 0}
.ef-public .ef-faq-list summary{cursor:pointer;list-style:none;font-size:1.1rem;color:var(--ef-ink);font-weight:750;display:flex;justify-content:space-between;align-items:center;gap:20px}
.ef-public .ef-faq-list summary::-webkit-details-marker{display:none}
.ef-public .ef-faq-list details[open] summary .material-symbols-outlined{transform:rotate(45deg)}
.ef-public .ef-faq-list summary .material-symbols-outlined{color:#6455db;transition:transform .18s;flex:none}
.ef-public .ef-faq-list details p{margin:12px 35px 0 0;color:var(--ef-muted);font-size:1rem}
.ef-public .ef-faq-list details a{color:#5141c4}
.ef-public .ef-home-group{padding-bottom:clamp(44px,6vw,72px)}
.ef-public .ef-k12-option{padding-top:75px}
.ef-public a:focus-visible,.ef-public button:focus-visible{outline:3px solid #b6a9ff;outline-offset:3px}
@media(max-width:960px){
.ef-public .ef-hero-grid,.ef-public .ef-editorial-grid,.ef-public .ef-groups-layout,.ef-public .ef-pricing-grid,.ef-public .ef-request-grid,.ef-public .ef-faq-layout{gap:35px}
.ef-public .ef-hero{min-height:auto;padding:65px 0}
.ef-public .ef-hero-photo{height:440px}
.ef-public .ef-group-banner{align-items:flex-start;flex-direction:column}
}
@media(max-width:760px){
.ef-public .ef-hero-grid,.ef-public .ef-editorial-grid,.ef-public .ef-groups-layout,.ef-public .ef-pricing-grid,.ef-public .ef-request-grid,.ef-public .ef-faq-layout{grid-template-columns:minmax(0,1fr)}
.ef-public .ef-hero{padding:40px 0 54px}
.ef-public .ef-hero-copy{padding:0}
.ef-public .ef-hero-photo{height:clamp(275px,70vw,460px);border-radius:17px}
.ef-public .ef-benefits-grid{grid-template-columns:1fr;gap:10px}
.ef-public .ef-benefit{padding:23px 0;border-top:1px solid #e2dfeb}
.ef-public .ef-benefit>.material-symbols-outlined{margin-bottom:13px}
.ef-public .ef-editorial-reverse .ef-editorial-copy,.ef-public .ef-editorial-reverse .ef-editorial-photo{grid-column:auto;grid-row:auto}
.ef-public .ef-editorial-photo{height:clamp(290px,64vw,430px)}
.ef-public .ef-section{padding:66px 0}
.ef-public .ef-section-heading{margin-bottom:22px}
.ef-public .ef-request-grid{gap:28px}
.ef-public .ef-pricing-hero{padding:62px 0}
.ef-public .ef-group-banner{padding:30px 27px;border-radius:18px;gap:25px}
.ef-public .ef-group-banner .ef-button{width:100%}
}
@media(max-width:450px){
.ef-public h1{font-size:clamp(2.35rem,10.3vw,3.1rem)}
.ef-public h2{font-size:clamp(1.95rem,8vw,2.5rem)}
.ef-public .ef-actions{align-items:stretch;gap:18px;flex-direction:column}
.ef-public .ef-actions .ef-button{width:100%}
.ef-public .ef-hero-copy>p{font-size:1.03rem}
.ef-public .ef-group-banner h2{font-size:2.05rem}
}

.db-grid>.db-bible-compact{grid-column:auto;display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e9e5f0;border-radius:12px;padding:13px 18px;min-height:75px;text-decoration:none;color:#292341;transition:border-color .2s,box-shadow .2s}
.db-grid>.db-bible-compact:hover{border-color:#bcb2ef;box-shadow:0 5px 18px rgba(34,21,79,.05);color:#292341}
.db-bible-compact-icon{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:10px;background:#f3f0ff;color:#6453dc}
.db-bible-compact-icon .material-symbols-outlined{font-size:23px}
.db-bible-compact-text{display:grid;gap:2px;flex:1;min-width:0}
.db-bible-compact-text strong{font-size:1rem;font-weight:800;line-height:1.3}
.db-bible-compact-text small{font-size:.83rem;color:#6d637f;line-height:1.3}
.db-bible-compact-arrow{color:#6757df;font-size:20px}
.db-bible-compact:focus-visible{outline:3px solid #b7aafa;outline-offset:3px}

.db-bible-main{display:flex;align-items:center;gap:12px;flex:1;min-width:0;color:inherit;text-decoration:none}.db-bible-main:hover{color:#5140c7}.db-bible-dismiss-form{margin:0;flex:none}.db-bible-dismiss{display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:7px;background:transparent;color:#7a748b;cursor:pointer}.db-bible-dismiss:hover{background:#f3f0ff;color:#4e3fbf}.db-bible-dismiss .material-symbols-outlined{font-size:19px}.db-bible-dismiss:focus-visible{outline:3px solid #a89cf1;outline-offset:2px}
