/* Compact edition: a restaurant sketch revealed directly by scroll. */
.button,.button.small,.a-button,.atelier .a-button,.atelier #header .button,.atelier .floating-book{border-radius:999px!important}
.a-button.a-outline,.atelier .a-button.a-outline{background:transparent;color:var(--rust,#984b35);border:1px solid #a16a53}.a-button.a-outline:hover,.atelier .a-button.a-outline:hover{background:#eadbca}
.atelier main{overflow:visible}.atelier #header{height:84px}.atelier .a-eyebrow{margin-bottom:17px}.atelier .a-button{padding:14px 24px;min-height:48px}.atelier .a-facts{padding:17px 6%}.atelier .a-section{padding:65px 6%}.atelier h2{font-size:clamp(38px,4.3vw,65px)}
.scroll-story{position:relative;height:calc(100svh - 84px);--draw-a:0;--draw-b:0;--draw-c:0;--color:1;--line-opacity:0;--grid-opacity:0;--progress:1}
.scroll-story.scroll-active{height:215svh;--draw-a:0.75;--draw-b:1;--draw-c:1;--color:0;--line-opacity:1;--grid-opacity:.55;--progress:0}
.scroll-pin{height:calc(100svh - 84px);min-height:540px;position:sticky;top:84px;display:grid;grid-template-columns:32% 68%;grid-template-rows:1fr 64px;align-items:center;gap:0;padding:22px 4.5% 0;background:var(--paper,#f7f2e8);overflow:hidden}
.scroll-intro{padding:0 9% 0 0;position:relative;z-index:2}.atelier .scroll-intro h1{font-size:clamp(49px,5.45vw,88px);line-height:.96}.atelier .scroll-description{font-size:13px;line-height:1.8;margin-top:24px;max-width:310px}.scroll-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.scroll-actions .a-button{font-size:11px}.scroll-actions .a-outline{font-size:10px}.scroll-art{width:100%;min-width:0;padding:0;align-self:center}.scroll-canvas{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#f3ecdf;isolation:isolate}.draft-grid{position:absolute;inset:0;background-image:linear-gradient(#b6a38944 1px,transparent 1px),linear-gradient(90deg,#b6a38944 1px,transparent 1px);background-size:40px 40px;opacity:var(--grid-opacity)}.restaurant-drawing{width:100%;height:100%;position:absolute;inset:0;opacity:var(--line-opacity)}.restaurant-drawing path{stroke-dasharray:1;stroke-dashoffset:var(--draw-a)}.restaurant-drawing .draw-1 path{stroke-dashoffset:var(--draw-b)}.restaurant-drawing .draw-2 path{stroke-dashoffset:var(--draw-c)}.atelier .scroll-render{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;clip-path:inset(0 calc((1 - var(--color))*100%) 0 0);opacity:1;transform:none}.draft-corner{position:absolute;width:20px;height:20px;border-color:#916b4c;border-style:solid;opacity:var(--grid-opacity);pointer-events:none}.corner-tl{top:12px;left:12px;border-width:1px 0 0 1px}.corner-br{bottom:12px;right:12px;border-width:0 1px 1px 0}.atelier .scroll-art figcaption{font-size:9px;align-items:center;padding:12px 0;color:#6e5747}.motion-control{background:transparent;color:#6e5747;border:0;border-bottom:1px solid #b4a18c;font:inherit;cursor:pointer;padding:4px 0;min-height:28px}.motion-control:hover{color:#713725}.scroll-foot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:20px;align-self:stretch;position:relative;border-top:1px solid #d6c8b5;font-size:10px;color:#745b48}.scroll-instruction{display:flex;align-items:center;gap:10px}.scroll-instruction>span:first-child{font-size:21px}.scroll-stages{display:flex;gap:28px;font-size:9px;letter-spacing:.05em}.scroll-stages>span{opacity:.45}.scroll-stages .is-current{opacity:1;color:#8b4231}.scroll-counter{font-size:10px;letter-spacing:.12em}.scroll-meter{position:absolute;bottom:0;height:3px;left:0;width:100%;background:#e7dac7}.scroll-meter>span{display:block;height:100%;background:#984b35;transform:scaleX(var(--progress));transform-origin:left;will-change:transform}.scroll-story.is-static{height:calc(100svh - 84px)}.scroll-story.is-static .scroll-instruction{visibility:hidden}.scroll-story.is-static .scroll-pin{position:relative;top:0}
.compact-food{display:grid;grid-template-columns:36% 58%;gap:6%;align-items:center}.compact-food-copy>p:not(.a-eyebrow){margin:22px 0 24px;font-size:14px;max-width:380px}.food-pair{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;align-items:center}.atelier .food-pair img{height:auto;aspect-ratio:.9;object-fit:cover;border-radius:180px 180px 3px 3px}.atelier .food-pair figure+figure{padding-top:44px}.atelier .food-pair figure+figure img{aspect-ratio:.85;border-radius:3px 3px 150px 150px}.atelier .food-pair figcaption{font-size:8px}
.atelier .a-reservations{padding-top:50px;padding-bottom:38px}.atelier .a-booking-heading{text-align:left;max-width:none;display:grid;grid-template-columns:32% 1fr;align-items:center}.atelier .a-booking-heading h2 br{display:none}.atelier .a-booking-heading h2{font-size:clamp(36px,4vw,56px)}.atelier .a-booking-heading .a-eyebrow{margin:0}.atelier .a-booking-options{margin-top:30px}.atelier .a-booking-option{padding-top:25px;padding-bottom:25px}.atelier .a-booking-option .a-section-number{margin-bottom:12px}.atelier .a-booking-option h3{font-size:34px}.atelier .a-booking-option p{margin-top:12px;font-size:13px;max-width:420px}.atelier .a-booking-option .a-button{margin-top:20px}.atelier .a-number{font-size:35px;margin-top:20px}.atelier .a-booking-option .a-link{margin-top:12px}.atelier .a-booking-option small{font-size:10px;margin-top:12px}.atelier .a-booking-option .a-status{font-size:11px}.atelier .a-booking-note{margin-top:16px;font-size:10px}.atelier .a-booking-option+article{padding-left:9%}
.compact-visit{display:grid;grid-template-columns:1fr 1fr;gap:30px 10%;align-items:start}.visit-heading>p:last-child{max-width:360px;font-size:13px;margin-top:18px}.visit-details{padding-top:10px}.map-address{display:block;text-decoration:none}.map-address>span:first-child{font-size:9px;letter-spacing:.18em;color:#984b35;display:block;margin-bottom:13px}.map-address strong{font-size:16px;line-height:1.8;font-weight:500}.map-address .map-link{display:block;font-size:12px;color:#984b35;margin-top:15px;text-decoration:underline;text-underline-offset:5px}.visit-details>p{margin-top:22px;font-size:12px}.contact-phone{display:inline-block;margin-top:9px;font-size:14px;text-decoration:none}.compact-faq{grid-column:1/-1;border-top:1px solid #d6c8b5;border-bottom:1px solid #d6c8b5;margin-top:6px}.compact-faq>summary{padding:18px 0;font-size:12px;cursor:pointer;list-style:none}.compact-faq>summary:after{content:'+';float:right;font-size:20px}.compact-faq[open]>summary:after{content:'−'}.compact-faq .a-faq-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;padding-bottom:14px}.compact-faq .a-faq-list details{border-top:1px solid #d6c8b5}.compact-faq .a-faq-list summary{padding:14px 20px 14px 0;font-size:12px;cursor:pointer;line-height:1.6}.compact-faq .a-faq-list p{font-size:12px;padding:0 12px 16px 0}.atelier footer.compact-footer,.compact-footer{padding:30px 6% 78px;border-top:1px solid #d6c8b5;background:#f0e7d8;color:#34271f}.compact-footer-row{display:flex;justify-content:space-between;align-items:center;gap:24px}.compact-footer .brand{color:#34271f}.compact-footer .brand span{font-size:36px}.compact-footer .brand small{font-size:7px}.compact-footer .footer-langs{display:flex;flex-direction:row;flex-wrap:wrap;gap:20px;font-size:11px}.compact-footer .legal-links{padding:22px 0 18px;gap:25px;display:flex;flex-wrap:wrap;font-size:10px}.compact-footer .footer-bottom{border-top:1px solid #d6c8b5;padding-top:18px;font-size:9px;gap:15px}.compact-footer a{text-underline-offset:4px}
@media(max-width:1050px){.scroll-pin{grid-template-columns:35% 65%}.atelier .scroll-intro h1{font-size:58px}.scroll-actions{gap:9px}.scroll-stages{gap:15px}.compact-food{grid-template-columns:40% 55%;gap:5%}.food-pair{gap:10px}}
@media(max-width:760px){.atelier #header{height:72px}.scroll-story{height:auto}.scroll-story.scroll-active{height:200svh}.scroll-pin{height:calc(100svh - 72px);min-height:580px;top:72px;padding:23px 6% 0;grid-template-columns:1fr;grid-template-rows:auto 1fr 48px;gap:12px;align-items:start}.scroll-intro{padding:0}.atelier .scroll-intro .a-eyebrow{font-size:8px;margin-bottom:12px}.atelier .scroll-intro h1{font-size:clamp(42px,10.4vw,64px);line-height:.98}.atelier .scroll-intro h1 br{display:none}.atelier .scroll-description{font-size:12px;line-height:1.65;max-width:100%;margin-top:14px}.scroll-actions{margin-top:18px;gap:8px}.atelier .scroll-actions .a-button{font-size:10px;padding:11px 15px;min-height:43px}.scroll-art{align-self:center}.scroll-canvas{aspect-ratio:1.5}.restaurant-drawing,.atelier .scroll-render{width:calc(100% * 16 / 9 / 1.5);max-width:none;left:50%;transform:translateX(-50%);height:100%}.atelier .scroll-art figcaption{font-size:8px;padding:8px 0;align-items:flex-start;gap:14px}.motion-control{max-width:130px;text-align:right;min-height:25px;padding-top:0}.scroll-foot{font-size:8px;gap:10px}.scroll-stages{display:none}.scroll-counter{font-size:9px;white-space:nowrap}.scroll-story.is-static{height:auto}.scroll-story.is-static .scroll-pin{height:auto;min-height:0;padding-bottom:0;gap:25px;position:relative}.scroll-story.is-static .scroll-foot{height:35px}.atelier .a-facts{font-size:7px;padding:15px 6%;gap:10px}.atelier .a-section{padding:40px 6%}.compact-food{grid-template-columns:1fr;gap:25px}.atelier .compact-food h2{font-size:43px}.compact-food-copy>p:not(.a-eyebrow){font-size:13px;margin:17px 0 20px;max-width:100%}.food-pair{gap:14px;grid-template-columns:1.12fr .88fr}.atelier .food-pair img{aspect-ratio:1}.atelier .food-pair figure+figure{padding-top:20px}.atelier .food-pair figure+figure img{aspect-ratio:.95}.atelier .a-booking-heading{display:block}.atelier .a-booking-heading .a-eyebrow{margin-bottom:13px}.atelier .a-booking-heading h2{font-size:43px}.atelier .a-booking-options{margin-top:22px}.atelier .a-booking-option h3{font-size:31px}.atelier .a-booking-option{padding:22px 0}.atelier .a-booking-option+article{padding:22px 0}.atelier .a-number{font-size:34px}.compact-visit{grid-template-columns:1fr;gap:20px}.atelier .compact-visit h2{font-size:42px}.atelier .compact-visit h2 br{display:none}.visit-heading>p:last-child{margin-top:15px;max-width:100%}.visit-details{padding-top:0}.map-address strong{font-size:14px}.visit-details>p{margin-top:15px}.compact-faq{margin-top:4px}.compact-faq .a-faq-list{grid-template-columns:1fr}.compact-footer-row{align-items:flex-start;gap:18px}.compact-footer .footer-langs{max-width:175px;justify-content:flex-end;gap:9px 13px;font-size:9px}.compact-footer .legal-links{gap:14px 20px;font-size:10px}.compact-footer .footer-bottom{display:flex;flex-wrap:wrap;font-size:8px}.atelier footer.compact-footer{padding:25px 6% 78px}.atelier .floating-book{font-size:11px;padding:12px 20px;min-height:43px}}
@media(max-height:660px) and (min-width:761px){.scroll-pin{min-height:470px}.atelier .scroll-intro h1{font-size:54px}.atelier .scroll-description{margin-top:16px}.scroll-actions{margin-top:18px}}
@media(prefers-reduced-motion:reduce){.scroll-story.scroll-active{height:auto}.scroll-pin{position:relative;top:0}.restaurant-drawing,.draft-grid{display:none}.atelier .scroll-render{clip-path:none}.scroll-instruction{visibility:hidden}.scroll-meter{display:none}}
.atelier .a-booking-heading h2 em{margin-left:.22em}
@media(max-width:700px){.atelier .scroll-copy h1 em{margin-left:.14em}}
/* Hero-first composition: the drawing owns the stage; booking follows it. */
.home-page.hero-in-view #header [data-booking]{display:none}
.home-page.hero-in-view .floating-book{display:none}
.home-page .scroll-pin{padding:0;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto 42px;gap:0;min-height:560px}
.home-page .scroll-art{grid-row:1;align-self:stretch;position:relative;height:100%;margin:0}
.home-page .scroll-canvas{height:100%;width:100%;aspect-ratio:auto}
.home-page .restaurant-drawing,.home-page.atelier .scroll-render{width:100%;height:100%;left:0;transform:none;object-fit:cover}
.home-page.atelier .scroll-art figcaption{position:absolute;bottom:12px;left:3%;right:3%;padding:0;align-items:center;gap:12px;z-index:3}
.home-page .scroll-art figcaption>span,.home-page .motion-control{background:#f7f2e8ed;padding:6px 12px;border-radius:20px;font-size:9px}
.home-page .motion-control{max-width:none;border:1px solid #b4a18c;min-height:32px;text-align:center}
.home-page .scroll-intro{grid-row:2;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:20px 4.5%;border-top:1px solid #d6c8b5}
.home-page.atelier .scroll-intro h1{font-size:clamp(38px,4.4vw,64px);line-height:1.02}
.home-page .scroll-intro h1 br{display:none}
.home-page .scroll-intro .a-eyebrow,.home-page .scroll-description{display:none}
.home-page .scroll-actions{margin:0;flex-shrink:0;justify-content:flex-end}
.home-page .scroll-foot{grid-row:3;margin:0 4.5%;font-size:9px}
.home-page .scroll-story.is-static .scroll-pin{height:calc(100svh - 84px);min-height:560px;padding:0;gap:0}
@media(max-width:760px){
.home-page .scroll-pin,.home-page .scroll-story.is-static .scroll-pin{height:calc(100svh - 72px);min-height:500px;grid-template-rows:minmax(0,1fr) auto 38px;padding:0;gap:0}
.home-page .scroll-intro{display:block;text-align:center;padding:18px 5% 16px}
.home-page.atelier .scroll-intro h1{font-size:clamp(32px,9vw,44px);line-height:1.04}
.home-page .scroll-actions{justify-content:center;margin-top:14px;gap:10px}
.home-page.atelier .scroll-actions .a-button{min-height:44px;padding:12px 19px;font-size:10px}
.home-page .scroll-art figcaption{bottom:10px;left:4%;right:4%}
.home-page .scroll-art figcaption>span,.home-page .motion-control{font-size:8px;padding:5px 9px}
.home-page .scroll-foot{margin:0 5%;font-size:8px}
.home-page .scroll-story.is-static .scroll-foot{height:auto}
}
@media(max-height:600px){.home-page .scroll-pin,.home-page .scroll-story.is-static .scroll-pin{height:640px;min-height:640px}}
/* One continuous scene: architectural drawing, local headline and reservation. */
.home-page .scroll-pin,.home-page .scroll-story.is-static .scroll-pin{display:block;isolation:isolate;min-height:600px}
.home-page .scroll-art{position:absolute;inset:0;height:100%;z-index:0}
.home-page .scroll-pin:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 20%,#f7f2e80a 35%,#f7f2e8b8 61%,#f7f2e8f5 84%,#f7f2e8 100%)}
.home-page .scroll-canvas:before{content:'';position:absolute;inset:0;background:url('assets/restaurant-lines.svg') center/cover no-repeat;opacity:calc(.18 * (1 - var(--color)));pointer-events:none}
.home-page .scroll-intro{position:absolute;left:5%;right:5%;bottom:83px;z-index:2;display:block;padding:0;border:0;text-align:left}
.home-page.atelier .scroll-intro h1{font-size:clamp(48px,5.4vw,78px);line-height:1.01;letter-spacing:-.035em;max-width:1050px}
.home-page .scroll-intro h1 br{display:block}
.home-page.atelier .scroll-intro .a-eyebrow{display:block;font-size:10px;letter-spacing:.2em;margin:0 0 16px;color:#713c2a}
.home-page .scroll-actions{justify-content:flex-start;margin-top:25px;gap:12px}
.home-page .scroll-actions .a-outline{background:#f7f2e8d9}
.home-page .scroll-foot{position:absolute;bottom:0;left:5%;right:5%;height:45px;margin:0;z-index:2}
.home-page.atelier .scroll-art figcaption{top:18px;bottom:auto;left:5%;right:5%;align-items:center}
.home-page .scroll-art figcaption>span,.home-page .motion-control{background:#f7f2e8e8}
@media(max-width:760px){
.home-page .scroll-pin,.home-page .scroll-story.is-static .scroll-pin{min-height:560px;height:calc(100svh - 72px)}
.home-page .scroll-pin:after{background:linear-gradient(180deg,transparent 18%,#f7f2e800 30%,#f7f2e8b8 52%,#f7f2e8f5 79%,#f7f2e8 100%)}
.home-page .scroll-intro{left:6%;right:6%;bottom:76px;padding:0;text-align:left}
.home-page.atelier .scroll-intro h1{font-size:clamp(37px,10.7vw,55px);line-height:1.04;letter-spacing:-.04em}
.home-page.atelier .scroll-intro .a-eyebrow{font-size:8px;letter-spacing:.16em;margin-bottom:15px}
.home-page .scroll-actions{justify-content:flex-start;margin-top:23px;gap:9px}
.home-page.atelier .scroll-actions .a-button{padding:12px 17px;font-size:10px}
.home-page .scroll-foot{left:6%;right:6%;height:41px}
.home-page.atelier .scroll-art figcaption{left:5%;right:5%;top:13px;gap:8px}
.home-page .scroll-art figcaption>span,.home-page .motion-control{font-size:7px;padding:5px 8px}
}
@media(max-height:600px){.home-page .scroll-pin,.home-page .scroll-story.is-static .scroll-pin{height:640px;min-height:640px}}

/* Clean hero ending without scroll labels or progress controls. */
.home-page .scroll-intro{bottom:46px}
@media(max-width:760px){.home-page .scroll-intro{bottom:38px}}
