/* Tanglewood mailing list sign-up box: everything scoped under .twnl.
   Text colour is inherited, so it reads properly on a light or a dark footer. */
.twnl{--twnl-red:#8e2323;color:inherit;line-height:1.45;max-width:520px;margin:0}
.twnl *{box-sizing:border-box}
.twnl.twnl-center{margin-left:auto;margin-right:auto;text-align:center}
.twnl .twnl-form{margin:0;padding:0}
.twnl .twnl-title{font-size:20px;font-weight:600;margin:0 0 4px;color:inherit;line-height:1.3}
.twnl .twnl-text{font-size:15px;margin:0 0 12px;color:inherit;opacity:.85}
.twnl .twnl-row{display:flex;gap:8px;align-items:stretch}
.twnl .twnl-row[hidden]{display:none}
.twnl .twnl-sr{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* theme-proof sizes (Avada squashes inputs on iOS otherwise); 16px stops iPhone zooming in */
.twnl .twnl-input{
  flex:1 1 auto;min-width:0;width:auto;margin:0;
  height:48px !important;min-height:48px !important;line-height:normal !important;
  padding:0 14px !important;font:inherit;font-size:16px !important;
  color:#2b2b2b !important;background:#fff !important;
  border:1px solid #cfcac5 !important;border-radius:3px !important;box-shadow:none !important;
  -webkit-appearance:none;appearance:none;
}
.twnl .twnl-input::placeholder{color:#8a8a8a;opacity:1}
.twnl .twnl-input:focus{outline:2px solid var(--twnl-red);outline-offset:1px;border-color:var(--twnl-red) !important}
.twnl .twnl-input[aria-invalid="true"]{border-color:var(--twnl-red) !important}
.twnl .twnl-btn{
  flex:0 0 auto;margin:0;height:48px !important;min-height:48px !important;padding:0 22px !important;
  font:inherit;font-size:16px !important;font-weight:600;line-height:1 !important;white-space:nowrap;
  color:#fff !important;background:var(--twnl-red) !important;border:1px solid var(--twnl-red) !important;
  border-radius:3px !important;cursor:pointer;box-shadow:none !important;text-transform:none;letter-spacing:normal;
}
.twnl .twnl-btn:hover{filter:brightness(.88)}
.twnl .twnl-btn:disabled{opacity:.7;cursor:default;filter:none}

.twnl .twnl-small{font-size:13px;margin:8px 0 0;color:inherit;opacity:.75}
.twnl .twnl-small a{color:inherit;text-decoration:underline}

.twnl .twnl-msg{display:flex;align-items:flex-start;gap:8px;margin:10px 0 0;font-size:15px;font-weight:600;color:inherit;text-align:left}
.twnl.twnl-center .twnl-msg{justify-content:center}
.twnl .twnl-msg[hidden]{display:none}
.twnl .twnl-ic{flex:0 0 20px;width:20px;height:20px;margin-top:1px}
.twnl .twnl-msg-ok .twnl-ic{color:#3a9a62}

.twnl .twnl-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden}

@media (max-width:360px){
  .twnl .twnl-row{flex-direction:column}
  .twnl .twnl-btn{width:100%}
}
.twnl .twnl-small[hidden]{display:none}
