/* Shared code-defined forms, styled to sit naturally in the Ember pages. */
.sd-contact{box-sizing:border-box;width:100%;max-width:960px;margin-inline:auto;padding:clamp(22px,3vw,40px);border:1px solid #dfd5c6;border-radius:20px;background:#fffdf8;box-shadow:0 18px 48px #38281a0d;font:18px/1.6 'DM Sans',sans-serif;color:#24251f;text-align:left}
.sd-contact-form{display:grid;gap:24px}.sd-contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 24px}.sd-contact label{display:block;min-width:0;font:700 16px/1.45 'DM Sans',sans-serif}.sd-contact label>span{font-weight:400;font-size:14px;color:#625d53}.sd-contact label>:is(input,select,textarea){display:block;margin-top:8px}.sd-contact :is(input,select,textarea){box-sizing:border-box;width:100%;min-width:0;min-height:54px;border:1px solid #b9af9e;border-radius:8px;background:#fff;padding:12px 14px;font:400 18px/1.45 'DM Sans',sans-serif;color:#24251f;box-shadow:0 1px 2px #38281a05}.sd-contact textarea{resize:vertical;min-height:150px}.sd-contact :is(input,select,textarea):hover{border-color:#8c806e}.sd-contact button{background:#8f291f;color:#fffaf2;padding:14px 26px;border-radius:8px;font:700 18px/1.4 'DM Sans',sans-serif;min-height:54px;border:1px solid #8f291f;justify-self:start;cursor:pointer;box-shadow:0 4px 12px #8f291f18}.sd-contact button:hover{background:#702017}.sd-contact :is(input,select,textarea,button,a):focus-visible{outline:3px solid #8f291f;outline-offset:4px}.sd-contact p{margin:0}.sd-contact-notice,.sd-contact-status{border-left:3px solid #8f291f;border-radius:4px;padding:16px 18px;background:#f3ecdf;margin:0 0 28px!important;font:400 16px/1.6 'DM Sans',sans-serif}.sd-contact-status[hidden],.sd-contact [hidden]{display:none}.sd-contact button:disabled{opacity:.65;cursor:wait}.sd-contact-form[aria-busy=true]{opacity:.8}.sd-contact-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.sd-contact .sd-consent{display:flex;align-items:flex-start;gap:12px;font-weight:400}.sd-contact .sd-consent input{width:21px;min-height:21px;height:21px;margin:3px 0;flex-shrink:0;accent-color:#8f291f}.sd-contact .sd-consent span,.sd-contact .sd-policy{font-size:15px;line-height:1.6;color:#625d53}.sd-contact a{color:#8f291f;font-weight:700}.sd-contact .sd-policy{margin-top:-12px}
.sd-catering-locations{width:100%;max-width:960px;margin-inline:auto}.sd-catering-locations details{margin-bottom:16px;border:1px solid #dfd5c6;border-radius:14px;background:#fffdf8;overflow:hidden}.sd-catering-locations summary{font:30px/1.2 'Bebas Neue',sans-serif;cursor:pointer;padding:22px 28px}.sd-catering-locations summary:focus-visible{outline:3px solid #8f291f;outline-offset:-6px}.sd-catering-locations details[open] summary{border-bottom:1px solid #dfd5c6}.sd-catering-locations .sd-contact{border:0;border-radius:0;box-shadow:none}
.sd-social-links{display:flex;flex-wrap:wrap;gap:20px;margin:12px 0 0}.sd-social-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:700 17px/1.5 'DM Sans',sans-serif;color:#8f291f}
/* Native Elementor information + map card. Maps render automatically with native iframe lazy loading. */
body.elementor-template-canvas :is(#sd-catering-visit,#page-details){box-sizing:border-box;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:0;width:100%;max-width:1180px;margin-inline:auto;background:#fffdf8;border:1px solid #dfd5c6;border-radius:20px;box-shadow:0 18px 48px #38281a0d;overflow:hidden;color:#24251f}
body.elementor-template-canvas #sd-catering-visit{width:88%;margin-top:64px;margin-bottom:0}
body.elementor-template-canvas #sd-visit-info{padding:clamp(24px,3vw,40px);min-width:0}body.elementor-template-canvas #sd-visit-info h2{font:44px/1.05 'Bebas Neue',sans-serif;margin:0 0 20px}body.elementor-template-canvas #sd-visit-info p{font:18px/1.65 'DM Sans',sans-serif;margin:0 0 18px}body.elementor-template-canvas #sd-visit-info a{color:#8f291f;font-weight:700;overflow-wrap:anywhere}body.elementor-template-canvas #sd-visit-info>a{display:inline-block;background:transparent;padding:8px 0;border:0;text-decoration:underline}body.elementor-template-canvas #sd-visit-map{min-width:0;display:flex;background:#eee8dc}body.elementor-template-canvas #sd-visit-map>.elementor-widget-container{width:100%;height:100%}
.sd-map{box-sizing:border-box;width:100%;height:100%;min-height:390px;background:#eee8dc;padding:0;display:flex;flex-direction:column;align-items:stretch;gap:0;color:#3d3b31}.sd-map iframe{display:block;border:0;width:100%;height:100%;min-height:390px;flex:1}.sd-map-picker{flex:none;padding:24px}.sd-map-picker label{display:block;font:700 17px/1.5 'DM Sans',sans-serif}.sd-map select{display:block;width:100%;margin-top:8px;font:400 17px/1.5 'DM Sans',sans-serif;padding:12px;border:1px solid #b9af9e;border-radius:8px;background:#fff;color:#24251f}.sd-map select:focus-visible{outline:3px solid #8f291f;outline-offset:4px}.sd-map-picker p{font:16px/1.6 'DM Sans',sans-serif;margin:16px 0 0}
body.elementor-template-canvas #sd-contact-hero{min-height:430px;height:auto}body.elementor-template-canvas #sd-contact-layout{display:flex;flex-direction:column;align-items:stretch;gap:64px;padding:64px 6%;background:#fffaf2;color:#24251f}body.elementor-template-canvas #sd-contact-layout>div{min-width:0}body.elementor-template-canvas #sd-contact-form-panel{width:100%;max-width:960px;margin-inline:auto}body.elementor-template-canvas #sd-contact-form-panel h2{font:52px/1.05 'Bebas Neue',sans-serif;margin:0 0 20px}body.elementor-template-canvas #sd-contact-form-panel>p{font:18px/1.65 'DM Sans',sans-serif;margin:0 0 28px;max-width:760px}body.elementor-template-canvas #catering-request{width:100%;align-items:stretch;padding:64px 6%;gap:24px;background:#fffaf2}body.elementor-template-canvas #catering-request> :is(h2,p,div){box-sizing:border-box;width:100%;max-width:960px;margin-inline:auto}body.elementor-template-canvas #catering-request>p{margin-bottom:8px}body.elementor-template-canvas #catering-request:focus{outline:none}body.elementor-template-canvas #catering-request:focus-visible>h2{outline:3px solid #8f291f;outline-offset:8px}
@media(max-width:800px){body.elementor-template-canvas :is(#sd-catering-visit,#page-details){grid-template-columns:minmax(0,1fr)}.sd-map,.sd-map iframe{min-height:320px}.sd-contact-fields{gap:20px}}
@media(max-width:700px){.sd-contact{font-size:17px;padding:24px 20px;border-radius:14px}.sd-contact-fields{grid-template-columns:minmax(0,1fr)}.sd-contact :is(input,select,textarea){font-size:17px}.sd-contact button{width:100%;justify-self:stretch}.sd-contact-notice,.sd-contact-status{font-size:15px;padding:14px 16px}.sd-catering-locations summary{font-size:27px;padding:20px}.sd-catering-locations .sd-contact{padding:24px 18px}body.elementor-template-canvas #sd-contact-layout{padding:44px 6%;gap:44px}body.elementor-template-canvas #catering-request{padding:44px 6%}body.elementor-template-canvas #sd-catering-visit{margin-top:44px}body.elementor-template-canvas #sd-contact-form-panel h2{font-size:42px}body.elementor-template-canvas #sd-visit-info h2{font-size:38px}body.elementor-template-canvas #sd-contact-hero{min-height:360px}}
body.elementor-template-canvas :is(#sd-catering-visit,#page-details,#sd-visit-map){padding:0}body.elementor-template-canvas #sd-visit-map>.elementor-widget-shortcode{width:100%;flex:1;margin:0}body.elementor-template-canvas #sd-visit-map .elementor-shortcode{height:100%}
body.elementor-template-canvas #sd-contact-form-panel,body.elementor-template-canvas #sd-contact-form-panel>div{padding:0}
