/* Color, light and motion for the home; weekly reading itineraries. */
.home-opening{position:relative;isolation:isolate;overflow:hidden;background:#f5f5f8}
.home-aurora{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.home-aurora i{position:absolute;width:75%;height:120%;border-radius:50%;pointer-events:none}
.aurora-violet{right:-15%;top:-30%;background:radial-gradient(ellipse,#cbbaf187,transparent 68%)}
.aurora-mint{right:-25%;bottom:-55%;background:radial-gradient(ellipse,#92d0c680,transparent 65%)}
.aurora-peach{left:-40%;top:0;background:radial-gradient(ellipse,#f1dfd969,transparent 65%)}
.home-page .hero h1>span{color:#6242ba;background:linear-gradient(100deg,#6242ba 10%,#17675f 50%,#754184 85%);background-size:240% 100%;background-position:0 50%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.home-page .hero-visual{overflow:visible}
.home-page .portrait-arch{background:linear-gradient(140deg,#d8caed,#d6e7e6);box-shadow:inset 0 0 80px #ffffff50}
.portrait-halo{position:absolute;inset:9% -2% 4%;pointer-events:none;z-index:-1}
.portrait-halo i{position:absolute;inset:0;border:1px solid #8070aa40;border-radius:50%;transform:rotate(-18deg)}
.portrait-halo i:nth-child(2){inset:5% -4%;transform:rotate(18deg);border-color:#5d9b9b33}
.portrait-halo>span{position:absolute;left:3%;top:17%;font-size:3rem;color:#776297}
.home-page .hero-visual::after{border-color:#fff9;inset:13% 3% 5%}
.home-page .portrait-note{background:#faf9fcf5;border-left-color:#726092;box-shadow:0 12px 40px #3b315011}
.home-page .primary{background:linear-gradient(115deg,#6144c5,#4d3eaa);border-color:#ffffff15;box-shadow:0 8px 24px #5943b829}
.home-page .primary::after{content:'';position:absolute;inset:-50%;background:linear-gradient(100deg,transparent 35%,#ffffff25 50%,transparent 65%);transform:translateX(-85%) rotate(15deg);pointer-events:none}
.home-page .primary:hover::after,.home-page .primary:focus-visible::after{transform:translateX(85%) rotate(15deg);transition:transform .8s}
.home-page .primary:hover{box-shadow:0 12px 32px #5943b83b}
.home-page .values-strip{background:linear-gradient(100deg,#f0ebf9,#f5f7f8 50%,#e8f2ef);border-color:#d8dbe5}
.home-page .values-strip .strip-star{color:#76619d}
.home-page .topics-section,.home-page .talks-section,.home-page .devotional-section,.home-page .contact-section{position:relative;isolation:isolate;overflow:hidden}
.section-color-field{position:absolute;inset:-20% -10%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 75% 35%,#ccc0e955,transparent 60%),radial-gradient(ellipse at 15% 70%,#b4dcd640,transparent 50%)}
.home-page .talks-section{background:#142232}
.talks-section .section-color-field{background:radial-gradient(ellipse at 70% 30%,#5d457766,transparent 60%),radial-gradient(ellipse at 20% 80%,#21595366,transparent 55%)}
.home-page .topic{background:#fbfbfd;border-color:#fff;box-shadow:0 5px 20px #24283d04}
.home-page .topic:nth-child(2n):hover{border-color:#86b8ae;background:#f3faf7}
.home-page .topic:nth-child(2n+1):hover{background:#f9f5ff;border-color:#b69cd9}
.home-page .book-stage{background:radial-gradient(ellipse at 70% 20%,#f5edf9,#dedbea)}
.home-page .stage-1{background:radial-gradient(ellipse at 70% 20%,#edf8f3,#d6e4e2)}
.home-page .stage-2{background:radial-gradient(ellipse at 70% 20%,#fff6e9,#e9dfd7)}
.home-page .book-stage::before{content:'';position:absolute;width:75%;height:100%;border:1px solid #ffffffa0;border-radius:50%;transform:rotate(-30deg);pointer-events:none}
.home-page .contact-section{background:#efedf7}
.home-page .contact-section .section-color-field{background:radial-gradient(ellipse at 50% 100%,#cab7ec80,transparent 65%),radial-gradient(ellipse at 90% 0%,#b9d8d66b,transparent 55%)}
.home-page .channel-grid>a{padding:25px 22px;border-radius:0 0 10px 10px;transition:background .3s,border-color .3s,transform .3s}
.home-page .channel-grid>a:hover{background:#efebf7;transform:translateY(-4px)}

/* Each round retains native details/summary keyboard and no-script behavior. */
.schedule-toolbar{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:30px 0 24px}
.schedule-toolbar p{display:flex;align-items:center;gap:12px;font-size:.75rem;color:#626c78}
.schedule-key{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#7f6a9e}
.schedule-toolbar>a{font-size:.75rem;flex-shrink:0}
.reading-rounds{display:grid;gap:24px}
.reading-round{--round-ink:#584273;--round-tint:#f0eaf7;--round-line:#dfd5eb;border:1px solid var(--round-line);border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 8px 30px #26304905}
.reading-round.round-2{--round-ink:#30675f;--round-tint:#e7f1ee;--round-line:#cfded8}
.reading-round[open]{padding-bottom:0}
.reading-round summary{display:flex;align-items:center;gap:30px;padding:30px 34px;list-style:none;background:linear-gradient(115deg,var(--round-tint),#fafbfc);position:relative;transition:background .3s}
.reading-round summary::-webkit-details-marker{display:none}
.reading-round summary:hover{background:var(--round-tint)}
.reading-round summary:focus-visible{outline-offset:-5px}
.reading-round summary>span{float:none;margin:0;display:block;color:inherit}
.reading-round summary>.round-number{font-family:Cormorant,Georgia,serif;font-style:italic;font-size:5rem;font-weight:500;line-height:1;letter-spacing:-.07em;color:var(--round-ink);padding-right:28px;border-right:1px solid var(--round-line);flex-shrink:0}
.round-heading{flex:1;min-width:0}
.round-heading>span{display:block}
.round-kicker{font-size:.56rem;letter-spacing:.13em;font-weight:600;color:var(--round-ink)}
.round-title{font-size:1.7rem;font-weight:600;letter-spacing:-.045em;margin:10px 0}
.round-description{font-size:.75rem;line-height:1.7;color:#5b6472}
.reading-round summary>.round-summary-end{display:flex;align-items:flex-end;flex-direction:column;gap:20px}
.round-period{font-size:.9rem;color:var(--round-ink);font-weight:600;text-align:right;letter-spacing:.025em}
.round-period small{display:block;font-size:.59rem;font-weight:400;color:#5b6472;margin-top:8px;letter-spacing:0}
.round-toggle{display:flex;align-items:center;gap:14px;font-size:.66rem;color:var(--round-ink);font-weight:600}
.round-chevron{width:32px;height:32px;border-radius:50%;border:1px solid var(--round-line);display:grid;place-items:center;font-size:1rem;transition:transform .35s}
.round-close-label{display:none}
.reading-round[open] .round-open-label{display:none}.reading-round[open] .round-close-label{display:inline}.reading-round[open] .round-chevron{transform:rotate(180deg)}
.round-content{padding:0 30px 30px}
.round-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid #e8ebee}
.round-intro p{font-size:.75rem;color:#626c78}.round-intro .text-link{font-size:.73rem;color:var(--round-ink)}
.round-personal{display:grid;grid-template-columns:auto 1fr;gap:12px 24px;align-items:center;padding:24px 0;font-size:.73rem;color:var(--round-ink)}
.round-meter{display:block;height:4px;background:var(--round-tint);border-radius:3px;overflow:hidden}.round-meter i{display:block;width:var(--round-progress,0%);height:100%;background:var(--round-ink);transition:width .6s}
.round-personal small{grid-column:1/-1;color:#626c78;font-size:.64rem}
.round-weeks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px;padding-top:12px;align-items:start}
.schedule-week{min-width:0;border:1px solid #e4e8eb;border-radius:9px;overflow:hidden}
.week-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f7f8f9;padding:15px 16px;border-bottom:1px solid #e4e8eb}
.week-heading h3{font-size:.78rem;font-weight:600;letter-spacing:-.02em}.week-heading>span{font-size:.61rem;color:#626c78}
.schedule-week .assignment{display:grid;grid-template-columns:39px minmax(0,1fr);gap:12px;padding:17px 14px;align-items:start;border-top:0;border-bottom:1px solid #eceef0;scroll-margin-top:110px}
.schedule-week .assignment:last-child{border-bottom:0}
.assignment-date{text-align:center;color:var(--round-ink);padding-top:4px;font-variant-numeric:tabular-nums}
.assignment-date small{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:.49rem;margin-bottom:6px}.assignment-date time{font-size:.72rem;font-weight:650}
.assignment-content{min-width:0}.assignment-content>a{display:block;min-height:44px}.assignment-content>a:hover strong{text-decoration:underline;text-underline-offset:4px;color:var(--round-ink)}
.assignment-chapter{display:flex;flex-wrap:wrap;align-items:center;gap:5px;font-size:.49rem;letter-spacing:.06em;color:#626c78;line-height:1.5}
.assignment-content strong{font-size:.8rem;line-height:1.55;letter-spacing:-.02em;font-weight:600;display:block;margin-top:5px}
.assignment-person{display:flex;align-items:center;gap:7px;margin-top:13px;font-size:.62rem;color:#5b6573;line-height:1.45}
.person-initials{width:25px;height:25px;flex:0 0 25px;display:grid;place-items:center;border-radius:50%;background:var(--round-tint);color:var(--round-ink);font-size:.49rem;font-weight:600}
.assignment-person small{display:block;font-size:.43rem;letter-spacing:.08em;margin-bottom:2px;color:#626c78}
.assignment-today,.assignment-complete{background:var(--round-tint);color:var(--round-ink);padding:3px 5px;border-radius:3px;letter-spacing:0;text-transform:none;font-weight:600}
.assignment.is-today{background:#faf8fd;box-shadow:inset 3px 0 var(--round-ink)}
.round-2 .assignment.is-today{background:#f1f8f5}
.assignment:target{outline:2px solid var(--round-ink);outline-offset:-2px}
@media(max-width:1000px){.round-weeks{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-round summary{gap:22px;padding:26px}.round-title{font-size:1.5rem}.reading-round summary>.round-number{font-size:4rem;padding-right:22px}.round-description{max-width:270px}}
@media(max-width:760px){.home-page .hero-visual{overflow:hidden}.portrait-halo{inset:9% 4% 0}.home-aurora i{width:140%;height:95%}.aurora-violet{right:-80%;top:0}.aurora-mint{right:-40%;bottom:-45%}.home-page .channel-grid>a{padding:22px 16px}.schedule-toolbar{flex-direction:column;align-items:flex-start;gap:10px}.reading-round summary{flex-wrap:wrap;gap:20px;padding:24px}.reading-round summary>.round-number{font-size:3.5rem;padding-right:18px}.round-kicker{font-size:.5rem;letter-spacing:.08em}.round-title{font-size:1.5rem}.round-description{font-size:.7rem;max-width:none}.reading-round summary>.round-summary-end{width:100%;flex-direction:row;align-items:center;justify-content:space-between;border-top:1px solid var(--round-line);padding-top:18px;gap:12px}.round-period{text-align:left;font-size:.78rem}.round-period small{font-size:.54rem}.round-toggle{font-size:.6rem;gap:9px}.round-content{padding:0 20px 24px}.round-intro{align-items:flex-start;flex-direction:column;gap:8px}.round-personal{grid-template-columns:1fr;gap:12px}.round-personal small{grid-column:auto}.round-weeks{gap:20px}.week-heading{padding:14px 12px}.schedule-week .assignment{padding:16px 12px;gap:10px}.assignment-content strong{font-size:.82rem}}
@media(max-width:600px){.round-weeks{grid-template-columns:1fr}.round-weeks .week-heading{padding:17px}.week-heading h3{font-size:.83rem}.week-heading>span{font-size:.65rem}.schedule-week .assignment{padding:19px 16px;grid-template-columns:42px minmax(0,1fr);gap:14px}.assignment-date time{font-size:.79rem}.assignment-date small{font-size:.55rem}.assignment-chapter{font-size:.54rem}.assignment-content strong{font-size:.9rem}.assignment-person{margin-top:16px;padding:10px 12px;gap:10px;border:1px solid var(--round-line);border-radius:8px;background:var(--round-tint);font-size:.88rem;line-height:1.35;color:var(--round-ink)}.assignment-person>span:last-child{font-weight:700}.assignment-person small{font-size:.56rem;font-weight:600;letter-spacing:.1em;color:var(--round-ink);opacity:.76}.person-initials{width:36px;height:36px;flex-basis:36px;background:#fff;color:var(--round-ink);font-size:.67rem;box-shadow:0 2px 7px #17203312}}
@media(prefers-reduced-motion:reduce){.home-aurora i,.portrait-halo,.section-color-field{transform:none!important}.home-page .hero h1>span{background-position:0 50%!important}.home-page .channel-grid>a:hover{transform:none}.home-page .primary::after{display:none}}
@media print{.home-aurora,.portrait-halo,.section-color-field,.schedule-toolbar,.round-toggle{display:none!important}.home-page .hero h1>span{-webkit-text-fill-color:currentColor;background:none}.reading-round{box-shadow:none;overflow:visible}.reading-round summary{background:#fff}.round-content{padding:0}.round-weeks{grid-template-columns:repeat(2,minmax(0,1fr))}.round-personal,.round-intro{display:none}.schedule-week{break-inside:avoid}.assignment{break-inside:avoid}}
