/* Isolated visual draft. Original public release remains unchanged. */
.photo-hero{padding:70px 0 66px;background:linear-gradient(90deg,rgba(12,35,27,.76),rgba(12,35,27,.25)),url('october-photos/october-img_7250.webp') center 29%/cover;position:relative;color:var(--paper)}
.photo-hero .eyebrow{color:#ecd4ac;font-size:11px;letter-spacing:.21em}.photo-hero h1{color:var(--paper);font-size:clamp(42px,5.4vw,68px);margin:17px 0 18px;max-width:100%;text-shadow:0 2px 10px #14271c44}.photo-hero .lead{font-size:18px;margin:0;max-width:650px;color:#fffdf0}.calendar-overview{padding:38px 0 48px;background:#f6f2e9}.calendar-intro{display:flex;justify-content:space-between;gap:30px;align-items:center}.calendar-intro h2{font-size:34px;margin:10px 0}.calendar-intro p{font-size:14px;margin:0;color:#596357}.calendar-intro>.btn{font-size:13px;padding:13px 20px;flex-shrink:0;border-radius:8px}.calendar-intro .eyebrow{font-size:10px;letter-spacing:.16em;color:#80613d}.category-tabs{display:flex;gap:9px;margin:26px 0 24px;flex-wrap:wrap}.category-tabs button{font:700 12px/1.5 Arial,sans-serif;padding:12px 19px;border:1px solid #d8d3c6;border-radius:8px;color:#465344;background:#fffdf8;cursor:pointer}.category-tabs button[aria-pressed=true]{background:var(--forest);border-color:var(--forest);color:white}.category-tabs button:hover{border-color:var(--forest)}.calendar-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(350px,.8fr);gap:30px;align-items:start}.upcoming-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 17px}.upcoming-heading h3{font:24px/1.2 Georgia,serif;color:var(--deep);margin:0}.upcoming-heading>span{font-size:10px;white-space:nowrap;text-transform:uppercase;letter-spacing:.05em;color:#697166}.upcoming-event{display:grid;grid-template-columns:66px minmax(0,1fr) 18px;align-items:center;gap:18px;padding:20px 17px;margin:0 0 12px;border:1px solid #dcd8cd;border-radius:12px;background:var(--paper);text-decoration:none;transition:border-color .15s,box-shadow .15s}.upcoming-event:hover{border-color:#a58a61;box-shadow:0 5px 18px #1831260b}.upcoming-date{background:#eae5da;padding:8px 4px;border-radius:7px;text-align:center;color:var(--deep)}.upcoming-date>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.upcoming-date strong{display:block;font:34px/1.15 Georgia,serif}.upcoming-copy{display:grid;gap:5px}.upcoming-copy>strong{font:19px/1.2 Georgia,serif;color:var(--deep)}.upcoming-copy>span{font-size:12px;line-height:1.5;color:#5b6459}.upcoming-copy .upcoming-time{font-size:11px;color:#3b4b3e}.upcoming-arrow{font-size:22px;color:var(--forest)}.gathering-note{display:flex;gap:14px;padding:23px 10px 18px;margin-top:6px}.note-icon{width:29px;height:29px;border:1px solid #c9b993;border-radius:50%;text-align:center;color:#8e6d3e;flex-shrink:0}.gathering-note strong{font:20px/1.25 Georgia,serif;color:var(--forest)}.gathering-note p{font-size:12px;line-height:1.7;margin:8px 0}.gathering-note a{font-size:12px;text-decoration-thickness:1px;text-underline-offset:4px}.review-note{font-size:11px;color:#66705f;margin:10px 10px 0}.upcoming-empty{background:var(--paper);border:1px dashed #b9ad97;border-radius:12px;padding:28px;font-size:14px}.compact-calendar{margin:0;padding:22px;border-radius:14px;box-shadow:0 6px 24px #18312608}.compact-calendar .month-toolbar h2{font-size:25px}.compact-calendar .month-buttons button{width:32px;height:32px;font-size:17px}.compact-calendar .calendar-filters{gap:10px;margin:14px 0;padding-top:12px}.compact-calendar .calendar-filters label{font-size:10px}.compact-calendar .calendar-filters select{font-size:11px;padding:7px 18px 7px 7px;width:100%}.compact-calendar .calendar-filters>div{flex:1;min-width:100px}.compact-calendar #calendar-kind{max-width:190px}.compact-calendar .filter-reset{font-size:10px;padding:7px 9px}.compact-calendar .month-table th{font-size:9px;padding:9px 0}.compact-calendar .month-table td{height:44px;padding:4px 2px;text-align:center;border:0;border-bottom:1px solid #e8e4da}.compact-calendar .outside-month{background:transparent}.compact-calendar .day-number{font-size:12px;font-weight:400;margin-bottom:1px}.compact-calendar .calendar-day-event{font-size:9px;min-height:24px;padding:4px 1px;text-align:center;border-radius:4px}.compact-calendar .grid-event-name{display:none}.compact-calendar .calendar-legend{font-size:10px!important;margin-top:12px!important;gap:5px}.calendar-section{background:var(--paper);padding:46px 0}.section-heading h2{font-size:32px}.section-heading>p{font-size:13px}.calendar-card{box-shadow:none}.calendar-hero{scroll-margin-top:90px}
@media(max-width:900px){.calendar-layout{grid-template-columns:minmax(0,1fr) minmax(315px,.9fr);gap:20px}.compact-calendar{padding:17px}.upcoming-heading{align-items:start;flex-direction:column;gap:6px}.upcoming-event{gap:12px;padding:16px 12px}.upcoming-copy>strong{font-size:18px}}
@media(max-width:700px){.photo-hero{padding:47px 0;background-size:cover,auto 400%;background-position:center,center 22%}.photo-hero h1{font-size:43px}.photo-hero .lead{font-size:16px;max-width:340px}.calendar-overview{padding:28px 0 36px}.calendar-intro{align-items:start;gap:16px;flex-direction:column}.calendar-intro h2{font-size:30px}.calendar-intro p{font-size:13px}.category-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:22px 0}.category-tabs button{padding:11px 7px;font-size:11px;min-height:44px}.calendar-layout{display:flex;flex-direction:column;gap:24px}.upcoming-panel,.compact-calendar{width:100%;min-width:0}.compact-calendar{margin:0;padding:20px 16px;order:-1}.compact-calendar .month-table td{height:47px}.compact-calendar .calendar-day-event{min-height:44px;font-size:10px}.compact-calendar .calendar-filters>div{width:auto}.compact-calendar .month-toolbar h2{font-size:26px}.upcoming-heading{flex-direction:row;align-items:center}.upcoming-heading h3{font-size:22px}.upcoming-heading>span{font-size:9px}.upcoming-event{grid-template-columns:59px minmax(0,1fr) 15px}.upcoming-copy>strong{font-size:18px}.gathering-note{padding:20px 0 12px}.review-note{margin-left:0}.calendar-section{padding:34px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.upcoming-event{transition:none}}
/* Categories are chosen using the buttons above; keep one clear filter control here. */
.compact-calendar .calendar-filters>div:nth-child(2){display:none}.compact-calendar .filter-reset{align-self:end;min-height:34px;flex:0 0 auto;white-space:nowrap}.compact-calendar .calendar-filters>div:first-child{min-width:150px}.compact-calendar .calendar-filters select{min-height:34px}
