@font-face{font-family:'Cinecaption';src:url('/assets/font/cinecaption226.ttf') format('truetype');font-display:swap}
body{margin:0;background:#ECEAE7}
a{color:#2E2B30}a:hover{color:#8E4C5A}
.cy-light{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}
.cy-leak{position:absolute;border-radius:50%;mix-blend-mode:screen;filter:blur(70px)}
.cy-leak1{animation:cyLeak1 16s ease-in-out infinite}
.cy-leak2{animation:cyLeak2 21s ease-in-out infinite}
@keyframes cyLeak1{0%,100%{transform:translate(-10vw,-6vh) scale(1);opacity:.55}50%{transform:translate(30vw,10vh) scale(1.3);opacity:.95}}
@keyframes cyLeak2{0%,100%{transform:translate(8vw,6vh) scale(1.1);opacity:.35}50%{transform:translate(-24vw,-10vh) scale(.9);opacity:.8}}
.cy-bokeh{position:absolute;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.75) 0%,rgba(255,255,255,.42) 18%,rgba(255,255,255,.18) 38%,rgba(255,255,255,.06) 55%,rgba(255,255,255,0) 72%);filter:blur(4px);mix-blend-mode:screen;animation:cyBokeh 7s ease-in-out infinite}
@keyframes cyBokeh{0%,100%{opacity:.12;transform:translateY(0) scale(.9)}50%{opacity:.7;transform:translateY(-16px) scale(1.08)}}
.cy-cute{transition:transform .35s cubic-bezier(.34,1.56,.64,1),background .35s}
.cy-cute:hover{transform:translateY(-3px) scale(1.04);background:rgba(255,255,255,.35)}
.cy-cute:active{transform:scale(.96,.92)}
.cy-cute .cy-dot{transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.cy-cute:hover .cy-dot{transform:translateX(4px) rotate(-8deg)}
.cy-btn{transition:background .3s,transform .3s}
.cy-btn:hover{background:#8E4C5A;transform:translateY(-2px)}
.cy-link{transition:opacity .2s}.cy-link:hover{opacity:.5}

.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* form confirmation step */
.cy-confirm{display:flex;flex-direction:column;gap:28px}
.cy-confirm[hidden]{display:none}
.cy-confirm-h{margin:0;font-weight:400;font-size:clamp(22px,2.2vw,28px);letter-spacing:.16em;outline:none}
.cy-confirm-note{margin:0;font-size:13px;line-height:2;letter-spacing:.06em;color:#3D3A3F}
.cy-confirm-dl{margin:0;display:grid;grid-template-columns:minmax(120px,200px) 1fr;border-top:1px solid #2E2B30}
.cy-confirm-dl dt,.cy-confirm-dl dd{margin:0;padding:16px 0;border-bottom:1px solid rgba(46,43,48,.25);font-size:13px;line-height:1.9;letter-spacing:.06em}
.cy-confirm-dl dt{font-size:12px;letter-spacing:.14em;padding-right:16px}
.cy-confirm-dl dd{white-space:pre-wrap;overflow-wrap:anywhere;color:#2E2B30}
.cy-confirm-dl dd.cy-empty{color:#8A858C}
.cy-confirm-dl dd ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}
.cy-confirm-ts{align-self:center;display:flex;justify-content:center}
.cy-confirm-msg{margin:0;text-align:center;font-size:12px;line-height:1.7;letter-spacing:.06em;color:#8E4C5A}
.cy-confirm-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
.cy-confirm-actions button{min-height:52px;min-width:200px;border-radius:999px;font:inherit;font-size:14px;letter-spacing:.2em;cursor:pointer;box-sizing:border-box}
.cy-btn-main{border:1px solid #2E2B30;background:#2E2B30;color:#FFFFFF}
.cy-btn-sub{border:1px solid #2E2B30;background:transparent;color:#2E2B30;transition:background .3s}
.cy-btn-sub:hover:not(:disabled){background:rgba(255,255,255,.5)}
.cy-confirm-actions button:disabled{opacity:.6;cursor:default}
.cy-confirm-actions button:focus-visible{outline:2px solid #8E4C5A;outline-offset:2px}
@media (max-width:560px){
.cy-confirm-dl{grid-template-columns:1fr}
.cy-confirm-dl dt{padding:16px 0 0;border-bottom:0}
.cy-confirm-dl dd{padding:4px 0 16px}
.cy-confirm-actions button{width:100%}
}
