/* The existing mamaRise palette, typography and rounded sections remain the design source. */
:root{--mrc-gold:#7e5411;--mrc-ink:#433d36;--mrc-pink:#fbebea;--mrc-cream:#f8f5ee;--mrc-line:#d7c9b5;--mrc-green:#26734e}
.mrc-booking-form [hidden]{display:none!important}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.mrc-events-intro{padding-top:72px;padding-bottom:64px}.mrc-events-intro h1{font-size:clamp(30px,3.2vw,44px);line-height:1.65;margin:12px 0 24px}.mrc-events-intro h1 span{display:inline-block}.mrc-kicker{font-family:Inter,sans-serif;font-size:13px!important;letter-spacing:.14em;color:#94545a;margin:0 0 12px}.mrc-index-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.mrc-index-links a{padding:10px 20px;border:1px solid var(--mrc-line);border-radius:30px;font-size:15px}
.mrc-index-section{padding-top:64px;padding-bottom:72px}.mrc-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:32px}.mrc-index-section h2,.mrc-calendar h2{font-size:30px;line-height:1.6;margin:0 0 20px}.mrc-section-heading p:last-child{font-size:16px}.mrc-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:32px}.mrc-event-card{background:white;border:1px solid #e4dbce;border-radius:24px;overflow:hidden;min-width:0}.mrc-event-card>a{display:flex;height:100%;flex-direction:column;color:var(--mrc-ink);text-decoration:none}.mrc-event-card>a>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:var(--mrc-cream)}.mrc-card-copy{padding:24px;display:flex;flex:1;flex-direction:column}.mrc-event-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-family:Inter,sans-serif;font-size:14px!important;margin:0 0 12px}.mrc-status{display:inline-block;font-size:12px;padding:3px 9px;border-radius:4px;background:#e7f1e9;color:#215e40}.mrc-status.past,.mrc-status.closed{background:#f0ece6;color:#5d5145}.mrc-status.cancelled{background:#f8e3e3;color:#7c3333}.mrc-category{font-size:13px!important;color:#865050;margin:0 0 8px}.mrc-card-copy h3{font-size:23px;line-height:1.6;color:var(--mrc-gold);margin:0 0 14px;overflow-wrap:anywhere;word-break:normal}.mrc-card-copy>p{font-size:18px;line-height:1.95}.mrc-card-facts{margin-top:auto;padding-top:12px}.mrc-card-copy .text-link{font-size:14px;margin-top:16px;align-self:flex-start}.mrc-empty{padding:28px;border-radius:16px;background:var(--mrc-cream);font-size:17px;line-height:1.9;margin-top:28px}.mrc-empty a{text-decoration:underline}
.mrc-calendar-section{background:var(--mrc-pink);padding:64px 0;border-radius:80px 0 80px 0}.mrc-calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.mrc-calendar-heading nav{display:flex;gap:8px;align-items:center}.mrc-calendar-heading a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;border:1px solid #b9a68b;border-radius:24px;background:#fff;padding:5px 12px;font-size:15px}.mrc-calendar-help{font-size:16px;margin:12px 0 24px}.mrc-calendar-scroll{overflow-x:auto;border:1px solid var(--mrc-line);border-radius:16px;background:#fff;scroll-margin-top:100px}.mrc-calendar table{border-collapse:collapse;table-layout:fixed;min-width:700px;width:100%;font-family:Inter,'Noto Serif JP',serif}.mrc-calendar th{background:var(--mrc-cream);font-size:15px;padding:12px 6px}.mrc-calendar td{border:1px solid #e1d8cc;vertical-align:top;height:110px;padding:9px;overflow-wrap:anywhere}.mrc-calendar td>time{font-size:15px;display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:28px}.mrc-today>time{background:var(--mrc-gold);color:#fff;border-radius:50%}.mrc-other-day{background:#faf9f7}.mrc-calendar-event{display:block;margin-top:6px;padding:8px 7px;background:#fbebea;border-left:3px solid var(--mrc-gold);font-size:13px;line-height:1.65;border-radius:4px;color:#62400b}.mrc-calendar-event small{display:block;font-size:11px;color:#65534d;margin-top:4px}.mrc-calendar-event.past{background:#f1efeb;border-left-color:#aaa095}.mrc-calendar-event.cancelled{border-left-color:#a44}.mrc-calendar-mobile-hint{display:none;font-size:13px;text-align:center;margin-top:14px}
.mrc-lp-header{display:flex;justify-content:space-between;align-items:center;padding:20px 5%;border-bottom:1px solid #e7ded1;background:#fff;gap:20px}.mrc-lp-header .brand{font-size:30px;white-space:nowrap}.mrc-lp-back{font-size:14px;border:1px solid var(--mrc-line);border-radius:24px;padding:10px 18px}.mrc-event-lp{font-size:18px;color:var(--mrc-ink);line-height:2}.mrc-lp-main{padding-bottom:0}.mrc-lp-hero{max-width:1080px;margin:0 auto;padding:32px 40px 48px;text-align:center}.mrc-lp-category{font-size:14px;letter-spacing:.08em;margin:0 0 18px}.mrc-hero-picture{display:block;line-height:0}.mrc-hero-picture img{width:100%;height:auto;max-height:min(480px,calc(100svh - 180px));object-fit:contain;display:block;border-radius:32px 4px 32px 4px}.mrc-hero-summary{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:0;margin-top:26px;padding:18px 0;border-top:1px solid var(--mrc-line);border-bottom:1px solid var(--mrc-line)}.mrc-hero-summary p{margin:0;padding:0 16px;font-size:16px;line-height:1.8}.mrc-hero-summary p+p{border-left:1px solid var(--mrc-line)}.mrc-hero-summary time,.mrc-hero-summary strong,.mrc-hero-summary span{display:block}.mrc-hero-summary span{font-size:13px}.mrc-illustration-note{font-size:12px;margin:8px 0 20px;color:#6c5d4b}.mrc-hero-cta{min-height:54px}.mrc-lp-section{max-width:800px;margin:0 auto;padding:64px 40px}.mrc-lp-section h2{font-size:30px;line-height:1.75;color:var(--mrc-gold);margin:0 0 24px;overflow-wrap:anywhere;word-break:normal}.mrc-lp-section p{font-size:18px;line-height:2.05;margin:0 0 20px}.mrc-lp-section .mrc-kicker{font-size:13px;margin-bottom:12px}.mrc-lp-section h3{font-size:23px;line-height:1.7;margin:0 0 12px}.mrc-need{text-align:center}.mrc-fit{background:var(--mrc-cream);border-radius:52px 0 52px 0}.mrc-fit ul{list-style:none;margin:0 0 24px;padding:0}.mrc-fit li{position:relative;padding:12px 0 12px 30px;border-bottom:1px solid #ded4c6;line-height:1.9}.mrc-fit li:before{content:'✓';position:absolute;left:0;color:var(--mrc-green)}.mrc-program{list-style:none;padding:0;margin:32px 0 0}.mrc-program li{display:grid;grid-template-columns:110px 1fr;gap:20px;border-top:1px solid var(--mrc-line);padding:20px 0}.mrc-program li>span{color:var(--mrc-gold);font-family:Inter,'Noto Serif JP',serif;font-size:16px}.mrc-program p{margin:0}.mrc-reasons-section{background:var(--mrc-pink);border-radius:80px 0 80px 0}.mrc-reasons article{display:flex;gap:24px;border-top:1px solid #d7beba;padding:26px 0}.mrc-reason-number{font-family:Inter,sans-serif;color:var(--mrc-gold);font-size:26px;line-height:1.7}.mrc-reasons article>div{flex:1;min-width:0}.mrc-reasons p{margin-bottom:0}.mrc-details{margin:0}.mrc-details>div{display:grid;grid-template-columns:125px 1fr;gap:24px;border-top:1px solid var(--mrc-line);padding:22px 0}.mrc-details dt{font-size:15px;color:var(--mrc-gold)}.mrc-details dd{margin:0;min-width:0;overflow-wrap:anywhere;line-height:1.95}.mrc-details dd p{font-size:16px;margin:10px 0 0}.mrc-details .text-link{font-size:15px;margin-top:14px}.mrc-event-faq details{border-top:1px solid var(--mrc-line);padding:18px 0}.mrc-event-faq summary{font-size:18px;cursor:pointer;line-height:1.8;padding-right:24px}.mrc-event-faq details p{font-size:16px;margin:20px 0 0}.mrc-event-faq a{text-decoration:underline}
.mrc-registration-section{background:var(--mrc-cream);border-radius:80px 0 0 0}.mrc-registration,.mrc-calendar,#upcoming,#past-events{scroll-margin-top:100px}.mrc-registration .mrc-payment-note{padding:18px;background:#fff;border-left:3px solid var(--mrc-gold);font-size:16px}.mrc-booking-form{margin-top:30px}.mrc-booking-form fieldset{border:0;padding:0;margin:0;min-width:0}.mrc-booking-form label{display:block;font-size:16px;margin:0 0 24px;line-height:1.85}.mrc-required,.mrc-optional{font-size:12px;margin-left:6px;padding:2px 6px;border-radius:4px;background:#f1e4d2;color:#62400b}.mrc-optional{background:#ecebe7;color:#5d5145}.mrc-booking-form input:not([type=checkbox]),.mrc-booking-form textarea,.mrc-booking-form select{display:block;width:100%;box-sizing:border-box;margin-top:10px;border:1px solid #b5a68f;border-radius:8px;padding:12px 14px;background:#fff;font:inherit;font-size:18px;line-height:1.7;color:var(--mrc-ink);min-height:50px}.mrc-booking-form textarea{resize:vertical}.mrc-input-help{font-size:13px;display:block;margin-top:7px;line-height:1.7}.mrc-form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.mrc-consent label{display:flex;align-items:flex-start;gap:12px;font-size:15px}.mrc-consent input{width:21px;height:21px;flex-shrink:0;margin:4px 0 0;accent-color:var(--mrc-gold)}.mrc-consent a{text-decoration:underline}.mrc-booking-form .mrc-form-footnote{font-size:13px;line-height:1.9;margin-top:22px}.mrc-booking-form .button{cursor:pointer;font:inherit;font-size:17px;white-space:normal;width:100%;justify-content:center;min-height:58px;border:0}.mrc-booking-form .button:disabled{opacity:.65;cursor:wait}.mrc-edit-input{border:0;background:none;padding:16px;font:inherit;font-size:16px;text-decoration:underline;cursor:pointer;display:block;margin:auto}.mrc-edit-input[hidden]{display:none}.mrc-form-message:not(:empty){padding:20px;margin-bottom:24px;background:#fff;border:2px solid var(--mrc-green);border-radius:12px;font-size:17px;line-height:1.9}.mrc-form-message.is-error{border-color:#a43c33;color:#752a23}.mrc-form-message:focus{outline:2px solid var(--mrc-gold);outline-offset:4px}.mrc-form-review{padding:24px;margin-bottom:24px;background:#fff;border:1px solid var(--mrc-line);border-radius:12px;line-height:2}.mrc-form-review p{font-size:16px}.mrc-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.mrc-notice{background:#f5e8d3;padding:28px;text-align:center;font-size:17px}.mrc-notice p{margin:10px 0}.mrc-notice a{text-decoration:underline}.mrc-registration-closed{text-align:center}.mrc-lp-footer{padding:40px 24px 110px;display:flex;gap:20px;flex-wrap:wrap;justify-content:center;align-items:center;font-size:14px}.mrc-lp-footer small{flex-basis:100%;text-align:center}.mrc-lp-sticky{position:fixed;bottom:0;left:0;right:0;z-index:70;background:rgba(255,255,255,.97);border-top:1px solid #d7c9b5;display:flex;justify-content:center;gap:24px;align-items:center;padding:10px 20px max(10px,env(safe-area-inset-bottom));font-size:15px}.mrc-lp-sticky a{background:var(--mrc-gold);color:#fff;display:flex;gap:20px;align-items:center;justify-content:center;min-height:46px;min-width:230px;border-radius:30px;padding:8px 24px}.mrc-event-lp a:focus-visible,.mrc-event-lp input:focus-visible,.mrc-event-lp textarea:focus-visible,.mrc-event-lp select:focus-visible,.mrc-event-lp button:focus-visible,.mrc-calendar a:focus-visible,.mrc-calendar-scroll:focus-visible{outline:3px solid #26734e;outline-offset:4px}
@media(max-width:1023px){.mrc-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mrc-card-copy{padding:22px}.mrc-lp-header .brand{font-size:26px}}
@media(max-width:759px){.mrc-events-intro{padding-top:40px;padding-bottom:36px}.mrc-events-intro h1{font-size:30px}.mrc-index-links{gap:8px}.mrc-index-links a{padding:8px 12px;font-size:13px}.mrc-index-section{padding-top:44px;padding-bottom:44px}.mrc-section-heading{display:block}.mrc-index-section h2,.mrc-calendar h2{font-size:26px}.mrc-event-grid{grid-template-columns:1fr;gap:24px}.mrc-card-copy h3{font-size:24px}.mrc-card-copy{padding:24px}.mrc-calendar-section{padding:40px 0;border-radius:44px 0 44px 0}.mrc-calendar-heading{gap:12px}.mrc-calendar-heading h2{font-size:24px;margin:0}.mrc-calendar-heading nav{gap:5px}.mrc-calendar-heading a{font-size:13px;min-width:38px;min-height:42px;padding:5px 8px}.mrc-calendar-mobile-hint{display:block}.mrc-calendar-help{font-size:15px}.mrc-lp-header{padding:16px 20px;gap:10px;flex-wrap:wrap}.mrc-lp-header .brand{font-size:25px}.mrc-lp-back{font-size:12px;padding:6px 12px}.mrc-lp-hero{padding:26px 20px 36px}.mrc-lp-category{font-size:13px}.mrc-hero-picture img{max-height:none;border-radius:24px 4px 24px 4px}.mrc-hero-summary{grid-template-columns:1fr;text-align:left;padding:8px 0;gap:0;margin-top:20px}.mrc-hero-summary p{padding:12px 4px;font-size:17px}.mrc-hero-summary p+p{border-left:0;border-top:1px solid #e7ded1}.mrc-hero-summary time,.mrc-hero-summary strong{display:inline}.mrc-hero-summary time{margin-right:12px}.mrc-hero-summary span{display:inline;margin-left:10px}.mrc-lp-section{padding:44px 24px}.mrc-lp-section h2{font-size:27px}.mrc-lp-section h3{font-size:22px}.mrc-lp-section p{font-size:18px}.mrc-need{text-align:left}.mrc-fit{margin:0 20px;padding:36px 24px;border-radius:40px 0 40px 0}.mrc-program li{grid-template-columns:74px 1fr;gap:16px}.mrc-program li>span{font-size:14px}.mrc-reasons-section{border-radius:48px 0 48px 0}.mrc-reasons article{gap:18px}.mrc-reason-number{font-size:22px}.mrc-details>div{grid-template-columns:1fr;gap:8px}.mrc-details dd{font-size:18px}.mrc-details dt{font-size:14px}.mrc-lp-section .mrc-illustration-note{font-size:12px}.mrc-registration-section{border-radius:48px 0 0 0}.mrc-form-row{gap:14px}.mrc-lp-sticky{gap:10px;padding:8px 14px max(8px,env(safe-area-inset-bottom));justify-content:space-between}.mrc-lp-sticky>span{font-size:12px;line-height:1.7;max-width:40%}.mrc-lp-sticky a{min-width:0;flex:1;max-width:240px;font-size:15px;padding:8px 15px;gap:12px}.mrc-lp-footer{padding-bottom:110px}.mrc-form-review{padding:18px}.mrc-event-faq details p{font-size:16px}.mrc-booking-form .mrc-form-footnote{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
.mrc-style-cheerful{--mrc-gold:#302498;--mrc-pink:#fff3d2;--mrc-cream:#fff9ef;font-family:Inter,'Noto Serif JP',serif}.mrc-style-cheerful .mrc-lp-section h2,.mrc-style-cheerful .mrc-lp-section h3{font-family:Inter,'Noto Serif JP',serif;font-weight:600}.mrc-style-cheerful .mrc-kicker{color:#9c410d}.mrc-style-cheerful .mrc-fit{border-radius:30px;background:#fff5cf;border-top:5px solid #ffb600}.mrc-style-cheerful .mrc-reasons-section{border-radius:42px 10px;background:#f5edff}.mrc-style-cheerful .mrc-program li>span{background:#fff2bc;padding:6px;border-radius:8px;align-self:start}.mrc-style-cheerful .mrc-hero-picture img{border-radius:24px}.mrc-style-photo{--mrc-gold:#692b3c;--mrc-pink:#f5e6e9;--mrc-cream:#f8f5ec}.mrc-style-photo .mrc-kicker{color:#692b3c}.mrc-style-photo .mrc-reasons-section{border-radius:0;background:#f6ecee;border-block:1px solid #dcc5cb}.mrc-style-photo .mrc-fit{border-radius:0;border-left:4px solid #692b3c}.mrc-style-photo .mrc-hero-picture img{border-radius:0}.mrc-style-illustration{--mrc-gold:#72283b;--mrc-pink:#fce8eb;--mrc-cream:#fff8f3}.mrc-style-illustration .mrc-kicker{color:#893749}.mrc-style-illustration .mrc-fit{border:1px dashed #d5a3ae;border-radius:36px}.mrc-style-illustration .mrc-reasons-section{background:#fff0f2;border-radius:80px 0}.mrc-style-illustration .mrc-reason-number{color:#9d3550}.mrc-style-cheerful .button-primary,.mrc-style-photo .button-primary,.mrc-style-illustration .button-primary{background:var(--mrc-gold);color:#fff}

.mrc-voices-section{background:var(--mrc-cream)}.mrc-voice{margin:24px 0;padding:28px;background:#fff;border-radius:18px;border-left:3px solid var(--mrc-gold)}.mrc-voice blockquote{margin:0}.mrc-voice figcaption{font-size:15px;text-align:right}.mrc-voice figcaption span{display:block;font-size:13px;margin-top:6px}.mrc-series-dates ul{list-style:none;padding:0;margin:0}.mrc-series-dates li{border-top:1px solid var(--mrc-line)}.mrc-series-dates a{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:18px 0;font-size:16px}.mrc-series-dates a span{font-size:14px}

.mrc-calendar-short{display:none}@media(max-width:759px){.mrc-calendar table{min-width:0;width:100%}.mrc-calendar th{font-size:13px;padding:10px 0}.mrc-calendar td{padding:4px 0;height:80px;text-align:center}.mrc-calendar-event{min-height:44px;display:flex;justify-content:center;align-items:center;border-left:0;border-radius:5px;padding:5px 0;margin:3px 1px 0;line-height:1.4}.mrc-calendar-event .mrc-calendar-title,.mrc-calendar-event small{display:none}.mrc-calendar-event .mrc-calendar-short{display:block;font-size:12px;line-height:1.4}.mrc-calendar-mobile-hint{font-size:13px}}
.mrc-voice{overflow-wrap:anywhere}

/* Flyer-derived Christmas palette, scoped to the selected event design. */
.mrc-style-christmas{--mrc-gold:#9f2f3a;--mrc-pink:#fbf2df;--mrc-cream:#f2f7f1;--mrc-green:#275b4a;--mrc-line:#d9c9ae}.mrc-style-christmas .mrc-kicker{color:#275b4a}.mrc-style-christmas .mrc-hero-picture img{border-radius:8px;max-height:none}.mrc-style-christmas .button-primary,.mrc-style-christmas .mrc-lp-sticky a{background:#275b4a;color:#fff}.mrc-style-christmas .mrc-fit{border-top:4px solid #275b4a;border-radius:28px}.mrc-style-christmas .mrc-reasons-section{border-block:1px solid #d9c9ae;border-radius:48px 0}.mrc-style-christmas .mrc-lp-section h2{color:#9f2f3a}.mrc-style-christmas .mrc-program li>span{color:#275b4a}.mrc-style-christmas .mrc-hero-summary strong{font-weight:600}

.mrc-venue-map{display:block;width:100%;height:280px;border:0;border-radius:16px;margin-top:18px}

@media(max-width:759px){.mrc-style-christmas .mrc-hero-summary time,.mrc-style-christmas .mrc-hero-summary strong{display:block}}
