:root{--cream:#fbf3e5;--brown:#562d1d;--ink:#39281e;--gold:#c19a55;--sage:#dde0ca}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.65 system-ui,sans-serif}a{color:inherit}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.ribbon{text-align:center;background:var(--brown);color:var(--cream);padding:9px;font-size:12px;letter-spacing:2.5px}header{max-width:1240px;margin:auto;padding:28px 40px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font:700 31px Georgia,serif;text-decoration:none;white-space:nowrap;color:var(--brown)}.brand i{font-weight:400;font-size:.65em}.brand span{display:block;font:10px system-ui;letter-spacing:2.8px;text-align:center;margin-top:10px}nav{display:flex;align-items:center;gap:30px;font-size:14px}nav a{text-decoration:none}.nav-order{border:1px solid var(--brown);padding:10px 20px;border-radius:5px}.hero{max-width:1240px;margin:auto;padding:45px 65px 90px;display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:center}.eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:600;color:var(--brown);margin:0 0 20px}h1{font:normal clamp(52px,5.7vw,78px)/1.09 Georgia,serif;letter-spacing:-2px;color:var(--brown);margin:0 0 25px}h1 em{color:#916445;font-weight:400}.hero-copy>p:not(.eyebrow){max-width:370px;color:#705b4b}.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:30px}.button{display:inline-block;text-align:center;background:var(--brown);color:var(--cream);border:1px solid var(--brown);padding:13px 22px;text-decoration:none;font-size:14px;border-radius:5px;font-weight:600}.button:hover{background:#72432b}.text-link{font-size:14px;text-underline-offset:5px}.hero-photo{position:relative;padding:14px;border:1px solid #c8af8e;border-radius:48% 48% 5px 5px}.hero-photo img{display:block;width:100%;height:510px;object-fit:cover;border-radius:48% 48% 3px 3px}.photo-note{position:absolute;bottom:18px;left:-25px;background:#fffaf0;padding:13px 25px;transform:rotate(-6deg);box-shadow:0 4px 15px #39281e18;font:italic 20px Georgia}.strip{display:flex;justify-content:center;align-items:center;gap:40px;padding:24px;background:var(--sage);font:italic 21px Georgia}.menu-section{padding:90px 40px;max-width:1160px;margin:auto}.section-title{text-align:center;margin-bottom:50px}h2{font:normal clamp(36px,4vw,52px)/1.2 Georgia;margin:0 0 16px;color:var(--brown);letter-spacing:-1px}.section-title>p:last-child{color:#705b4b;margin:0}.menu-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:start}.menu-art img{display:block;width:100%;box-shadow:0 15px 40px #562d1d15;border-radius:4px}.menu-group{margin-bottom:26px}h3{font:italic 26px Georgia;margin:0 0 15px;color:var(--brown)}dl{margin:0}dl>div{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px dotted #b9a68c;font-size:16px}dd{margin:0;font-weight:600;white-space:nowrap}.extras{background:#e9e8d6;padding:22px;margin:25px 0}.extras p{font-size:14px;margin:10px 0 0}.gallery-section{padding:80px 40px;text-align:center;background:#f1e3ca;background-image:linear-gradient(90deg,#ffffff14 50%,transparent 50%),linear-gradient(#ffffff14 50%,transparent 50%);background-size:40px 40px}.gallery{max-width:1160px;margin:0 auto 40px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.photo{display:block;border:0;background:#fff9eb;padding:9px 9px 16px;box-shadow:0 5px 12px #562d1d12;transition:transform .2s}.photo:hover{transform:translateY(-5px) rotate(-1deg)}.photo img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.outline{background:transparent;color:var(--brown)}.outline:hover{color:var(--cream)}.order-section{text-align:center;padding:75px 25px;background:var(--brown);color:var(--cream)}.order-section .eyebrow{color:#d0b587}.order-section h2{color:var(--cream)}.order-section p{color:#ead7bd}.light{background:var(--cream);color:var(--brown);margin-top:15px}.light:hover{background:#e6d7b9}.phone{display:block;margin-top:20px;font-size:15px;text-underline-offset:5px}footer{padding:40px;display:flex;align-items:center;justify-content:space-between;gap:25px;max-width:1240px;margin:auto;font-size:14px}footer .brand{font-size:25px}footer p{font:italic 17px Georgia}dialog{border:0;padding:45px 15px 15px;background:var(--cream);max-width:95vw;max-height:95vh;border-radius:6px}dialog::backdrop{background:#21170ee6}dialog>img{display:block;max-width:85vw;max-height:72vh;object-fit:contain;margin:auto}.close{position:absolute;right:12px;top:0;background:none;border:0;color:var(--brown);font-size:32px;padding:0 8px}.lightbox-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:15px;font-size:14px}.lightbox-controls button{background:none;border:1px solid var(--brown);padding:7px 14px;border-radius:4px;color:var(--brown)}@media(max-width:900px){.hero{gap:35px;padding:35px 35px 65px}.hero-photo img{height:430px}.menu-layout{gap:35px}.gallery{grid-template-columns:repeat(3,1fr)}footer{flex-wrap:wrap}}@media(max-width:620px){header{padding:22px 20px;flex-direction:column;gap:20px}nav{gap:22px}.hero{grid-template-columns:1fr;padding:35px 25px 60px;gap:40px}h1{font-size:57px}.hero-photo{max-width:380px;width:100%;margin:auto}.hero-photo img{height:390px}.photo-note{left:-8px;font-size:18px}.strip{gap:16px;font-size:16px;flex-wrap:wrap}.strip span:last-child{display:none}.menu-section{padding:60px 22px}.menu-layout{grid-template-columns:1fr;gap:40px}.section-title{margin-bottom:35px}.gallery-section{padding:60px 16px}.gallery{grid-template-columns:repeat(2,1fr);gap:12px}.photo{padding:6px 6px 10px}.order-section{padding:60px 20px}footer{padding:30px 20px;flex-direction:column;gap:12px;text-align:center}footer p{margin:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo{transition:none}}

[hidden]{display:none!important}

/* Autumn theme */
:root{--cream:#fff5e5;--brown:#60301e;--gold:#c57b36;--sage:#e9cba4}
.ribbon{background:#9b4525;border-bottom:3px solid #c68b50}header{border-bottom:1px dashed #cdb18d}nav{gap:24px}.nav-order{background:#60301e;color:#fff5e5;border-radius:30px}.season-tag{display:inline-block;background:#ead0a6;border:1px dashed #9a6b3d;border-radius:30px;padding:5px 18px;margin-bottom:20px;font:italic 20px Georgia;color:var(--brown);transform:rotate(-4deg)}h1 em{color:#a54828}.hero-photo{padding:14px;background:repeating-linear-gradient(90deg,#f1d8b4 0 10px,#fff5e5 10px 20px);box-shadow:10px 12px 0 #e9cba460}.hero-copy .eyebrow{margin-bottom:16px}.button{border-radius:30px;box-shadow:0 3px 0 #36211418}.strip{border-top:1px dashed #b48a57;border-bottom:1px dashed #b48a57}.seasonal-section{max-width:1120px;margin:80px auto 0;padding:35px 45px;display:grid;grid-template-columns:.85fr 1fr;gap:70px;align-items:center;background:#eddbba;border:1px solid #d8b78d;border-radius:8px}.seasonal-photo{position:relative;transform:rotate(-3deg);padding:10px 10px 25px;background:#fffaf0;box-shadow:0 10px 25px #60301e20}.seasonal-photo>img{display:block;width:100%;height:340px;object-fit:cover}.seasonal-photo .photo-note{font-size:18px;bottom:8px;left:8px;transform:rotate(2deg)}.seasonal-copy>p:not(.eyebrow){color:#69503e}.seasonal-note{background:#fff8e9;border:1px dashed #b7905d;padding:20px 24px;margin:25px 0 20px;border-radius:4px}.note-label{font-size:12px;letter-spacing:2px;color:#8a492b}.seasonal-note h3{margin:10px 0;font-size:25px}.seasonal-note p{margin:0;font-size:15px;color:#705b4b}.menu-note{margin:-5px 0 12px;font-size:14px;color:#7a5c46}.extras{border:1px dashed #af8c5b;border-radius:8px;background:#f0ddbe}.gallery-section{background-color:#ebc494;background-image:linear-gradient(90deg,#fff5e540 50%,transparent 50%),linear-gradient(#fff5e540 50%,transparent 50%);background-size:36px 36px;border-top:1px solid #d6aa76}.photo:nth-child(4n+1){transform:rotate(-1.5deg)}.photo:nth-child(4n+3){transform:rotate(1.5deg)}.photo:hover{transform:translateY(-5px) rotate(0deg)}.photo{border-radius:3px}.order-section{border-top:8px double #d2a46a}.order-section .light{box-shadow:none}
@media(max-width:900px){.seasonal-section{margin:60px 30px 0;gap:35px;padding:30px}.seasonal-photo>img{height:300px}nav{gap:16px}}
@media(max-width:620px){nav{gap:14px;flex-wrap:wrap;justify-content:center;font-size:14px}.nav-order{padding:8px 14px}.seasonal-section{grid-template-columns:1fr;margin:55px 20px 0;padding:24px;gap:35px}.seasonal-photo>img{height:300px}.seasonal-copy h2{font-size:40px}.seasonal-photo .photo-note{font-size:16px}.menu-note{font-size:14px}}

.seasonal-note .seasonal-loaves-heading{margin-top:24px}.seasonal-note .pumpkin-option{margin-top:22px;padding-top:16px;border-top:1px dashed #b7905d;font-size:16px;color:var(--brown)}

/* A gingham frame for the fall menu */
.seasonal-section{background-color:#f5dfbc;background-image:linear-gradient(90deg,#bd74352b 50%,transparent 50%),linear-gradient(#bd74352b 50%,transparent 50%);background-size:32px 32px;padding:42px;gap:38px;border:1px solid #c99963;box-shadow:0 8px 24px #60301e0b}
.seasonal-copy{background:#fff8ec;padding:30px 28px;border:1px dashed #bc8e5e;border-radius:8px}
.seasonal-note{background:#fffcf5;margin:24px 0 20px;padding:20px;border:1px dashed #b7905d}
@media(max-width:900px){.seasonal-section{padding:30px;gap:28px}.seasonal-copy{padding:26px 22px}}
@media(max-width:620px){.seasonal-section{padding:24px 18px;gap:30px;background-size:28px 28px}.seasonal-copy{padding:25px 18px}.seasonal-note{padding:18px 14px}.seasonal-note dl>div{font-size:16px;gap:12px}}

/* Leaves drift beneath the page content, without intercepting taps. */
body{isolation:isolate}.falling-leaves{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:-1}
.falling-leaf{position:absolute;top:-70px;left:var(--left);font-size:var(--size);line-height:1;opacity:.32;animation:leaf-fall var(--duration) linear var(--delay) infinite;will-change:transform}
.falling-leaf span{display:block;animation:leaf-sway 5s ease-in-out infinite alternate}
@keyframes leaf-fall{from{transform:translate3d(0,-70px,0) rotate(0deg)}to{transform:translate3d(65px,calc(100vh + 140px),0) rotate(230deg)}}
@keyframes leaf-sway{from{transform:translateX(-22px) rotate(-18deg)}to{transform:translateX(22px) rotate(18deg)}}
.leaves-paused .falling-leaf,.leaves-paused .falling-leaf span{animation-play-state:paused}
.leaf-toggle{background:transparent;border:1px solid #b7905d;border-radius:20px;padding:6px 12px;color:var(--brown);font-size:14px}
@media(max-width:620px){.falling-leaf:nth-child(n+13){display:none}}
@media(prefers-reduced-motion:reduce){.falling-leaves,.leaf-toggle{display:none}}

.about-me{max-width:440px;margin-top:28px}.about-me h2{font:italic 28px/1.3 Georgia,serif;letter-spacing:0;margin:0 0 14px}.about-me p{margin:0 0 16px;color:#705b4b}.about-me p:last-child{margin-bottom:0}

/* Match the fall menu gingham with the same colors and check sizes. */
.soup-season-section{max-width:1120px;margin:70px auto 0;padding:42px;overflow:hidden;border:1px solid #c99963;border-radius:8px;background-color:#f5dfbc;background-image:linear-gradient(90deg,#bd74352b 50%,transparent 50%),linear-gradient(#bd74352b 50%,transparent 50%);background-size:32px 32px;box-shadow:0 8px 24px #60301e0b}
.soup-season-art{display:block;width:100%;height:auto}
.soup-season-link{display:block;overflow:hidden;border:1px dashed #bc8e5e;border-radius:8px;background:#fff8ec}
@media(max-width:900px){.soup-season-section{margin:60px 30px 0;padding:30px}}
@media(max-width:620px){.soup-season-section{margin:45px 20px 0;padding:24px 18px;background-size:28px 28px}}

/* Compact review cards; tap any card to read the full-size image. */
.customer-love-section{padding:80px 40px;text-align:center;border-top:1px dashed #c6a477;max-width:1240px;margin:auto}
.review-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:800px;margin:0 auto 30px}
.review-card{display:block;width:100%;min-width:0;padding:5px;border:1px solid #d0ab7b;border-radius:8px;background:#fffaf0;box-shadow:0 6px 18px #60301e12;transition:transform .2s}
.review-card:hover{transform:translateY(-4px)}.review-card img{display:block;width:100%;height:auto;border-radius:3px}
@media(max-width:900px){.review-grid{gap:10px}}
@media(max-width:620px){.customer-love-section{padding:60px 16px}.review-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;max-width:460px}.review-card{padding:2px}#review-lightbox .lightbox-controls{gap:12px}}
@media(prefers-reduced-motion:reduce){.review-card{transition:none}}

/* Original simple soup special, with the fall section's matching gingham. */
.soup-season-simple{padding:40px 24px;text-align:center;text-decoration:none}
.soup-season-simple h2{font-family:Georgia,serif;font-weight:700;font-size:clamp(30px,4vw,46px);margin:0 0 18px}
.soup-season-duo{margin:0 0 24px;color:#705b4b;font-size:18px}
.soup-season-special{margin:0;color:var(--brown);font:25px/1.5 Georgia,serif}
.soup-season-special strong{font-weight:700;white-space:nowrap}
@media(max-width:620px){.soup-season-simple{padding:30px 16px}.soup-season-duo{font-size:16px;max-width:280px;margin:0 auto 22px}.soup-season-special{font-size:22px}}
