/* Calendar content only — header, menus and footer remain untouched. */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');

body#calendar #container-outer{--wine:#510b1b;--wine2:#741a31;--forest:#1e2922;--cream:#f3eee5;--paper:#fbfaf7;--ink:#20231f;--muted:#686d67;--line:rgba(32,35,31,.15);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;width:100%!important;max-width:none!important;margin:0!important;background:linear-gradient(180deg,var(--cream),rgba(243,238,229,.58) 360px,var(--paper) 650px)!important;color:var(--ink);font:400 16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
body#calendar #container-outer *,body#calendar #container-outer *:before,body#calendar #container-outer *:after{box-sizing:border-box}
body#calendar #container-outer img{max-width:100%;height:auto}
body#calendar #container-outer a{color:var(--wine);text-decoration-thickness:1px;text-underline-offset:4px}
body#calendar #container-outer a:hover{color:var(--wine2)}
body#calendar #container-outer h1,body#calendar #container-outer h2,body#calendar #container-outer h3,body#calendar #container-outer h4{font-family:var(--serif);font-weight:500;line-height:1.1;letter-spacing:-.025em}
body#calendar #container-outer #container{width:min(1160px,calc(100% - 2*clamp(20px,4vw,64px)))!important;max-width:none!important;margin:auto!important;padding:clamp(65px,9vw,110px) 0!important}
body#calendar #container-outer .contentfullwidth,body#calendar #container-outer .subcontainer{float:none!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body#calendar #container-outer .subcontainer>h1{max-width:760px;margin:0 auto 24px!important;color:var(--wine)!important;text-align:center;font-size:clamp(2.25rem,4vw,3rem)!important;line-height:1.08!important}
body#calendar #container-outer .subcontainer>h1:before{content:'';display:block;margin-bottom:22px;color:var(--wine2);font:700 11px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase}
body#calendar #container-outer .subcontainer>p:first-of-type,body#calendar #container-outer .subcontainer>br{display:none}
body#calendar #container-outer .subcontainer>h4.centered{width:max-content;max-width:100%;margin:0 auto 70px!important;padding:13px 18px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 30px rgba(32,35,31,.05);font:600 12px/1.35 var(--sans)!important;text-align:center}
body#calendar #container-outer .subcontainer>h4.centered br{display:none}
body#calendar #container-outer .subcontainer>h4.centered .ICSIcon{width:19px!important;height:25px!important;margin-right:9px!important;vertical-align:middle}
body#calendar #container-outer .subcontainer>h4.centered a{text-decoration:none}

body#calendar #container-outer #calendarcontainer{width:100%!important;max-width:none!important;display:grid;grid-template-columns:140px minmax(220px,.8fr) minmax(320px,1.6fr);align-items:stretch}
body#calendar #container-outer #calendarcontainer>hr,body#calendar #container-outer #calendarcontainer>.clearallclass{display:none!important}
body#calendar #container-outer .calendaryearrow{grid-column:1/-1;float:none!important;width:auto!important;height:auto!important;margin:64px 0 18px!important;padding:0 0 16px!important;background:transparent!important;border-bottom:2px solid var(--wine)!important;color:var(--wine)!important;text-align:left!important;font:500 clamp(1.75rem,2.8vw,2.25rem)/1.1 var(--serif)!important;letter-spacing:-.02em}
body#calendar #container-outer .calendaryearrow:first-child{margin-top:0!important}
body#calendar #container-outer .eventdateheading,body#calendar #container-outer .eventnameheading,body#calendar #container-outer .eventdetailsheading{float:none!important;width:auto!important;height:auto!important;padding:11px 18px!important;background:var(--forest)!important;color:rgba(255,255,255,.72)!important;font:700 10px/1 var(--sans)!important;letter-spacing:.14em;text-transform:uppercase}
body#calendar #container-outer .eventdateheading{grid-column:1}body#calendar #container-outer .eventnameheading{grid-column:2}body#calendar #container-outer .eventdetailsheading{grid-column:3}
body#calendar #container-outer .eventdate,body#calendar #container-outer .eventname,body#calendar #container-outer .eventdetails{float:none!important;width:auto!important;min-height:100%!important;margin:0!important;padding:24px 18px!important;background:#fff!important;border-bottom:1px solid var(--line)!important;color:var(--ink)!important}
body#calendar #container-outer .eventdate{grid-column:1;border-left:1px solid var(--line)!important}body#calendar #container-outer .eventname{grid-column:2}body#calendar #container-outer .eventdetails{grid-column:3;border-right:1px solid var(--line)!important}
body#calendar #container-outer .eventdate p,body#calendar #container-outer .eventname p,body#calendar #container-outer .eventdetails p{margin:0!important;font-family:var(--sans)!important}
body#calendar #container-outer .eventdate strong{display:block;color:var(--wine);font-size:14px;line-height:1.35}body#calendar #container-outer .eventdate strong a{color:inherit;text-decoration:none}
body#calendar #container-outer .eventname p{color:var(--ink)!important;font:600 18px/1.4 var(--serif)!important}
body#calendar #container-outer .eventdetails p{color:var(--muted)!important;font:400 13px/1.65 var(--sans)!important}
body#calendar #container-outer .eventdetails a{display:inline-block;margin-top:8px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
body#calendar #container-outer .eventdate .ICSIcon{width:22px!important;height:auto!important;margin-top:13px!important;opacity:.72;transition:opacity .2s}body#calendar #container-outer .eventdate .ICSIcon:hover{opacity:1}
body#calendar #container-outer .highlight{background:#fff!important}body#calendar #container-outer .boldtext{background:#fbf5f6!important}body#calendar #container-outer .boldtext.eventdate{border-left:4px solid var(--wine)!important}body#calendar #container-outer .boldtext.eventname p{color:var(--wine)!important}body#calendar #container-outer .floatright{float:none!important}

@media(max-width:900px){body#calendar #container-outer #calendarcontainer{grid-template-columns:115px minmax(180px,.8fr) minmax(250px,1.4fr)}body#calendar #container-outer .eventdate,body#calendar #container-outer .eventname,body#calendar #container-outer .eventdetails{padding:20px 14px!important}body#calendar #container-outer .eventname p{font-size:16px!important}}
@media(max-width:650px){body#calendar #container-outer{font-size:15px}body#calendar #container-outer #container{width:calc(100% - 32px)!important;padding:48px 0!important}body#calendar #container-outer .subcontainer>h1{font-size:2.15rem!important}body#calendar #container-outer .subcontainer>h4.centered{margin-bottom:44px!important}body#calendar #container-outer #calendarcontainer{display:grid!important;grid-template-columns:86px 1fr}body#calendar #container-outer .calendaryearrow{grid-column:1/-1;margin-top:50px!important;font-size:1.75rem!important}body#calendar #container-outer .eventdateheading,body#calendar #container-outer .eventnameheading,body#calendar #container-outer .eventdetailsheading{display:none!important}body#calendar #container-outer .eventdate{grid-column:1!important;grid-row:span 2;padding:18px 10px!important;border-left:3px solid var(--wine)!important;border-top:1px solid var(--line)!important}body#calendar #container-outer .eventname{grid-column:2!important;padding:18px 15px 4px!important;border-top:1px solid var(--line)!important;border-right:1px solid var(--line)!important}body#calendar #container-outer .eventdetails{grid-column:2!important;padding:5px 15px 20px!important;border-right:1px solid var(--line)!important}body#calendar #container-outer .eventname p{font-size:17px!important}body#calendar #container-outer .eventdetails p{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){body#calendar #container-outer *,body#calendar #container-outer *:before,body#calendar #container-outer *:after{transition:none!important}}

