.ssf-gf { text-align:left; }
.ssf-form-preview { min-width:0; border:0; padding:0; margin:0; }
.ssf-gf .gform_wrapper { --gf-font-family:var(--sans); --gf-color-primary:#a5272a; --gf-color-in-ctrl-primary:#a5272a; --gf-radius:2px; --gf-ctrl-radius:2px; --gf-ctrl-size:52px; }
.ssf-gf .gform_wrapper .gfield_label { font-family:var(--sans); font-size:16px; color:var(--ink); }
.ssf-gf .gform_wrapper input:not([type=checkbox]):not([type=radio]):not([type=submit]),.ssf-gf .gform_wrapper textarea,.ssf-gf .gform_wrapper select { font-family:var(--sans); font-size:16px; border:1px solid var(--line); border-radius:2px; color:var(--ink); background:var(--paper); padding:13px 16px; }
.ssf-gf .gform_wrapper input[type=submit] { min-height:49px; padding:13px 24px; background:var(--red); color:white; border:1px solid var(--red); border-radius:2px; font-family:var(--sans); font-size:14px; font-weight:700; text-transform:uppercase; letter-spacing:.065em; }
.ssf-gf .gform_wrapper input[type=submit]:hover { background:var(--red-dark); }
.ssf-gf fieldset[disabled] input[type=submit] { cursor:not-allowed; opacity:.65; }
.ssf-gf .gfield_description,.ssf-gf .gform-field-label--type-sub { font-size:14px; line-height:1.5; }
.ssf-gf :focus-visible { outline:3px solid var(--olive-dark); outline-offset:3px; }
.ssf-gf .gform_validation_errors h2 { font-family:var(--sans); font-size:18px; line-height:1.5; }
.ssf-build-note { border-left:3px solid var(--olive-dark); padding:15px 20px; font-size:15px; background:var(--paper-deep); }
.ssf-recipes-empty { padding:25px; border:1px solid var(--line); background:var(--paper); color:var(--muted); }
.ssf-recipe-intro-image img { width:100%; aspect-ratio:4/4.5; object-fit:cover; }
.ssf-contact-layout { align-items:start; }
.ssf-category-preview { cursor:default; }
.ssf-newsletter-dialog { width:min(680px,calc(100% - 32px)); max-height:90vh; overflow:auto; padding:40px; color:var(--ink); border:1px solid var(--line); background:var(--paper); box-shadow:var(--shadow); }
.ssf-newsletter-dialog::backdrop { background:rgba(45,41,35,.65); }
.ssf-newsletter-dialog h2 { font-size:42px; margin:15px 0; }
.ssf-newsletter-dialog > p:not(.eyebrow) { font-size:16px; }
.ssf-popup-close { position:absolute; top:8px; right:12px; background:transparent; border:0; font-size:32px; cursor:pointer; width:44px; height:44px; }
@media(max-width:560px) { .ssf-newsletter-dialog { padding:40px 24px 24px; } .ssf-newsletter-dialog h2 { font-size:34px; } }

/* Gravity Forms can render either an input or button in the submission footer. */
.ssf-gf .gform_wrapper .gform_footer :is(input[type=submit],button[type=submit],.gform_button){
 --gf-ctrl-btn-bg-color-primary:var(--red);--gf-ctrl-btn-color-primary:#fff;
 background:var(--red)!important;color:#fff!important;border:1px solid var(--red)!important;
 border-radius:2px!important;min-height:49px!important;height:auto!important;padding:13px 24px!important;font-family:var(--sans)!important;font-size:14px!important;
 font-weight:700!important;line-height:1.5!important;text-transform:uppercase!important;letter-spacing:.065em!important;opacity:1!important;
}
.ssf-gf .gform_wrapper .gform_footer :is(input[type=submit],button[type=submit],.gform_button):hover{background:var(--red-dark)!important;border-color:var(--red-dark)!important;}
.ssf-gf .gform_wrapper .gform_footer :is(input[type=submit],button[type=submit],.gform_button):focus-visible{outline:3px solid var(--olive-dark);outline-offset:3px;}
.ssf-gf fieldset[disabled] :is(input[type=submit],button[type=submit]){cursor:not-allowed;}
@media(max-width:600px){.ssf-gf .gform_footer :is(input[type=submit],button[type=submit]){width:100%;}}
