/* IG Newsletter forms. Uses the IG Publishers theme colours when available. */
.ignl { --ignl-red: var(--red, #C8102E); --ignl-green: var(--green, #0B7A3E); --ignl-line: var(--line, #DADAD6); --ignl-muted: var(--muted, #5C5C5C); }
.ignl-title { margin: 0 0 .35rem; }
.ignl-lead { margin: 0 0 1.1rem; color: var(--ignl-muted); }
.ignl-form fieldset { border: 0; padding: 0; margin: 0 0 1.75rem; }
.ignl-form legend { font-family: var(--font-display, inherit); font-weight: 700; font-size: 1.15rem; margin-bottom: .75rem; padding: 0; }
.ignl-row { display: flex; flex-wrap: wrap; gap: .75rem 1rem; align-items: flex-end; }
.ignl-row .ignl-f { flex: 1 1 220px; }
.ignl-f { margin: 0 0 1rem; }
.ignl-f label { display: block; margin-bottom: .35rem; font-weight: 600; }
.ignl-f input, .ignl-f select, .ignl-f textarea { width: 100%; }
.ignl-f--btn { flex: 0 0 auto !important; }
.ignl .req { color: var(--ignl-red); }
.ignl-hint { display: block; margin: -.15rem 0 .45rem; font-size: .92rem; color: var(--ignl-muted); }
.ignl-count { display: block; margin-top: .4rem; font-family: var(--font-display, inherit); font-size: .88rem; font-weight: 600; color: var(--ignl-muted); text-align: right; }
.ignl-count.is-near { color: #8A5A00; }
.ignl-count.is-over { color: var(--ignl-red); }
.ignl textarea[aria-invalid="true"] { border-color: var(--ignl-red); }
.ignl-consent { display: flex; gap: .6rem; align-items: flex-start; margin: .25rem 0 1.1rem; font-family: var(--font-body, inherit); font-weight: 400; font-size: .9rem; line-height: 1.45; color: var(--ignl-muted); }
.ignl-consent input { width: auto; margin-top: .2rem; flex: none; }
.ignl-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.ignl-msg { padding: 1rem 1.2rem; border-radius: 10px; margin: 0 0 1.25rem; border-left: 5px solid; }
.ignl-msg--ok { background: #E3F5EA; border-color: var(--ignl-green); color: #0F2E1D; }
.ignl-msg--err { background: #FDECEE; border-color: var(--ignl-red); color: #5A0A16; }
.ignl button[disabled] { opacity: .5; cursor: not-allowed; transform: none; }
.ignl--nominate { max-width: 720px; }
.ignl-archive { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; }
.ignl-archive a { display: flex; flex-wrap: wrap; gap: .25rem 1rem; align-items: baseline; padding: .9rem 1.1rem; border: 1px solid var(--ignl-line); border-radius: 10px; background: var(--surface, #fff); text-decoration: none; color: inherit; }
.ignl-archive a:hover { border-color: var(--ignl-green); }
.ignl-archive__date { font-family: var(--font-display, inherit); font-size: .85rem; font-weight: 600; color: var(--ignl-red); min-width: 9rem; }
.ignl-archive__title { font-weight: 600; }

/* Footer band (IG Publishers theme) */
.ignl-band { background: #E3F5EA; color: #141414; padding-block: clamp(2.5rem, 6vw, 3.5rem); }
.ignl-band__in { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 1.5rem 3rem; align-items: center; }
.ignl-band .ignl-title { font-size: clamp(1.6rem, 3vw, 2.2rem); color: #111; }
.ignl-band .ignl-lead { color: #3F4A44; margin: 0; }
.ignl-band .ignl-form input[type="text"], .ignl-band .ignl-form input[type="email"] { background: #fff; }
.ignl-band .ignl-consent { color: #3F4A44; margin-bottom: 0; }
.ignl-band .ignl-consent a { color: #0B7A3E; }
@media (max-width: 800px) { .ignl-band__in { grid-template-columns: 1fr; } }
.prose .ignl-archive { padding-left: 0; } .prose .ignl-archive li { margin: 0; }
