/* PNW Race Alerts – mobile-first form styles */
.pnwra-wrap{box-sizing:border-box;width:100%;max-width:640px;margin:1.5em 0;font-size:16px;line-height:1.5;color:inherit}
.pnwra-wrap *,.pnwra-wrap *::before,.pnwra-wrap *::after{box-sizing:border-box}
.pnwra-title{margin:0 0 .75em;font-size:1.35em;line-height:1.25}
.pnwra-form{background:#f6f9f7;border:1px solid #dde6e0;border-radius:12px;padding:16px}
/* Single column by default */
.pnwra-row{display:block}
.pnwra-field{margin:0 0 16px}
.pnwra-field label,.pnwra-fieldset legend{display:block;font-weight:600;margin:0 0 6px;font-size:16px;padding:0}
.pnwra-fieldset legend small{display:block;font-weight:400;font-size:14px;color:#5b6b62}
.pnwra-field input[type=email],.pnwra-field input[type=text],.pnwra-field select{display:block;width:100%;min-height:48px;padding:10px 12px;border:1px solid #b9c7be;border-radius:8px;font-size:16px;line-height:1.3;background:#fff;color:#1d2b24;-webkit-appearance:none;appearance:none}
.pnwra-field select{background-image:linear-gradient(45deg,transparent 50%,#5b6b62 50%),linear-gradient(135deg,#5b6b62 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:36px}
.pnwra-field input:focus,.pnwra-field select:focus{outline:3px solid rgba(31,111,74,.35);outline-offset:1px;border-color:#1f6f4a}
.pnwra-fieldset{border:0;padding:0;margin:0 0 18px;min-width:0}
/* Chip / pill toggles – real inputs kept for accessibility */
.pnwra-chips{display:flex;flex-wrap:wrap;gap:8px}
.pnwra-chip{position:relative;display:inline-flex;margin:0;cursor:pointer;font-weight:400}
.pnwra-chip input{position:absolute;opacity:0;width:100%;height:100%;top:0;left:0;margin:0;cursor:pointer}
.pnwra-chip span{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:10px 16px;border:1.5px solid #b9c7be;border-radius:999px;background:#fff;font-size:16px;line-height:1.2;color:#1d2b24;transition:background .15s,border-color .15s;-webkit-user-select:none;user-select:none}
.pnwra-chip input:checked+span{background:#1f6f4a;border-color:#1f6f4a;color:#fff}
.pnwra-chip input:checked+span::before{content:"\2713";margin-right:6px;font-weight:700}
.pnwra-chip input[type=radio]:checked+span::before{content:"\25CF";font-size:.8em}
.pnwra-chip input:focus-visible+span{outline:3px solid rgba(31,111,74,.45);outline-offset:2px}
.pnwra-chip:hover span{border-color:#1f6f4a}
.pnwra-zip{margin-top:14px}
.pnwra-btn{display:block;width:100%;min-height:48px;background:#1f6f4a;color:#fff!important;border:0;border-radius:8px;padding:12px 22px;font-size:17px;font-weight:600;line-height:1.3;cursor:pointer;text-decoration:none;text-align:center;-webkit-appearance:none;appearance:none}
.pnwra-btn:hover,.pnwra-btn:focus{background:#185a3c}
.pnwra-btn:focus-visible{outline:3px solid rgba(31,111,74,.45);outline-offset:2px}
.pnwra-btn-secondary{background:#fff;color:#8a2b2b!important;border:1.5px solid #d9b3b3;margin-top:10px}
.pnwra-btn-secondary:hover,.pnwra-btn-secondary:focus{background:#fbf1f1}
.pnwra-submit{margin:8px 0 0}
.pnwra-fine{font-size:14px;color:#5b6b62;margin:10px 0 0}
.pnwra-notice{padding:12px 14px;border-radius:8px;margin:0 0 14px;font-size:16px}
.pnwra-notice-ok{background:#e3f3e9;border:1px solid #9fd2b2}
.pnwra-notice-err{background:#fbeaea;border:1px solid #e3a5a5}
.pnwra-notice-info{background:#eef3fb;border:1px solid #b5c8e6}
.pnwra-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
/* Wider screens */
@media (min-width:600px){
	.pnwra-form{padding:22px 24px}
	.pnwra-row{display:flex;flex-wrap:wrap;gap:0 16px}
	.pnwra-row>.pnwra-field{flex:1 1 220px}
	.pnwra-btn{display:inline-block;width:auto}
	.pnwra-btn-secondary{margin:0 0 0 10px}
}
/* Unsubscribe page */
.pnwra-lead{font-size:17px;margin:0 0 14px}
.pnwra-inline-form{margin:0}
.pnwra-btn-outline{background:#fff;color:#1f6f4a!important;border:1.5px solid #1f6f4a;margin-top:10px}
.pnwra-btn-outline:hover,.pnwra-btn-outline:focus{background:#eef6f1}
.pnwra-reason{margin-top:22px;padding-top:18px;border-top:1px solid #dde6e0}
.pnwra-unsub-link{margin-top:6px}
.pnwra-unsub-link a{color:#5b6b62;display:inline-block;padding:10px 0;min-height:44px}
@media (min-width:600px){.pnwra-btn-outline{margin-top:0}.pnwra-unsub-done .pnwra-submit{display:inline-block;margin-right:10px}}
