/* Depth is driven by actual scroll; native scrolling and links remain untouched. */
.hero-parallax { width:100%;height:100%;transform-origin:center; }
.hero-photo { overflow:hidden; }
.page-progress { position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,#8b6c36,var(--light-gold));transform:scaleX(0);transform-origin:left;pointer-events:none; }
.story-photo-window { overflow:hidden;border-radius:4px; }
.story-photo-window img { display:block; }
.event-photo img,.event-hero-image img { transition:none; }
.food-feature-image { transform-origin:50% 70%; }
.food-rail-controls { display:flex;align-items:center;gap:8px;margin-top:-8px;margin-bottom:22px; }
.food-rail-controls[hidden] { display:none; }
.food-rail-note { font-size:10px;letter-spacing:.035em;color:var(--muted);white-space:nowrap; }
.food-rail-meter { flex:1;height:2px;background:var(--line);overflow:hidden; }
.food-rail-meter span { display:block;width:100%;height:100%;background:var(--gold);transform:scaleX(.3333);transform-origin:left; }
.food-rail-controls output { font-size:9px;color:var(--gold);font-variant-numeric:tabular-nums;white-space:nowrap; }
.food-rail-controls .icon-button { width:44px;min-width:44px;height:44px;color:var(--gold); }
.food-rail-controls .icon-button:disabled { opacity:.25;cursor:default; }
.taste-ribbon { overflow:hidden;padding:30px 0 40px;contain:paint;color:var(--gold);border-block:1px solid #c8a56520;background:#c8a56504; }
.taste-ribbon-line,.taste-ribbon-echo { display:flex;align-items:center;gap:30px;width:max-content;white-space:nowrap;font:italic 500 clamp(50px,8vw,110px)/1.08 var(--serif);letter-spacing:-.04em; }
.taste-ribbon-line .icon { width:35px;height:35px;flex:none; }
.taste-ribbon-echo { color:transparent;-webkit-text-stroke:1px #c8a56560;font-style:normal;font-size:clamp(36px,6vw,80px);margin-top:8px; }
.taste-ribbon-echo b { font-weight:400;padding-inline:12px;color:var(--gold);-webkit-text-stroke:0;font-size:.45em; }
.delivery-journey { margin-top:18px;padding-top:14px;border-top:1px solid #c8a5652b; }
.delivery-journey[hidden] { display:none; }
.journey-track { position:relative;height:32px;margin-inline:6px; }
.journey-track::before { content:'';position:absolute;top:19px;left:0;right:0;border-top:1px dashed #c8a56570; }
.journey-track::after { content:'';position:absolute;top:16px;right:0;width:7px;height:7px;border-radius:50%;background:var(--gold); }
.journey-truck { display:block;position:relative;color:var(--gold);width:24px;background:var(--surface); }
.journey-labels { display:flex;justify-content:space-between;gap:12px;font-size:10px;color:var(--muted); }
.journey-labels strong { font-weight:500;color:var(--light-gold); }
@media(min-width:900px){.taste-ribbon{padding:45px 0 55px}.food-rail-controls{display:none}.footer-social-link{transform-origin:center}}
@media(prefers-reduced-motion:no-preference){
  .button.gold { position:relative;overflow:hidden; }
  .button.gold::after { content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 30%,#fff5 49%,transparent 68%);transform:translateX(-150%); }
  .button.gold:hover::after,.button.gold:focus-visible::after { animation:castello-button-light .75s ease; }
}
@keyframes castello-button-light { to { transform:translateX(150%); } }
@media(prefers-reduced-motion:reduce){.page-progress{display:none}.taste-ribbon-line,.taste-ribbon-echo,.hero-parallax{transform:none!important}.food-feature-image,.footer-social-link{transform:none!important}}
@media print{.taste-ribbon,.food-rail-controls,.delivery-journey,.page-progress{display:none}}
