.agenda{padding-bottom:70px}.preview-note{border-block:1px solid var(--line);padding:12px 0;font-size:13px;margin-top:12px;line-height:1.5}.agenda-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;padding:65px 0 50px;align-items:center}.agenda h1{font-size:clamp(58px,7vw,94px);line-height:.95;margin:15px 0}.intro-text{max-width:380px}.intro-text p{font-size:18px;line-height:1.6}.calendar-panel{scroll-margin-top:24px;border:1px solid var(--ink);background:#ffffff18}.month-toolbar{display:flex;justify-content:space-between;align-items:center;padding:28px}.month-toolbar h2{font-size:44px;margin:8px 0 0}.month-arrows{display:flex;gap:10px}.month-arrows button{background:none;border:1px solid var(--ink);width:46px;height:46px;font-size:24px;cursor:pointer}.legend{display:flex;flex-wrap:wrap;gap:18px;padding:0 28px 22px;font-size:14px}.legend span{display:flex;align-items:center;gap:7px}.legend i{display:inline-block;width:12px;height:12px}.confirmed{background:#4b682e}.pending{background:#efcb28;border:1px dashed #242520}.weekdays,.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.weekdays{background:var(--ink);color:var(--paper);text-align:center;padding:12px 0;font-size:14px}.day,.blank{min-height:115px;border:0;border-right:1px solid #24252038;border-bottom:1px solid #24252038}.day{font:inherit;text-align:left;padding:12px;background:transparent;cursor:pointer;display:flex;flex-direction:column;gap:6px;color:var(--ink);min-width:0}.day:hover,.day:focus-visible{background:#ffffff55;outline:2px solid var(--ink);outline-offset:-3px}.day:disabled{opacity:.4;cursor:default}.day-number{font-size:17px;font-weight:600}.day-hint{font-size:12px;margin-top:auto;opacity:.58}.day-event{display:block;background:#efcb2855;border-left:3px solid #a17905;padding:5px;font-size:12px;line-height:1.35;overflow-wrap:anywhere}.day-event small{display:block;font-size:11px}.blank{background:#24252005}.calendar-foot{font-size:14px;line-height:1.6;margin:18px 24px}#feedback{margin:0 24px 20px;font-weight:600}.upcoming{padding:75px 0;display:grid;grid-template-columns:1fr 1.2fr;gap:60px}.agenda h2{line-height:1.03}.upcoming h2,.how h2{font-size:48px}.upcoming-list article{border-top:1px solid var(--ink);padding:20px 0}.upcoming-list article>span{font-size:12px;letter-spacing:.1em}.upcoming-list h3{font:32px var(--serif);margin:10px 0}.upcoming-list small{border:1px solid var(--ink);padding:5px 9px;display:inline-block;font-size:13px}.how{border-top:1px solid var(--ink);padding:35px 0 50px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:30px}.steps b{font:36px var(--serif)}.steps h3{font-size:18px}.steps p{line-height:1.6}.demo-explain{font-size:14px;opacity:.8;margin-top:25px}dialog{border:1px solid var(--ink);background:var(--paper);color:var(--ink);width:min(610px,calc(100% - 24px));max-height:90dvh;padding:32px;box-sizing:border-box}dialog::backdrop{background:#0009}dialog h2{font:40px/1.05 var(--serif);margin:10px 20px 12px 0}.close-dialog{position:absolute;top:10px;right:12px;border:0;background:none;font-size:32px;cursor:pointer}.chosen-date{font-weight:600;border-bottom:1px solid var(--line);padding-bottom:14px}form{display:grid;gap:14px}form label{display:grid;gap:6px;font-size:14px}form input,form textarea{box-sizing:border-box;min-width:0;width:100%;background:#fff7;border:1px solid #24252077;padding:10px;font:16px inherit;color:var(--ink);border-radius:0}form input,form textarea{font-size:16px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check{display:flex;align-items:flex-start;line-height:1.4}.check input{width:18px;height:18px;flex-shrink:0;margin:1px 5px 0 0}.privacy{font-size:13px;line-height:1.5;margin:0}.submit{justify-content:space-between;cursor:pointer}.event-existing{font-size:14px;padding:10px;background:#efcb2833;margin-bottom:16px}
@media(max-width:650px){.agenda-intro{grid-template-columns:1fr;gap:10px;padding:35px 0}.intro-text p{font-size:16px}.month-toolbar{padding:18px 12px}.month-toolbar h2{font-size:32px}.month-toolbar .eyebrow{font-size:11px}.legend{padding:0 12px 15px;gap:10px;font-size:12px}.day,.blank{min-height:88px}.day{padding:7px 3px}.day-number{font-size:14px}.day-hint{font-size:10px}.day-event{padding:3px 2px;font-size:10px;border-left-width:2px}.day-event small{font-size:9px}.upcoming{grid-template-columns:1fr;gap:20px;padding:40px 0}.steps{grid-template-columns:1fr;gap:15px}.steps h3{margin:8px 0}.steps p{margin:8px 0}.form-pair{grid-template-columns:1fr}dialog{padding:24px 18px}.calendar-foot{margin:16px 12px;font-size:13px}}

/* COFI palette and label geometry, with a quiet reading surface for dates. */
.preview-note{border:0;border-left:4px solid var(--ink);background:#ffffff18;padding:10px 14px;margin-top:18px}
.agenda-intro{gap:50px;padding-top:65px;padding-bottom:60px}.agenda-intro h1{position:relative;font-size:clamp(55px,6.5vw,88px);line-height:1.1}.cofi-highlight{background:linear-gradient(transparent 60%,var(--yellow) 60% 94%,transparent 94%);padding-right:12px}.intro-text{position:relative;padding-top:45px}.intro-text>.text-link{display:inline-flex;background:var(--coral);padding:10px 16px;border:0;transform:rotate(-2deg);margin-top:12px}.agenda-stamp{position:absolute;right:0;top:-65px;display:grid;place-content:center;width:116px;aspect-ratio:1;text-align:center;background:var(--green);font:25px/.95 var(--serif);transform:rotate(10deg);clip-path:polygon(50% 0%,59% 10%,70% 4%,74% 18%,88% 16%,87% 31%,99% 36%,91% 48%,100% 60%,85% 65%,85% 80%,71% 79%,65% 95%,53% 88%,43% 100%,35% 87%,21% 92%,20% 77%,6% 75%,12% 60%,0% 51%,12% 41%,5% 27%,21% 25%,23% 10%,37% 15%)}
.calendar-panel{border:1px solid var(--ink);background:#ffffff22;box-shadow:7px 7px 0 #24252014}.month-toolbar{background:transparent;padding:30px;border-bottom:1px solid #24252044}.month-toolbar h2{font-size:50px}.month-arrows button{background:var(--paper);box-shadow:2px 2px 0 var(--ink)}.month-arrows button:hover{background:var(--yellow);transform:translateY(-2px)}.legend{padding:18px 28px;margin:0}.weekdays{background:var(--ink)}.weekdays span:nth-child(6),.weekdays span:nth-child(7){color:var(--coral)}.days>.day:nth-child(7n),.days>.day:nth-child(7n-1){background:#f1846c20}.day:hover,.day:focus-visible,.days>.day:nth-child(7n):hover,.days>.day:nth-child(7n-1):hover{background:#efcb2866}.day-hint{opacity:1;font-size:20px;color:#544b41;align-self:flex-end}.day-event{background:var(--yellow);border-left:3px solid var(--ink);color:var(--ink)}#feedback:not(:empty){padding:15px;background:var(--green);border-left:4px solid var(--ink)}
.upcoming{align-items:center;gap:45px}.upcoming-list{display:grid;grid-template-columns:1fr 1fr;gap:18px}.upcoming-list article{padding:25px 22px 22px;border:0;position:relative;background:var(--green)}.upcoming-list article:nth-child(2){background:var(--coral);margin-top:28px;margin-bottom:-28px}.upcoming-list article>span{font-size:12px;line-height:1.5;display:block;min-height:36px}.upcoming-list h3{font-size:34px;line-height:1.08}.upcoming-list p{line-height:1.5}.upcoming-list small{background:#ffffff36;margin-top:10px}.how{margin-top:30px;border-top:0;padding-top:32px}.how>.eyebrow{display:inline-block;background:var(--yellow);padding:8px 12px}.steps article{border-top:3px solid var(--green);padding-top:18px}.steps article:nth-child(2){border-color:var(--yellow)}.steps article:nth-child(3){border-color:var(--coral)}.steps b{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;background:var(--green);font-size:30px}.steps article:nth-child(2) b{background:var(--yellow)}.steps article:nth-child(3) b{background:var(--coral)}
dialog{border-top:9px solid var(--coral)}dialog .eyebrow{color:var(--ink)}.chosen-date{display:inline-block;background:var(--yellow);padding:7px 10px;border:0}form input:focus,form textarea:focus{outline:2px solid var(--ink);outline-offset:2px}.submit{background:var(--green)!important;color:var(--ink)!important;border:1px solid var(--ink)}.submit:hover{background:var(--yellow)!important}.check input{accent-color:#242520}
@media(max-width:950px){.upcoming{grid-template-columns:1fr}.upcoming-list{padding-bottom:28px}.agenda-stamp{width:95px;font-size:22px;top:-50px}}
@media(max-width:650px){.agenda-intro{padding:28px 0 32px;gap:0}.agenda-intro h1{font-size:clamp(48px,10vw,64px)}.intro-text{padding-top:5px;padding-right:0;max-width:none}.intro-text p{max-width:78%}.agenda-stamp{top:6px;right:-8px;width:78px;font-size:19px}.intro-text>.text-link{margin-top:5px}.month-toolbar{padding:20px 14px}.month-toolbar h2{font-size:34px}.legend{padding:14px 12px}.month-arrows{gap:7px}.month-arrows button{width:37px;height:37px}.calendar-panel{box-shadow:4px 4px 0 #24252014}.upcoming-list{gap:12px}.upcoming-list article{padding:18px 13px}.upcoming-list h3{font-size:27px}.upcoming-list p{font-size:14px}.upcoming-list small{font-size:12px;padding:5px 7px}.upcoming h2,.how h2{font-size:42px}.day-hint{font-size:16px}.how{margin-top:0}}

/* A quieter kraft calendar with just two additional COFI symbols. */
.month-toolbar .eyebrow{display:inline-block;background:var(--yellow);padding:5px 8px}.preview-note{border-left-color:var(--coral)}
.upcoming-heading{position:relative;padding-right:92px}.upcoming-heading .agenda-sun{position:absolute;right:0;top:50px;width:82px;z-index:0;--shape:var(--coral);pointer-events:none}.how{position:relative}.agenda-arch{display:block;width:105px;height:auto;position:absolute;right:12px;top:25px;filter:grayscale(1) brightness(.38);pointer-events:none}.how>h2{padding-right:130px}
@media(max-width:650px){.upcoming-heading{padding-right:85px}.upcoming-heading .agenda-sun{width:66px;right:5px;top:46px}.agenda-arch{width:70px;right:0;top:73px}.how>h2{padding-right:80px}}

.day-event.event-confirmed,.event-existing.event-confirmed{background:var(--green);border-left:3px solid #42552d}.upcoming-list .official-status{background:var(--green);font-weight:600}

.bot-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.submit:disabled{opacity:.6;cursor:wait}#formStatus:not(:empty){padding:12px;border-left:3px solid var(--coral)}

/* Eventos confirmados cargados automáticamente desde COFI Reservas */
.upcoming-list article:nth-child(3n){background:var(--yellow)}
.upcoming-list article:nth-child(4n){background:var(--green)}
