*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:'Plus Jakarta Sans',system-ui,sans-serif;color:#334155;background:#F0F9FF;line-height:1.55}
img{max-width:100%;display:block}
a{color:inherit}
button,input,select,textarea{font:inherit}
.container{width:min(1140px,calc(100% - 2rem));margin-inline:auto}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.notice{padding:.75rem 1rem;border-radius:16px;font-size:.92rem}
.notice.error{background:#FFE4E6;color:#9F1239}
.notice.success{background:#CCFBF1;color:#115E59}
.hm3-btn{display:inline-flex;align-items:center;justify-content:center;padding:.8rem 1.35rem;border:0;border-radius:999px;background:linear-gradient(135deg,#FB7185,#F472B6);color:#fff;font-weight:700;text-decoration:none;cursor:pointer;box-shadow:0 10px 24px rgba(251,113,133,.25)}
.hm3-btn-outline{background:transparent;color:#0C4A6E;border:2px solid #0C4A6E;box-shadow:none}
.toast{position:fixed;bottom:1.25rem;left:50%;transform:translateX(-50%) translateY(8px);background:#0C4A6E;color:#fff;padding:.85rem 1.25rem;border-radius:999px;opacity:0;transition:.25s;z-index:9999}
.toast.visible{opacity:1;transform:translateX(-50%)}
