.fcal{--fcal-accent:#2f6f8f;--fcal-accent-soft:#e8f1f5;--fcal-gold:#b8862b;--fcal-gold-soft:#fbf3e2;--fcal-line:#e3e6e8;--fcal-muted:#7a8288;--fcal-card:#fff;font-size:.9em;margin-top:1em}.fcal-intro{color:var(--fcal-muted,#7a8288);font-size:.85em}.fcal-spotlight{background:linear-gradient(135deg,var(--fcal-gold-soft),#fff);border:1px solid #f0e2c2;border-radius:14px;margin-bottom:1.5em;padding:1em 1.2em .4em}.fcal-spotlight h2{border:0;color:var(--fcal-gold);font-size:.8em;letter-spacing:.08em;margin:0 0 .6em;text-transform:uppercase}.fcal-cards{display:grid;gap:.7em;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:.8em}.fcal-cards .fcal-event{background:var(--fcal-card);border-color:#f0e2c2}.fcal-badge{background:var(--fcal-gold-soft);border-radius:999px;color:var(--fcal-gold);display:block;font-size:.7em;font-weight:600;margin-bottom:.4em;padding:.1em .6em;width:max-content}.fcal-search{border:1px solid var(--fcal-line);border-radius:10px;font-size:.95em;margin-bottom:.8em;padding:.6em .9em;width:100%}.fcal-months{display:grid;gap:4px;grid-template-columns:repeat(12,1fr);margin-bottom:1em}.fcal-month{align-items:center;background:#fff;border:1px solid var(--fcal-line);border-radius:8px;color:inherit;cursor:pointer;display:flex;flex-direction:column;font-size:.75em;line-height:1.3;padding:.35em 0}.fcal-month small{color:var(--fcal-muted);font-size:.85em}.fcal-month.fcal-empty{opacity:.5}.fcal-month:hover{border-color:var(--fcal-accent)}.fcal-month[aria-selected=true]{background:var(--fcal-accent);border-color:var(--fcal-accent);color:#fff}.fcal-month[aria-selected=true] small{color:#dce9ef}.fcal-header{align-items:center;display:flex;justify-content:space-between;margin:.2em 0 .1em}.fcal-title{border:0;font-size:1.4em;margin:0}.fcal-nav{background:#fff;border:1px solid var(--fcal-line);border-radius:50%;color:inherit;cursor:pointer;font-size:1.1em;height:2.2em;width:2.2em}.fcal-nav:hover{border-color:var(--fcal-accent);color:var(--fcal-accent)}.fcal-summary{color:var(--fcal-muted);font-size:.85em;margin:0 0 .8em;text-align:center}.fcal-grid{display:grid;gap:4px;grid-template-columns:repeat(7,1fr);margin-bottom:1.5em}.fcal-weekday{color:var(--fcal-muted);font-size:.7em;letter-spacing:.06em;padding-bottom:2px;text-align:center;text-transform:uppercase}.fcal-cell{align-items:stretch;background:#fff;border:1px solid var(--fcal-line);border-radius:8px;color:inherit;display:flex;flex-direction:column;font:inherit;gap:2px;min-height:76px;overflow:hidden;padding:4px 5px;text-align:left}.fcal-blank{background:none;border:0}.fcal-daynum{color:var(--fcal-muted);font-size:.75em}.fcal-has{background:var(--fcal-accent-soft);border-color:#cfe0e8;cursor:pointer}.fcal-has:hover{border-color:var(--fcal-accent)}.fcal-has .fcal-daynum{color:var(--fcal-accent);font-weight:600}.fcal-today{box-shadow:inset 0 0 0 2px var(--fcal-gold)}.fcal-today .fcal-daynum{color:var(--fcal-gold);font-weight:700}.fcal-selected{background:var(--fcal-accent);border-color:var(--fcal-accent)}.fcal-selected .fcal-chip,.fcal-selected .fcal-daynum,.fcal-selected .fcal-more{color:#fff}.fcal-chip{color:#234f66;font-size:.65em;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fcal-more{font-size:.62em}.fcal-day,.fcal-more{color:var(--fcal-muted)}.fcal-day{border:0;font-size:.8em;letter-spacing:.06em;margin:1.2em 0 .4em;text-transform:uppercase}.fcal-event{background:var(--fcal-card);border:1px solid var(--fcal-line);border-radius:10px;margin-bottom:.5em;padding:.7em .9em}.fcal-couple{font-weight:600;text-decoration:none}.fcal-couple:hover{text-decoration:underline}.fcal-amp{color:var(--fcal-gold);font-weight:400}.fcal-meta,.fcal-trees{color:var(--fcal-muted);font-size:.8em;margin:.25em 0 0}.fcal-trees a{color:var(--fcal-accent)}.fcal-none{color:var(--fcal-muted);padding:1em 0;text-align:center}.fcal-showall{background:#fff;border:1px solid var(--fcal-accent);border-radius:999px;color:var(--fcal-accent);cursor:pointer;font-size:.8em;margin-top:.6em;padding:.35em 1em}@media (max-width:640px){.fcal-months{grid-template-columns:repeat(6,1fr)}.fcal-cell{min-height:44px;padding:3px}.fcal-chip,.fcal-more{display:none}.fcal-has:after{background:var(--fcal-accent);border-radius:50%;content:"";height:6px;margin:2px auto 0;width:6px}.fcal-selected:after{background:#fff}}.fcal .fcal-event p,.fcal .fcal-event>:last-child{margin-bottom:0}.fcal .fcal-couple,.fcal .fcal-trees a{text-decoration:none}.fcal .fcal-trees a:hover{text-decoration:underline}.fcal-trees:before{content:"In the tree: "}