:root { --teal:#0b6774; --teal-deep:#074a54; --teal-soft:#e9f3f4; --stone:#f7f5f1; --gold:#b99052; --ink:#1f2a30; --muted:#5f6f78; --border:#dbe3e6; --white:#fff; --shadow:0 10px 28px rgba(31,42,48,.1); --content:1120px; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; scroll-padding-top:5.4rem; } body { margin:0; color:var(--ink); background:#f7f5f1 url("assets/images/jesus-christ.jpeg") center 9% / cover no-repeat fixed; font:400 1.05rem/1.6 "Source Sans 3",sans-serif; } h1,h2,h3,p { margin-top:0; } h1,h2,h3 { font-family:Merriweather,serif; line-height:1.25; } h1 { font-size:clamp(2.25rem,5vw,4.2rem); margin-bottom:1rem; } h2 { font-size:clamp(1.75rem,3vw,2.6rem); margin-bottom:.7rem; } h3 { font-size:1.25rem; } a { color:inherit; } button,input,select,textarea { font:inherit; } input,select,textarea { width:100%; margin-top:.35rem; padding:.7rem .8rem; border:1px solid #b9c5c9; border-radius:5px; background:#fff; color:var(--ink); } textarea { resize:vertical; } label { display:block; font-weight:700; } .container { width:min(calc(100% - 2rem),var(--content)); margin:auto; }
.site-header { position:sticky; top:0; z-index:100; background:rgba(255,255,255,.97); border-bottom:1px solid var(--border); box-shadow:0 3px 12px rgba(31,42,48,.06); } .site-nav { min-height:4.6rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; } .site-nav__brand { color:var(--teal-deep); font-family:Merriweather,serif; font-size:1.5em; font-weight:700; text-decoration:none; white-space:nowrap; } .site-nav__links { display:flex; align-items:center; gap:1.15rem; } .site-nav__links a { color:#35434a; font-size:.96rem; font-weight:700; text-decoration:none; white-space:nowrap; } .site-nav__links a:hover,.text-link:hover { color:var(--teal); } .nav-toggle { display:none; border:1px solid var(--border); border-radius:5px; background:#fff; padding:.4rem .7rem; color:var(--ink); font-weight:700; }
@media (max-width:1100px) { .nav-toggle { display:block; } .site-nav { flex-wrap:wrap; padding:.7rem 0; } .site-nav__links { display:none; flex-basis:100%; flex-direction:column; align-items:stretch; gap:0; padding-bottom:.35rem; } .site-nav__links.is-open { display:flex; } .site-nav__links a { padding:.45rem 0; } }
.weekly-video { padding:3.4rem 0; background:rgba(255,255,255,.94); border-bottom:1px solid var(--border); } .weekly-video__content { max-width:960px; } .weekly-video h2 { margin-bottom:1.35rem; } .weekly-video__frame { overflow:hidden; aspect-ratio:16 / 9; border:1px solid rgba(7,74,84,.22); border-radius:12px; background:#10282e; box-shadow:var(--shadow); } .weekly-video video { display:block; width:100%; height:100%; object-fit:contain; }
.week-hero { overflow:hidden; color:var(--ink); background-image:linear-gradient(90deg,rgba(255,255,255,.86),rgba(255,255,255,.54)),var(--lesson-artwork,url("assets/images/jesus-christ.jpeg")); background-position:center,70% 34%; background-size:cover,cover; border-bottom:1px solid var(--border); } .week-hero__grid { min-height:31rem; display:grid; grid-template-columns:minmax(0,1fr); align-items:center; gap:2rem; padding:5.6rem 0; } .week-hero__grid > div { max-width:52rem; } .week-hero__label,.eyebrow { color:var(--teal); font-size:.82rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase; } .week-hero__label { margin-bottom:.35rem; } .week-hero__reading { max-width:43rem; color:#36464e; font-size:1.25rem; } .week-hero__date { color:var(--muted); font-weight:700; }
.section { padding:5.4rem 0; } .section--warm { background:rgba(247,245,241,.95); } .section--light { background:rgba(255,255,255,.95); } .section--accent { background:rgba(233,243,244,.95); } .section--image { color:#fff; background:linear-gradient(90deg,rgba(7,74,84,.94),rgba(11,103,116,.8)),url("assets/images/jesus-christ.jpeg") center 35%/cover; } .eyebrow--dark { color:var(--teal-deep); } .section-heading,.contact-layout { display:flex; justify-content:space-between; align-items:start; gap:3rem; margin-bottom:2rem; } .section-intro { max-width:26rem; color:var(--muted); } .section--image .section-intro { color:#e5f3f4; } .announcements-grid,.calendar-grid,.profile-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; } .announcement-card,.calendar-card,.profile-card,.form-card { background:#fff; border:1px solid var(--border); border-radius:10px; box-shadow:var(--shadow); } .announcement-card,.calendar-card,.profile-card { padding:1.35rem; } .announcement-card h3,.calendar-card h3,.profile-card h3 { margin-bottom:.45rem; } .announcement-card p,.calendar-card p,.profile-card p { margin-bottom:0; color:var(--muted); } .announcement-card__date { color:var(--teal-deep); font-weight:800; } .calendar-section { background:rgba(248,251,251,.95); } .calendar-grid { grid-template-columns:repeat(2,1fr); } .calendar-card__week { color:var(--teal-deep); font-size:.85rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; } .calendar-card ul { margin:.85rem 0 0; padding-left:1.25rem; } .calendar-card li { margin:.35rem 0; } .calendar-card li.no-school { color:#8a4b38; font-weight:700; } .text-link { color:var(--teal-deep); font-weight:800; } .section--image .text-link { color:#fff; }
.required-reading { color:#fff; background:linear-gradient(rgba(6,20,28,.82),rgba(6,20,28,.82)),url("assets/images/required-reading-scriptures.jpeg") center 58%/cover; } .required-reading .eyebrow { color:#dfc07b; } .reading-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin-top:2rem; } .reading-card { padding:1.25rem; border:1px solid rgba(255,255,255,.3); border-radius:10px; background:rgba(8,28,38,.78); box-shadow:var(--shadow); } .reading-card h3 { margin-bottom:1.25rem; color:#fff; font-size:1.2rem; } .reading-semester + .reading-semester { margin-top:1.35rem; padding-top:1.15rem; border-top:1px solid rgba(255,255,255,.22); } .reading-semester h4 { margin:0 0 .65rem; color:#dfc07b; font:800 .82rem/1.3 "Source Sans 3",sans-serif; letter-spacing:.08em; text-transform:uppercase; } .reading-semester ul { margin:0; padding-left:1.15rem; } .reading-semester li { margin:.45rem 0; } .reading-semester a { color:#fff; font-weight:700; text-underline-offset:.14em; } .reading-semester a:hover { color:#f5d998; }
.makeup-layout { max-width:850px; } .form-card { padding:1.5rem; } .form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; } .form-card label + label { margin-top:1rem; } .form-row label + label { margin-top:0; } .checkbox { display:flex; align-items:start; gap:.65rem; font-weight:400; } .checkbox input { width:auto; margin:.3rem 0 0; } .form-actions { display:flex; align-items:center; gap:1rem; margin-top:1.35rem; } .button { cursor:pointer; border:0; border-radius:5px; padding:.72rem 1.1rem; color:#fff; background:var(--teal); font-weight:800; } .button:hover { background:var(--teal-deep); } .button:disabled,.button:disabled:hover { cursor:not-allowed; background:#98a4a8; } .form-status { margin:0; color:var(--teal-deep); font-weight:700; } .people-group + .people-group { margin-top:3rem; } .people-group__title { margin:0 0 1rem; color:#fff; font-size:1.4rem; } .profile-grid { grid-template-columns:repeat(3,1fr); max-width:960px; } .profile-card { color:var(--ink); } .profile-card__photo { display:block; width:100%; aspect-ratio:4 / 5; margin-bottom:1rem; border-radius:7px; object-fit:cover; object-position:50% 50%; background:linear-gradient(135deg,#d8e7e8,#edf3ef); } .profile-card__photo--albright { object-position:50% 0; } .profile-card__photo--aaron { object-position:50% 48%; } .profile-card__photo--katie { object-position:50% 50%; } .profile-card__photo--tom { object-position:50% 38%; } .profile-card__photo--tad { object-position:50% 42%; } .profile-card__photo--minette { object-position:50% 50%; } .profile-card__photo--julie { object-position:50% 54%; } .profile-card__photo--eric { object-position:50% 40%; } .profile-card__photo--sprenz { object-position:50% 42%; } .profile-card__photo--kirsten { object-position:50% 43%; } .contact-layout > * { flex:1; } .muted { color:var(--muted); } .site-footer { padding:1.5rem 0; color:#e7f2f3; background:var(--teal-deep); } .site-footer .container { display:flex; justify-content:space-between; gap:1rem; } .site-footer a { font-weight:700; }
@media (max-width:800px) { .nav-toggle { display:block; } .site-nav { flex-wrap:wrap; padding:.7rem 0; } .site-nav__links { display:none; flex-basis:100%; flex-direction:column; align-items:stretch; gap:0; padding-bottom:.35rem; } .site-nav__links.is-open { display:flex; } .site-nav__links a { padding:.45rem 0; } .week-hero__grid { grid-template-columns:1fr; min-height:0; padding:3.5rem 0; } .section { padding:3.8rem 0; } .section-heading,.contact-layout { display:block; } .section-intro { margin-top:1rem; } .announcements-grid,.calendar-grid { grid-template-columns:1fr; } .reading-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px) { .form-row,.profile-grid,.reading-grid { grid-template-columns:1fr; } .form-row label + label { margin-top:1rem; } .form-actions,.site-footer .container { align-items:flex-start; flex-direction:column; } }

.lesson-link { color:var(--teal-deep); font-weight:800; }
.lesson-link:hover { color:var(--teal); }
.week-hero h1 a { color:inherit; text-decoration:none; }
.week-hero h1 a:hover { color:var(--teal-deep); text-decoration:underline; text-underline-offset:.16em; }
