/* =========================================================
   NurseApproved — newsletter modal
   Loaded after style.css on every page.
   ========================================================= */

/* ---------- trigger buttons ---------- */
.na-btn{
  display:inline-block;background:#FFC629;color:#0E1734;
  padding:16px 30px;border:none;border-radius:10px;
  font-family:inherit;font-weight:800;font-size:15.5px;line-height:1;
  cursor:pointer;white-space:nowrap;text-decoration:none;
  box-shadow:0 8px 22px rgba(255,198,41,.32);
  transition:transform .16s ease,box-shadow .16s ease;
}
.na-btn:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(255,198,41,.44)}
.na-btn:active{transform:translateY(0)}

.na-btn-outline{
  display:inline-block;background:transparent;color:#FFC629;
  padding:13px 26px;border:1.5px solid rgba(255,198,41,.55);border-radius:10px;
  font-family:inherit;font-weight:800;font-size:14.5px;line-height:1;
  cursor:pointer;white-space:nowrap;text-decoration:none;
  transition:background .16s ease,border-color .16s ease;
}
.na-btn-outline:hover{background:rgba(255,198,41,.12);border-color:#FFC629}

/* ---------- inline band ---------- */
.na-band{
  display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;
  max-width:1180px;margin:0 auto;padding:0 28px;
}
.na-band-eyebrow{
  font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;
  color:#FFC629;margin-bottom:14px;
}
.na-band h2{
  font-family:'Source Serif 4',Georgia,serif;font-weight:700;
  font-size:clamp(26px,2.8vw,36px);line-height:1.14;letter-spacing:-0.018em;
  color:#FFFFFF;margin:0 0 14px;
}
.na-band p{
  font-size:16.5px;color:rgba(232,236,251,.78);line-height:1.7;
  max-width:44em;margin:0;
}

/* ---------- footer strip ---------- */
.na-foot-news{
  border-top:1px solid rgba(255,255,255,.14);
  margin-top:10px;padding:28px 0 4px;
}
.na-foot-inner{
  max-width:1180px;margin:0 auto;padding:0 28px;
  display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;
}
.na-foot-copy{font-size:15px;color:rgba(232,236,251,.72);line-height:1.6;margin:0;max-width:46em}
.na-foot-copy strong{color:#FFFFFF;font-weight:700}

/* ---------- modal ---------- */
.na-modal{
  position:fixed;inset:0;z-index:9999;
  display:flex;align-items:center;justify-content:center;padding:24px;
  background:rgba(14,23,52,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);
  opacity:0;pointer-events:none;transition:opacity .2s ease;
}
.na-modal[data-open]{opacity:1;pointer-events:auto}

.na-modal-card{
  position:relative;width:100%;max-width:470px;
  background:#FFFFFF;border-radius:18px;
  padding:40px 38px 34px;
  box-shadow:0 30px 80px rgba(14,23,52,.4);
  transform:translateY(14px) scale(.985);
  transition:transform .22s cubic-bezier(.2,.8,.3,1);
  max-height:calc(100vh - 48px);overflow-y:auto;
}
.na-modal[data-open] .na-modal-card{transform:none}

.na-modal-close{
  position:absolute;top:14px;right:14px;
  width:34px;height:34px;border:none;border-radius:8px;
  background:transparent;color:#8891AC;font-size:21px;line-height:1;
  cursor:pointer;transition:background .16s ease,color .16s ease;
}
.na-modal-close:hover{background:#F6F8FF;color:#1B2A5C}

.na-modal-eyebrow{
  font-size:11.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;
  color:#8A6A00;margin-bottom:12px;
}
.na-modal-card h3{
  font-family:'Source Serif 4',Georgia,serif;font-weight:700;
  font-size:27px;line-height:1.18;letter-spacing:-0.018em;
  color:#1B2A5C;margin:0 0 10px;
}
.na-modal-sub{
  font-size:15.5px;color:#5A6386;line-height:1.65;margin:0 0 26px;
}

.na-field{margin-bottom:18px}
.na-label{display:block;font-size:13px;font-weight:700;color:#1B2A5C;margin-bottom:7px}
.na-input{
  width:100%;font-family:inherit;font-size:16px;color:#222B4A;
  padding:13px 15px;border:1.5px solid #D6DEF5;border-radius:10px;
  background:#F6F8FF;appearance:none;-webkit-appearance:none;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.na-input:focus{
  outline:none;border-color:#F0B400;background:#FFFFFF;
  box-shadow:0 0 0 3px rgba(240,180,0,.16);
}
.na-select-wrap{position:relative}
.na-select-wrap::after{
  content:'';position:absolute;right:16px;top:50%;width:7px;height:7px;
  border-right:2px solid #5A6386;border-bottom:2px solid #5A6386;
  transform:translateY(-70%) rotate(45deg);pointer-events:none;
}

.na-submit{
  width:100%;margin-top:6px;background:#FFC629;color:#0E1734;
  padding:15px 24px;border:none;border-radius:10px;
  font-family:inherit;font-weight:800;font-size:15.5px;cursor:pointer;
  transition:filter .16s ease;
}
.na-submit:hover{filter:brightness(1.04)}
.na-submit:disabled{opacity:.6;cursor:default}

.na-status{font-size:14px;color:#B4392E;font-weight:600;margin:14px 0 0;min-height:18px}
.na-fineprint{font-size:12.5px;color:#8891AC;line-height:1.55;margin:16px 0 0;text-align:center}

/* success state */
.na-success{text-align:center;padding:14px 0 6px}
.na-success-mark{
  width:54px;height:54px;border-radius:50%;background:#FFF4D8;
  display:flex;align-items:center;justify-content:center;margin:0 auto 20px;
}
.na-success p{font-size:15.5px;color:#5A6386;line-height:1.65;margin:0 0 24px}

body.na-locked{overflow:hidden}

/* ---------- responsive ---------- */
@media (max-width:860px){
  .na-band{grid-template-columns:1fr;gap:26px}
  .na-band .na-btn{width:100%;text-align:center}
}
@media (max-width:640px){
  .na-foot-inner{flex-direction:column;align-items:flex-start}
  .na-foot-inner .na-btn-outline{width:100%;text-align:center}
  .na-modal{padding:16px}
  .na-modal-card{padding:34px 26px 28px}
  .na-modal-card h3{font-size:24px}
}
