/* VOR Newsletter: matches the website (dark navy, teal accent, Newsreader headings, square corners) */
.vorn-main { padding: 48px 20px 72px; }
.vorn-page { max-width: 820px; margin: 0 auto; }
.vorn-loading { opacity: .7; }
.vorn-card { background: #061A2E; border-top: 3px solid #22B8AE; padding: 36px 40px 30px; }
.vorn-eyebrow { color: #22B8AE; font-size: 11px; font-weight: 600; letter-spacing: 1.2px; margin: 0 0 8px; }
.vorn-card h1 { font-family: Newsreader, Georgia, serif; font-size: 34px; font-weight: 600; line-height: 1.15; color: #F4F1E8; margin: 0 0 12px; }
.vorn-intro { color: rgba(244, 241, 232, .8); margin: 0 0 24px; line-height: 1.55; }
.vorn-form fieldset { border: 0; margin: 0 0 26px; padding: 0; min-width: 0; }
.vorn-form legend { font-weight: 700; font-size: 18px; letter-spacing: .3px; margin-bottom: 10px; color: #F4F1E8; padding: 0; }
.vorn-lists { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 10px; }
.vorn-lists legend { grid-column: 1 / -1; }
.vorn-list { display: flex; gap: 10px; align-items: flex-start; border: 1px solid rgba(244, 241, 232, .18); padding: 13px 16px; cursor: pointer; }
.vorn-list:has(input:checked) { border-color: #22B8AE; background: rgba(34, 184, 174, .08); }
.vorn-list strong { display: block; color: #F4F1E8; }
.vorn-list small { display: block; color: rgba(244, 241, 232, .65); font-size: 13px; line-height: 1.4; margin-top: 2px; }
.vorn-form input[type=checkbox] { accent-color: #22B8AE; width: 16px; height: 16px; margin-top: 3px; flex: none; }
.vorn-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px; margin-bottom: 26px; }
.vorn-field span { display: block; font-size: 13px; font-weight: 600; margin-bottom: 5px; color: #F4F1E8; }
.vorn-req { color: #22B8AE; }
.vorn-field input { width: 100%; box-sizing: border-box; font: inherit; font-size: 15px; padding: 11px 12px; border: 1px solid rgba(244, 241, 232, .25);
  background: #031426; color: #F4F1E8; border-radius: 0; }
.vorn-field input:focus { outline: 2px solid #22B8AE; outline-offset: 0; border-color: #22B8AE; }
.vorn-sectors { margin-top: 40px !important; }
.vorn-sectors legend { float: left; width: 100%; padding-top: 24px !important; border-top: 1px solid rgba(244, 241, 232, .15); margin-bottom: 14px !important; }
.vorn-sectors .vorn-sector-grid { clear: both; }
html[data-theme=light] .vorn-sectors legend { border-top-color: rgba(3, 20, 38, .15); }
.vorn-sector-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 6px 14px; }
.vorn-sector-grid label { display: flex; gap: 8px; align-items: flex-start; font-size: 14px; color: rgba(244, 241, 232, .9); cursor: pointer; line-height: 1.35; }
.vorn-sector-grid input { margin-top: 1px !important; }
.vorn-hp { position: absolute; left: -5000px; width: 1px; height: 1px; overflow: hidden; }
.vorn-consent { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; line-height: 1.5; color: rgba(244, 241, 232, .85);
  border-top: 1px solid rgba(244, 241, 232, .15); padding-top: 18px; margin-bottom: 20px; cursor: pointer; }
.vorn-consent a, .vorn-card a { color: #22B8AE; }
.vorn-btn, a.vorn-btn { display: inline-block; background: #22B8AE; color: #031426 !important; border: 0; border-radius: 0; font: inherit; font-weight: 700;
  font-size: 13px; letter-spacing: 1.2px; padding: 15px 34px; cursor: pointer; text-decoration: none !important; }
.vorn-btn:hover { filter: brightness(1.08); }
.vorn-btn[disabled] { opacity: .6; cursor: wait; }
.vorn-msg { min-height: 1em; margin: 14px 0 0; font-size: 15px; }
.vorn-msg--err { color: #FF8A80; }
.vorn-msg--ok { color: #F4F1E8; background: rgba(34, 184, 174, .12); border-left: 3px solid #22B8AE; padding: 14px 16px; }
.vorn-small { font-size: 12px; color: rgba(244, 241, 232, .55); margin-top: 14px; }

/* the website's own box: no email box any more, the button stays */
form.vorn-band .newsletter-signup__email input[type=email] { display: none !important; }
form.vorn-band [data-newsletter-error][hidden], form.vorn-band [hidden] { display: none !important; }
form.vorn-band .newsletter-signup__email { display: block !important; }
form.vorn-band legend { font-size: 15px !important; letter-spacing: 1.6px !important; margin-bottom: 12px !important; }
form.vorn-band .newsletter-signup__options strong { font-size: 17px !important; line-height: 1.3 !important; }
form.vorn-band .newsletter-signup__options small { font-size: 13px !important; line-height: 1.45 !important; margin-top: 3px; }
form.vorn-band .newsletter-signup__terms { font-size: 12px !important; line-height: 1.5 !important; }
form.vorn-band .newsletter-signup__email button { display: block; width: 100%; min-height: 48px !important; padding: 14px 24px !important;
  font-size: 15px !important; letter-spacing: 2px !important; line-height: 1.2 !important; cursor: pointer; }

/* box at the end of every post */
.vorn-inpost { margin: 40px 0 8px; padding: 26px 28px; background: #061A2E; border-top: 3px solid #22B8AE; clear: both; }
.vorn-inpost__eyebrow { color: #22B8AE; font-size: 11px; font-weight: 600; letter-spacing: 1.2px; margin: 0 0 6px; }
.vorn-inpost__title { font-family: Newsreader, Georgia, serif; font-size: 24px; font-weight: 600; margin: 0 0 14px; }
.vorn-inpost--full { padding: 0; }
.vorn-inpost--full .newsletter-band { padding: 26px 28px !important; margin: 0 !important; background: transparent; }

@media (max-width: 640px) {
  .vorn-main { padding: 24px 12px 48px; }
  .vorn-card { padding: 24px 18px; }
  .vorn-card h1 { font-size: 27px; }
  .vorn-grid { grid-template-columns: 1fr; }
  .vorn-btn { width: 100%; }
}

/* the website's light mode (sun/moon switch) */
.vorn-main { background: #031426; color: #F4F1E8; }
html[data-theme=light] .vorn-main { background: #F4F2EB; color: #031426; }
html[data-theme=light] .vorn-card { background: #FFFFFF; box-shadow: 0 2px 18px rgba(3, 20, 38, .08); }
html[data-theme=light] .vorn-card h1, html[data-theme=light] .vorn-form legend, html[data-theme=light] .vorn-list strong,
html[data-theme=light] .vorn-field span, html[data-theme=light] .vorn-msg--ok { color: #031426; }
html[data-theme=light] .vorn-intro, html[data-theme=light] .vorn-sector-grid label, html[data-theme=light] .vorn-consent { color: rgba(3, 20, 38, .8); }
html[data-theme=light] .vorn-list small, html[data-theme=light] .vorn-small { color: rgba(3, 20, 38, .6); }
html[data-theme=light] .vorn-list, html[data-theme=light] .vorn-consent { border-color: rgba(3, 20, 38, .18); }
html[data-theme=light] .vorn-field input { background: #FFFFFF; color: #031426; border-color: rgba(3, 20, 38, .3); }
html[data-theme=light] .vorn-eyebrow, html[data-theme=light] .vorn-req, html[data-theme=light] .vorn-card a { color: #138A82; }
html[data-theme=light] .vorn-msg--err { color: #B3261E; }
html[data-theme=light] .vorn-inpost { background: #FFFFFF; color: #031426; }

/* 31 Oct 2026 (Derek): section pages (Solar, Wind, ...) - space between the boxes; the square banner fills its box */
.archive-stories__grid { gap: 24px !important; }
.archive-stories__grid > .archive-card, .archive-stories__grid > .vor-ad { border: 1px solid rgb(41, 66, 87) !important; }
.archive-stories__grid > .ad-slot--square { padding: 0 !important; align-items: stretch !important; justify-content: stretch !important; overflow: hidden; }
.archive-stories__grid > .ad-slot--square .vor-ad__creative { display: block; width: 100% !important; height: 100% !important; max-width: none !important; }
.archive-stories__grid > .ad-slot--square img { width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; object-fit: cover; object-position: center; }

/* 1.5.0: sectors in groups, with space between the groups */
.vorn-form .vorn-lists { margin-top: 26px; }
.vorn-sector-groups { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 26px 36px; clear: both; }
.vorn-sector-group label { display: flex; gap: 8px; align-items: flex-start; font-size: 14px; color: rgba(244, 241, 232, .9); cursor: pointer; line-height: 1.35; margin: 0 0 7px; }
.vorn-sector-group input { margin-top: 1px !important; }
.vorn-sector-head { color: #22B8AE; font-size: 12px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; margin: 0 0 10px; padding-bottom: 6px; border-bottom: 1px solid rgba(244, 241, 232, .15); }
html[data-theme=light] .vorn-sector-group label { color: rgba(3, 20, 38, .85); }
html[data-theme=light] .vorn-sector-head { color: #138A82; border-bottom-color: rgba(3, 20, 38, .15); }
