/* Full-bleed food photography. Motion progressively enhances visible content. */
.main-site .hero.cinema-hero,.photo-site .hero.cinema-hero{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:stretch;justify-content:center;min-height:760px;min-height:max(760px,100svh);padding:156px max(36px,calc((100vw - 1180px)/2)) 148px;overflow:hidden;background:#10110f;text-align:left;color:#faf7f0}
.cinema-scene{position:absolute;z-index:-3;inset:-5% 0;margin:0;pointer-events:none;transform:translateY(var(--hero-shift,0px))}
.cinema-scene>img{width:100%;height:100%;object-fit:cover;object-position:66% 52%;max-width:none}
.main-site .cinema-scene{left:24%}.main-site .cinema-scene>img{object-position:66% 52%}
.cinema-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#10110ff5 0%,#10110fcc 31%,#10110f55 62%,#10110f10 100%),linear-gradient(0deg,#10110fe6,transparent 34%,transparent 76%,#10110f70)}
.main-site .cinema-shade{background:linear-gradient(90deg,#10110f 0%,#10110f 30%,#10110f66 65%,transparent 100%),linear-gradient(0deg,#10110fd9,transparent 32%,#10110f30)}
.cinema-content{max-width:880px;width:100%;position:relative;z-index:2}
.cinema-eyebrow{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 34px;color:#e8cf8e;font:10px/1.8 'Noto Sans JP',sans-serif;letter-spacing:.18em}.cinema-eyebrow>span{font-size:10px;letter-spacing:.09em;color:#e2dfd4}
.main-site .cinema-title,.photo-site .cinema-title{margin:0 0 30px;font-family:'Noto Serif JP','Yu Mincho',serif;font-size:clamp(44px,5.15vw,70px);font-weight:400;line-height:1.53;letter-spacing:.015em;text-align:left;color:#fffaf0}.cinema-title>span{display:block;white-space:nowrap}.cinema-gold{color:#e5c777}
.photo-site .cinema-title{font-size:clamp(52px,6.4vw,86px);line-height:1.4;letter-spacing:.045em}
.cinema-description{color:#e5e1d6;font-size:14px;line-height:2.2;margin:0 0 30px;max-width:590px;text-shadow:0 1px 12px #0008}
.cinema-actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center}.cinema-primary,.cinema-secondary{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:56px;padding:16px 25px;font-size:13px;letter-spacing:.045em;border-radius:2px;transition:transform .28s,background .28s,border-color .28s}.cinema-primary{background:#e0c477;color:#141610;border:1px solid #e0c477}.cinema-secondary{color:#fff7e5;background:#11171042;border:1px solid #ffffff65;backdrop-filter:blur(8px)}.cinema-primary:hover{background:#f3d999;transform:translateY(-3px)}.cinema-secondary:hover{background:#eee6ce1a;border-color:#e0c477;transform:translateY(-3px)}.cinema-actions a>span{font-size:20px;transition:transform .3s}.cinema-actions a:hover>span{transform:translate(3px,-3px)}
.cinema-proof{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;color:#d0cec1;font-size:11px;margin:28px 0 0}.cinema-proof b{font-size:19px;font-weight:500;color:#f7eed5}.cinema-proof>span+span{padding-left:24px;border-left:1px solid #c5b78750}
.cinema-footer{position:absolute;inset:auto max(36px,calc((100vw - 1180px)/2)) 27px;display:flex;gap:25px;align-items:center;border-top:1px solid #fff3;padding-top:22px;color:#dcd7c8;font-size:10px;letter-spacing:.12em}.cinema-scroll{display:flex;align-items:center;gap:14px}.cinema-scroll>span{font-size:21px;color:#e5c777;display:block}.cinema-caption{margin-left:auto;text-align:right;font-size:9px;letter-spacing:.18em}.cinema-caption small{display:block;margin-top:5px;font-size:9px;letter-spacing:.03em;color:#b9b8ac}.motion-toggle{font:10px/1.6 'Noto Sans JP',sans-serif;border:1px solid #fff4;border-radius:2px;background:#13181170;color:#ded9c9;padding:8px 12px;cursor:pointer}.motion-toggle:hover{border-color:#e0c477}
.main-site .nav,.photo-site .photo-nav{position:fixed;inset:0 0 auto;background:linear-gradient(#10110fe0,#10110f30);border-bottom-color:#ffffff24;backdrop-filter:blur(8px);transition:background .35s}.page-scrolled .nav,.page-scrolled .photo-nav{background:#111310f0;backdrop-filter:blur(16px)}
.main-site .stats{background:#171a15}.main-site .price-card,.service-choice article,.photo-site .pricing-card,.photo-site .step-item{border-radius:3px;transition:transform .35s,border-color .35s,box-shadow .35s}.service-choice article:hover,.main-site .price-card:hover,.photo-site .pricing-card:hover{transform:translateY(-5px);border-color:#baa262;box-shadow:0 18px 40px #00000012}
.photo-site .taste-grid{gap:30px}.photo-site .taste-grid figure{overflow:hidden}.photo-site .taste-grid img{border-radius:2px;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.photo-site .taste-grid figure:hover img{transform:scale(1.035)}.photo-site .taste-grid figure:nth-child(2){margin-top:60px}.photo-site .taste-grid figure:nth-child(3){margin-top:120px}.photo-site .editorial-heading h2{font-size:clamp(30px,4vw,48px);font-weight:400}.photo-site .photo-editorial{padding:110px 0 100px}.photo-site .photo-editorial .editorial-note{margin-top:38px}
.food-compare-frame{border-radius:3px;cursor:ew-resize;touch-action:pan-y}.food-compare-frame img{user-select:none;-webkit-user-drag:none}.compare-views{display:flex;justify-content:center;gap:6px;margin-top:8px}.compare-views button{padding:9px 19px;background:transparent;border:1px solid #9d906b66;color:inherit;font:11px/1.5 'Noto Sans JP',sans-serif;cursor:pointer;border-radius:2px;transition:background .2s,color .2s}.compare-views button[aria-pressed=true]{background:#d8b968;color:#141710;border-color:#d8b968}.compare-views button:hover{border-color:#d8b968}.photo-site .gallery .compare-views{color:#e9e2ce}
@keyframes camera-pass{from{transform:translateY(0)}to{transform:translateY(80px)}}
@keyframes reading-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes scroll-cue{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}
@media(prefers-reduced-motion:no-preference){body:not(.motion-off) .cinema-scroll>span{animation:scroll-cue 1.8s ease-in-out 3}}
@supports(animation-timeline:scroll()){@media(prefers-reduced-motion:no-preference){body:not(.motion-off) .cinema-scene{animation:camera-pass linear both;animation-timeline:scroll(root block);animation-range:0px 900px}body:not(.motion-off):before{content:'';position:fixed;top:0;left:0;right:0;height:2px;background:#e0c477;z-index:1500;transform-origin:left;animation:reading-progress linear both;animation-timeline:scroll(root block)}}}
@media(max-width:960px){.main-site .hero.cinema-hero,.photo-site .hero.cinema-hero{padding-inline:32px}.main-site .cinema-title{font-size:46px}.photo-site .cinema-title{font-size:66px}.cinema-footer{inset-inline:32px}.cinema-content{max-width:700px}.cinema-scene>img{object-position:65% center}}
@media(max-width:760px){.main-site .hero.cinema-hero,.photo-site .hero.cinema-hero{min-height:820px;min-height:max(790px,100svh);padding:290px 22px 132px;justify-content:flex-end}.cinema-scene,.main-site .cinema-scene{inset:-2% -20% 25%;transform:none}.cinema-scene>img,.main-site .cinema-scene>img{object-position:63% center}.cinema-shade,.main-site .cinema-shade{background:linear-gradient(0deg,#10110f 0%,#10110ff5 30%,#10110f80 57%,#10110f00 85%,#10110f80 100%)}.cinema-content{max-width:100%}.cinema-eyebrow{display:block;font-size:9px;margin-bottom:18px}.cinema-eyebrow>span{display:block;font-size:9px;margin-top:6px}.main-site .cinema-title{font-size:clamp(26px,7.4vw,44px);line-height:1.6;letter-spacing:0;margin-bottom:23px}.photo-site .cinema-title{font-size:clamp(37px,10.2vw,57px);line-height:1.45;margin-bottom:22px}.cinema-description{font-size:12px;line-height:2;margin-bottom:24px;max-width:360px}.cinema-actions{gap:10px}.cinema-primary,.cinema-secondary{padding:13px 15px;min-height:48px;font-size:11px;gap:16px}.cinema-actions a>span{font-size:16px}.cinema-proof{font-size:10px;gap:10px 14px;margin-top:24px;line-height:1.8}.cinema-proof b{font-size:16px}.cinema-proof>span+span{padding-left:14px}.cinema-footer{inset:auto 22px 24px;padding-top:17px;gap:14px;font-size:9px}.cinema-caption{display:none}.motion-toggle{margin-left:auto;padding:6px 9px;font-size:9px}.cinema-scroll{gap:10px}.photo-site .photo-editorial{padding:66px 0}.photo-site .taste-grid{grid-template-columns:1fr;gap:35px}.photo-site .taste-grid figure{display:block;width:88%;margin:0!important}.photo-site .taste-grid figure:nth-child(2){margin-left:auto!important}.photo-site .taste-grid figure>img{aspect-ratio:4/3}.photo-site .taste-grid figcaption{padding:16px 0 0}.photo-site .taste-grid h3{font-size:21px;margin-top:6px}.photo-site .taste-grid small{font-size:10px}.photo-site .editorial-heading h2{font-size:32px}.compare-views button{padding:9px 15px}.motion-off .cinema-scene{transform:none!important}}
@media(max-width:360px){.main-site .hero.cinema-hero,.photo-site .hero.cinema-hero{padding-inline:18px}.cinema-actions{gap:8px}.cinema-primary,.cinema-secondary{padding:12px 11px;font-size:10px;gap:12px}.cinema-description{font-size:11px}.cinema-proof{gap:8px;font-size:9px}.cinema-proof>span+span{padding-left:8px}.cinema-footer{inset-inline:18px}.photo-site .cinema-proof>span+span{border:0;padding:0;flex-basis:100%}}
.motion-off *,.motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important}.motion-off .cinema-scene{transform:none!important}.motion-off{scroll-behavior:auto}
@media(prefers-reduced-motion:reduce){.cinema-scene{transform:none!important}html{scroll-behavior:auto!important}}

@media(max-width:360px){.cinema-actions{display:grid;grid-template-columns:1fr}.cinema-actions a{width:100%;padding:12px 16px;justify-content:space-between}}
