@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,600;1,600&display=swap');

:root { --plum:#74506f; --plum-dark:#4d334c; --smoke:#6988a2; --smoke-dark:#3f586d; --mist:#dce4ea; --sand:#ddd1c2; --cream:#f5f0e8; --ink:#202629; --lime:#c7d857; }
.theme-purple{--smoke:#5b335d;--smoke-dark:#3b243d;--mist:#eadfea}.theme-purple .hero-wash{background:linear-gradient(90deg,rgba(40,30,40,.92) 0%,rgba(91,51,93,.72) 40%,rgba(37,29,38,.12) 72%)}.theme-purple .sub-hero::before{background:linear-gradient(90deg,rgba(45,28,46,.94),rgba(91,51,93,.6),rgba(30,35,39,.18))}
.theme-mix{--plum:#5b335d;--plum-dark:#3b243d;--smoke:#6988a2;--smoke-dark:#3f586d;--mist:#dce4ea}.theme-mix .site-header,.theme-mix footer,.theme-mix .compact-footer{background:linear-gradient(105deg,#3f586d 0%,#3f586d 45%,#4a2d4c 100%)}.theme-mix .hero-wash{background:linear-gradient(90deg,rgba(52,75,94,.94) 0%,rgba(105,136,162,.72) 38%,rgba(91,51,93,.38) 66%,rgba(37,29,38,.1) 82%)}.theme-mix .contact{background:linear-gradient(125deg,#3f586d 0%,#536f87 48%,#4a2d4c 100%)}.theme-mix .sub-hero::before{background:linear-gradient(90deg,rgba(63,88,109,.95),rgba(105,136,162,.62),rgba(91,51,93,.28))}.theme-mix .menu-copy{background:linear-gradient(145deg,#6988a2 0%,#59758d 72%,#5b335d 145%)}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif} a{color:inherit;text-decoration:none} img{display:block;max-width:100%}.phone-display{cursor:default;user-select:text}@media(min-width:851px){html{scroll-behavior:auto}}
.site-header{height:88px;display:grid;grid-template-columns:180px 1fr auto;align-items:center;padding:0 5vw;background:var(--smoke-dark);color:white;position:relative;z-index:10}.brand img{width:132px}.nav{display:flex;justify-content:center;gap:34px;font-size:14px}.nav a{opacity:.75}.nav a:hover{opacity:1}.header-call{border:1px solid rgba(255,255,255,.5);padding:12px 18px;border-radius:999px;font-size:13px}.nav-toggle{display:none}
.hero{height:min(760px,calc(100vh - 88px));min-height:620px;position:relative;overflow:hidden;background:#333}.hero-image{position:absolute;inset:0;background:url('/assets/images/emmas-neu-terrasse-ohne-personen.jpg') center/cover}.hero-wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(45,66,84,.94) 0%,rgba(74,103,127,.72) 40%,rgba(37,50,61,.12) 72%)}.hero-copy{position:relative;color:white;padding:12vh 7vw;max-width:790px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:600}.hero h1,.section-heading h2,.menu-copy h2,.ambience-copy h2,.contact h2{font-family:"Playfair Display",serif;font-size:clamp(48px,6.4vw,92px);line-height:.98;margin:22px 0}.hero h1 em{color:#dfcedd;font-weight:600}.hero-copy>p:not(.eyebrow){max-width:570px;line-height:1.7;font-size:18px;color:rgba(255,255,255,.82)}.hero-actions,.button-row{display:flex;align-items:center;gap:28px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;padding:16px 23px;border-radius:4px;font-size:14px;font-weight:600}.primary{background:var(--plum);color:white}.text-link{font-weight:600;border-bottom:1px solid currentColor;padding:7px 0}.today-ribbon{position:absolute;right:5vw;bottom:0;background:var(--plum);color:white;padding:24px 32px;display:grid;gap:3px;min-width:270px}.today-ribbon span{text-transform:uppercase;letter-spacing:.2em;font-size:11px}.today-ribbon strong{font:600 26px "Playfair Display",serif}.today-ribbon small{opacity:.7;margin-top:5px}
.lunch-section{padding:100px 7vw;background:var(--cream)}.section-heading{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #cfc7bc;padding-bottom:30px}.section-heading h2{font-size:clamp(46px,6vw,78px);margin:8px 0 0}.plum{color:var(--plum)}.week{display:grid;text-align:right;gap:3px}.week span{text-transform:uppercase;font-size:11px;letter-spacing:.2em}.week strong{font-size:26px;color:var(--plum)}.week small{color:#76716b}.dish-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.dish-card{position:relative;background:white;min-height:310px;padding:32px;border-top:6px solid var(--smoke);box-shadow:0 12px 35px rgba(56,45,38,.07)}.dish-card:nth-child(2){border-color:var(--plum)}.dish-card:nth-child(3){border-color:var(--lime)}.dish-number{font:600 72px "Playfair Display",serif;color:#ede8e0;position:absolute;right:22px;top:12px}.dish-tag{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:var(--smoke);position:relative}.dish-card h3{font:600 29px "Playfair Display",serif;margin:45px 0 10px;position:relative}.dish-card p{color:#736f69;line-height:1.6;max-width:80%}.price{position:absolute;left:32px;bottom:30px;font-size:20px;color:var(--plum)}.lunch-meta{display:flex;justify-content:space-between;align-items:center;padding:30px 0}.lunch-meta p{max-width:650px;color:#625e59}.dark{background:var(--plum-dark);color:white}.classics{border-top:1px solid #cfc7bc;border-bottom:1px solid #cfc7bc;padding:22px 0}.classics summary{cursor:pointer;font-weight:600;display:flex;justify-content:space-between}.classics summary span{color:var(--plum)}.classic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-top:30px}.classic-grid h3{font:600 19px "Playfair Display",serif}.classic-grid p{font-size:14px;color:#777}.classic-grid strong{color:var(--plum)}
.menu-section,.ambience{display:grid;grid-template-columns:1fr 1fr;min-height:640px}.menu-copy{background:var(--smoke);color:white;padding:9vw 7vw}.menu-copy h2,.ambience-copy h2{font-size:clamp(45px,5vw,72px)}.menu-copy>p:not(.eyebrow),.ambience-copy>p:not(.eyebrow){line-height:1.8;max-width:560px;font-size:17px}.menu-photo img,.ambience-photo img{width:100%;height:100%;object-fit:cover}.ambience-photo picture{display:block;width:100%;height:100%}.dark-link{color:white}.ambience-copy{padding:9vw 7vw;background:var(--sand)}.ambience-copy blockquote{font:italic 600 24px/1.45 "Playfair Display",serif;color:var(--plum);margin:40px 0 10px;padding-left:24px;border-left:3px solid var(--plum)}.ambience-copy>span{font-size:13px;color:#756f68}
.contact{padding:95px 7vw;background:var(--smoke-dark);color:white}.contact>div:first-child{display:flex;align-items:end;justify-content:space-between}.contact h2{font-size:clamp(44px,5vw,70px)}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.contact-cards a{display:grid;gap:13px;padding:34px;border-right:1px solid rgba(255,255,255,.18)}.contact-cards a:last-child{border:0}.contact-cards span{text-transform:uppercase;letter-spacing:.17em;font-size:11px;color:#d9bfd7}.contact-cards strong{font:600 22px/1.35 "Playfair Display",serif}.contact-cards small{opacity:.6}.hours{display:flex;gap:32px;margin-top:28px;align-items:center;font-size:14px}.hours strong{color:var(--sand)}
footer{background:var(--smoke-dark);color:white;padding:55px 7vw;display:grid;grid-template-columns:160px 1fr auto;gap:25px;align-items:center}footer img{width:120px}footer p,footer small{opacity:.6;font-size:13px}.footer-social{display:grid;gap:5px;padding:13px 18px;border:1px solid rgba(255,255,255,.25);border-radius:4px;text-align:right;transition:background .2s,border-color .2s}.footer-social:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.5)}.footer-social span{text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:#ddd1c2}.footer-social strong{font:600 18px "Playfair Display",serif}.legal{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:20px;display:flex;gap:30px}.legal summary{cursor:pointer;font-size:13px}.legal details p{max-width:760px;line-height:1.65}.privacy-details[open]{width:min(920px,100%)}.privacy-text{margin-top:18px;padding:24px;background:rgba(255,255,255,.055);border-left:4px solid var(--plum)}.privacy-text h3{margin:22px 0 6px;font:600 18px "Playfair Display",serif;color:#ddd1c2}.privacy-text h3:first-child{margin-top:0}.privacy-text p{max-width:850px!important;margin:0;opacity:.78;font-size:13px;line-height:1.7}.legal+small{grid-column:1/-1}
@media(max-width:850px){.site-header{grid-template-columns:140px 1fr auto;height:76px}.nav-toggle{display:block;justify-self:end;background:none;color:white;border:0}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--smoke-dark);padding:25px;flex-direction:column}.nav.open{display:flex}.header-call{display:none}.hero{min-height:660px;height:calc(100vh - 76px)}.hero-copy{padding:12vh 6vw}.today-ribbon{right:0}.section-heading{display:block}.week{text-align:left;margin-top:25px}.dish-grid{grid-template-columns:1fr}.classic-grid{grid-template-columns:1fr 1fr}.menu-section,.ambience{grid-template-columns:1fr}.menu-photo,.ambience-photo{height:420px}.ambience-photo{order:2}.contact-cards{grid-template-columns:1fr}.contact-cards a{border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}.hours{align-items:flex-start;flex-direction:column;gap:8px}footer{grid-template-columns:1fr}.legal{display:block}.lunch-meta{align-items:flex-start;gap:20px;flex-direction:column}}
@media(max-width:520px){.hero h1{font-size:48px}.hero-copy{padding-top:80px}.hero-copy>p:not(.eyebrow){font-size:16px}.today-ribbon{left:0;right:0;min-width:0}.lunch-section,.contact{padding:75px 22px}.dish-card{padding:25px}.classic-grid{grid-template-columns:1fr}.menu-copy,.ambience-copy{padding:75px 24px}.button-row{align-items:flex-start;flex-direction:column}.contact-cards a{padding:28px 5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.editor-page{min-height:100vh;background:#efe9df}.editor-page>header{height:82px;background:var(--smoke-dark);display:flex;justify-content:space-between;align-items:center;padding:0 6vw;color:white}.editor-page>header img{width:120px}.editor-shell{max-width:1050px;margin:auto;padding:70px 25px}.editor-shell h1{font:600 clamp(44px,6vw,72px) "Playfair Display",serif;margin:10px 0}.editor-intro{color:#6e6862;max-width:650px;line-height:1.7}.editor-top,.editor-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.editor-top{margin:35px 0}.editor-top label,.editor-field{display:grid;gap:8px;font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:600}.editor-top input,.editor-field input{border:1px solid #d4c9bd;background:white;padding:14px 16px;border-radius:4px;font:400 15px "DM Sans",sans-serif;width:100%}.editor-list{display:grid;gap:18px}.editor-list article{background:white;padding:25px;box-shadow:0 8px 25px rgba(40,30,30,.06);display:grid;gap:17px;border-left:5px solid var(--smoke)}.editor-list article>span{color:var(--plum);font-weight:600}.editor-field span{display:flex}.editor-field span button{width:48px;border:0;background:var(--smoke);color:white;border-radius:0 4px 4px 0;cursor:pointer}.editor-field span input{border-radius:4px 0 0 4px}.editor-actions{display:flex;justify-content:space-between;margin-top:25px}.editor-actions button{border:1px solid var(--plum);background:transparent;color:var(--plum);padding:14px 18px;border-radius:4px;font-weight:600}.editor-actions .save{background:var(--plum);color:white}.editor-message{background:#dce8d4;padding:14px 18px;border-radius:4px}@media(max-width:650px){.editor-top,.editor-row{grid-template-columns:1fr}.editor-actions{align-items:stretch;flex-direction:column;gap:12px}}
.hours{flex-wrap:wrap}.hours b{color:white}@media(min-width:851px){.classic-grid{grid-template-columns:repeat(5,1fr)}}
.classics-feature{margin-top:28px;padding:38px;background:var(--sand);border-left:7px solid var(--plum)}.classics-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:26px}.classics-heading h3{font:600 clamp(30px,3.4vw,46px)/1.05 "Playfair Display",serif;margin:8px 0 0}.classics-heading>span{color:#6f6861;font-size:13px}.classics-feature .classic-grid{padding:0;gap:12px}.classics-feature .classic-grid>article{position:relative;min-height:210px;padding:24px 20px 22px;background:#fff;box-shadow:0 8px 22px rgba(48,40,35,.07);border-top:4px solid var(--smoke)}.classics-feature .classic-grid>article:nth-child(even){border-top-color:var(--plum)}.classic-number{position:absolute;right:14px;top:8px;font:600 42px "Playfair Display",serif;color:#eee8e0}.classics-feature .classic-grid h3{position:relative;margin:28px 0 8px;font-size:20px}.classics-feature .classic-grid p{min-height:44px;margin:0 0 20px;line-height:1.45}.classics-feature .classic-grid strong{font-size:19px}@media(max-width:850px){.classics-feature{padding:28px 22px}.classics-heading{align-items:flex-start;flex-direction:column}.classics-feature .classic-grid>article{min-height:190px}}@media(max-width:520px){.classics-feature{margin-left:-22px;margin-right:-22px;border-left:0}.classics-feature .classic-grid p{min-height:0}}
.today-ribbon{min-width:330px;border-top:5px solid rgba(255,255,255,.25)}.today-ribbon.is-open{border-top-color:#9fd3a9}.today-ribbon.is-closed{border-top-color:#d7bdcf}.today-ribbon strong{font-size:24px}.kitchen-status{display:flex;align-items:center;gap:18px;margin:28px 0 36px;padding:22px 26px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16)}.kitchen-status .status-dot{width:14px;height:14px;border-radius:50%;background:#d3b5ca;box-shadow:0 0 0 7px rgba(211,181,202,.12);flex:0 0 auto}.kitchen-status.is-open .status-dot{background:#8ed09d;box-shadow:0 0 0 7px rgba(142,208,157,.13)}.kitchen-status>div{display:grid;gap:5px}.kitchen-status strong{font:600 23px "Playfair Display",serif}.kitchen-status small{color:rgba(255,255,255,.7)}.hours-block{display:grid;grid-template-columns:145px 1fr;gap:18px 28px;margin-top:30px}.hours-block>strong{color:var(--sand)}.hours-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 30px}.hours-row{display:grid;grid-template-columns:105px 1fr;gap:12px;font-size:14px}.hours-row span{color:rgba(255,255,255,.75)}.hours-block>small{grid-column:2;color:#d9bfd7}@media(max-width:850px){.today-ribbon{min-width:0}.hours-block{grid-template-columns:1fr}.hours-list{grid-template-columns:1fr}.hours-block>small{grid-column:1}.hours-row{grid-template-columns:105px 1fr}}@media(max-width:520px){.kitchen-status{padding:20px 18px}.kitchen-status strong{font-size:20px}.hours-row{grid-template-columns:90px 1fr}}
.holiday-notice{display:flex;align-items:center;gap:14px;margin-top:28px;padding:17px 20px;background:#f0e3ec;border-left:6px solid var(--plum);color:var(--plum-dark)}.holiday-notice[hidden]{display:none}.holiday-notice strong{font:600 21px "Playfair Display",serif}.holiday-notice span{font-size:14px}@media(max-width:600px){.holiday-notice{align-items:flex-start;flex-direction:column;gap:4px}}
.reservation-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;padding:95px 7vw;background:var(--cream);scroll-margin-top:30px}.reservation-intro h2{font:600 clamp(44px,5vw,70px)/1 "Playfair Display",serif;margin:18px 0}.reservation-intro>p:not(.eyebrow){max-width:500px;line-height:1.7;color:#6c6761}.reservation-warning{max-width:520px;margin:28px 0;padding:18px 20px;background:var(--sand);border-left:5px solid var(--plum);line-height:1.55}.reservation-intro .text-link{display:inline-block;color:var(--plum)}.reservation-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:34px;background:#fff;box-shadow:0 14px 38px rgba(40,35,32,.09);border-top:6px solid var(--smoke)}.reservation-form>label:not(.privacy-check):not(.website-field){display:grid;gap:8px;text-transform:uppercase;letter-spacing:.09em;font-size:11px;font-weight:600}.reservation-form input,.reservation-form textarea{width:100%;border:1px solid #d5cbc0;background:#faf8f5;padding:14px 15px;border-radius:3px;font:400 16px "DM Sans",sans-serif;color:var(--ink)}.reservation-form textarea{resize:vertical}.full-field{grid-column:1/-1}.privacy-check{display:flex;gap:11px;align-items:flex-start;font-size:13px;line-height:1.5;color:#68635e}.privacy-check input{width:18px;height:18px;margin:1px 0 0;flex:0 0 auto}.website-field{position:absolute!important;left:-9999px!important}.reservation-submit{display:flex;align-items:center;gap:18px}.reservation-submit button{border:0;cursor:pointer}.reservation-submit button:disabled{opacity:.55;cursor:wait}.reservation-submit span{font-size:13px;color:#8b3344}.reservation-dialog{width:min(560px,calc(100vw - 36px));border:0;padding:42px;background:var(--cream);color:var(--ink);box-shadow:0 25px 80px rgba(20,20,20,.35)}.reservation-dialog::backdrop{background:rgba(28,38,43,.72);backdrop-filter:blur(4px)}.reservation-dialog h2{font:600 45px "Playfair Display",serif;margin:12px 0}.reservation-dialog>p:not(.eyebrow){font-size:17px}.reservation-dialog>div{margin:24px 0;padding:18px;background:var(--sand);border-left:5px solid var(--plum);line-height:1.55}.reservation-dialog .button{border:0;cursor:pointer}.dialog-close{position:absolute;right:14px;top:12px;border:0;background:transparent;font-size:30px;color:#706a65;cursor:pointer}@media(max-width:850px){.reservation-section{grid-template-columns:1fr;padding:75px 24px}.reservation-form{padding:28px}}@media(max-width:560px){.reservation-form{grid-template-columns:1fr;padding:24px 18px}.reservation-form>*{grid-column:1}.reservation-submit{align-items:stretch;flex-direction:column}.reservation-dialog{padding:34px 24px}}

/* Reservierung: ruhige, hochwertige Karte im Emma's-Farbspiel */
.reservation-section{position:relative;grid-template-columns:minmax(300px,.8fr) minmax(520px,1.2fr);align-items:center;gap:clamp(45px,7vw,110px);padding:110px max(7vw,calc((100vw - 1440px)/2));overflow:hidden;background:linear-gradient(125deg,var(--smoke-dark) 0%,var(--smoke) 100%);color:#fff}.reservation-section::after{content:"";position:absolute;width:440px;height:440px;right:-180px;top:-210px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.02);pointer-events:none}.reservation-intro{position:relative;z-index:1;min-width:0}.reservation-intro .eyebrow{color:#ead9e7}.reservation-intro h2{max-width:520px;margin:18px 0 24px;color:#fff}.reservation-intro>p:not(.eyebrow){max-width:470px;color:rgba(255,255,255,.8);font-size:17px}.reservation-warning{max-width:520px;margin:32px 0 25px;padding:20px 22px;background:rgba(48,39,51,.28);border:1px solid rgba(255,255,255,.16);border-left:5px solid #d6b9d2;color:#fff;box-shadow:0 12px 35px rgba(29,42,51,.12)}.reservation-intro .text-link{color:#fff}.reservation-form{position:relative;z-index:1;min-width:0;width:100%;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 18px;padding:38px 40px 40px;border:0;border-radius:7px;background:var(--cream);color:var(--ink);box-shadow:0 30px 75px rgba(28,42,53,.28)}.reservation-form::before{content:"Ihre Reservierungsdaten";grid-column:1/-1;min-width:0;padding-bottom:19px;border-bottom:1px solid #d9cec2;color:var(--plum);font:600 25px "Playfair Display",serif}.reservation-form>label{min-width:0;max-width:100%}.reservation-form>label:not(.privacy-check):not(.website-field){gap:9px;color:#59544f;font-size:11px}.reservation-form input,.reservation-form textarea{display:block;min-width:0;max-width:100%;width:100%;min-height:54px;border:1px solid #d8cfc5;border-radius:6px;background:#fff;padding:15px 16px;transition:border-color .2s,box-shadow .2s}.reservation-form input[type="date"],.reservation-form input[type="time"]{inline-size:100%;min-inline-size:0}.reservation-form textarea{min-height:126px}.reservation-form input:focus,.reservation-form textarea:focus{outline:0;border-color:var(--smoke);box-shadow:0 0 0 4px rgba(105,136,162,.15)}.privacy-check{padding:4px 0;color:#655f59}.privacy-check input{min-height:0;accent-color:var(--plum)}.reservation-submit{min-width:0;align-items:stretch;flex-direction:column;gap:10px}.reservation-submit .button{width:100%;min-width:0;min-height:56px;border-radius:5px;font-size:15px;box-shadow:0 8px 20px rgba(116,80,111,.2)}.reservation-submit span{min-height:18px;text-align:center}.reservation-dialog{border-radius:7px;border-top:7px solid var(--plum)}
.reservation-form .privacy-check{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:11px;width:100%;min-width:0;max-width:100%;overflow:visible}.reservation-form .privacy-check input[type="checkbox"]{display:block;width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;max-height:18px;margin:2px 0 0;padding:0}.reservation-form .privacy-check span{display:block;min-width:0;max-width:100%;overflow-wrap:break-word;word-break:normal}
.today-ribbon{min-width:360px;padding:27px 32px 24px;gap:5px}.today-ribbon strong{font-size:26px;line-height:1.15}.today-ribbon>small{font-size:13px;line-height:1.4;opacity:.78}
@media(max-width:980px){.reservation-section{grid-template-columns:1fr;gap:48px}.reservation-intro{max-width:680px}.reservation-form{width:100%;max-width:760px}}
@media(max-width:560px){html,body{max-width:100%;overflow-x:hidden}.reservation-section{width:100%;max-width:100%;padding:74px 12px}.reservation-intro h2{font-size:44px}.reservation-form{grid-template-columns:minmax(0,1fr);max-width:100%;padding:28px 14px}.reservation-form::before{font-size:22px}.reservation-form>*{grid-column:1;min-width:0;max-width:100%}.reservation-form>label{width:100%;overflow:hidden}.reservation-form input[type="date"],.reservation-form input[type="time"]{-webkit-appearance:none;appearance:none;display:block;inline-size:100%;min-inline-size:0;max-inline-size:100%;height:52px;padding:12px 10px;font-size:16px;line-height:1.25}.reservation-form input[type="date"]::-webkit-date-and-time-value,.reservation-form input[type="time"]::-webkit-date-and-time-value{min-width:0;text-align:left}.reservation-form input[type="date"]::-webkit-calendar-picker-indicator,.reservation-form input[type="time"]::-webkit-calendar-picker-indicator{flex:0 0 auto;margin:0;padding:3px}.reservation-warning{padding:18px}.reservation-dialog h2{font-size:38px}}
@media(max-width:520px){.today-ribbon{min-width:0;padding:22px 24px 20px}.today-ribbon strong{font-size:24px}}
.seasonal-button{border:1px solid rgba(255,255,255,.6);background:rgba(116,80,111,.62);color:#fff}.seasonal-button:hover{background:var(--plum)}
.closure-stamp{position:absolute;z-index:4;right:5vw;top:42px;width:min(410px,40vw);padding:22px 25px 20px;border:3px solid var(--plum);outline:1px solid rgba(255,255,255,.62);outline-offset:-8px;background:rgba(247,242,234,.96);color:var(--plum-dark);box-shadow:0 18px 50px rgba(24,31,36,.28);transform:rotate(1deg);display:grid;gap:7px}.closure-stamp[hidden]{display:none}.closure-stamp span{text-transform:uppercase;letter-spacing:.2em;font-size:10px;font-weight:700}.closure-stamp strong{font:600 clamp(25px,2.2vw,34px)/1.05 "Playfair Display",serif}.closure-stamp small{font-size:13px;line-height:1.45;color:#625861}.closure-stamp em{margin-top:3px;padding-top:9px;border-top:1px solid rgba(116,80,111,.3);font-size:12px;line-height:1.45;font-style:normal}.theme-purple .closure-stamp{border-color:#5b335d}.theme-blue .closure-stamp{border-color:#6988a2}
@media(max-width:850px){.closure-stamp{top:18px;left:18px;right:18px;width:auto;max-width:480px;padding:18px 21px 17px;transform:none}.closure-stamp strong{font-size:25px}.hero:has(.closure-stamp:not([hidden])) .hero-copy{padding-top:210px}}
@media(max-width:520px){.closure-stamp{left:12px;right:12px;top:12px}.closure-stamp strong{font-size:23px}.closure-stamp small,.closure-stamp em{font-size:12px}.hero:has(.closure-stamp:not([hidden])) .hero-copy{padding-top:205px}}
.closure-stamp{transform:none}
.closure-stamp{right:4vw;top:52px;width:min(500px,44vw);padding:30px 34px 28px;overflow:hidden;transform:rotate(-4.5deg);transform-origin:center;border:5px double var(--plum);outline:2px dashed rgba(116,80,111,.52);outline-offset:-15px;background:rgba(248,243,235,.91);box-shadow:0 22px 54px rgba(24,31,36,.34);filter:saturate(.9) contrast(1.02)}.closure-stamp::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(17deg,rgba(116,80,111,.035) 0 2px,transparent 2px 9px);mix-blend-mode:multiply}.closure-stamp>*{position:relative;z-index:1}.closure-stamp span{font-size:11px;letter-spacing:.26em}.closure-stamp strong{font-size:clamp(31px,3vw,45px);line-height:.98}.closure-stamp small{font-size:14px}.closure-stamp em{font-size:13px}
@media(max-width:850px){.closure-stamp{left:24px;right:24px;top:30px;width:auto;max-width:none;padding:24px 27px 23px;transform:rotate(-3deg)}.closure-stamp strong{font-size:31px}.hero:has(.closure-stamp:not([hidden])) .hero-copy{padding-top:230px}}
@media(max-width:520px){.closure-stamp{left:17px;right:17px;top:20px;padding:21px 22px 20px;transform:rotate(-2.2deg);outline-offset:-11px}.closure-stamp span{font-size:9px}.closure-stamp strong{font-size:27px}.closure-stamp small,.closure-stamp em{font-size:12px}.hero:has(.closure-stamp:not([hidden])) .hero-copy{padding-top:225px}}
.closure-stamp{transform:rotate(4.5deg)}
@media(max-width:850px){.closure-stamp{transform:rotate(3deg)}}
@media(max-width:520px){.closure-stamp{transform:rotate(2.2deg)}}
.closure-stamp{right:9vw}
@media(max-width:850px){.closure-stamp{right:24px}}
@media(max-width:520px){.closure-stamp{right:17px}}
.closure-stamp{display:none!important}
.today-ribbon.is-private-event{min-width:440px;max-width:540px;padding:31px 36px 29px;border-top:7px solid var(--plum);background:#eee3d4;color:var(--plum-dark);box-shadow:0 18px 42px rgba(24,31,36,.28)}.today-ribbon.is-private-event span{color:var(--plum);font-weight:700}.today-ribbon.is-private-event strong{font-size:30px;line-height:1.05}.today-ribbon.is-private-event small{color:#665b62;opacity:1;line-height:1.5}.theme-purple .today-ribbon.is-private-event{background:#eee3d4;color:#4e304f}
.today-ribbon [data-closure-note],.kitchen-status [data-closure-note]{display:block;margin-top:8px;padding-top:8px;border-top:1px solid currentColor;font-size:13px;line-height:1.45;font-style:normal;overflow-wrap:anywhere}.today-ribbon [data-closure-note][hidden],.kitchen-status [data-closure-note][hidden]{display:none}.today-ribbon [data-closure-note]{color:#5e485b}.kitchen-status [data-closure-note]{color:#ead9e7;opacity:.9}
@media(max-width:850px){.today-ribbon.is-private-event{min-width:390px;max-width:calc(100vw - 28px);padding:27px 30px 25px}}
@media(max-width:520px){.today-ribbon.is-private-event{left:0;right:0;min-width:0;max-width:none;padding:24px 22px 22px}.today-ribbon.is-private-event strong{font-size:26px}}
