/* HERO layout only. The retained site.css/body/navigation are unchanged. */
/* JS-enabled first paint starts on the writing paper, never on the final room. */
@media (prefers-reduced-motion:no-preference){
 /* Do not anchor to temporary below-HERO content while its height is being
    initialized. Native saved scroll/fragment positions remain enabled. */
 html.miyabi-hero-pending {overflow-anchor:none;}
 html.miyabi-hero-pending #miyabi-flower-transition .next-scene {visibility:hidden;}
 html.miyabi-hero-pending #miyabi-flower-transition .lettering-front {display:flex;}
 html.miyabi-hero-pending #miyabi-flower-transition .static-word {display:none;}
}
#miyabi-site-v12 .m-journey {height:auto;position:relative;overflow:clip;overflow-clip-margin:0;background:#f6f1e7;}
#miyabi-site-v12 .m-journey.journey-ready {height:var(--journey-total-height,2600px);}
#miyabi-site-v12 .m-journey.journey-reduced {height:auto;}
#miyabi-site-v12 #miyabi-flower-transition {border-radius:0;line-height:1.5;position:sticky;top:0;transform:none;will-change:transform;}
#miyabi-site-v12 .journey-reduced #miyabi-flower-transition {position:relative;top:auto;will-change:auto;}
#miyabi-site-v12 #miyabi-flower-transition .lettering-stage {position:relative;top:auto;height:var(--journey-stage-height,500px);}
#miyabi-site-v12.m-inline-preview {height:610px;}
#miyabi-site-v12.m-inline-preview .m-toc-dialog {max-height:calc(610px - var(--bottom-nav-height) - 40px);}
@media (max-width:350px){
 #miyabi-site-v12.m-inline-preview{height:560px;}
 #miyabi-site-v12.m-inline-preview .m-toc-dialog{max-height:calc(560px - var(--bottom-nav-height) - 40px);}
}
@media (prefers-reduced-motion:reduce){#miyabi-site-v12 .m-journey{height:auto!important;}}
/* Desktop facade: the real centre room and side fusuma share one SVG plane. */
#miyabi-site-v12 #miyabi-flower-transition .wide-architecture {display:none;}
#miyabi-site-v12 #miyabi-flower-transition.is-panorama .wide-architecture {display:inline;}
#miyabi-site-v12 #miyabi-flower-transition.is-panorama .room-scene {max-width:none;width:100%;height:100%;}
/* An overlay on the empty tatami: it never changes document/scroll geometry. */
#miyabi-site-v12 #miyabi-flower-transition .m-hero-cta {position:absolute;z-index:3;left:50%;top:min(76%,calc(100% - 40px));transform:translate(-50%,-50%);min-width:160px;min-height:54px;gap:18px;padding:12px 24px;border:1px solid #d4b780;border-radius:3px;background:var(--wine);color:#fff9ef;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:17px;letter-spacing:.2em;white-space:nowrap;box-shadow:0 5px 20px #38221830;opacity:var(--cta-opacity,1);}
#miyabi-site-v12 #miyabi-flower-transition.is-ready .m-hero-cta:not(.is-cta-visible) {visibility:hidden;pointer-events:none;}
#miyabi-site-v12 #miyabi-flower-transition .m-hero-cta::before {content:"";position:absolute;inset:-5px;border:1px solid #ead1a0;border-radius:6px;opacity:0;pointer-events:none;}
#miyabi-site-v12 #miyabi-flower-transition .m-hero-cta.is-inviting::before {animation:miyabi-cta-halo 1.6s ease-in-out 3;}
#miyabi-site-v12 #miyabi-flower-transition .m-hero-cta.is-inviting .m-hero-cta-arrow {animation:miyabi-cta-arrow 1.6s ease-in-out 3;}
#miyabi-site-v12 #miyabi-flower-transition .m-hero-cta:focus-visible {outline:3px solid #fff9ef;outline-offset:4px;}
@keyframes miyabi-cta-halo {0%,100%{opacity:0;transform:scale(.98);}45%{opacity:.8;transform:scale(1.025);}}
@keyframes miyabi-cta-arrow {0%,100%{transform:translateY(0);}45%{transform:translateY(3px);}}
@media (min-width:850px){#miyabi-site-v12 #miyabi-flower-transition .m-hero-cta {top:min(86%,calc(100% - 40px));}}
@media (hover:hover){#miyabi-site-v12 #miyabi-flower-transition .m-hero-cta:hover {background:#583040;border-color:#ead1a0;}}
@media (prefers-reduced-motion:no-preference){html.miyabi-hero-pending #miyabi-flower-transition .m-hero-cta {visibility:hidden;pointer-events:none;}}
@media (prefers-reduced-motion:reduce){#miyabi-site-v12 #miyabi-flower-transition .m-hero-cta::before,#miyabi-site-v12 #miyabi-flower-transition .m-hero-cta .m-hero-cta-arrow {animation:none;}}
