/* Bible Hours platform. Brand tokens from biblehours.com: cream #ECEAE1 / #F7F6F1, deep forest #002113,
   sage #9BBC77, juicy green pills #529056, Playfair Display headings with an italic word, Poppins body.
   Light theme only on purpose: printables shoppers, daytime, the brand is paper. */
/* fonts inlined (was @import fonts.css: one less request in the chain before text can render) */
@font-face{font-family:'Playfair Display';font-weight:600;font-style:normal;font-display:swap;src:url(/static/fonts/PlayfairDisplay-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-weight:600;font-style:normal;font-display:swap;src:url(/static/fonts/PlayfairDisplay-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Playfair Display';font-weight:700;font-style:normal;font-display:swap;src:url(/static/fonts/PlayfairDisplay-700-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-weight:700;font-style:normal;font-display:swap;src:url(/static/fonts/PlayfairDisplay-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Playfair Display';font-weight:700;font-style:italic;font-display:swap;src:url(/static/fonts/PlayfairDisplay-700i-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-weight:700;font-style:italic;font-display:swap;src:url(/static/fonts/PlayfairDisplay-700i-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Playfair Display';font-weight:800;font-style:normal;font-display:swap;src:url(/static/fonts/PlayfairDisplay-800-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-weight:800;font-style:normal;font-display:swap;src:url(/static/fonts/PlayfairDisplay-800-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-weight:400;font-style:normal;font-display:swap;src:url(/static/fonts/Poppins-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Poppins';font-weight:400;font-style:normal;font-display:swap;src:url(/static/fonts/Poppins-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-weight:500;font-style:normal;font-display:swap;src:url(/static/fonts/Poppins-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Poppins';font-weight:500;font-style:normal;font-display:swap;src:url(/static/fonts/Poppins-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-weight:600;font-style:normal;font-display:swap;src:url(/static/fonts/Poppins-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Poppins';font-weight:600;font-style:normal;font-display:swap;src:url(/static/fonts/Poppins-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-weight:700;font-style:normal;font-display:swap;src:url(/static/fonts/Poppins-700-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Poppins';font-weight:700;font-style:normal;font-display:swap;src:url(/static/fonts/Poppins-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-weight:800;font-style:normal;font-display:swap;src:url(/static/fonts/Poppins-800-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Poppins';font-weight:800;font-style:normal;font-display:swap;src:url(/static/fonts/Poppins-800-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{
  --paper:#F5F3EC; --paper2:#ECEAE1; --sand:#DFD8B7; --card:#FFFFFF;
  --ink:#13251B; --forest:#1E3A2A; --text:#343a35; --muted:#646a62; --line:#DCD7C9; --line2:#E8E4D8;
  --green:#529056; --green-d:#3F7743; --green-l:#E4EEDD; --sage:#9BBC77;
  --serif:'Playfair Display',Georgia,serif; --sans:'Poppins',system-ui,-apple-system,sans-serif;
  --r:18px; --r-s:12px; --pill:999px;
  --shadow:0 1px 2px rgba(30,40,25,.05),0 14px 34px -18px rgba(30,45,28,.28);
  --shadow-l:0 2px 4px rgba(30,40,25,.05),0 30px 60px -28px rgba(30,45,28,.35);
  --ease-out:cubic-bezier(.23,1,.32,1); --ease-io:cubic-bezier(.77,0,.175,1);
  --annh:38px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--text);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
::selection{background:var(--sage);color:var(--ink)}
:focus-visible{outline:2.5px solid var(--green);outline-offset:3px;border-radius:6px}
h1,h2,h3,h4{font-family:var(--serif);color:var(--ink);font-weight:800;letter-spacing:-.015em;line-height:1.12;margin:0;text-wrap:balance}
h1 em,h2 em,h3 em{font-style:italic;font-weight:700;color:var(--green-d)}
p{margin:0;text-wrap:pretty}
.wrap{max-width:1220px;margin:0 auto;padding:0 24px}
@media (max-width:640px){.wrap{padding:0 16px}}
[hidden]{display:none!important}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tab{font-variant-numeric:tabular-nums}

/* announcement + header */
.ann{background:var(--forest);color:#EAF1E4;font-size:13px;font-weight:500;letter-spacing:.01em;min-height:var(--annh);display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 12px;text-align:center;line-height:1.35}
.ann svg{width:16px;height:16px;flex:none;opacity:.85}
.hdr{position:sticky;top:0;z-index:50;background:rgba(245,243,236,.9);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid transparent;transition:border-color .2s}
.hdr.scrolled{border-bottom-color:var(--line)}
.hdr .wrap{display:flex;align-items:center;height:68px;gap:28px}
.brand{display:flex;align-items:center;text-decoration:none}
.brand img{height:38px;width:auto}
.nav{display:flex;gap:26px;margin-left:auto;font-size:14.5px;font-weight:500}
.nav a{text-decoration:none;color:var(--muted);transition:color .15s}
.nav a:hover{color:var(--ink)}
.hdr .acct{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;color:var(--ink);text-decoration:none;transition:background .15s}
.hdr .acct:hover{background:var(--paper2)}
.hdr .acct svg{width:22px;height:22px}
@media (max-width:860px){.nav{display:none}.hdr .wrap{gap:6px}.hdr .brand{margin-right:auto}.hdr .btn{display:none}}
.mfree{display:none;font-size:14px;font-weight:600;color:var(--green-d);text-decoration:none;padding:8px 10px}
@media (max-width:860px){.mfree{display:inline-flex}}
@media (max-width:640px){.ann .mh{display:none}}

/* buttons: juicy green pills like her store */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:var(--pill);padding:17px 32px;font:800 16px/1 var(--sans);letter-spacing:.01em;
  background:var(--green);color:#fff;text-decoration:none;cursor:pointer;white-space:nowrap;
  box-shadow:0 10px 22px -12px rgba(63,119,67,.9),inset 0 -3px 0 rgba(0,0,0,.13);transition:transform 160ms var(--ease-out),background .15s,box-shadow .2s}
.btn:active{transform:scale(.97)}
@media (hover:hover){.btn:hover{background:var(--green-d)}}
.btn svg{width:20px;height:20px;flex:none}
.btn.block{width:100%}
.btn.small{padding:12px 20px;font-size:14px}
.btn.dark{background:var(--forest);box-shadow:inset 0 -3px 0 rgba(0,0,0,.2)}
@media (hover:hover){.btn.dark:hover{background:var(--ink)}}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}
@media (hover:hover){.btn.ghost:hover{background:var(--card);box-shadow:inset 0 0 0 1.5px var(--ink)}}
.btn[disabled]{opacity:.55;cursor:default;transform:none}
.btn .spin{width:18px;height:18px;border-radius:50%;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.link{color:var(--green-d);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px;background:none;border:0;padding:0;font:inherit;cursor:pointer}

/* forms */
.field{display:block;width:100%;height:54px;padding:0 18px;border-radius:14px;border:1.5px solid var(--line);background:var(--card);font:500 16px var(--sans);color:var(--ink);transition:border-color .15s,box-shadow .15s}
.field::placeholder{color:#7d8279}
.field:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 4px rgba(82,144,86,.16)}
.field.err{border-color:#B4452F}
textarea.field{height:auto;min-height:110px;padding:14px 18px;resize:vertical;line-height:1.5}
select.field{appearance:none;background:var(--card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2313251B' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 16px center/18px no-repeat;padding-right:44px}
.ferr{color:#A23B26;font-size:14px;font-weight:500;margin-top:8px;display:none}
.ferr.on{display:block}
.check{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.5;color:var(--muted);cursor:pointer}
.check input{appearance:none;flex:none;width:22px;height:22px;margin:0;border-radius:7px;border:1.5px solid #B9B4A6;background:#fff;cursor:pointer;transition:background .15s,border-color .15s;display:grid;place-items:center}
.check input:checked{background:var(--green);border-color:var(--green)}
.check input:checked::after{content:"";width:11px;height:6px;border:2.5px solid #fff;border-top:0;border-right:0;transform:translateY(-1px) rotate(-45deg)}
.check a{color:var(--ink)}

/* pills, chips */
.pill{display:inline-flex;align-items:center;gap:8px;background:var(--green-l);color:var(--green-d);font-weight:600;font-size:13px;padding:7px 14px;border-radius:var(--pill)}
.pill svg{width:15px;height:15px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{border:1.5px solid var(--line);background:var(--card);color:var(--ink);font:500 14px var(--sans);padding:9px 16px;border-radius:var(--pill);cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s,transform 160ms var(--ease-out)}
.chip:active{transform:scale(.97)}
.chip.on{background:var(--forest);border-color:var(--forest);color:#fff}
@media (hover:hover){.chip:not(.on):hover{border-color:var(--ink)}}

/* sections */
.sec{padding:96px 0}
.sec.tint{background:var(--paper2)}
.sec h2{font-size:clamp(32px,4.2vw,50px)}
.lede{font-size:18px;color:var(--muted);max-width:58ch;margin-top:16px}
.center{text-align:center}
.center .lede{margin-left:auto;margin-right:auto}
@media (max-width:760px){.sec{padding:64px 0}}

/* footer */
.foot{background:var(--forest);color:#C9D6C6;padding:64px 0 28px;font-size:14px}
.foot .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.foot img{height:40px;filter:invert(1) brightness(1.6);opacity:.95}
.foot p{margin-top:14px;max-width:36ch;line-height:1.6}
.foot h4{font:600 13px var(--sans);color:#fff;letter-spacing:.02em;margin-bottom:14px}
.foot a{display:block;text-decoration:none;color:#C9D6C6;padding:4px 0;transition:color .15s}
.foot a:hover{color:#fff}
.foot .tiny{margin-top:48px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px;color:#8FA58C}
.foot .tiny a{display:inline;color:#8FA58C;font-size:12px}
@media (max-width:760px){.foot .cols{grid-template-columns:1fr 1fr}.foot .cols>div:first-child{grid-column:1/-1}}

/* sheets / dialogs */
.scrim{position:fixed;inset:0;background:rgba(15,25,18,.45);z-index:80;opacity:0;transition:opacity 220ms var(--ease-out)}
.scrim.on{opacity:1}
.sheet{position:fixed;z-index:81;background:var(--card);box-shadow:var(--shadow-l);overflow:auto;overscroll-behavior:contain}
@media (min-width:761px){.sheet{left:50%;top:50%;width:min(920px,calc(100vw - 48px));max-height:calc(100svh - 48px);border-radius:24px;transform:translate(-50%,-48%) scale(.97);opacity:0;transition:transform 240ms var(--ease-out),opacity 200ms var(--ease-out)}
  .sheet.on{transform:translate(-50%,-50%) scale(1);opacity:1}}
@media (max-width:760px){.sheet{left:0;right:0;bottom:0;max-height:92svh;border-radius:22px 22px 0 0;transform:translateY(100%);transition:transform 320ms cubic-bezier(.32,.72,0,1)}
  .sheet.on{transform:translateY(0)}}
.sheet .x{position:sticky;top:12px;float:right;margin:12px 12px 0 0;width:40px;height:40px;border-radius:50%;border:0;background:rgba(236,234,225,.92);display:grid;place-items:center;cursor:pointer;z-index:2}
.sheet .x svg{width:20px;height:20px}

.toast{position:fixed;left:50%;bottom:24px;z-index:90;background:var(--ink);color:#fff;padding:13px 20px;border-radius:14px;font-size:14.5px;font-weight:500;box-shadow:var(--shadow-l);transform:translate(-50%,140%);transition:transform 300ms var(--ease-out);max-width:calc(100vw - 32px)}
.toast.on{transform:translate(-50%,0)}

/* reveal: always visible by default; where the browser supports scroll-driven animations, blocks rise in as they
   enter the viewport. Tied to scroll position, so nothing can ever stay hidden. */
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion:no-preference){
    .rv{animation:rv-rise linear both;animation-timeline:view();animation-range:entry 0% entry 55%}
  }
}
@keyframes rv-rise{from{opacity:0;transform:translateY(28px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
@media (prefers-reduced-motion:reduce){.sheet{transition:opacity 200ms ease!important}}

/* skeleton */
.sk{background:linear-gradient(90deg,var(--paper2) 25%,#F3F1E9 50%,var(--paper2) 75%);background-size:200% 100%;animation:sk 1.3s ease-in-out infinite;border-radius:var(--r-s)}
@keyframes sk{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.sk{animation:none}}
