/* Yearly theme section (self-contained; linked directly from the site layout) */
.ytx{position:relative;overflow:hidden;padding:90px 0 80px;color:var(--ytx-ink);background:var(--ytx-bg);--ytx-bg:#e8ddd0;--ytx-ink:#4a3429;--ytx-a:#c9c4ab;--ytx-b:#c68b7c;--ytx-accent:#8a5a4b;--ytx-card:rgba(255,255,255,.78)}
.ytx-green{--ytx-bg:#e6f1ea;--ytx-ink:#0d3b2a;--ytx-a:#b9d9c6;--ytx-b:#f1d489;--ytx-accent:#0f5a43}
.ytx-navy{--ytx-bg:#0a2a5c;--ytx-ink:#fff;--ytx-a:#15428a;--ytx-b:#b8891a;--ytx-accent:#f4b43c;--ytx-card:rgba(255,255,255,.1)}
.ytx-photo{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.12}
.ytx-blob{position:absolute;border-radius:50%;pointer-events:none}
.ytx-blob-a{width:620px;height:620px;left:-220px;top:-260px;background:var(--ytx-a);opacity:.9}
.ytx-blob-b{width:560px;height:560px;right:-190px;bottom:-280px;background:var(--ytx-b);opacity:.85}
.ytx-wave{position:absolute;left:0;right:0;bottom:40px;width:100%;height:150px;pointer-events:none}
.ytx-inner{position:relative;z-index:2}
.ytx-poster{text-align:center;padding:10px 0}
.ytx-year{display:inline-block;font-family:'Playfair Display',serif;text-transform:uppercase;letter-spacing:.12em;font-size:clamp(1.1rem,2.4vw,1.7rem);padding-bottom:6px;border-bottom:4px solid var(--ytx-accent)}
.ytx-title{font-family:'Playfair Display',serif;font-weight:800;text-transform:uppercase;letter-spacing:.03em;line-height:1.02;font-size:clamp(2.8rem,8vw,5.6rem);margin:18px 0 14px;color:var(--ytx-ink);padding-bottom:10px;border-bottom:6px solid var(--ytx-ink)}
.ytx-ref{display:inline-block;background:var(--ytx-accent);color:#fff;font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:.95rem;padding:10px 24px;border-radius:99px;box-shadow:0 10px 22px rgba(0,0,0,.18)}
.ytx-navy .ytx-ref{color:#0a2a5c}
.ytx-quote{margin:0 0 18px;background:var(--ytx-card);backdrop-filter:blur(8px);border-left:6px solid var(--ytx-accent);border-radius:18px;padding:26px 28px;box-shadow:0 14px 34px rgba(40,25,15,.14)}
.ytx-quote>i{font-size:1.6rem;color:var(--ytx-accent);opacity:.85}
.ytx-quote p{font-family:'Playfair Display',serif;font-style:italic;font-size:clamp(1.15rem,2.2vw,1.55rem);line-height:1.5;margin:8px 0 10px}
.ytx-quote cite{font-style:normal;font-weight:800;letter-spacing:.1em;text-transform:uppercase;font-size:.82rem;color:var(--ytx-accent)}
.ytx-message{font-size:1.02rem;line-height:1.7;opacity:.92;margin:0 0 20px}
.ytx-btn{background:var(--ytx-accent);color:#fff;border-color:var(--ytx-accent)}
.ytx-btn:hover{color:#fff;filter:brightness(1.1)}
.ytx-navy .ytx-btn,.ytx-navy .ytx-btn:hover{color:#0a2a5c}
.ytx-points{margin-top:56px}
.ytx-card{position:relative;height:100%;text-align:center;background:var(--ytx-card);backdrop-filter:blur(8px);border-radius:22px;padding:34px 20px 24px;box-shadow:0 12px 30px rgba(40,25,15,.14);transition:.3s;overflow:hidden}
.ytx-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(40,25,15,.2)}
.ytx-num{position:absolute;top:8px;right:16px;font-family:'Playfair Display',serif;font-weight:800;font-size:2.4rem;opacity:.12}
.ytx-ic{width:62px;height:62px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;background:var(--ytx-accent);margin-bottom:14px;box-shadow:0 8px 18px rgba(0,0,0,.2)}
.ytx-navy .ytx-ic{color:#0a2a5c}
.ytx-card h5{font-family:'Playfair Display',serif;font-weight:700;font-size:1.2rem;margin-bottom:6px;color:var(--ytx-ink)}
.ytx-card p{margin:0;font-size:.9rem;opacity:.85;color:var(--ytx-ink)}
.ytx-progress{max-width:620px;margin:44px auto 0;background:var(--ytx-card);border-radius:16px;padding:16px 20px;box-shadow:0 8px 22px rgba(40,25,15,.12)}
.ytx-progress-top{display:flex;justify-content:space-between;font-size:.86rem;font-weight:700;margin-bottom:8px}
.ytx-bar{height:12px;background:rgba(0,0,0,.1);border-radius:99px;overflow:hidden}
.ytx-bar span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--ytx-accent),var(--ytx-b))}
body.dark .ytx:not(.ytx-navy){--ytx-bg:#14283d;--ytx-ink:#f1e8de;--ytx-a:#27405a;--ytx-b:#6b4136;--ytx-card:rgba(255,255,255,.08)}
@media(max-width:991.98px){.ytx{padding:64px 0 60px}.ytx-wave{display:none}.ytx-blob-a{width:380px;height:380px;left:-160px;top:-170px}.ytx-blob-b{width:360px;height:360px;right:-150px;bottom:-180px}.ytx-points{margin-top:40px}}
