/* Rehfeldt & Massing – movement follows the character of each world. */





.showroom-header{padding-block:20px}.header-caption{font-size:.65rem;letter-spacing:.13em}
.showroom-intro{padding:45px 0 38px}.showroom-intro h1{font-size:clamp(3.5rem,5.85vw,7rem)}
.worlds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;height:clamp(420px,35vw,560px);min-height:420px;perspective:1200px}
.world-card{transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transform-style:preserve-3d;transition:transform .25s ease-out}
.world-card:after{background:radial-gradient(circle at var(--spot-x,50%) var(--spot-y,50%),#ffe4bb15,transparent 55%);border-color:#e1d0b72b}
.world-card img.world-secondary{opacity:0;transition:opacity 1.2s ease,transform 1.8s var(--ease)}
.world-card:is(:hover,:focus-visible) .world-secondary{opacity:1}
.world-restaurant img{object-position:72% 50%;animation-delay:-9s}
.world-top{left:20px;right:20px;top:21px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.world-top>span:first-child{font-size:.59rem;letter-spacing:.055em}.world-type{font-size:.6875rem;margin:0}
.world-bottom{left:21px;right:21px}.card-kicker{font-size:.6rem;letter-spacing:.075em;line-height:1.6;max-width:none}
.world-bottom h2{font-size:clamp(1.5rem,2.05vw,2.75rem);letter-spacing:-.06em;white-space:nowrap}
.world-bread h2{font:700 clamp(3rem,4vw,5rem)/1 var(--serif);letter-spacing:-.08em}
.world-electric h2{font-size:clamp(1.4rem,1.95vw,2.6rem)}
.world-restaurant h2{font-size:clamp(1.7rem,2.4vw,3.3rem);letter-spacing:.02em;font-weight:500}
.world-restaurant h2>span{color:#e5b17b;font-size:.7em;margin-left:8px;display:inline-block;animation:little-orbit 24s linear infinite}
.world-action{font-size:.73rem;gap:8px}.world-action>span:first-child{max-width:155px;line-height:1.5}.round-arrow{width:36px;height:36px;flex:none}
.card-discover{left:21px;font-size:.6rem}.showroom-caption{font-size:.64rem}
@keyframes little-orbit{to{transform:rotate(360deg)}}

/* The original photographs remain the immediate and universal fallback. */
.media-stage{position:relative;overflow:hidden}
.hero-image.media-stage{position:absolute}
.living-image{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:1;pointer-events:none;opacity:0;transition:opacity .65s ease}
.media-stage[data-renderer="webgl"]>picture>img{animation:none!important;filter:none!important}
.look-visual[data-look] img{filter:none;transform:scale(1.015);object-position:64% 45%}
.look-visual .look-word{z-index:3;bottom:49px;pointer-events:none;text-shadow:0 2px 30px #0005}
.media-instruction{position:absolute;left:38px;bottom:24px;font-size:.69rem;letter-spacing:.16em;z-index:3;color:#fff1e2;text-shadow:0 2px 15px #000}
.look-visual:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(0deg,#241914a1,transparent);z-index:2;pointer-events:none}
.hero-look-picker{position:absolute;right:var(--gutter);bottom:123px;display:flex;align-items:stretch;padding:6px;gap:3px;background:#211c17c9;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid #e8d8be51;border-radius:99px;z-index:4}
.hero-look-picker button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:10px 18px;border-radius:99px;font-size:.8rem;color:#ecded2;transition:color .3s,background .3s}
.hero-look-picker button>span{font-size:.6rem;opacity:.65;font-variant-numeric:tabular-nums}
.hero-look-picker button[aria-pressed="true"]:not(.look-play){background:#e4c3a8;color:#352920}
.hero-look-picker button:not([aria-pressed="true"]):hover{background:#f9e4cf1a}
.hero-look-picker .look-play{padding:8px;width:44px;border-left:1px solid #cbb19545;border-radius:0 50% 50% 0;font-size:1.1rem}
.bread-stamp,.photo-caption{z-index:3}.bread-stamp{animation:stamp-drift 9s ease-in-out infinite alternate}
@keyframes stamp-drift{from{transform:rotate(8deg) translateY(0)}to{transform:rotate(14deg) translateY(-8px)}}

/* A photograph-led baking sequence, scrubbed continuously through four stages. */
.bake-cinema{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(0,1fr);background:#e0ccb0;border:1px solid #ad886347}
.bake-picture{width:100%;min-width:0;min-height:570px;background:#39251b;isolation:isolate}
.bake-picture>picture>img{position:absolute;inset:0;object-position:50% 50%;transform:scale(1.015)}
.bake-picture-shade{position:absolute;inset:0;background:linear-gradient(180deg,#1a110c66,transparent 30%,transparent 50%,#1a110cb8);z-index:2;pointer-events:none}
.bake-photo-label{position:absolute;top:27px;left:29px;right:20px;z-index:3;font-size:.7rem;letter-spacing:.11em;color:#fff3dc;text-shadow:0 1px 10px #000}
.bake-floating-time{position:absolute;bottom:25px;left:28px;right:20px;z-index:3;color:#fce6c3;display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.bake-floating-time>span{font-size:.72rem;letter-spacing:.17em}
.bake-floating-time>strong{font:400 clamp(4.5rem,8vw,8.5rem)/1 var(--serif);font-variant-numeric:tabular-nums;letter-spacing:-.075em;text-shadow:0 3px 30px #0003}
.bake-control{padding:36px clamp(24px,3vw,49px);display:flex;flex-direction:column;justify-content:center;min-width:0}
.bake-control-top{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:48px}
.bake-control-top>.eyebrow{font-size:.67rem;color:#775139;letter-spacing:.08em}
[data-bake-play]{display:flex;gap:10px;align-items:center;border:1px solid #98735588;padding:10px 15px;border-radius:30px;min-height:44px;color:#713a26;font-size:.8rem;transition:background .3s}
[data-bake-play]:hover{background:#ecdcc5}
.bake-control>label{font:italic 1.4rem/1.4 var(--serif);color:#7e422a;margin-bottom:10px}
.bake-control input[type="range"]{width:100%;height:36px;margin:8px 0;accent-color:#a43d25}
.bake-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
.bake-steps button{font-size:.69rem;line-height:1.5;min-height:44px;text-align:left;padding:7px 0;border-bottom:1px solid #98634055;color:#71513b;transition:color .3s,border-color .3s}
.bake-steps button[aria-pressed="true"]{color:#972f1b;border-color:#a44129;border-bottom-width:2px;font-weight:700}
.bake-control .bake-story{padding-top:33px;min-height:183px}
.bake-story h3{font-size:2rem;letter-spacing:-.04em;line-height:1.14;margin-bottom:18px}
.bake-story p{font-size:.9rem;line-height:1.75;min-height:0;color:#72533e}
.steam-layer{position:absolute;inset:20% 20% 20%;z-index:2;pointer-events:none;opacity:0;transition:opacity 1.6s}
.bake-picture[data-stage="2"] .steam-layer,.bake-picture[data-stage="3"] .steam-layer{opacity:.3}
.steam-layer i{position:absolute;bottom:0;width:28%;height:55%;left:20%;border-radius:50%;background:linear-gradient(0deg,transparent,#fff3df55,transparent);filter:blur(14px);animation:warm-air 7s ease-in-out infinite}
.steam-layer i:nth-child(2){left:47%;animation-delay:-3s;height:70%}.steam-layer i:nth-child(3){left:62%;animation-delay:-5s}
@keyframes warm-air{0%{transform:translateY(18%) scaleX(.55) rotate(-8deg);opacity:0}30%{opacity:.8}100%{transform:translateY(-58%) scaleX(1.15) rotate(12deg);opacity:0}}
.bread-product{overflow:hidden;padding:25px}.product-photo{height:220px;position:relative;overflow:hidden;margin:19px -25px 0;background:#82674c}
.product-photo img{object-position:60% 50%;transition:transform 1.2s var(--ease)}
.bread-product:nth-child(2) .product-photo img{object-position:20% 48%;transform:scale(1.15)}
.bread-product:nth-child(3) .product-photo img{object-position:78% 60%;transform:scale(1.35)}
.bread-product:hover .product-photo img{transform:scale(1.09)}
.bread-product:nth-child(2):hover .product-photo img{transform:scale(1.22)}
.bread-product:nth-child(3):hover .product-photo img{transform:scale(1.44)}
.bread-product h3{margin-top:24px}

/* Spatial light and a little life around the restaurant table. */
.depth-scene{overflow:hidden}.depth-image{will-change:transform}
.light-room:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--light-x,60%) var(--light-y,45%),#edffcf1c,transparent 55%);mix-blend-mode:screen}
.gastro-table-note{animation:table-note-drift 11s ease-in-out infinite alternate}
@keyframes table-note-drift{from{transform:rotate(3deg) translateY(0)}to{transform:rotate(6deg) translateY(-9px)}}
.gastro-hero-ribbon>i{animation:little-orbit 30s linear infinite}
.gastro-menu .food-image-stack.media-stage{position:absolute}
.gastro-menu .food-image-dampf{object-position:88% 42%}
.gastro-menu .food-image-dampf.is-active{transform:scale(1.6);transform-origin:88% 42%}
.gastro-food-visual:after{z-index:2}.gastro-visual-caption{z-index:3}
.gastro-kitchen-photo:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 60% 65%,#f68c2414,transparent 55%);mix-blend-mode:screen;animation:wok-glow 4.5s ease-in-out infinite alternate}
@keyframes wok-glow{to{opacity:.2;transform:scale(1.07)}}
body[data-page="restaurant"]{font-size:1rem}
.gastro-main h1,.gastro-main h2,.gastro-main h3{overflow-wrap:anywhere}
.gastro-header{flex-wrap:wrap}.gastro-header nav{min-width:0}.gastro-button{max-width:100%}
.demo-bar>span{font-size:.68rem}.demo-bar b{font-size:.6rem;letter-spacing:.025em}
.dialog-content-summary{overflow-wrap:anywhere}

@media(min-width:1800px){.worlds{height:560px}.world-top>span:first-child{font-size:.7rem}.card-kicker{font-size:.7rem}.world-action{font-size:.875rem}}
@media(max-width:1200px) and (min-width:801px){.worlds{grid-template-columns:repeat(2,minmax(0,1fr));height:auto;gap:18px}.world-card{min-height:390px}.world-top{flex-direction:row;align-items:center}.world-top>span:first-child{font-size:.69rem}.world-bottom h2{font-size:2.7rem}.world-bread h2{font-size:4.5rem}.world-electric h2{font-size:2.5rem}.world-restaurant h2{font-size:2.9rem}.card-kicker{font-size:.67rem}.world-action{font-size:.85rem}.world-action>span:first-child{max-width:none}.header-caption{font-size:.6rem}.bake-control{padding:30px 25px}.bake-picture{min-height:580px}}
@media(max-width:1000px){.hero-look-picker{right:var(--gutter);bottom:116px}.hero-look-picker button{padding-inline:13px}.hero-look-picker button>span{display:none}.hair-hero-copy{padding-bottom:160px}.bake-cinema{grid-template-columns:minmax(0,1fr)}.bake-picture{min-height:0;aspect-ratio:16/10}.bake-control{padding:34px 38px}.bake-control-top{flex-direction:row;justify-content:space-between;align-items:center;margin-bottom:30px;gap:20px}.bake-control .bake-story{min-height:0}.bake-story p{max-width:680px}.product-photo{height:180px}.world-action>span:first-child{font-size:inherit}}
@media(max-width:800px){.worlds{grid-template-columns:repeat(2,minmax(0,1fr));height:auto;gap:15px}.world-card{min-height:405px}.world-top{flex-direction:column}.world-top>span:first-child{font-size:.63rem}.world-bottom h2{font-size:2rem}.world-bread h2{font-size:3.7rem}.world-electric h2{font-size:1.85rem}.world-restaurant h2{font-size:2.1rem}.card-kicker{font-size:.6rem}.world-action>span:first-child{max-width:155px}.showroom-intro h1{font-size:4rem}.header-caption{display:none}.hero-look-picker{bottom:112px}.bake-photo-label{font-size:.7rem}.bake-floating-time>strong{font-size:6rem}.product-photo{height:190px}.bread-product{padding:20px}.product-photo{margin-inline:-20px}.world-top .world-type{font-size:.69rem}}
@media(max-width:600px){
 .showroom-header{padding-block:16px;gap:15px}.showroom-header .header-link{font-size:.75rem}
 .showroom-intro{padding:34px 0 29px}.showroom-intro h1{font-size:clamp(3.3rem,14vw,5rem)}.showroom-intro .eyebrow{font-size:.6rem;letter-spacing:.04em}.intro-aside{font-size:.875rem;line-height:1.8}
 .worlds{grid-template-columns:minmax(0,1fr);gap:19px}.world-card{min-height:445px}.world-top{flex-direction:row;align-items:center;left:23px;right:23px}.world-top>span:first-child{font-size:.65rem}.world-bottom{left:25px;right:25px}.world-bottom h2{font-size:2.5rem}.world-bread h2{font-size:4.5rem}.world-electric h2{font-size:2.5rem}.world-restaurant h2{font-size:2.8rem}.card-kicker{font-size:.67rem}.world-action{font-size:.85rem}.world-action>span:first-child{max-width:none}.round-arrow{width:42px;height:42px}.card-discover{left:25px}.showroom-caption{font-size:.65rem;line-height:1.8}.showroom-caption>span:last-child{font-size:.8rem}.showroom-footer{gap:27px}
 .hair-hero-copy{padding-bottom:27px}.hero-look-picker{position:relative;inset:auto;width:fit-content;max-width:calc(100% - var(--gutter)*2);margin:0 var(--gutter) 134px;gap:3px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-look-picker button{font-size:.78rem;padding-inline:15px}.hero-look-picker button>span{display:inline}.hero-look-picker .look-play{width:41px;padding-inline:9px}.hair-hero .hero-image{bottom:0}.hair-side-label{top:34%;font-size:.55rem}.look-visual .look-word{left:24px;bottom:45px}.media-instruction{left:26px;font-size:.65rem;bottom:24px}
 .bake-picture{aspect-ratio:4/5;min-height:360px}.bake-photo-label{left:22px;top:23px;font-size:.64rem}.bake-floating-time{left:21px;bottom:22px}.bake-floating-time>strong{font-size:5.8rem}.bake-floating-time>span{font-size:.67rem}
 .bake-control{padding:28px 22px 33px}.bake-control-top{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:30px}.bake-control-top>.eyebrow{font-size:.66rem}.bake-control>label{font-size:1.35rem}.bake-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 16px}.bake-steps button{font-size:.75rem;min-height:42px}.bake-story h3{font-size:2rem}.bake-story p{font-size:.91rem}.bake-control .bake-story{padding-top:28px}
 .bread-product{padding:26px}.product-photo{height:240px;margin-inline:-26px}.bread-product h3{font-size:3.4rem}.bread-product>p{font-size:.88rem}.product-bottom{font-size:.75rem}.bread-stamp{animation-duration:12s}
 .gastro-header nav{margin-left:auto}.gastro-hero-ribbon{flex-wrap:wrap}.gastro-table-note{animation-duration:14s}
}
@media(max-width:360px){.showroom-header .header-link{font-size:.69rem}.world-top{left:19px;right:19px}.world-top>span:first-child{font-size:.59rem}.world-type{font-size:.64rem}.world-bottom{left:20px;right:20px}.world-electric h2{font-size:2.15rem}.world-action{font-size:.76rem}.hero-look-picker{padding:4px;gap:0}.hero-look-picker button{padding-inline:10px;font-size:.74rem}.hero-look-picker button>span{font-size:.55rem}.hero-look-picker .look-play{width:36px}.bake-floating-time>strong{font-size:5rem}.bake-control{padding-inline:19px}.gastro-header .gastro-logo{max-width:100%}.gastro-header nav{margin-left:0}.bread-product h3{font-size:3rem}}
@media(prefers-reduced-motion:reduce){.world-card{transform:none!important}.depth-image{transform:none!important}.living-image{transition:none}.steam-layer{display:none}.world-card img{animation:none}.media-stage img{transform:none!important}}
.motion-off .world-card{transform:none!important}.motion-off .depth-image{will-change:auto;transform:none!important}.motion-off .steam-layer{display:none}.motion-off .media-stage img{transform:none!important}
/* Controls remain usable when the visitor enlarges text. */
.hero-look-picker{flex-wrap:wrap;justify-content:center;border-radius:30px}
.hero-look-picker button{max-width:100%}
.marquee>div{display:flex;width:max-content;animation-duration:90s}
.marquee-group{display:block;flex:none;min-width:100vw;padding-inline:1.5rem;text-align:center}
.gastro-footer>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
@media(max-width:640px){.gastro-header{display:flex;flex-wrap:wrap;gap:18px 20px}.gastro-header>.gastro-logo{order:0;max-width:100%}.gastro-header nav>.gastro-reserve{order:1;margin-left:auto;max-width:100%;min-width:0}.gastro-header nav>a{order:2;flex:1 1 40%;min-width:0}.gastro-header nav>a:nth-child(2){text-align:right}.gastro-reserve>span{flex-shrink:0}}
