
#sm-fest .sf-preview-tools{justify-content:center;margin-bottom:16px}
#sm-fest .sf-stage{container-type:inline-size;width:100%;margin:auto}#sm-fest .sf-stage.is-mobile{max-width:390px}
#sm-fest{--sf-dark:#30322f;--sf-paper:#f3efe7;--sf-gold:#d9c2a5;--sf-muted:#d0c7bd;font:16px/1.65 'DM Sans',sans-serif;background:var(--sf-dark);color:var(--sf-paper);color-scheme:dark;overflow-wrap:break-word}
#sm-fest *{box-sizing:border-box}#sm-fest [hidden]{display:none!important}#sm-fest p,#sm-fest h1,#sm-fest h2{margin:0}#sm-fest h1,#sm-fest h2{font-family:'Playfair Display',Georgia,serif;letter-spacing:-.045em;font-weight:600;line-height:1.08;color:inherit}#sm-fest button,#sm-fest input,#sm-fest select{font-family:'DM Sans',sans-serif}#sm-fest .sf-proof{font-size:14px;letter-spacing:.1em;padding:7px 5%;background:#092022;text-transform:uppercase;color:var(--sf-muted)}
#sm-fest .sf-nav{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:25px 5%;border-bottom:1px solid #37504f}#sm-fest .sf-brand{font:26px/1.2 'Playfair Display',Georgia,serif;letter-spacing:-.035em}#sm-fest .sf-brand small{display:block;font:11px/1.5 'DM Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--sf-gold);margin-top:7px}#sm-fest .sf-nav nav{display:flex;gap:18px}#sm-fest .sf-nav button{background:none;border:0;border-bottom:1px solid transparent;color:var(--sf-muted);padding:10px 0;font-size:14px;min-height:44px}#sm-fest .sf-nav button[aria-pressed=true]{border-color:var(--sf-gold);color:var(--sf-paper)}
#sm-fest .sf-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.07fr);gap:22px;padding:45px 5% 46px;align-items:center}#sm-fest .sf-intro{position:relative;z-index:1}#sm-fest .sf-eyebrow{font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--sf-gold);line-height:1.5}#sm-fest .sf-intro h1{font-size:clamp(42px,6.6cqw,83px);margin:26px 0 28px;animation:sf-type-in 1.15s .1s both}#sm-fest .sf-intro h1>span,#sm-fest .sf-intro h1>em{display:block}#sm-fest .sf-intro h1>em{font-weight:600;color:var(--sf-gold)}#sm-fest .sf-lead{font-size:16px;color:#d0d7d2;line-height:1.8;max-width:390px}#sm-fest .sf-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:50px;background:var(--sf-paper);color:var(--sf-dark);border:0;border-radius:3px;padding:15px 22px;font-size:14px;line-height:1.5;font-weight:500;max-width:100%;transition:transform .25s}#sm-fest .sf-button:hover{transform:translateY(-2px)}#sm-fest .sf-intro>.sf-button{margin-top:30px}#sm-fest .sf-handwritten{font-family:'Playfair Display',Georgia,serif;font-style:italic;color:var(--sf-gold);font-size:14px;margin-top:26px!important}
#sm-fest .sf-story{min-width:0}#sm-fest .sf-film{position:relative;min-height:485px;isolation:isolate;overflow:hidden;background:#273b35;border-radius:120px 120px 4px 4px;animation:sf-frame-in 1.3s cubic-bezier(.2,.7,.2,1) both}#sm-fest .sf-scene{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 58%;opacity:0;transform:scale(1.05);transition:opacity .9s ease,transform 6s linear;z-index:0}#sm-fest .sf-scene.is-active{opacity:1;transform:scale(1);z-index:1}#sm-fest [data-scene-image=suess]{object-position:46% 50%}#sm-fest [data-scene-image=anstossen]{object-position:55% 50%}#sm-fest .sf-film-gradient{position:absolute;inset:0;z-index:2;background:linear-gradient(0deg,rgba(5,21,23,.94),rgba(5,21,23,.12) 52%,rgba(5,21,23,.04))}#sm-fest .sf-caption{position:absolute;z-index:3;bottom:30px;left:27px;right:20px}#sm-fest .sf-caption h2{font-size:clamp(31px,4.1cqw,50px);margin:11px 0 15px}#sm-fest .sf-caption p{font-size:14px;color:#ebece3;max-width:270px}#sm-fest .sf-motion{position:absolute;right:21px;top:24px;z-index:4;background:rgba(10,30,31,.88);border:1px solid #9daa9c;color:var(--sf-paper);border-radius:30px;padding:10px 15px;font-size:14px;min-height:44px}#sm-fest .sf-scenes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:17px}#sm-fest .sf-scenes button{background:none;color:var(--sf-muted);border:0;border-top:2px solid #4d625c;padding:13px 0 6px;min-height:44px;font-size:14px;text-align:left;line-height:1.3}#sm-fest .sf-scenes button[aria-pressed=true]{color:var(--sf-gold);border-color:var(--sf-gold)}
#sm-fest .sf-composer{display:grid;grid-template-columns:1fr 1.15fr;gap:50px;padding:50px 5% 60px;background:var(--sf-paper);color:var(--sf-dark)}#sm-fest .sf-composer .sf-eyebrow{color:#936036}#sm-fest .sf-composer h2{font-size:clamp(31px,4.5cqw,48px);margin:20px 0 24px}#sm-fest .sf-composer h2 em{color:#946844;font-weight:600}#sm-fest .sf-composer-intro>p:last-child{color:#556864;font-size:14px;line-height:1.8}#sm-fest .sf-choices{min-width:0}#sm-fest .sf-occasions{display:grid;grid-template-columns:1fr 1fr;gap:8px}#sm-fest .sf-occasions button{padding:11px 9px;min-height:44px;background:transparent;color:var(--sf-dark);border:1px solid #c7c9bc;border-radius:2px;font-size:14px}#sm-fest .sf-occasions button[aria-pressed=true]{background:var(--sf-dark);border-color:var(--sf-dark);color:var(--sf-paper)}#sm-fest .sf-guestrow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:25px 0;font-size:14px}#sm-fest .sf-venue-capacity{font-size:14px;line-height:1.7;color:#536660;margin:-10px 0 24px!important}#sm-fest .sf-stepper{display:flex;align-items:center;border-bottom:1px solid #abb4a9}#sm-fest .sf-stepper button{background:none;border:0;color:var(--sf-dark);font-size:23px;padding:0;min-height:44px;min-width:35px}#sm-fest .sf-stepper input{width:48px;padding:6px 0;border:0;background:none;color:var(--sf-dark);font-size:20px;text-align:center;appearance:textfield}#sm-fest .sf-stepper input::-webkit-inner-spin-button{appearance:none}#sm-fest .sf-extras{border:0;margin:0;padding:0}#sm-fest .sf-extras legend,#sm-fest .sf-service-label{font-size:14px;color:#536660;margin-bottom:13px}#sm-fest .sf-extras label{position:relative;display:flex;align-items:center;gap:12px;border-top:1px solid #cbd0c5;padding:16px 0;font-size:14px}#sm-fest .sf-extras input{accent-color:var(--sf-dark);width:18px;height:18px;flex-shrink:0}#sm-fest .sf-extras small{display:block;color:#63716a;font-size:14px;margin-top:3px}#sm-fest .sf-extras label>span:last-child{margin-left:auto;font-size:20px;color:#936036}#sm-fest .sf-service-label{display:block;margin-top:24px}#sm-fest #sf-service{width:100%;max-width:100%;padding:13px 10px;background:transparent;border:1px solid #c7c9bc;color:var(--sf-dark);font-size:16px;color-scheme:light}
#sm-fest .sf-invitation{position:relative;margin:0;padding:36px 5% 40px;background:#dfcba6;color:var(--sf-dark)}#sm-fest .sf-invitation-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}#sm-fest .sf-invitation .sf-eyebrow{color:#5c6149}#sm-fest .sf-mark{font:italic 40px/1 'Playfair Display',Georgia,serif;color:#5c6149}#sm-fest .sf-invitation h2{font-size:clamp(32px,4.5cqw,52px);max-width:650px}#sm-fest .sf-invitation-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:25px}#sm-fest .sf-invitation-bottom p{font-size:14px;line-height:1.8}#sm-fest .sf-dark{background:var(--sf-dark);color:var(--sf-paper)}#sm-fest .sf-small{font-size:14px;margin-top:23px!important;color:#53604f}#sm-fest .sf-contact{background:var(--sf-paper);color:var(--sf-dark);padding:40px 5%;scroll-margin-top:20px}#sm-fest .sf-contact .sf-eyebrow{color:#936036}#sm-fest .sf-contact h2{font-size:35px;margin:20px 0}#sm-fest .sf-formgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:26px 0}#sm-fest .sf-formgrid label{display:grid;gap:8px;font-size:14px}#sm-fest .sf-formgrid input{width:100%;min-width:0;font-size:16px;padding:13px 10px;border:1px solid #c4c9bd;background:#fbf8f2;color:var(--sf-dark);color-scheme:light}#sm-fest [data-result]{margin-top:20px;font-size:14px}#sm-fest .sf-footer{display:flex;gap:20px;justify-content:space-between;padding:28px 5%;font-size:14px;color:var(--sf-muted)}
@keyframes sf-type-in{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes sf-frame-in{from{clip-path:inset(12% 0 12% 0 round 140px 140px 4px 4px);transform:translateY(30px);opacity:.3}to{clip-path:inset(0 round 120px 120px 4px 4px);transform:translateY(0);opacity:1}}
@container(max-width:590px){#sm-fest .sf-nav{padding:20px 24px;align-items:start}#sm-fest .sf-brand{font-size:23px}#sm-fest .sf-brand small{font-size:14px;letter-spacing:.09em}#sm-fest .sf-nav nav{gap:10px;flex-direction:column;align-items:end}#sm-fest .sf-nav button{font-size:14px;padding:4px 0;min-height:44px}#sm-fest .sf-hero{grid-template-columns:1fr;padding:33px 24px 34px;gap:32px}#sm-fest .sf-intro h1{font-size:clamp(44px,13.2cqw,66px);margin:20px 0 24px}#sm-fest .sf-intro h1 em br{display:none}#sm-fest .sf-intro .sf-lead{font-size:16px;max-width:none}#sm-fest .sf-intro>.sf-button{margin-top:24px;width:100%}#sm-fest .sf-handwritten{margin-top:21px!important;font-size:14px}#sm-fest .sf-film{min-height:425px;border-radius:120px 120px 4px 4px}#sm-fest .sf-caption{left:24px;bottom:26px}#sm-fest .sf-caption h2{font-size:36px}#sm-fest .sf-scenes button{font-size:14px}#sm-fest .sf-composer{grid-template-columns:1fr;gap:30px;padding:36px 24px}#sm-fest .sf-composer h2{font-size:36px}#sm-fest .sf-composer h2 br{display:none}#sm-fest .sf-occasions button{font-size:14px}#sm-fest .sf-invitation{padding:30px 24px 34px}#sm-fest .sf-invitation h2{font-size:34px}#sm-fest .sf-invitation-bottom{align-items:stretch;flex-direction:column}#sm-fest .sf-invitation-bottom .sf-button{margin-top:3px}#sm-fest .sf-guestrow{font-size:14px}#sm-fest .sf-contact{padding:34px 24px}#sm-fest .sf-formgrid{grid-template-columns:1fr}#sm-fest .sf-footer{flex-direction:column;gap:8px;padding:25px 24px}}
@media(prefers-reduced-motion:reduce){#sm-fest *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Production surface: real navigation and existing inquiry forms. */
#sm-fest{container-type:inline-size;isolation:isolate;overflow-wrap:normal}
#sm-fest a{color:inherit;text-decoration:none}#sm-fest button{cursor:pointer}
#sm-fest h1,#sm-fest h2{overflow-wrap:normal;word-break:normal;hyphens:manual;text-transform:none;text-shadow:none}
#sm-fest .sf-intro h1{font-size:clamp(2.75rem,6cqw,5.3rem);line-height:1.1;letter-spacing:-.035em}
#sm-fest .sf-intro h1 em{font-style:italic}
#sm-fest .sf-lead,#sm-fest .sf-composer-intro>p:last-child,#sm-fest .sf-invitation-bottom p{font-size:1rem}
#sm-fest .sf-page-links{display:flex;justify-content:flex-end;gap:1.5rem;padding:1rem max(5%,calc((100% - 1260px)/2));border-bottom:1px solid #37504f;flex-wrap:wrap}
#sm-fest .sf-page-links a{font-size:.875rem;min-height:44px;display:flex;align-items:center;border-bottom:1px solid transparent}
#sm-fest .sf-page-links a[aria-current=page]{color:#dcbd8d;border-color:#dcbd8d}
#sm-fest .sf-hero,#sm-fest .sf-composer,#sm-fest .sf-invitation{padding-left:max(5%,calc((100% - 1260px)/2));padding-right:max(5%,calc((100% - 1260px)/2))}
#sm-fest .sf-hero{padding-top:2.8rem;padding-bottom:3rem;gap:clamp(1.4rem,5cqw,5rem)}
#sm-fest .sf-film{min-height:clamp(440px,45cqw,620px)}
#sm-fest .sf-scenes button{font-size:.875rem}
#sm-fest .sf-caption h2{max-width:450px}
#sm-fest .sf-story.is-paused .sf-scene{transition:none}
#sm-fest .sf-composer{scroll-margin-top:100px;color-scheme:light}
#sm-fest .sf-composer input,#sm-fest .sf-composer select{font-size:1rem}
#sm-fest .sf-stepper input{width:4rem;font-size:1.3rem}
#sm-fest .sf-stepper button{min-width:44px}
#sm-fest .sf-extras label{font-size:1rem}
#sm-fest .sf-extras small{font-size:.875rem}
#sm-fest #sf-space{width:100%;padding:13px 10px;border:1px solid #a7b4a9;background:transparent;color:#112a2c;border-radius:0}
#sm-fest .sf-button{font-size:1rem;min-height:50px;line-height:1.45;white-space:normal}
#sm-fest .sf-error{font-size:1rem;color:#893129;margin:0 0 1rem}
#sm-fest :is(a,button,input,select):focus-visible{outline:3px solid #3084b8;outline-offset:4px}
#sm-fest .sf-composer [aria-invalid=true]{outline:2px solid #893129;outline-offset:3px}
#sm-fest .sf-invitation h2{font-size:clamp(2rem,4.4cqw,3.5rem)}
#sm-fest .sf-small{font-size:.875rem;line-height:1.65;max-width:820px}
.fest-form-extras{grid-column:1/-1;border:1px solid #c7c9bc;border-radius:12px;padding:1rem;margin:1.2rem 0;font-size:1rem}
.fest-form-extras legend{font-weight:600;padding:0 .35rem}
.fest-form-extras label{display:flex!important;align-items:center;gap:.6rem;min-height:44px;font-weight:400}
.fest-form-extras input{width:20px!important;height:20px!important;min-height:20px!important;accent-color:#112a2c;flex:none}
.fest-form-extras p{font-size:.875rem!important;margin:.5rem 0 0!important;line-height:1.5}
@container(max-width:700px){#sm-fest .sf-hero,#sm-fest .sf-composer{grid-template-columns:1fr}#sm-fest .sf-hero{gap:2rem}#sm-fest .sf-intro h1{font-size:clamp(2.75rem,10cqw,4rem)}#sm-fest .sf-intro h1 em br{display:none}#sm-fest .sf-film{min-height:440px}#sm-fest .sf-composer{gap:1.5rem}#sm-fest .sf-invitation-bottom{flex-direction:column;align-items:stretch}#sm-fest .sf-caption h2{font-size:2rem}#sm-fest .sf-page-links{justify-content:flex-start;gap:1.25rem}#sm-fest .sf-guestrow{flex-wrap:wrap}#sm-fest .sf-occasions button{font-size:.875rem}#sm-fest .sf-intro>.sf-button{width:100%}}
@media(prefers-reduced-motion:reduce){#sm-fest *,#sm-fest *::before,#sm-fest *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@container(max-width:700px){#sm-fest .sf-invitation h2{font-size:clamp(1.65rem,7.5cqw,2.4rem)}}

#sm-fest [data-scene-image="suess"]{object-position:50% 45%}



/* Landscape food photographs need a landscape frame. */
.catering-page #sm-fest .sf-film{min-height:0;aspect-ratio:4/3;border-radius:60px 60px 4px 4px}
@media(max-width:700px){.catering-page #sm-fest .sf-film{min-height:360px;aspect-ratio:auto;border-radius:60px 60px 4px 4px}}
