/* The Tape — subscribe component styles (shared by every page that loads sub.js) */
.sub-form{display:flex;gap:8px;flex-wrap:wrap;align-items:stretch}
.sub-form input{flex:1 1 200px;min-width:0;height:48px;padding:0 16px;font:15px var(--sans);color:#141414;background:#fff;border:1.5px solid #C8BEA9;border-radius:0}
.sub-form input:focus{outline:none;border-color:#A45A00}
.sub-form button{height:48px;padding:0 22px;font:700 15px var(--disp,var(--display));letter-spacing:.01em;color:#fff;background:#141414;border:0;cursor:pointer;white-space:nowrap}
.sub-form button:hover{background:#7F4500}
.sub-form button:disabled{opacity:.6;cursor:default}
.sub-form.one-tap input[type=email]{display:none}
.sub-form.one-tap button{flex:1 1 auto}
.sub-as{flex-basis:100%;font:12px var(--mono);color:#4D4840}
.sub-as a{color:#7F4500;text-decoration:underline}
.sub-msg{font:12.5px var(--mono);color:#4D4840;min-height:0;margin-top:6px}
.sub-msg:empty{display:none}
.sub-msg.bad{color:#B3261E}
.sub-count{font:12px var(--mono);color:#4D4840;margin-top:8px}
.sub-done{display:block}
.sub-ok{font:700 17px var(--disp,var(--display));color:#7F4500}
.sub-phone{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px;font-size:14px;color:#4D4840}
.sub-phone span{flex-basis:100%}
.sub-phone input{flex:1 1 160px;height:42px;padding:0 12px;font:14px var(--sans);border:1.5px solid #C8BEA9;background:#fff;color:#141414}
.sub-phone button{height:42px;padding:0 16px;font:700 14px var(--disp,var(--display));background:#141414;color:#fff;border:0;cursor:pointer}
/* inline, at the high-intent moments */
.sub-inline{display:grid;grid-template-columns:1fr minmax(300px,440px);gap:24px 36px;align-items:center;margin-top:22px;padding:24px 26px;background:#FBF8F1;border:1px solid #C8BEA9;border-left:4px solid #A45A00}
.si-h{font:800 clamp(21px,2.4vw,26px)/1.12 var(--disp,var(--display));color:#141414;letter-spacing:-.01em}
.si-copy p{margin:6px 0 0;font-size:15px;color:#4D4840}
/* dark alerts band */
.sub-dark{max-width:560px}
.sub-dark .sub-form input{background:#1F1C19;border-color:#3A3530;color:#fff}
.sub-dark .sub-form input::placeholder{color:#8C8577}
.sub-dark .sub-form button{background:#E08A00;color:#141414}
.sub-dark .sub-form button:hover{background:#FFB23E}
.sub-dark .sub-msg,.sub-dark .sub-count,.sub-dark .sub-as,.sub-dark .sub-phone{color:#C9C0B0}
.sub-dark .sub-ok{color:#FFC266}
/* floating: corner card on desktop, bottom bar on phones */
.sub-float{position:fixed;z-index:60;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));width:380px;max-width:calc(100vw - 32px);background:#FBF8F1;border:1px solid #C8BEA9;border-top:4px solid #A45A00;box-shadow:0 18px 50px -12px rgba(20,20,20,.35);padding:16px 18px 16px;transform:translateY(140%);opacity:0;transition:transform .35s cubic-bezier(.2,.9,.3,1),opacity .25s;pointer-events:none}
.sub-float.show{transform:none;opacity:1;pointer-events:auto}
.sf-h{font:700 16px/1.25 var(--disp,var(--display));color:#141414;margin:0 26px 12px 0}
.sf-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#22a45a;margin-right:8px;vertical-align:1px}
.sf-x{position:absolute;top:6px;right:8px;width:36px;height:36px;background:0;border:0;font-size:24px;line-height:1;color:#4D4840;cursor:pointer}
.sub-float .sub-form input,.sub-float .sub-form button{height:44px}
@media (max-width:759px){
  .sub-float{left:0;right:0;bottom:0;width:auto;max-width:none;border-left:0;border-right:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px))}
  .sf-h{font-size:14.5px;margin-bottom:9px}
  .sub-float .sub-form{flex-wrap:nowrap}
  .sub-float .sub-form.one-tap{flex-wrap:wrap}
  .sub-float .sub-form.one-tap button{width:100%}
  .sub-float .sub-form input{flex:1 1 auto}
  .sub-inline{grid-template-columns:1fr;padding:20px 18px}
}

