/* One continuous illustrated sky connects the page instead of boxed background bands. */
body { background:#def4ff; isolation:isolate; }
.site-sky { position:fixed; inset:0; width:100%; height:100dvh; object-fit:cover; object-position:center; z-index:-1; pointer-events:none; }
#ceremony-view { background:linear-gradient(180deg,transparent 65%,rgb(222 244 255 / 32%)); }
.events-section { background:transparent; border:0; }
.intro-section { padding-bottom:36px; }
.site-header { border-bottom:0; }
.site-footer { background:rgb(255 255 255 / 90%); border-top:1px solid #91c8e5; }
.about-section { padding-top:18px; padding-bottom:16px; scroll-margin-top:24px; }
.about-card { display:grid; grid-template-columns:1.05fr 1fr; gap:48px; padding:42px; border:var(--line); border-radius:28px; background:rgb(255 255 255 / 95%); box-shadow:var(--shadow); }
.about-copy h2,.faq-intro h2 { font-size:clamp(32px,3vw,44px); line-height:1.12; margin:0 0 22px; }
.about-copy p,.faq-intro p { font-size:15px; line-height:1.8; margin-bottom:18px; }
.about-copy .text-link { display:inline-flex; align-items:center; gap:12px; margin-top:8px; font-size:13px; }
.about-score { align-self:center; border:2px solid var(--ink); border-radius:20px; padding:25px; background:#dff4ff; }
.score-example { display:grid; grid-template-columns:1fr 1fr; text-align:center; gap:6px 16px; margin:24px 0; }
.score-example > span { font-size:12px; grid-row:1; }
.score-example > strong { font-size:52px; line-height:1.1; grid-row:2; }
.team-boost { display:flex; gap:13px; padding:18px; border:2px solid var(--ink); border-radius:14px; background:#ffea86; }
.team-boost > span { font-size:28px; }
.team-boost strong { display:block; font-size:16px; }
.team-boost p { font-size:12px; line-height:1.7; margin:8px 0 0; }
.about-footnote { font-size:11px; line-height:1.7; margin:18px 0 0; }
.faq-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:60px; padding-top:16px; padding-bottom:88px; scroll-margin-top:24px; }
.faq-intro { padding-top:16px; }
.faq-intro .btn { font-size:13px; margin-top:10px; }
.faq-list { display:grid; gap:13px; align-content:start; }
.faq-list details { border:2px solid var(--ink); border-radius:16px; background:#fff; box-shadow:3px 4px 0 var(--ink); overflow:hidden; }
.faq-list summary { cursor:pointer; position:relative; padding:20px 46px 20px 22px; font-weight:800; font-size:14px; list-style:none; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:'+'; position:absolute; right:20px; top:17px; font-size:23px; }
.faq-list details[open] summary { background:#dff4ff; }
.faq-list details[open] summary::after { content:'−'; }
.faq-list p { padding:18px 22px 22px; font-size:13px; line-height:1.8; margin:0; }
.division-badge { display:inline-flex; border:2px solid var(--ink); border-radius:30px; background:#fff; font-size:11px; font-weight:800; padding:8px 13px; margin:8px 0 14px; }
.standings-division-picker { display:flex; flex-wrap:wrap; align-items:center; gap:12px 22px; margin:0 0 24px; }
.standings-division-picker label { font-size:12px; font-weight:800; }
.standings-division-picker select { width:auto; min-width:200px; }
.standings-division-picker p { font-size:11px; margin:0; }
.standings-home .points-column { display:table-cell; }
.standings-division-label { font-size:11px; font-weight:700; color:#2b698c; margin-top:6px; }
.main-nav { gap:22px; margin-right:10px; }
@media(max-width:1000px) { .about-card { gap:28px; padding:28px; }.faq-section { gap:32px; }.main-nav { gap:14px; font-size:12px; } }
@media(max-width:700px) { .site-sky { object-position:center top; }.about-card,.faq-section { grid-template-columns:1fr; }.about-card { padding:24px; gap:26px; border-radius:22px; }.about-score { padding:20px; }.about-section { padding-bottom:0; }.faq-section { padding-top:0; padding-bottom:60px; gap:24px; }.faq-intro .btn { margin-top:0; }.faq-list summary { font-size:13px; }.faq-list p { font-size:12px; }.standings-division-picker select { width:100%; }.standings-division-picker { gap:8px; }.standings-home .points-column { font-size:12px; }.division-badge { margin-bottom:4px; } }
