/* OPSWA Membership Finder v1.3 — navy membership-card styling */
.opswa-mf-app{--mf-ink:#fff;--mf-navy:#000326;--mf-turquoise:#aef3f0;color:#fff;max-width:1160px;margin:6px auto 12px;font-family:var(--opswa-membership-heading-font,'Roboto Condensed','Oswald',Impact,'Arial Narrow',sans-serif)}
.opswa-mf-app *{box-sizing:border-box}
.opswa-mf-shell{background:var(--mf-navy);border-radius:20px;padding:clamp(18px,2.2vw,30px);color:#fff}
.opswa-mf-top{text-align:center;max-width:920px;margin:0 auto 15px}
.opswa-mf-eyebrow,.opswa-mf-kicker{display:block;text-transform:uppercase;letter-spacing:.07em;font-size:clamp(13px,1.25vw,17px);font-weight:800;color:#fff}
.opswa-mf-top h2,.opswa-mf-question,.opswa-mf-btn,.opswa-mf-progress,.opswa-mf-eyebrow,.opswa-mf-kicker,.opswa-mf-intro,.opswa-mf-desc,.opswa-mf-disclaimer,.opswa-mf-textbutton,.opswa-mf-redirect,.opswa-mf-fallback{font-family:var(--opswa-membership-heading-font,'Roboto Condensed','Oswald',Impact,'Arial Narrow',sans-serif)!important;color:#fff}
.opswa-mf-top h2{font-size:clamp(27px,2.9vw,42px)!important;font-weight:900!important;line-height:1.1!important;margin:6px 0 7px!important;text-transform:uppercase}
.opswa-mf-intro{font-size:clamp(17px,1.65vw,22px)!important;line-height:1.4!important;font-weight:600;margin:0!important}
.opswa-mf-panel{max-width:880px;margin:0 auto;border:1px solid rgba(255,255,255,.33);border-radius:13px;padding:clamp(18px,2vw,26px);background:rgba(255,255,255,.035)}
.opswa-mf-question{font-size:clamp(23px,2.35vw,33px)!important;line-height:1.18!important;margin:12px 0 17px!important;font-weight:900!important}
.opswa-mf-desc{font-size:clamp(17px,1.65vw,22px)!important;font-weight:600;line-height:1.45!important;margin:15px 0 21px!important}
.opswa-mf-actions{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.opswa-mf-btn{display:inline-flex!important;align-items:center;justify-content:center;min-height:51px;border-radius:7px!important;padding:10px 18px!important;border:2px solid #fff!important;font-size:clamp(19px,1.8vw,25px)!important;font-weight:900!important;text-decoration:none!important;cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease}
.opswa-mf-primary{background:#fff!important;color:var(--mf-navy)!important}.opswa-mf-secondary{background:transparent!important;color:#fff!important}
.opswa-mf-btn:hover{transform:translateY(-1px);background:#c9f9f4!important;color:var(--mf-navy)!important;border-color:#c9f9f4!important}
.opswa-mf-btn:focus-visible,.opswa-mf-textbutton:focus-visible{outline:3px solid #ffd067;outline-offset:3px}
.opswa-mf-progress{display:flex;align-items:center;gap:15px;font-size:15px;font-weight:800}
.opswa-mf-progressbar{height:5px;background:rgba(255,255,255,.23);flex:1;border-radius:8px;overflow:hidden}
.opswa-mf-progressfill{height:100%;background:#aef3f0;transition:width .2s}
.opswa-mf-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:14px}
.opswa-mf-textbutton{background:none;border:0;text-decoration:underline;text-underline-offset:4px;cursor:pointer;padding:5px;font-size:17px!important;font-weight:700}
.opswa-mf-disclaimer{text-align:center;font-size:clamp(13px,1.2vw,16px)!important;font-weight:550;margin:12px auto 0!important}
.opswa-mf-redirect{font-size:18px!important;font-weight:700!important;margin:17px 0 5px!important}
.opswa-mf-fallback{font-size:15px!important;opacity:.87;margin:0!important}
.opswa-mf-urlnote{font-size:17px!important;color:#fff!important}
.opswa-mf-admin{max-width:1280px}.opswa-mf-admin .mf-layout{display:grid;grid-template-columns:minmax(540px,1.45fr) minmax(330px,1fr);gap:20px}
.opswa-mf-admin .mf-card{padding:20px;background:#fff;border:1px solid #d6dee4;border-radius:12px;margin-bottom:16px}
.opswa-mf-admin .mf-item{border:1px solid #dce5e8;border-radius:10px;padding:13px;margin:10px 0;background:#fbfefe}
.opswa-mf-admin label{display:block;font-size:13px;font-weight:700;margin:10px 0 4px}
.opswa-mf-admin input[type=text],.opswa-mf-admin input[type=url],.opswa-mf-admin select,.opswa-mf-admin textarea{width:100%;box-sizing:border-box;max-width:none;padding:8px}
.opswa-mf-admin .mf-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.opswa-mf-admin .mf-controls{display:flex;gap:6px;flex-wrap:wrap;margin:9px 0}
.opswa-mf-admin .mf-help{color:#60757a}.opswa-mf-admin .mf-preview{position:sticky;top:45px;height:max-content}.opswa-mf-admin .mf-mini{font-size:12px;color:#53666b}.opswa-mf-admin button{cursor:pointer}
@media(max-width:970px){.opswa-mf-admin .mf-layout{grid-template-columns:1fr}.opswa-mf-admin .mf-preview{position:static}}
@media(max-width:550px){.opswa-mf-shell{padding:8px 4px}.opswa-mf-actions,.opswa-mf-admin .mf-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.opswa-mf-btn,.opswa-mf-progressfill{transition:none}}

@media(max-width:550px){.opswa-mf-shell{padding:20px 12px}.opswa-mf-actions,.opswa-mf-admin .mf-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.opswa-mf-btn,.opswa-mf-progressfill{transition:none}}

/* v1.3 Theme-override protection. GoodLayers declares heading/body colours using
   more-specific selectors; keep all explanatory copy readable on navy. */
.opswa-mf-app .opswa-mf-shell{background-color:#000326!important;color:#fff!important}
.opswa-mf-app .opswa-mf-shell .opswa-mf-top,
.opswa-mf-app .opswa-mf-shell .opswa-mf-panel,
.opswa-mf-app .opswa-mf-shell .opswa-mf-progress,
.opswa-mf-app .opswa-mf-shell .opswa-mf-bottom{color:#fff!important}
.opswa-mf-app .opswa-mf-shell .opswa-mf-eyebrow,
.opswa-mf-app .opswa-mf-shell .opswa-mf-kicker,
.opswa-mf-app .opswa-mf-shell .opswa-mf-top h2,
.opswa-mf-app .opswa-mf-shell .opswa-mf-intro,
.opswa-mf-app .opswa-mf-shell .opswa-mf-panel h3,
.opswa-mf-app .opswa-mf-shell .opswa-mf-question,
.opswa-mf-app .opswa-mf-shell .opswa-mf-desc,
.opswa-mf-app .opswa-mf-shell .opswa-mf-redirect,
.opswa-mf-app .opswa-mf-shell .opswa-mf-fallback,
.opswa-mf-app .opswa-mf-shell .opswa-mf-urlnote,
.opswa-mf-app .opswa-mf-shell .opswa-mf-disclaimer,
.opswa-mf-app .opswa-mf-shell .opswa-mf-progress span,
.opswa-mf-app .opswa-mf-shell .opswa-mf-textbutton{color:#fff!important;opacity:1!important;text-shadow:none!important}
.opswa-mf-app .opswa-mf-shell .opswa-mf-btn.opswa-mf-primary{background:#fff!important;color:#000326!important;border-color:#fff!important}
.opswa-mf-app .opswa-mf-shell .opswa-mf-btn.opswa-mf-secondary{background:transparent!important;color:#fff!important;border-color:#fff!important}
.opswa-mf-app .opswa-mf-shell .opswa-mf-btn:hover{background:#c9f9f4!important;color:#000326!important;border-color:#c9f9f4!important}
.opswa-mf-app .opswa-mf-shell .opswa-mf-panel{background:rgba(255,255,255,.035)!important}
.opswa-mf-app .opswa-mf-shell .opswa-mf-btn:focus-visible,
.opswa-mf-app .opswa-mf-shell .opswa-mf-textbutton:focus-visible{outline:3px solid #ffe093!important;outline-offset:3px}
@media(max-width:550px){.opswa-mf-app .opswa-mf-shell{padding:20px 14px!important}.opswa-mf-app .opswa-mf-panel{padding:18px 14px}}
/* Version 1.4: PSW-centered, minimal header; accessible membership-choice cards */
.opswa-mf-app .opswa-mf-shell .opswa-mf-top{margin-bottom:16px}
.opswa-mf-app .opswa-mf-shell .opswa-mf-top:empty{display:none}
.opswa-mf-app .opswa-mf-shell .opswa-mf-intro{font-size:clamp(17px,1.5vw,21px)!important}
.opswa-mf-app .opswa-mf-shell .opswa-mf-group-title{color:#fff!important;font-size:clamp(23px,2.2vw,31px)!important;margin:10px 0 18px!important}
.opswa-mf-app .opswa-mf-shell .opswa-mf-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.opswa-mf-app .opswa-mf-shell a.opswa-mf-choice{color:#fff!important;background:#10173b!important;border:1px solid rgba(255,255,255,.65)!important;text-decoration:none!important;border-radius:10px;padding:18px;display:flex;flex-direction:column;gap:9px;min-height:165px}
.opswa-mf-app .opswa-mf-shell .opswa-mf-choice strong,.opswa-mf-app .opswa-mf-shell .opswa-mf-choice span{color:#fff!important;font-family:inherit!important}
.opswa-mf-choice-name{font-size:clamp(19px,1.6vw,23px);line-height:1.15}
.opswa-mf-choice-desc{font-size:16px;line-height:1.35;flex:1}
.opswa-mf-choice-more{font-size:15px;text-decoration:underline}
.opswa-mf-app .opswa-mf-shell a.opswa-mf-choice:hover,.opswa-mf-app .opswa-mf-shell a.opswa-mf-choice:focus-visible{background:#223261!important;outline:2px solid #b0f4ed;outline-offset:2px}
.opswa-mf-app .opswa-mf-shell .opswa-mf-help{color:#fff!important;text-align:center;font-size:17px!important;margin:15px 0 0!important}
.opswa-mf-app .opswa-mf-shell .opswa-mf-mail{color:#fff!important;font-weight:800!important;text-decoration:underline!important;text-underline-offset:3px}
.opswa-mf-admin .mf-checkbox{font-weight:500;display:block;margin:5px 0}
.opswa-mf-admin .mf-checkbox input{margin-right:6px}
.opswa-mf-admin .mf-preview .opswa-mf-choice{min-height:auto!important;margin:8px 0}
