@font-face{font-family:DM;src:url('assets/fonts/dm-sans.ttf') format('truetype');font-display:swap;font-weight:400}
@font-face{font-family:Young;src:url('assets/fonts/young-serif.ttf') format('truetype');font-display:swap;font-weight:400}
:root{--forest:#203b2e;--cream:#f3eddf;--gold:#caa66c;--ink:var(--cream);--gutter:5vw;--font-display:Young,Georgia,serif;font-family:DM,Arial,sans-serif;color:var(--forest);background:var(--forest);scroll-behavior:auto;scroll-padding-top:90px}
*{box-sizing:border-box}body{margin:0}h1,h2,h3,p,figure{margin:0}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button[hidden],[hidden]{display:none!important}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b76b32;outline-offset:6px}::selection{background:var(--gold);color:var(--forest)}.skip-link{position:fixed;top:10px;left:10px;z-index:200;padding:18px;background:var(--cream);transform:translateY(-160%)}.skip-link:focus{transform:none}
h1,h2,h3{font-weight:400}.site-header{position:fixed;top:0;left:0;width:100%;z-index:30;height:80px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;color:var(--cream);transition:background .25s}.site-header.is-scrolled{background:var(--forest);box-shadow:0 1px 0 #f3eddf22}.brand-logo{display:block;width:174px;height:62px;overflow:hidden;flex-shrink:0;background:var(--gold)}.brand-logo img{width:100%;height:100%;object-fit:cover;object-position:50% 52%;transform:scale(1.38)}.site-header nav{display:flex;gap:34px;align-items:center;font-size:16px}.site-header nav>a,.site-header nav>button{padding:12px 0}.site-header nav .nav-contact{padding:12px 20px;border:1px solid #f3eddf99}.site-header nav a:hover{text-decoration:underline;text-underline-offset:6px}.table-nav span{margin-left:5px;display:inline-grid;place-items:center;width:23px;height:23px;background:var(--gold);color:var(--forest);border-radius:50%;font-size:13px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:20px 25px;font-size:17px;line-height:1.2;white-space:nowrap}.button-gold{background:var(--gold);color:#17271b}.button:hover{background:#e7c38c}.button span{font-size:24px}.text-link{display:inline-block;padding:12px 0;border-bottom:1px solid currentColor;font-size:18px;white-space:nowrap}.text-link:hover{opacity:.75}
.restaurant-hero{height:100svh;min-height:690px;position:relative;isolation:isolate;overflow:hidden;color:var(--cream);background:#261e13;display:flex;align-items:center;padding:110px var(--gutter) 70px}.hero-image,.hero-image picture,.hero-image img,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{z-index:-3;will-change:transform}.hero-image img{object-fit:cover;object-position:50% 55%}.hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(14,23,16,.87),rgba(14,23,16,.45) 40%,rgba(14,23,16,.03) 70%),linear-gradient(180deg,rgba(0,0,0,.22),transparent 35%)}.hero-content{width:65%;position:relative}.hero-content h1{font:400 clamp(80px,8.7vw,150px)/1.02 Young,Georgia,serif;letter-spacing:-.055em}.hero-content p{font-size:20px;line-height:1.5;margin:30px 0;max-width:500px}.hero-actions{display:flex;align-items:center;gap:32px}.hero-actions .text-link{font-size:17px}
.cravings{background:var(--cream);position:relative;overflow:clip}.craving-track{position:relative;display:flex;align-items:center;gap:5vw;width:max-content;padding:100px var(--gutter) 65px}.craving-intro{width:36vw;flex-shrink:0;padding-right:2vw}.craving-intro h2{font:clamp(48px,5.3vw,90px)/1.08 Young,Georgia,serif;letter-spacing:-.045em}.craving-intro p{font-size:20px;line-height:1.5;margin:28px 0 20px}.craving-panel{width:31vw;max-width:520px;flex-shrink:0;position:relative}.craving-panel:nth-child(odd){padding-top:50px}.craving-panel figure{height:52svh;min-height:320px;overflow:hidden}.craving-panel img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.craving-panel a:hover img{transform:scale(1.045)}.craving-panel h3{font:clamp(28px,2.7vw,44px)/1.1 Young,Georgia,serif;letter-spacing:-.035em;margin:25px 0 10px}.craving-panel p{font-size:17px}.panel-arrow{position:absolute;right:0;bottom:0;font-size:30px}.rail-enhanced .craving-track{height:100svh;padding-top:100px;padding-bottom:50px}.cravings:not(.rail-enhanced) .craving-track{overflow-x:auto;width:100%;align-items:flex-start;scroll-snap-type:x mandatory}.cravings:not(.rail-enhanced) .craving-panel{scroll-snap-align:center}
.bakery-story{position:relative;min-height:95svh;overflow:hidden;background:#11261a;color:var(--cream);display:flex;align-items:center;padding:100px var(--gutter)}.bakery-image{position:absolute;inset:0;z-index:0}.bakery-image img{width:100%;height:100%;object-fit:cover;object-position:50% 55%}.bakery-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#102218cf,transparent 72%)}.bakery-copy{position:relative;z-index:1}.bakery-copy h2{font:clamp(65px,8.6vw,145px)/1.02 Young,Georgia,serif;letter-spacing:-.05em}.bakery-copy p{font-size:21px;line-height:1.5;margin:30px 0 15px}
/* Restaurant identity and evidence lead. This stage is a closer-look interlude. */
#experience{--ink:var(--cream);position:relative;background:#203b2e;color:var(--ink)}.stage-wrap{display:contents}.scene-wipes,.stage-orbit,.stage-word,#food-stage,.scene-nav{display:none}.chapter{position:relative;min-height:850px;padding:100px var(--gutter);display:flex;align-items:center;gap:5vw}.chapter-copy{width:51%}.chapter-name{font-size:18px;margin-bottom:25px}.chapter h2{font:400 clamp(65px,9vw,150px)/.88 Young,Georgia,serif;letter-spacing:-.055em}.line{display:block;white-space:nowrap}.line>span{display:inline-block;transform-origin:0 100%}.chapter-description{font-size:19px;line-height:1.45;margin-top:30px}.round-link{display:inline-flex;align-items:center;gap:24px;font-size:17px;margin-top:24px}.round-arrow{width:46px;height:46px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:24px}.round-link:hover .round-arrow{transform:rotate(-35deg)}.chapter-image{width:44%;max-height:70vh;object-fit:contain}.chapter-image.cutout{width:52%}#baked{background:#dec7a0;color:#273b2d}#poured{background:#e8bc8c;color:#273b2d}#sweet{background:#493329;color:#f3eddf}
.cinematic #experience{height:360svh}.cinematic .stage-wrap{display:block;position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate;background:#203b2e}.cinematic .scene-wipes{display:block;position:absolute;inset:0;z-index:0}.scene-wipe{position:absolute;inset:0;clip-path:circle(0% at 80% 50%)}.scene-wipe[data-wipe="1"]{background:#dec7a0}.scene-wipe[data-wipe="2"]{background:#e8bc8c}.scene-wipe[data-wipe="3"]{background:#493329}.cinematic .stage-orbit{display:block;position:absolute;z-index:1;right:-20%;top:-30%;width:90%;height:155%;border:1px solid currentColor;opacity:.08;border-radius:50%;transform:rotate(-25deg);pointer-events:none}.cinematic .stage-word{display:block;position:absolute;z-index:1;left:3vw;top:10vh;font:29vw/1 Young,Georgia,serif;letter-spacing:-.07em;opacity:.035;pointer-events:none}.cinematic #food-stage{display:block;position:absolute;inset:0;z-index:3;pointer-events:none}.cinematic .chapters{position:absolute;inset:0;pointer-events:none}.cinematic #experience .chapter{display:block;position:absolute;inset:0;min-height:0;height:100%;padding:0;background:transparent;color:var(--ink);pointer-events:none}.cinematic .chapter-copy{display:contents}.cinematic .chapter h2{position:absolute;z-index:2;left:var(--gutter);top:24vh;width:90%;font-size:clamp(75px,11.4vw,180px);line-height:1.02;pointer-events:none}.cinematic .chapter-name{position:absolute;z-index:5;left:var(--gutter);top:16vh;margin:0;pointer-events:auto}.cinematic .chapter-details{position:absolute;z-index:5;left:var(--gutter);bottom:12vh;pointer-events:auto}.cinematic .chapter-description{margin-top:0;font-size:19px}.cinematic .chapter-image{display:none}.cinematic #poured h2{left:auto;right:var(--gutter);text-align:right}.cinematic #poured .chapter-name,.cinematic #poured .chapter-details{left:auto;right:var(--gutter);text-align:right}.cinematic #poured .round-link{justify-content:flex-end}.cinematic .scene-nav{display:flex;gap:10px;position:absolute;left:var(--gutter);bottom:3vh;z-index:8}.scene-nav a{display:grid;place-items:center;width:44px;height:44px}.scene-nav a span{width:5px;height:5px;border-radius:50%;background:currentColor}.scene-nav a[aria-current=step] span{width:10px;height:10px;border:1px solid currentColor;background:none}.food-fallback{position:absolute;inset:0}.food-fallback img{position:absolute;object-fit:contain;filter:drop-shadow(0 25px 22px #0a190e22)}.fallback-pastry{width:43%;left:40%;top:42%;transform:rotate(-12deg)}.fallback-drink{width:25%;height:66%;left:66%;top:16%;object-fit:contain!important;transform:rotate(6deg)}.fallback-cake{width:43%;left:64%;top:50%;transform:rotate(9deg)}#food-stage[data-renderer=three] .food-fallback{visibility:hidden;opacity:0}#experience[data-chapter="1"] .fallback-pastry{width:68%;left:35%;top:15%}#experience[data-chapter="1"] .fallback-cake,#experience[data-chapter="1"] .fallback-drink{opacity:0}#experience[data-chapter="2"] .fallback-drink{width:32%;left:9%;height:76%;top:16%;transform:rotate(-7deg)}#experience[data-chapter="2"] .fallback-cake,#experience[data-chapter="2"] .fallback-pastry{opacity:0}#experience[data-chapter="3"] .fallback-cake{width:70%;left:34%;top:15%}#experience[data-chapter="3"] .fallback-drink,#experience[data-chapter="3"] .fallback-pastry{opacity:0}

.menu-section{position:relative;background:var(--cream);padding:80px var(--gutter) 100px}.menu-heading{margin-bottom:40px}.menu-heading h2{font:clamp(55px,6.2vw,100px)/1.04 Young,Georgia,serif;letter-spacing:-.05em}.menu-heading p{font-size:20px;line-height:1.5;margin-top:26px}.menu-availability{font-size:16px;line-height:1.6;max-width:700px;margin-top:45px}.menu-fallback{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-bottom:25px}.menu-fallback img{aspect-ratio:4/5;object-fit:cover}.menu-fallback h3{font:30px/1.2 Young,Georgia,serif;margin-top:20px}
.restaurant-space{position:relative;min-height:105svh;display:flex;align-items:flex-end;padding:90px var(--gutter);isolation:isolate;overflow:hidden;color:var(--cream);background:var(--forest)}.space-image{position:absolute;inset:0;z-index:-2;overflow:hidden}.space-image img{width:100%;height:100%;object-fit:cover;object-position:50% 55%}.restaurant-space:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(12,25,16,.94),rgba(12,25,16,.18) 75%)}.space-copy{max-width:900px}.space-copy h2{font:clamp(65px,8.7vw,145px)/1.02 Young,Georgia,serif;letter-spacing:-.05em}.space-copy p{font-size:21px;line-height:1.5;max-width:470px;margin:30px 0}.visit{background:var(--forest);color:var(--cream);padding:100px var(--gutter)}.visit-heading h2{font:clamp(65px,8vw,130px)/1.04 Young,Georgia,serif;letter-spacing:-.05em}.visit-heading>p{font-size:21px;line-height:1.5;margin-top:30px}.visit-info{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-top:65px;padding-top:45px;border-top:1px solid #f3eddf44}.visit-info h3{font:34px/1.2 Young,Georgia,serif;margin-bottom:25px}.visit-info address,.visit-info p{font-size:20px;line-height:1.6;font-style:normal;margin-bottom:30px}.visit-info strong{font-weight:400;font-size:30px}.visit-info .phone{display:block;width:max-content;margin-top:25px;font-size:18px}.visit-questions{margin-top:100px;display:grid;grid-template-columns:1fr 1.5fr;column-gap:10vw}.visit-questions h3{font:38px/1.2 Young,Georgia,serif;grid-row:1/5}.visit-questions details{grid-column:2;border-top:1px solid #f3eddf44;padding:24px 0}.visit-questions details:last-child{border-bottom:1px solid #f3eddf44}.visit-questions summary{display:flex;justify-content:space-between;gap:25px;list-style:none;font-size:21px;cursor:pointer}.visit-questions summary::-webkit-details-marker{display:none}.visit-questions details[open] summary span{transform:rotate(45deg)}.visit-questions details p{font-size:18px;line-height:1.6;margin:22px 0 5px;max-width:640px}.visit-questions details a{text-decoration:underline;text-underline-offset:4px}
footer{background:var(--gold);color:#18271e;padding:28px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:40px}footer>div{display:flex;gap:28px;align-items:center;font-size:15px}footer button{padding:12px 0}footer a:hover,footer button:hover{text-decoration:underline}.noscript-note{padding:25px var(--gutter);font-size:17px;background:var(--cream)}.motion-paused *{transition:none!important}
@media(max-height:720px) and (min-width:761px){.restaurant-hero{min-height:600px}.hero-content h1{font-size:16vh}.hero-content p{font-size:18px;margin:20px 0}.hero-actions .button{padding:16px 20px}.cinematic .chapter h2{top:24vh;font-size:16vh}.cinematic .chapter-name{top:16vh}.cinematic .chapter-details{bottom:10vh}.cinematic .chapter-description{font-size:17px}.cinematic .round-link{margin-top:16px}.cinematic .scene-nav{bottom:0}.craving-panel figure{height:45svh;min-height:250px}}
@media(max-width:1000px) and (min-width:761px){.site-header nav{gap:22px}.hero-content{width:75%}.hero-content h1{font-size:10vw}.hero-content p{font-size:18px}.hero-actions{gap:20px}.hero-actions .button{font-size:16px;padding:18px}.craving-intro{width:42vw}.craving-panel{width:38vw}.cinematic .chapter h2{font-size:11vw}.cinematic .chapter-details{max-width:320px}.visit-questions{gap:5vw}}
@media(max-width:760px){:root{--gutter:6vw;scroll-padding-top:80px}.site-header{height:74px;padding:0 4vw}.brand-logo{width:140px;height:54px}.site-header nav{gap:20px;font-size:15px}.site-header .nav-contact{display:none}.site-header .table-nav{font-size:0}.table-nav span{font-size:14px;width:28px;height:28px;margin-left:0}.site-header .table-nav:before{content:'♡';font-size:24px;vertical-align:middle;margin-right:4px}.restaurant-hero{min-height:720px;max-height:960px;padding:125px var(--gutter) 65px;align-items:flex-start}.hero-image img{object-position:60% 50%}.hero-shade{background:linear-gradient(180deg,rgba(12,25,16,.65),rgba(12,25,16,.22) 58%,transparent),linear-gradient(90deg,rgba(12,25,16,.30),transparent)}.hero-content{width:100%}.hero-content h1{font-size:clamp(62px,16vw,115px);line-height:1.05;letter-spacing:-.055em}.hero-content p{font-size:17px;line-height:1.5;margin:22px 0 25px;max-width:340px}.hero-actions{gap:16px;align-items:flex-start;flex-direction:column}.hero-actions .button{font-size:16px;padding:17px 20px;gap:32px}.hero-actions .text-link{font-size:16px;padding:10px 0}.hero-image{transform-origin:66% 64%}.craving-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 20px;padding:70px var(--gutter);width:100%}.cravings:not(.rail-enhanced) .craving-track{display:grid;overflow:visible}.craving-intro{grid-column:1/-1;width:auto;padding-right:0}.craving-intro h2{font-size:13vw}.craving-intro p{font-size:18px;margin:22px 0 15px}.craving-panel{width:auto;max-width:none}.craving-panel:nth-child(odd){padding-top:50px}.craving-panel figure{height:270px;min-height:0}.craving-panel h3{font-size:27px;margin:20px 0 10px}.craving-panel p{font-size:14px;line-height:1.4}.panel-arrow{display:none}.bakery-story{min-height:800px;align-items:flex-start;padding:70px var(--gutter)}.bakery-image img{object-position:62% center}.bakery-image:after{background:linear-gradient(180deg,#102218b8,transparent 70%)}.bakery-copy h2{font-size:15vw}.bakery-copy p{font-size:18px;line-height:1.5;margin:25px 0 10px}
.chapter{display:block;min-height:850px;padding:80px var(--gutter) 35px}.chapter-copy{width:100%}.chapter-name{font-size:17px;margin-bottom:23px}.chapter h2{font-size:17vw;line-height:1.02}.chapter-description{font-size:17px;margin-top:25px}.chapter-image{width:75%;height:360px;margin:30px auto 0;max-height:none}.chapter-image.cutout{width:110%;max-width:110%;margin-left:-5%}.cinematic #experience{height:360svh}.cinematic .chapter h2{top:20vh;font-size:clamp(60px,min(18vw,9svh),100px);line-height:1.04;width:88%}.cinematic .chapter-name{top:13vh;font-size:16px}.cinematic .chapter-details{top:41vh;bottom:auto;max-width:88%;z-index:5}.cinematic .chapter-description{font-size:16px;line-height:1.4}.cinematic .round-link{font-size:16px;gap:16px;margin-top:17px}.round-arrow{width:40px;height:40px;font-size:22px}.cinematic #poured h2,.cinematic #poured .chapter-name,.cinematic #poured .chapter-details{left:var(--gutter);right:auto;text-align:left}.cinematic .scene-nav{left:var(--gutter);bottom:1vh;gap:7px}.food-fallback{top:30%}.fallback-pastry{width:78%;left:-15%;top:43%}.fallback-drink{width:43%;left:39%;height:65%;top:13%}.fallback-cake{width:72%;left:45%;top:45%}#experience[data-chapter="1"] .fallback-pastry,#experience[data-chapter="3"] .fallback-cake{width:120%;left:-10%;top:25%}#experience[data-chapter="2"] .fallback-drink{width:58%;left:23%;height:65%;top:25%}
.menu-section{padding:75px var(--gutter) 65px}.menu-heading{margin-bottom:35px}.menu-heading h2{font-size:14vw}.menu-heading p{font-size:18px;margin-top:24px}.menu-availability{font-size:15px}.menu-fallback{grid-template-columns:1fr;gap:35px}.restaurant-space{min-height:900px;padding:70px var(--gutter)}.space-image img{object-position:47% center}.space-copy h2{font-size:14vw}.space-copy p{font-size:19px;margin:25px 0}.space-copy .button{font-size:16px;padding:18px 22px}.visit{padding:75px var(--gutter)}.visit-heading h2{font-size:16vw}.visit-heading>p{font-size:19px;margin-top:25px}.visit-info{grid-template-columns:1fr;gap:50px;margin-top:40px;padding-top:35px}.visit-info h3{font-size:32px;margin-bottom:20px}.visit-info p,.visit-info address{font-size:18px}.visit-info .button{font-size:16px;padding:18px 22px}.visit-questions{display:block;margin-top:70px}.visit-questions h3{font-size:30px;margin-bottom:30px}.visit-questions summary{font-size:18px}.visit-questions details p{font-size:17px}footer{padding:28px 4vw;gap:20px;align-items:flex-start}footer>div{flex-direction:column;align-items:flex-end;gap:8px;font-size:14px}footer button{padding:9px 0}.footer-logo{width:140px;height:56px}}
@media(max-width:390px){.site-header nav{gap:13px;font-size:14px}.brand-logo{width:124px}.craving-panel h3{font-size:24px}.craving-panel figure{height:235px}.restaurant-hero{padding-top:115px}.hero-content h1{font-size:16vw}.hero-content p{font-size:16px}.cinematic .chapter-details{top:42vh}.cinematic .chapter-description{font-size:15px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.cravings:not(.rail-enhanced) .craving-track{scroll-behavior:auto}}

.site-header{background:var(--forest)}.cinematic .site-header:not(.is-scrolled){background:transparent}.menu-fallback article p{font-size:17px;line-height:1.5;margin-top:16px}

@media(max-width:350px){.site-header .brand-logo{width:110px}.site-header nav{gap:10px;font-size:13px}.site-header .table-nav:before{font-size:20px;margin-right:3px}}

/* Render the original mark as white with true alpha; do not redraw its letterforms. */
.brand-filter-defs{position:absolute;pointer-events:none}
.site-header .brand-logo{background:transparent}
.site-header .brand-logo img{filter:url("#floury-white")}

/* Documentary opening: the café, its people and a shared table. */
.restaurant-hero { min-height: 620px; padding-top: 100px; padding-bottom: 50px; }
.hero-image { display: grid; grid-template-columns: 40% 60%; }
.hero-image picture { position: relative; overflow: hidden; }
.hero-image img { object-position: 50% 48%; }
.hero-image .hero-friends img { object-position: 44% 45%; }
.hero-shade { background: linear-gradient(90deg,rgba(10,23,16,.80),rgba(10,23,16,.6) 30%,rgba(10,23,16,.08) 60%),linear-gradient(180deg,rgba(0,0,0,.48),transparent 25%,transparent 78%,rgba(0,0,0,.25)); }
.hero-content { width: 45%; }
.hero-content h1 { font-size: clamp(70px,7vw,118px); white-space: nowrap; }
.hero-content p { max-width: 360px; font-size: 18px; }
.hero-actions { gap: 24px; flex-wrap: wrap; }
@media (max-width: 760px) {
  .restaurant-hero { min-height: 640px; max-height: none; align-items: flex-end; padding: 105px var(--gutter) 35px; }
  .hero-image { display: block; height: 72%; }
  .hero-image .hero-friends { display: none; }
  .hero-image .hero-together { position: absolute; }
  .hero-image img { object-position: 50% 30%; }
  .hero-shade { background: linear-gradient(180deg,rgba(8,20,13,.5),transparent 23%,rgba(8,20,13,.08) 42%,rgba(8,20,13,.88) 83%,rgba(8,20,13,.95)); }
  .hero-content { width: 100%; }
  .hero-content h1 { font-size: clamp(48px,14vw,90px); line-height: 1; }
  .hero-content p { font-size: 16px; margin: 16px 0 18px; max-width: 340px; }
  .hero-actions { flex-direction: row; align-items: center; gap: 16px; }
  .hero-actions .button { font-size: 15px; padding: 15px; gap: 16px; }
  .hero-actions .text-link { font-size: 15px; }
}
@media (max-height: 650px) and (min-width: 761px) {
  .restaurant-hero { min-height: 560px; }
  .hero-content h1 { font-size: 13vh; }
}

@media (max-width:760px) { .restaurant-hero { background: #14251b; } }
