/* Shared public design system. Loaded after legacy page styles. */
:root{--paper:#fffdf8;--ink:#302e28;--muted:#686259;--line:#d9d1c5;--gold:#8f6a3a;--green:#28362b;--content:1200px;--gutter:clamp(20px,4vw,56px)}
body{background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
html{scroll-padding-top:24px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(38px,5vw,66px);line-height:1.1}h2{font-size:clamp(30px,3.5vw,46px);line-height:1.15}img{max-width:100%}[hidden]{display:none!important}
body .site-header{background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:20}
body .site-header .site-nav{max-width:var(--content);margin:0 auto;padding:18px var(--gutter);min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:nowrap;border:0;background:transparent;box-shadow:none}
body .site-brand{display:flex;align-items:center;gap:10px;flex-shrink:0;text-decoration:none;color:var(--ink)}body .site-brand img{width:40px;height:40px;object-fit:contain}body .site-brand span{font:500 13px/1.4 Arial,sans-serif;letter-spacing:.16em;white-space:nowrap}
body .site-menu{display:flex;align-items:center;gap:22px;list-style:none;padding:0;margin:0;order:0;width:auto;border:0}body .site-menu a{font:500 12px/1.5 Arial,sans-serif;letter-spacing:0;text-transform:none;text-decoration:none;white-space:nowrap;color:var(--ink)}body .site-menu a:hover,body .site-menu a[aria-current]{text-decoration:underline;text-underline-offset:6px;color:var(--gold)}
body .site-button,body a.btn-primary,body a.class-hero-cta,body .schedule-stage a.class-submit,body .end a.button,body .corp-hero .btn,body .corp-cta .btn,body .closing .btn,body #submit-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 23px;background:var(--green);border:1px solid var(--green);border-radius:2px;color:#fffdf8;font:600 14px/1.4 Arial,sans-serif;letter-spacing:0;text-transform:none;text-decoration:none;box-shadow:none;cursor:pointer;text-align:center;transition:background .15s}
body .site-button:hover,body a.btn-primary:hover,body a.class-hero-cta:hover,body .schedule-stage a.class-submit:hover,body #submit-button:hover{background:#41523e;color:white;transform:none}body .site-nav-cta{font-size:12px;min-height:46px;padding:12px 18px;white-space:nowrap;flex-shrink:0}
body .site-menu-toggle{display:none;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 10px;border:1px solid var(--line);background:transparent;color:var(--ink);font:500 12px Arial,sans-serif;border-radius:2px;cursor:pointer}
body .site-footer{display:block;margin:0;padding:52px var(--gutter);background:#eee7dc;border-top:1px solid var(--line);color:var(--ink);width:100%;font:14px/1.7 Arial,sans-serif}body .site-footer-inner{max-width:var(--content);margin:auto;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:48px;align-items:start}body .site-footer a{margin:0;letter-spacing:0;text-transform:none;text-decoration:none;font:14px/1.6 Arial,sans-serif}body .site-footer a:hover{text-decoration:underline;text-underline-offset:4px}body .site-footer-brand>a{font-size:15px;letter-spacing:.14em}body .site-footer-brand p{font:14px/1.8 Arial,sans-serif;color:var(--muted);margin:18px 0 0}body .site-footer-links,body .site-footer-contact{display:flex;flex-direction:column;align-items:start;gap:10px}body .site-footer-contact .site-button{color:white;margin-bottom:6px;font-size:13px}
body .site-mobile-cta{display:none}body .section-inner{max-width:var(--content)}body .sheet{max-width:800px;margin:0 auto;padding:60px var(--gutter)}body .class-page{max-width:var(--content);margin:0 auto;padding:0 var(--gutter) 64px}
body .class-food-hero{display:block!important;min-height:0!important;position:relative;margin:0 calc(-1 * var(--gutter)) 0;padding:90px var(--gutter) 64px;background-image:linear-gradient(90deg,#102319ec,#102319b0),var(--class-hero-image);background-position:center;background-size:cover}
body .class-food-hero-copy{max-width:720px}body .class-food-hero .class-title{font-size:clamp(42px,5.8vw,72px);line-height:1.1}body .class-food-hero .class-intro{font-size:17px;line-height:1.65}body[data-page="index"] .hero-facts{color:#fff4df;font:500 14px/1.7 Arial,sans-serif;margin:22px 0 0}body .class-hero-cta{margin-top:20px}body .inquiry-reassurance{color:#f2ece3}
body .class-page .booking-details{margin:36px 0 0;display:block;border:1px solid var(--line);background:var(--paper)}body .booking-details-heading{background:#eee7dc;padding:24px}body .booking-details-body{padding:24px}body .experience-pricing article{padding:22px}body .experience-pricing article strong{font:400 38px/1.1 Georgia,serif}body .experience-pricing article p{font:14px/1.7 Arial,sans-serif}body .planning-notes{display:grid;grid-template-columns:1fr 1fr;gap:24px}body .class-hero-menu.workshop-learning{margin:44px 0;padding:32px!important;background:#eee7dc;box-shadow:none;color:var(--ink)}body .workshop-learning h2{font:400 38px/1.15 Georgia,serif!important}body .workshop-learning ul{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}body .workshop-learning li{font:15px/1.7 Arial,sans-serif!important}body .workshop-learning li span{font:600 13px/1.7 Arial,sans-serif;letter-spacing:0;text-transform:none;color:var(--green)}body .challah-gallery{margin:48px 0}body .workshop-details{margin-top:44px}body .workshop-story{margin-top:44px}body .challah-gallery img{aspect-ratio:4/3}
body[data-page="index"] .hero{position:relative;isolation:isolate;background:var(--green);height:auto;min-height:580px;padding:100px var(--gutter) 90px}body[data-page="index"] .hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:1}body[data-page="index"] .hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#102319db 0%,#10231991 50%,#10231938 100%);z-index:-1}body[data-page="index"] .hero>div{max-width:var(--content);margin:auto;width:100%}body[data-page="index"] .hero h1{font:400 clamp(46px,6vw,78px)/1.08 Georgia,serif;letter-spacing:-.035em;color:#fffdf8;max-width:660px}body[data-page="index"] .hero p{max-width:530px;color:#fffdf8;font-size:17px}body[data-page="index"] .hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:26px}body[data-page="index"] .hero-actions .site-button{background:#ead19c;color:#273429;border-color:#ead19c}body[data-page="index"] .hero-actions .secondary-action{color:white;font-size:14px;text-underline-offset:5px}body[data-page="index"] .hero .hero-reassurance{font-size:12px;color:#f3eadc;margin:14px 0 0}
body .how-it-works,body .occasion-section{max-width:var(--content);margin:auto;padding:64px var(--gutter)}body .steps-grid,body .occasion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}body .steps-grid article{border-top:1px solid var(--line);padding-top:22px}body .steps-grid h3,body .occasion-grid h3{font-size:26px;margin:12px 0}body .steps-grid p,body .occasion-grid p{font-size:15px;color:var(--muted)}body .occasion-grid a{display:block;text-decoration:none;background:#eee7dc;padding:26px}body .occasion-grid a:hover{background:#e4dacb}body .gallery-heading,body .collection{max-width:var(--content);margin-inline:auto}body .gallery-heading{padding-inline:var(--gutter)}body .collection{padding-inline:var(--gutter)}
body .catalogue{max-width:var(--content);margin:auto;padding:64px var(--gutter)}body .catalogue-intro{max-width:700px;margin-bottom:40px}body .catalogue-intro p{color:var(--muted);font-size:17px}body .catalogue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}body .workshop-card{min-width:0;background:var(--paper);border:1px solid var(--line);display:flex;flex-direction:column;scroll-margin-top:24px}body .workshop-card>img{width:100%;aspect-ratio:4/3;object-fit:cover}body .workshop-card-copy{padding:24px;display:flex;flex:1;flex-direction:column}body .workshop-card h2{font:400 29px/1.15 Georgia,serif;margin:10px 0 14px}body .workshop-card p{font-size:14px;color:var(--muted);margin:0 0 18px}body .workshop-card .card-facts{border-block:1px solid var(--line);padding:14px 0;margin:auto 0 18px;color:var(--ink)}body .card-facts strong{display:block;color:var(--green);font-size:16px;margin-bottom:6px}body .card-facts small{display:block;font-size:12px;color:var(--muted);line-height:1.7}body .workshop-card a{color:var(--green);font-size:14px;text-underline-offset:5px}body .catalogue-callout{margin-top:48px;background:#eee7dc;padding:32px;display:flex;justify-content:space-between;align-items:center;gap:24px}body .catalogue-callout h2{margin:0 0 10px;font-size:32px}body .catalogue-callout p{margin:0;max-width:620px;color:var(--muted)}
body .request-summary{background:#eee7dc;border:1px solid var(--line);padding:24px;margin:0 0 28px}body .request-summary h2{font:400 26px/1.2 Georgia,serif;margin:0 0 16px}body .request-summary dl{display:grid;grid-template-columns:1fr auto;gap:9px 16px;margin:0}body .request-summary dt{color:var(--muted)}body .request-summary dd{margin:0;text-align:right;font-weight:500}body .request-summary .estimate-note{font-size:12px;color:var(--muted);margin:16px 0 0}body .request-summary strong{color:var(--green)}body .flexible-date{display:flex;align-items:center;gap:12px;margin:24px 0;font-size:15px}body .flexible-date input{width:20px;height:20px}body .calendar-note{font-size:13px;color:var(--muted)}body .recipe-library .photo-recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}body .recipe-library .card-image{height:220px}body .recipe-library .card-image img{width:100%;height:100%;object-fit:cover}body .recipe-library .card-image span{font-size:30px!important}body .recipe-library .section-top{margin-bottom:32px}body .recipe-library .card-text{font-size:15px}body .recipe-library .card-title{font-size:28px}
:focus-visible{outline:3px solid #8f6a3a;outline-offset:4px}body .site-header a:focus-visible,body .site-menu-toggle:focus-visible{outline:3px solid #8f6a3a;outline-offset:4px}
@media(max-width:1100px){body .site-header .site-nav{gap:14px}body .site-menu{gap:14px}body .site-brand span{font-size:11px}body .site-brand img{width:32px;height:32px}}
@media(max-width:1000px){body .site-header .site-nav{flex-wrap:wrap;padding:14px var(--gutter);min-height:76px}body .site-menu{order:4;width:100%;flex-wrap:wrap;gap:14px 24px;padding-top:18px}body .has-menu-js .site-menu:not(.is-open){display:none}body .has-menu-js .site-menu-toggle{display:flex;margin-left:auto}body .site-menu.is-open{display:flex}body .site-nav-cta{margin-left:0}body .catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){body .site-header .site-nav{gap:10px}body .site-brand span{font-size:11px;letter-spacing:.1em}body .site-brand img{width:28px;height:28px}body .site-nav-cta{display:none}body .site-menu{flex-direction:column;align-items:stretch;gap:0;padding-top:8px}body .site-menu a{display:block;padding:12px 0;font-size:15px;border-top:1px solid var(--line)}body .site-mobile-cta{display:flex;position:fixed;bottom:12px;bottom:calc(12px + env(safe-area-inset-bottom));left:20px;right:20px;z-index:30;box-shadow:0 4px 24px #10231930}body.has-mobile-cta{padding-bottom:84px}body .site-footer-inner{grid-template-columns:1fr;gap:30px}body .site-footer-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}body .site-footer{padding:40px var(--gutter)}body[data-page="index"] .hero{min-height:560px;padding:100px var(--gutter) 60px}body[data-page="index"] .hero:after{background:linear-gradient(90deg,#102319d9,#10231985)}body[data-page="index"] .hero h1{font-size:48px}body[data-page="index"] .hero p{font-size:16px}body[data-page="index"] .hero-actions{align-items:stretch;flex-direction:column;max-width:340px}body[data-page="index"] .hero-actions .secondary-action{padding:8px 0}body .steps-grid,body .occasion-grid,body .catalogue-grid{grid-template-columns:1fr}body .how-it-works,body .occasion-section,body .catalogue{padding:44px var(--gutter)}body .catalogue-callout{flex-direction:column;align-items:stretch;padding:24px}body .class-food-hero{padding:84px var(--gutter) 44px}body .class-food-hero .class-title{font-size:44px}body .class-food-hero .class-intro{font-size:16px}body .class-hero-menu.workshop-learning{padding:24px!important}body .workshop-learning ul{grid-template-columns:1fr}body .booking-details-body,body .booking-details-heading{padding:20px}body .planning-notes{grid-template-columns:1fr}body .sheet{padding:40px var(--gutter)}body .request-summary dl{grid-template-columns:1fr}body .request-summary dd{text-align:left;margin-bottom:8px}body .recipe-library .photo-recipe-grid{grid-template-columns:1fr}body .recipe-library .card-image{height:240px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{body .site-header,body .site-footer,body .site-mobile-cta{display:none!important}body.has-mobile-cta{padding:0}}

body[data-page="index"] .hero>div{max-width:calc(var(--content) - 2 * var(--gutter))}body[data-page="index"] .split{max-width:var(--content);margin-inline:auto}body .class-food-hero .class-hero-cta{background:#ead19c;border-color:#ead19c;color:#273429}body .class-food-hero .class-hero-cta:hover{background:#f3ddb0}
#reservation-form .flexible-date input{width:20px;height:20px;min-height:20px;flex-shrink:0}body .calendar-note[data-calendar-status]:empty{display:none}
@media(min-width:980px){body .sheet{max-width:var(--content);display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:36px;align-items:start}body .sheet>.intro{grid-column:1/-1}body .sheet>.request-summary{position:sticky;top:24px}body .sheet>.holiday-source{grid-column:2}body .sheet>.form-card{grid-column:1/-1}}
body .site-menu .menu-request{display:none}@media(max-width:700px){body .site-menu .menu-request{display:block}body .site-menu .menu-request a{font-weight:600;color:var(--green)}}
/* All page introductions share the header's content grid. */
body .page,body .wrap,body .notes-index,body .article-hero,body .article-shell,body .corp-main,body .faq-main{max-width:var(--content);margin-inline:auto;padding-inline:var(--gutter)}
body .page,body .notes-index,body .article-hero{padding-block:64px}body .recipe-library{padding:64px var(--gutter)}body .recipe-library .section-inner{max-width:calc(var(--content) - 2 * var(--gutter))}
body .faq-hero{padding-inline:var(--gutter)}body .faq-hero>div{max-width:calc(var(--content) - 2 * var(--gutter))}body .corp-hero{max-width:var(--content);margin-inline:auto}body .corp-hero-copy{padding:64px var(--gutter)}body .corp-dark-inner{max-width:calc(var(--content) - 2 * var(--gutter))}
body .page .intro h1,body .article-hero h1,body .corp-hero h1,body .faq-hero h1{font:400 clamp(38px,5vw,66px)/1.1 Georgia,serif;letter-spacing:-.035em}
@media(max-width:700px){body .page,body .notes-index,body .article-hero,body .recipe-library,body .corp-hero-copy{padding-block:44px}body .corp-hero-photo{min-height:280px}body .wrap.hero{padding-block:44px}body .wrap.hero h1{font-size:42px}}
