/* HM2 base system */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#F8FAFC;color:#334155;font-family:'Source Sans 3',system-ui,sans-serif;line-height:1.5}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
button,input,select,textarea{font:inherit}
.container{width:min(1180px,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:2px;font-size:.92rem}
.notice.error{background:#FEE2E2;color:#991B1B;border:1px solid #FECACA}
.notice.success{background:#DCFCE7;color:#166534;border:1px solid #BBF7D0}
.notice.warning{background:#FEF3C7;color:#92400E;border:1px solid #FDE68A}
.hm2-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.75rem 1.25rem;border:0;border-radius:2px;background:#C2410C;color:#fff;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.06em;font-weight:600;text-decoration:none;cursor:pointer}
.hm2-btn:hover{background:#9A3412}
.hm2-btn-ghost{background:transparent;color:#1C1917;border:2px solid #1C1917}
.hm2-btn-ghost:hover{background:#1C1917;color:#fff}
.toast{position:fixed;bottom:1.25rem;right:1.25rem;max-width:320px;padding:.85rem 1rem;background:#1C1917;color:#fff;border-left:4px solid #C2410C;opacity:0;transform:translateY(8px);transition:.25s;z-index:9999;pointer-events:none}
.toast.visible{opacity:1;transform:none}
