:root {
	--body-font-family: 'Montserrat', 'Work Sans', sans-serif;
	--alt-heading-font-family: 'Lora', sans-serif;
	--alt2-heading-font-family: 'Yuji Syuku', sans-serif;
	--heading-font-family: 'Montserrat', 'Work Sans', sans-serif;
	--base-body-font-size: 1.2rem;
	--base-heading-font-size: 1.5rem;
	--base-subheading-font-size: 1.3rem;
	--base-line-height: 1.5;
	--color9:#ffffff;
	--color0:#000000;
	--color1:#004F85; /* dark blue */
	--color2:#3f88c5; /* blue */
	--color3:#e2754a; /* rust */
	--color4:#d00000; /* red */
	--color5:#8CC084; /* green */
	--color6:#ffba08; /* yellow */
	--color7:#fdf0d5; /* tan */
	--color8:#792359; /* purple */
}
body {-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;font-family:var(--body-font-family);margin: 0;padding: 0;overflow-x: hidden;}
h1,h2,h3,h4,h5,h6 {font-family: var(--heading-font-family);}
:focus {outline: none;}
.button {font-weight:700;display:block;border:2px solid var(--color3);padding:10px;color:var(--color3);text-decoration:none;text-transform:uppercase;text-align:center;border-radius:0px;}
.button:hover {background-color:var(--color3);color:#fff;}
footer {text-align:center;padding:20px 0;}

.contest-email-cta {padding:36px 20px;background:#f7f9fb;border-top:1px solid #e1e7ec;border-bottom:1px solid #e1e7ec;}
.contest-email-cta-inner {max-width:980px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;}
.contest-email-cta h2 {margin:0;font-size:1.4rem;line-height:1.25;color:#17212b;}
.contest-email-open {width:auto;min-width:220px;background:#fff;cursor:pointer;font-family:var(--body-font-family);}
.contest-email-modal {position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:20px;}
.contest-email-modal[aria-hidden="false"] {display:flex;}
.contest-email-modal-backdrop {position:absolute;inset:0;background:rgba(0,0,0,0.58);}
.contest-email-dialog {position:relative;z-index:1;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;padding:26px;border-radius:6px;box-shadow:0 18px 60px rgba(0,0,0,0.28);}
.contest-email-dialog h2 {margin:0 38px 20px 0;font-size:1.45rem;color:#17212b;}
.contest-email-close {position:absolute;top:12px;right:14px;border:0;background:transparent;font-size:2rem;line-height:1;cursor:pointer;color:#555;}
.contest-email-form {display:grid;gap:16px;}
.contest-email-form label {display:grid;gap:6px;font-weight:700;color:#17212b;}
.contest-email-form input[type="text"],
.contest-email-form input[type="email"],
.contest-email-form select {box-sizing:border-box;width:100%;min-height:44px;border:1px solid #b7c3cc;border-radius:4px;padding:9px 10px;font:inherit;background:#fff;}
.contest-email-form fieldset {border:1px solid #d8e0e6;border-radius:6px;margin:0;padding:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;}
.contest-email-form legend {font-weight:700;color:#17212b;padding:0 6px;}
.contest-email-check {display:flex !important;grid-template-columns:none !important;align-items:center;gap:8px;font-weight:500 !important;}
.contest-email-check input {width:18px;height:18px;margin:0;}
.contest-email-actions {display:flex;justify-content:flex-start;}
.contest-email-actions .button {width:auto;background:#fff;cursor:pointer;font-family:var(--body-font-family);}
.contest-email-message {min-height:1.5em;margin:0;font-weight:700;color:#1f6f3d;}
.contest-email-message.is-error {color:var(--color4);}
.contest-email-modal-open {overflow:hidden;}
.contest-confirmation-page {min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:#f7f9fb;box-sizing:border-box;}
.contest-confirmation-panel {max-width:560px;background:#fff;border:1px solid #e1e7ec;border-radius:6px;padding:30px;text-align:center;box-shadow:0 12px 36px rgba(0,0,0,0.08);}
.contest-confirmation-panel h1 {margin:0 0 12px;font-size:1.8rem;color:#17212b;}
.contest-confirmation-panel p {margin:0 0 18px;}
.contest-confirmation-panel .button {display:inline-block;width:auto;}

@media (max-width: 680px) {
	.contest-email-cta-inner {align-items:stretch;flex-direction:column;}
	.contest-email-open {width:100%;min-width:0;}
	.contest-email-form fieldset {grid-template-columns:1fr;}
}
