.occasion-field{display:flex;align-items:center;gap:22px;margin:20px 0 28px}.occasion-label{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#62675d)}.occasion-options{display:flex;gap:4px;border:1px solid #daddd4;background:#f0f1eb;padding:4px;border-radius:14px}.occasion-options button{min-height:42px;border:0;border-radius:10px;background:transparent;color:#5b6256;padding:10px 23px;font:inherit;font-size:14px;cursor:pointer;transition:background .18s,color .18s,box-shadow .18s}.occasion-options button[aria-pressed=true]{background:#203c32;color:#fff;box-shadow:0 2px 7px #203c3220}.occasion-options button:hover:not([aria-pressed=true]){background:#e5e8df;color:#203c32}.occasion-options button:focus-visible{outline:2px solid #203c32;outline-offset:3px}.season-hint{font-size:13px;line-height:1.6;color:#62675d;margin:-12px 0 24px;max-width:680px}.season-badge{display:flex;align-items:center;gap:7px;margin:13px 0 5px;font-size:12px;line-height:1.5;color:#476046;font-weight:600}.season-badge svg{flex-shrink:0}.price-formula{font-size:12px;color:#62675d;line-height:1.6;margin:6px 0 14px}.season-gap{font-size:13px;line-height:1.7;color:#62675d;max-width:660px;margin:22px auto 0}.event-fixed-note{font-size:13px;line-height:1.6;background:#eef2e9;color:#37533d;padding:12px 15px;border-radius:10px;margin:12px 0}.seasonal-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px}
@media(max-width:600px){.occasion-field{display:block;margin:16px 0 24px}.occasion-label{display:block;margin-bottom:10px}.occasion-options{width:100%}.occasion-options button{flex:1;min-width:0;padding:10px 7px;font-size:13px}.season-hint{font-size:12px}.season-badge{font-size:11px}}
@media(prefers-reduced-motion:reduce){.occasion-options button{transition:none}}
