.bread-story{position:relative;background:#211a16;color:#f7f3eb}
.bread-stage{position:relative;min-height:720px;height:min(850px,100svh);overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 76% 42%,#5b3e263b,transparent 55%),#211a16}
.bread-story.is-scroll-ready{height:380svh}
.is-scroll-ready .bread-stage{position:sticky;top:0;height:100svh;min-height:600px;max-height:none}
.bread-stage:before{content:'';position:absolute;inset:25px;border:1px solid #c3a57917;pointer-events:none;z-index:-1}
.bread-copy{position:absolute;left:max(64px,calc((100vw - 1320px)/2));top:50%;transform:translateY(-58%);width:40%;max-width:560px;z-index:3}
.bread-copy>.eyebrow{display:flex;align-items:center;gap:12px;color:#d1ae7c;font-size:.6875rem;letter-spacing:.19em;margin-bottom:30px}
.bread-copy>.eyebrow:before{content:'';width:30px;height:1px;background:#b59464}
.bread-copy h1{font-size:clamp(3.5rem,5.5vw,6.4rem);line-height:1.02;letter-spacing:-.04em;margin-bottom:26px}
.bread-copy h1>span,.bread-copy h1>em{display:block}
.bread-copy h1 em{color:#d9bd95}
.bread-detail{max-width:345px;transition:opacity .2s}
.bread-name{font-family:var(--sans);font-size:.8125rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;margin-bottom:13px;color:#f1dfc4}
.bread-description{font-size:.9375rem;line-height:1.85;color:#c8b7a3;min-height:56px;margin-bottom:25px}
.bread-copy .button{padding:14px 21px;min-height:50px;font-size:.8125rem}
.bread-scene{position:absolute;inset:0 0 0 41%;z-index:1;touch-action:pan-y}
.bread-scene canvas{width:100%;height:100%;display:block;position:absolute;inset:0;opacity:0;transition:opacity .55s}
.bread-scene.is-loaded canvas{opacity:1}
.bread-halo{position:absolute;left:51%;right:8%;top:16%;bottom:22%;border:1px solid #c3a57920;border-radius:50%;transform:rotate(-22deg);pointer-events:none}
.bread-halo:before{content:'';position:absolute;inset:-20px;border:1px solid #c3a5790b;border-radius:50%}
.bread-visual-label{position:absolute;top:47px;right:64px;z-index:3;display:flex;align-items:center;gap:14px;color:#bda27c;font-size:.625rem;letter-spacing:.2em}
.bread-visual-label img{width:48px;height:24px;object-fit:contain}
.bread-tasting-note{position:absolute;right:11%;bottom:20%;z-index:2;display:flex;align-items:center;gap:12px;color:#d9c5a6;font-family:var(--serif);font-style:italic;font-size:1.3rem}
.bread-tasting-note:before{content:'';height:1px;width:35px;background:#b5956666}
.bread-chapters{position:absolute;bottom:40px;left:max(64px,calc((100vw - 1320px)/2));right:max(64px,calc((100vw - 1320px)/2));z-index:4;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.bread-chapter{position:relative;display:flex;align-items:center;gap:12px;min-height:58px;padding:19px 0 4px;border:0;border-top:1px solid #c3a57940;background:none;color:#b9a792;text-align:left;font-size:.8125rem;letter-spacing:.025em}
.bread-chapter:before{content:'';position:absolute;top:-1px;height:2px;left:0;width:100%;background:#d2b17e;transform:scaleX(var(--chapter-progress,0));transform-origin:left}
.bread-chapter span{font-size:.6875rem;letter-spacing:.07em;color:#947c61}
.bread-chapter[aria-current=true]{color:#f6e9d6}
.bread-chapter[aria-current=true] span{color:#d2b17e}
.bread-chapter:hover{color:#fff2dd}
.bread-scroll-hint{position:absolute;bottom:145px;left:max(64px,calc((100vw - 1320px)/2));display:flex;gap:13px;align-items:center;font-size:.625rem;letter-spacing:.16em;color:#a9947a}
.bread-scroll-hint span{font-size:1rem;color:#d2b17e}
.bread-story:not(.is-scroll-ready) .bread-scroll-hint{display:none}
.bread-scene-status{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:30px;text-align:center;font-size:.75rem;line-height:1.8;letter-spacing:.05em;color:#dfc29b}
.bread-loading-ring{width:48px;height:48px;border:1px solid #c3a57933;border-top-color:#d9bd95;border-radius:50%;animation:loader-turn 1.8s linear infinite}
.bread-scene.is-unavailable .bread-loading-ring{animation:none;border-color:#c3a57955}
.is-loaded .bread-scene-status{display:none}
.bread-story.is-static .bread-stage{height:780px}
@media(min-width:1800px){.bread-copy{max-width:560px}.bread-scene{left:43%;right:5%}}
@media(max-width:1100px){.bread-copy{left:40px;width:44%}.bread-copy h1{font-size:clamp(3.4rem,6.2vw,5rem)}.bread-scene{left:40%;right:-6%}.bread-chapters{left:40px;right:40px;gap:22px}.bread-scroll-hint{left:40px}.bread-visual-label{right:40px}.bread-tasting-note{right:8%}}
@media(max-width:700px){
 .bread-stage,.bread-story.is-static .bread-stage{height:860px;min-height:780px}
 .is-scroll-ready .bread-stage{height:100svh;min-height:690px}
 .bread-story.is-scroll-ready{height:340svh}
 .bread-stage:before{inset:12px}
 .bread-copy{left:24px;right:24px;top:35px;transform:none;width:auto;max-width:none}
 .bread-copy>.eyebrow{font-size:.625rem;letter-spacing:.12em;margin-bottom:17px}
 .bread-copy h1{font-size:clamp(2.7rem,10.5vw,4rem);line-height:.98;margin-bottom:17px}
 .bread-copy h1>span,.bread-copy h1>em{display:inline}
 .bread-copy h1>span:after{content:' '}
 .bread-name{font-size:.6875rem;margin-bottom:8px}
 .bread-description{font-size:.8125rem;line-height:1.65;max-width:310px;min-height:0;margin-bottom:0}
 .bread-copy .button{position:absolute;top:calc(100svh - 194px);left:0;min-height:42px;padding:10px 15px;font-size:.75rem;gap:20px}
 .bread-story.is-static .bread-copy .button{top:666px}
 .bread-scene{inset:235px -8% 110px -8%}
 .bread-halo{left:20%;right:20%;top:39%;bottom:23%}
 .bread-tasting-note{right:24px;bottom:154px;font-size:1rem;max-width:135px;text-align:right;line-height:1.2}
 .bread-tasting-note:before{display:none}
 .bread-visual-label{display:none}
 .bread-scroll-hint{display:none}
 .bread-chapters{left:24px;right:24px;bottom:27px;gap:12px}
 .bread-chapter{font-size:.6875rem;min-height:57px;display:block;padding-top:10px}
 .bread-chapter span{display:block;margin-bottom:7px;font-size:.5625rem}
}
@media(max-width:360px){.bread-copy{left:20px;right:20px}.bread-copy h1{font-size:2.7rem}.bread-chapters{left:20px;right:20px;gap:8px}.bread-tasting-note{right:20px;font-size:.9375rem;max-width:105px}}
@media(max-height:700px) and (min-width:701px){.bread-copy h1{font-size:3.7rem}.bread-copy{transform:translateY(-62%)}.bread-copy>.eyebrow{margin-bottom:18px}.bread-scroll-hint{display:none}.bread-chapters{bottom:24px}.bread-description{margin-bottom:15px}}
html.is-site-loading{overflow:hidden}
.site-loader{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;overflow:auto;background:radial-gradient(ellipse at 50% 42%,#49342166,transparent 58%),#211a16;color:#f7f3eb;opacity:1;transition:opacity .6s ease,visibility .6s}
.site-loader[hidden]{display:none}
.site-loader.is-dismissed{opacity:0;visibility:hidden;pointer-events:none}
.site-loader-frame{position:absolute;inset:24px;border:1px solid #c3a57926;pointer-events:none}
.site-loader-content{text-align:center;padding:52px 24px 90px;width:min(100%,560px)}
.loader-emblem{position:relative;display:grid;place-items:center;width:142px;height:142px;margin:0 auto 34px;color:#d4b381}
.loader-emblem:before{content:'';position:absolute;inset:-12px;border:1px solid #c3a57910;border-radius:50%}
.loader-orbit{position:absolute;inset:0;border:1px solid #c3a57926;border-top-color:#c3a579b3;border-radius:50%;animation:loader-turn 5s linear infinite}
.loader-emblem svg{width:92px;height:84px}
.loader-steam{animation:loader-breathe 2.8s ease-in-out infinite;transform-origin:center}
.loader-brand{font-size:.6875rem;letter-spacing:.24em;color:#d4b381;margin:0 0 24px}
.loader-brand span{color:#a28b6f;margin-left:7px}
.site-loader h2{font-family:var(--serif);font-size:clamp(2.6rem,6vw,4.4rem);font-weight:400;line-height:1.05;letter-spacing:-.025em;margin:0 0 26px}
.site-loader h2 em{color:#d9bd95;font-weight:400}
.loader-message{font-size:.75rem;letter-spacing:.07em;color:#beab93;margin:0 0 21px}
.loader-track{width:144px;height:1px;background:#c3a5792b;overflow:hidden;margin:auto}
.loader-track span{display:block;width:45%;height:100%;background:#d9bd95;animation:loader-sweep 2s ease-in-out infinite}
.loader-continue{margin-top:32px;padding:10px;border:0;background:transparent;color:#bda98f;font-size:.6875rem;letter-spacing:.025em}
.loader-continue:hover{color:#f7f3eb}.loader-continue span{padding-left:10px}
.loader-footnote{position:absolute;bottom:33px;left:20px;right:20px;text-align:center;color:#90795d;font-size:.5625rem;letter-spacing:.21em;margin:0}
@keyframes loader-turn{to{transform:rotate(360deg)}}
@keyframes loader-breathe{0%,100%{opacity:.35;transform:translateY(3px)}50%{opacity:1;transform:translateY(-2px)}}
@keyframes loader-sweep{0%{transform:translateX(-110%)}100%{transform:translateX(330%)}}
@media(max-width:700px){.site-loader-frame{inset:12px}.loader-emblem{width:118px;height:118px;margin-bottom:28px}.site-loader-content{padding-top:36px}.loader-footnote{bottom:26px}}
@media(max-height:600px){.loader-emblem{width:80px;height:80px;margin-bottom:20px}.loader-emblem svg{width:60px;height:60px}.site-loader-content{padding:32px 24px 70px}.loader-brand{margin-bottom:16px}.site-loader h2{font-size:2.4rem;margin-bottom:16px}.loader-continue{margin-top:16px}}
@media(prefers-reduced-motion:reduce){.bread-scene canvas,.site-loader{transition:none}.loader-orbit,.loader-steam,.loader-track span,.bread-loading-ring{animation:none}.loader-track span{width:100%;opacity:.65}}
