/* sw-sitewise.css: SiteWise product page (/sitewise) and download page
   (/download/sitewise/). Added 4 November 2026, 01S steps 0.3 and 0.4.
   The nav button and the store badges are in renergy-shared.css (SITEWISE APP),
   because SiteWise articles will carry them too. */

.sw-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* ---- Hero ---- */
.sw-hero-badges { margin-top: 1.5rem; display: flex; flex-direction: column; align-items: center; }
.sw-hero-answer { max-width: 46rem; margin-left: auto; margin-right: auto; }

/* ---- Pricing: summary cards ---- */
.section_sw-pricing { background: #f6faf8; }
.sw-pricing-head { max-width: 46rem; margin: 0 auto 3rem; text-align: center; }
.sw-plans { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; align-items: stretch; }
.sw-plan { position: relative; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--gray-light); border-radius: 1rem; padding: 2rem; }
.sw-plan.is-featured { border: 2px solid var(--renergy-green); box-shadow: 0 0 0 4px rgba(0, 178, 89, .08); }
.sw-plan_tag { align-self: flex-start; margin-bottom: 1rem; padding: .25rem .7rem; border-radius: 999px; background: #e6f7ee; color: var(--green-dark); font-size: .75rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.sw-plan_tag.is-quiet { background: #eef2f0; color: var(--gray-dark); }
.sw-plan h3 { margin: 0 0 .75rem; font-size: 1.5rem; line-height: 1.2; }
.sw-plan_price { display: flex; align-items: baseline; gap: .5rem; flex-wrap: wrap; }
.sw-plan_figure { font-family: MatterSQ, sans-serif; font-size: 3rem; font-weight: 600; line-height: 1; color: var(--green-darkest); }
.sw-plan_unit { color: var(--gray-dark); font-size: .9375rem; line-height: 1.35; }
.sw-plan_billing { margin-top: .35rem; color: var(--gray-default); font-size: .875rem; min-height: 1.25rem; }
.sw-plan_for { margin: 1.25rem 0 1.25rem; color: var(--gray-dark); }
.sw-plan_list { list-style: none; margin: 0 0 2rem; padding: 0; flex-grow: 1; }
.sw-plan_list li { position: relative; padding-left: 1.6rem; margin-bottom: .6rem; line-height: 1.45; color: var(--gray-dark); font-size: .9375rem; }
.sw-plan_list li::before { content: "\2713"; position: absolute; left: 0; top: 0; color: var(--renergy-green); font-weight: 700; }
.sw-plan_list strong { color: var(--green-darkest); }
.sw-plan .button { width: 100%; justify-content: center; }
.sw-plan_more { margin-top: .85rem; text-align: center; font-size: .875rem; color: var(--gray-default); }
.sw-plan_more a { color: var(--green-dark); font-weight: 600; }
.sw-pricing-note { max-width: 46rem; margin: 1.75rem auto 0; text-align: center; color: var(--gray-default); font-size: .875rem; }

/* ---- Pricing: line by line ---- */
.sw-compare-head { max-width: 46rem; margin: 5rem auto 2rem; text-align: center; }
.sw-compare-head h3 { margin-bottom: .75rem; }
.sw-compare-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; background: #fff; border: 1px solid var(--gray-light); border-radius: .75rem; }
.sw-compare { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: .9375rem; }
.sw-compare col.sw-col-feature { width: 46%; }
.sw-compare th, .sw-compare td { padding: .8rem 1rem; border-bottom: 1px solid #e9efec; text-align: center; vertical-align: middle; line-height: 1.4; }
.sw-compare thead th { background: var(--green-darkest); color: #fff; font-family: MatterSQ, sans-serif; font-weight: 600; font-size: 1rem; }
.sw-compare thead th:first-child { text-align: left; }
.sw-compare thead .sw-compare_price { display: block; margin-top: .2rem; color: var(--gray-light); font-family: inherit; font-weight: 500; font-size: .8125rem; }
.sw-compare tbody th[scope="row"] { text-align: left; font-weight: 500; color: var(--gray-dark); }
.sw-compare tbody th[scope="row"] small { display: block; margin-top: .15rem; color: var(--gray-default); font-weight: 400; font-size: .8125rem; }
.sw-compare .sw-group th { padding-top: 1.25rem; background: #f3f7f5; color: var(--green-dark); text-align: left; font-size: .8125rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.sw-compare td.is-featured { background: rgba(0, 178, 89, .045); }
.sw-compare tbody tr:last-child th, .sw-compare tbody tr:last-child td { border-bottom: 0; }
.sw-yes, .sw-no { display: inline-block; font-weight: 700; }
.sw-yes { color: var(--renergy-green); font-size: 1.1rem; }
.sw-no { color: #b9c2bd; }
.sw-val { font-weight: 600; color: var(--green-darkest); }
.sw-val.is-limit { color: var(--gray-dark); font-weight: 500; }

@media screen and (max-width: 991px) {
  .sw-plans { grid-template-columns: minmax(0, 1fr); max-width: 32rem; margin: 0 auto; }
}
@media screen and (max-width: 767px) {
  .sw-plan { padding: 1.5rem; }
  .sw-compare { font-size: .8125rem; }
  .sw-compare col.sw-col-feature { width: 40%; }
  .sw-compare th, .sw-compare td { padding: .65rem .4rem; }
  .sw-compare tbody th[scope="row"] { padding-left: .75rem; }
  .sw-compare thead th { font-size: .875rem; }
  .sw-compare thead th:first-child { padding-left: .75rem; }
  .sw-compare thead .sw-compare_price { font-size: .6875rem; }
  .sw-compare tbody th[scope="row"] small { font-size: .75rem; }
  .sw-compare-head { margin-top: 3.5rem; }
}
@media screen and (max-width: 479px) {
  .sw-compare { font-size: .75rem; }
  .sw-compare col.sw-col-feature { width: 36%; }
  .sw-compare th, .sw-compare td { padding: .6rem .25rem; }
  .sw-compare thead th { font-size: .75rem; }
  .sw-compare thead .sw-compare_price { font-size: .625rem; }
  .sw-compare tbody th[scope="row"] small { font-size: .6875rem; }
}

/* ---- Final call to action band: badges on the dark background ---- */
.sw-cta-badges { margin-top: 1.75rem; display: flex; flex-direction: column; align-items: center; }

/* ---- Download page (/download/sitewise/) ---- */
.section_sw-download { background: #f6faf8; }
.sw-dl { max-width: 44rem; margin: 0 auto; text-align: center; }
.sw-dl h1 { margin-bottom: 1rem; }
.sw-dl_status { min-height: 1.6rem; margin: 1.25rem 0 0; font-weight: 600; color: var(--green-dark); }
.sw-dl_status span { display: none; }
html[data-sw-state="opening"] .sw-dl_status .is-opening { display: inline; }
html[data-sw-state="fallback"] .sw-dl_status .is-fallback { display: inline; }
html[data-sw-platform="ios"] .sw-store-name-android,
html[data-sw-platform="android"] .sw-store-name-ios { display: none; }
.sw-dl_card { margin-top: 2rem; padding: 2rem; background: #fff; border: 1px solid var(--gray-light); border-radius: 1rem; }
.sw-dl_stores { display: flex; justify-content: center; gap: 1rem; flex-wrap: wrap; }
.sw-dl_store { display: flex; flex-direction: column; align-items: center; gap: .5rem; }
.sw-dl_store .sw-badge img { display: block; height: 56px; width: auto; max-width: none; }
.sw-dl_store-label { color: var(--gray-default); font-size: .8125rem; }
/* On a phone, its own store comes first */
html[data-sw-platform="android"] .sw-dl_store.is-google_play,
html[data-sw-platform="ios"] .sw-dl_store.is-app_store { order: -1; }
.sw-dl_qr { display: flex; align-items: center; justify-content: center; gap: 1.5rem; margin-top: 2rem; padding-top: 2rem; border-top: 1px solid #e9efec; text-align: left; }
.sw-dl_qr img { width: 132px; height: 132px; padding: .4rem; background: #fff; border: 1px solid var(--gray-light); border-radius: .5rem; }
.sw-dl_qr p { max-width: 18rem; margin: 0; color: var(--gray-dark); }
/* A phone cannot scan its own screen */
html[data-sw-platform="ios"] .sw-dl_qr,
html[data-sw-platform="android"] .sw-dl_qr { display: none; }
.sw-dl_free { margin-top: 2rem; text-align: left; }
.sw-dl_free h2 { font-size: 1.25rem; margin-bottom: .75rem; }
.sw-dl_free ul { margin: 0; padding-left: 1.2rem; color: var(--gray-dark); }
.sw-dl_free li { margin-bottom: .35rem; }
.sw-dl_back { margin-top: 1.5rem; font-size: .9375rem; }
.sw-dl_back a { color: var(--green-dark); font-weight: 600; }
@media screen and (max-width: 767px) {
  .sw-dl_card { padding: 1.5rem 1rem; }
  .sw-dl_qr { flex-direction: column; text-align: center; }
}
