/* VTY's short lockup stays readable without competing with the opening. */
.wordmark {flex-shrink:0;letter-spacing:0;}
.wordmark .vty-mark {font-size:30px;letter-spacing:.025em;}
.wordmark>span {font:500 9px/1.3 var(--sans);letter-spacing:.045em;margin-top:5px;text-transform:none;white-space:nowrap;}
.site-footer>.wordmark {align-items:flex-start;}

/* A single soft zoom of the entire decision card, with the same easing out. */
#participar .participation-grid {position:relative;isolation:isolate;}
#participar .attendance-card {position:relative;transform-origin:center;transition:transform 650ms cubic-bezier(.2,.75,.2,1),box-shadow 650ms ease,border-color 650ms ease;}
@media(hover:hover) and (pointer:fine) and (min-width:801px) {
 #participar .attendance-card:hover,#participar .attendance-card:focus-within {transform:translateY(-8px) scale(1.055);z-index:2;box-shadow:0 28px 65px #38271938;}
}

/* The month is the visual invitation; the three numbered steps explain it. */
#programa .calendar-heading {position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,#743b31,#a36745);border:0;padding:26px 30px;color:#fff7eb;}
#programa .calendar-heading:before {content:"";position:absolute;inset:-90% -30%;z-index:-1;background:linear-gradient(110deg,transparent 35%,#f9e0aa26 50%,transparent 65%);opacity:1;transform:translateX(-20%);animation:calendarLight38 9s ease-in-out infinite alternate;}
#programa .calendar-heading>div>span {color:#eed0af;font:600 10px/1.4 var(--sans);letter-spacing:.13em;}
#programa .calendar-heading h3 {color:#fff8ee;font-size:clamp(36px,4vw,52px);margin:9px 0;}
#programa .calendar-heading h3 em {color:#f0d2ad;font-size:.55em;}
#programa .calendar-heading p {color:#f3dfca;font-size:13px;}
#programa .calendar-heading .calendar-month-art {width:88px;height:94px;background:#fff8eb;box-shadow:0 7px 18px #3f1f2640;animation:calendarFloat38 5s ease-in-out infinite alternate;flex-shrink:0;}
#programa .calendar-month-art>span {color:#956044;}
#programa .calendar-month-art>strong {color:#743b31;font-size:53px;}
#programa .calendar-how {grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px;background:#fbf6ed;}
#programa .calendar-how li {position:relative;display:flex;align-items:center;gap:12px;padding:15px 12px;background:#fffdf8;border:1px solid #e2d2bd;border-radius:10px;font:400 12px/1.5 var(--sans);color:#7e6653;}
#programa .calendar-how li>b {width:34px;height:34px;min-width:34px;background:#864a36;color:#fff8ed;font:700 15px/1 var(--sans);}
#programa .calendar-how li:nth-child(2)>b {background:#9b7144;}
#programa .calendar-how li:nth-child(3)>b {background:#4d675a;}
#programa .calendar-how strong {font-size:13px;line-height:1.4;margin:0 0 3px;color:#5d3d2e;}
#coleccion .sizes {flex-wrap:wrap;}
#coleccion .sizes button {min-width:44px;padding-inline:9px;}
#coleccion #merch-image {transition:left .24s ease;}

/* Sponsors are compact supporting mentions. */
#cafe.coffee-promotions {background:#fff8dc;border-block:1px solid #ead9aa;}
#cafe.coffee-promotions .coffee-inner {display:grid;grid-template-columns:minmax(0,1fr) 168px;gap:14px 28px;max-width:1100px;padding:24px 0;align-items:center;}
#cafe.coffee-promotions .coffee-copy {display:block;grid-column:1;grid-row:1;min-width:0;}
#cafe .coffee-sponsor-lockup {display:flex;align-items:center;gap:10px;margin-bottom:9px;}
#cafe .coffee-brand-logo {position:static;width:33px;height:31px;object-fit:contain;margin:0;}
#cafe .coffee-sponsor {max-width:none;border:0;padding:0;margin:0;font:600 8px/1.5 var(--sans);letter-spacing:.08em;}
#cafe.coffee-promotions .coffee-copy h2,#cafe.coffee-promotions .coffee-copy h2 em {display:inline;font:500 25px/1.2 var(--serif);color:#322b20;}
#cafe.coffee-promotions .coffee-copy h2 em {margin-left:5px;}
#cafe.coffee-promotions .coffee-invitation {font:500 13px/1.5 var(--sans);margin:7px 0 0;}
#cafe.coffee-promotions .coffee-menu {font:400 11px/1.5 var(--sans);margin:4px 0 0;color:#746344;max-width:none;}
#cafe.coffee-promotions .coffee-stage {grid-column:2;grid-row:1;max-width:168px;width:100%;padding:0;margin:0;justify-self:end;}
#cafe .coffee-product-image {width:100%;height:auto;border:0;border-radius:6px;box-shadow:none;transform:none;}
#cafe .coffee-promo-grid {grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap;}
#cafe .coffee-promo-grid>a {display:flex;align-items:center;justify-content:space-between;flex:1;gap:20px;min-height:53px;padding:10px 14px;border:1px solid #ddc790;border-radius:7px;background:#fffdf570;color:#483b22;}
#cafe .coffee-promo-grid strong {display:block;font:600 13px/1.3 var(--sans);}
#cafe .coffee-promo-grid small {display:block;font:400 10px/1.4 var(--sans);margin-top:3px;color:#7c6a48;}
#cafe .coffee-promo-grid svg {width:17px;height:17px;flex-shrink:0;}
#cafe .coffee-promo-grid>a:hover {background:#fffdf5;border-color:#b19140;}
#cafe.coffee-promotions .coffee-note {font-size:10px;margin:0;}
#centro-victoria .cv-anniversary-inner {grid-template-columns:56px minmax(0,1fr) auto;gap:18px;padding:22px 0 10px;}
#centro-victoria .cv-anniversary-mark {width:56px;height:60px;}
#centro-victoria .cv-anniversary-mark strong {font-size:30px;}
#centro-victoria .cv-anniversary-mark span {font-size:8px;}
#centro-victoria .cv-anniversary-copy .eyebrow {font-size:9px;margin-bottom:4px;}
#centro-victoria .cv-anniversary-copy h2 {font-size:23px;}
#centro-victoria .cv-anniversary-copy>p:last-child {font-size:12px;margin-top:6px;}
#centro-victoria .cv-anniversary-inner>.button {font-size:12px;min-height:44px;padding:10px 13px;gap:14px;}
#centro-victoria .cv-memories {padding-bottom:18px;}
#centro-victoria .cv-memory-heading>p {font-size:11px;}
#centro-victoria .cv-memory-controls button {width:44px;height:44px;font-size:17px;}
#centro-victoria .cv-memory-rail {--cv-photo-height:118px;gap:13px;padding-top:8px;padding-bottom:13px;}
#centro-victoria .cv-memory {border-width:4px;border-bottom-width:9px;}
#centro-victoria .cv-memory-number {font-size:9px;padding:2px 4px;bottom:5px;}
#centro-victoria .cv-memory-open {font-size:11px;padding:2px 4px;bottom:5px;}
@keyframes calendarLight38 {from{transform:translateX(-20%)}to{transform:translateX(25%)}}
@keyframes calendarFloat38 {from{transform:translateY(0) rotate(3deg)}to{transform:translateY(-5px) rotate(-2deg)}}
@media(max-width:800px) {
 #programa .calendar-heading {padding:23px;gap:18px;}
 #programa .calendar-how {grid-template-columns:1fr;padding:16px;gap:9px;}
 #programa .calendar-how li {padding:11px 13px;}
 #centro-victoria .cv-anniversary-inner {grid-template-columns:56px minmax(0,1fr);gap:12px 16px;}
 #centro-victoria .cv-anniversary-inner>.button {grid-column:2;justify-self:start;}
}
@media(max-width:600px) {
 .wordmark .vty-mark {font-size:25px;}
 .wordmark>span {font-size:8px;letter-spacing:.02em;}
 #programa .calendar-heading {padding:22px 18px;}
 #programa .calendar-heading h3 {font-size:35px;}
 #programa .calendar-heading p {font-size:12px;max-width:190px;}
 #programa .calendar-heading .calendar-month-art {width:68px;height:79px;}
 #programa .calendar-month-art>strong {font-size:42px;}
 #cafe.coffee-promotions .coffee-inner {grid-template-columns:minmax(0,1fr) 92px;gap:13px 12px;padding:22px 0;}
 #cafe.coffee-promotions .coffee-copy h2,#cafe.coffee-promotions .coffee-copy h2 em {font-size:23px;}
 #cafe.coffee-promotions .coffee-stage {grid-column:2;grid-row:1;max-width:92px;align-self:center;}
 #cafe.coffee-promotions .coffee-menu {font-size:10px;}
 #cafe .coffee-sponsor {font-size:7px;max-width:106px;}
 #cafe .coffee-promo-grid {gap:7px;}
 #cafe .coffee-promo-grid>a {padding:9px 10px;gap:8px;min-width:calc(50% - 7px);}
 #cafe .coffee-promo-grid>a:last-child {flex-basis:100%;}
 #centro-victoria .cv-anniversary-copy h2 {font-size:21px;}
 #centro-victoria .cv-memory-rail {--cv-photo-height:105px;}
 #centro-victoria .cv-anniversary-inner>.button {grid-column:1/-1;justify-self:start;}
}
@media(prefers-reduced-motion:reduce) {
 #programa .calendar-heading:before,#programa .calendar-month-art {animation:none;}
 #participar .attendance-card,#coleccion #merch-image {transition:none;}
 #participar .attendance-card:hover,#participar .attendance-card:focus-within {transform:none;}
}
