body:has(.jfm-password){background:#F7F3EA;color:#302923;font-family:var(--font-body--family);}
.jfm-password{background:var(--pw-bg);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:48px;padding:var(--pw-top) max(24px,calc((100vw - 1100px)/2)) var(--pw-bottom);}
.jfm-password__content{text-align:center;min-width:0;}
.jfm-password__brand{display:flex;flex-direction:column;align-items:center;gap:18px;margin-bottom:34px;}
.jfm-password__mark{display:block;width:56px;height:56px;background:var(--pw-gold);mask:url('jfm-password-mark.svg') center/contain no-repeat;}
.jfm-password__brand img{width:240px;max-width:80%;height:auto;}
.jfm-password h1{font-family:var(--font-heading--family);font-weight:400;font-size:clamp(52px,6vw,84px);line-height:1.05;letter-spacing:-.035em;margin:0 0 20px;color:inherit;}
.jfm-password__intro{font-size:20px;line-height:1.5;margin:0 0 26px;}
.jfm-password__intro p{margin:0;}
.jfm-password__signup{margin:0 auto;max-width:460px;}
.jfm-password__field{display:flex;border:1px solid #cec4b6;border-radius:28px;overflow:hidden;background:#ffffff40;}
.jfm-password__field input{flex:1;min-width:0;width:100%;border:0;background:transparent;padding:15px 20px;color:inherit;font:inherit;box-shadow:none;border-radius:0;}
.jfm-password__field button{flex-shrink:0;border:0;border-radius:28px;padding:14px 26px;background:var(--pw-gold);color:#fff;font:inherit;cursor:pointer;min-height:48px;}
.jfm-password__field button:hover{filter:brightness(.9);}
.jfm-password__field:focus-within{outline:2px solid var(--pw-gold);outline-offset:3px;}
.jfm-password__note{font-size:13px;margin:16px 0 0;}
.jfm-password__visual{display:flex;justify-content:center;min-width:0;}
.jfm-password__visual img{width:100%;max-width:380px;height:auto;object-fit:contain;filter:drop-shadow(0 16px 16px #30292318);}
body:has(.jfm-password) .password-footer{background:#F7F3EA;color:#756b60;font-size:12px;padding:20px;}
body:has(.jfm-password) .password-footer__links{gap:16px;flex-direction:row;flex-wrap:wrap;justify-content:center;}
@media(max-width:749px){.jfm-password{grid-template-columns:minmax(0,1fr);gap:28px;padding:var(--pw-mtop) 24px var(--pw-mbottom);}.jfm-password__brand{gap:14px;margin-bottom:28px;}.jfm-password__mark{width:48px;height:48px;}.jfm-password__brand img{width:210px;}.jfm-password h1{font-size:clamp(44px,11vw,66px);}.jfm-password__intro{font-size:18px;margin-bottom:22px;}.jfm-password__visual img{width:65%;max-width:260px;}.jfm-password__field input{padding-inline:14px;font-size:16px;}.jfm-password__field button{padding-inline:20px;}}

.jfm-password:not(:has(.jfm-password__visual)){grid-template-columns:minmax(0,560px);justify-content:center;}
