
:root{--wine:#427348;--rose:#427348;--teal:#2b8d8b;--ink:#3c3240;--muted:#736a74;--line:#eadde6;--soft:#faf6f9;--shadow:0 10px 28px rgba(66,115,71,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.6;background:#fff}a{color:var(--wine);text-decoration:none}.container{width:min(1180px,92%);margin:auto}
.topbar{background:#427348;color:#fff;font-size:.88rem}.topbar .container{display:flex;justify-content:space-between;padding:8px 0}.site-header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line)}.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between}.logo img{width:250px}.menu{display:flex;gap:16px;align-items:center}.menu a{font-weight:700}.menu .cta,.button.primary{background:var(--wine);color:#fff;padding:.75rem 1rem;border-radius:9px}.menu-button{display:none}
.hero{padding:62px 0 44px;background:radial-gradient(circle at 86% 0,#f3e4ee,transparent 30%),linear-gradient(#fdf9fc,#fff)}.hero h1{font-size:clamp(2.2rem,5vw,4rem);line-height:1.08;margin:.4rem 0 1rem}.hero p{max-width:930px;color:var(--muted);font-size:1.1rem}.eyebrow{font-weight:900;color:var(--rose);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.button{display:inline-block;padding:.8rem 1.05rem;border-radius:9px;font-weight:800}.button.secondary{border:2px solid var(--wine)}
.notice{padding:24px 0}.notice-box{background:#fff8e8;border-left:5px solid #d7a128;border-radius:0 13px 13px 0;padding:18px 21px}.toolbar{position:sticky;top:82px;z-index:12;background:rgba(255,255,255,.97);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.toolbar-inner{padding:12px 0;display:flex;gap:8px;flex-wrap:wrap}.tab{border:1px solid var(--line);background:#fff;padding:.57rem .8rem;border-radius:999px;font-weight:800;cursor:pointer}.tab.active,.tab:hover{background:var(--wine);border-color:var(--wine);color:#fff}
.agenda{padding:40px 0 65px}.year-section{scroll-margin-top:150px;margin-bottom:52px}.year-title{font-size:2rem;color:var(--wine);border-bottom:3px solid var(--rose);padding-bottom:8px}.region-title{font-size:1.2rem;margin:27px 0 11px}.event-row{display:grid;grid-template-columns:minmax(300px,1.5fr) minmax(165px,.75fr) minmax(210px,.95fr) 120px;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-left:6px solid var(--rose);border-radius:11px;padding:17px 19px;margin-bottom:10px;box-shadow:var(--shadow)}.event-row.international{border-left-color:var(--teal)}.event-row.pending{border-left-color:#d4a126;border-style:dashed}.event-name{font-weight:900;color:var(--wine)}.event-focus{font-size:.82rem;color:var(--muted)}.event-cell{color:var(--muted)}.event-cell strong{display:block;color:var(--ink);font-size:.78rem;text-transform:uppercase}.event-link{text-align:right}.event-link a{display:inline-block;background:var(--soft);padding:.55rem .7rem;border-radius:8px;font-weight:800;font-size:.86rem}.empty{padding:17px;background:var(--soft);border-radius:10px;color:var(--muted)}.hidden{display:none!important}
.submit{background:linear-gradient(135deg,var(--wine),#427348);color:#fff;border-radius:20px;padding:30px;display:flex;justify-content:space-between;align-items:center;gap:25px}.submit .button{background:#fff;color:var(--wine)}.site-footer{background:#427348;color:#f3e7ee;padding:44px 0 22px}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:35px}.footer-logo{width:220px;filter:brightness(0) invert(1)}.site-footer a{color:#fff}.footer-links{display:grid;gap:8px}.footer-bottom{border-top:1px solid #754e6b;margin-top:30px;padding-top:18px;font-size:.88rem}.back-top{position:fixed;right:18px;bottom:18px;width:42px;height:42px;border:0;border-radius:50%;background:var(--wine);color:#fff}
@media(max-width:900px){.event-row{grid-template-columns:1fr 1fr}.menu{display:none}.menu.open{display:flex;position:absolute;left:0;right:0;top:82px;background:#fff;padding:18px;flex-direction:column}.menu-button{display:block}.footer-grid{grid-template-columns:1fr}}
@media(max-width:580px){.event-row{grid-template-columns:1fr}.submit{flex-direction:column;align-items:flex-start}}
