/* Site polish (Kelly 2026-10-24): no loose empty columns. Heading on top and centered, content laid out across the full width. Desktop first; phones keep one column. */
.split.al-top:has(> div > ol.steps),.split.al-top:has(> div > ol.week){grid-template-columns:1fr !important;gap:22px !important}
.split.al-top:has(> div > ol.steps)>div:first-child,.split.al-top:has(> div > ol.week)>div:first-child{text-align:center;max-width:760px;margin:0 auto}
.split.al-top:has(> div > ol.steps) .sub,.split.al-top:has(> div > ol.week) .sub{margin-left:auto;margin-right:auto}
@media (min-width:900px){
  ol.steps{grid-template-columns:repeat(5,minmax(0,1fr)) !important;gap:14px !important;align-items:stretch}
  ol.steps>li{padding:56px 14px 16px !important;text-align:left}
  ol.steps>li::before{left:14px !important;top:14px !important;width:34px !important;height:34px !important;font-size:16px !important;line-height:34px !important}
  ol.steps h3{font-size:16px !important}
  ol.steps p{font-size:14px !important}
  .split.al-top ol.week{grid-template-columns:repeat(7,minmax(0,1fr)) !important;gap:10px !important}
  .split.al-top ol.week .day{grid-template-columns:1fr !important;grid-template-rows:auto auto auto;justify-items:center;text-align:center;padding:14px 8px !important;min-height:112px;gap:6px !important;border-radius:14px !important}
  .split.al-top ol.week .day.head{border-left:1px solid var(--line) !important;border-top:4px solid var(--gold) !important}
  .split.al-top ol.week .day .dn{font-size:15px}
  .split.al-top ol.week .day .dt{font-size:14px}
}
/* equity hero: no long paragraph */
.hero.eqh:has(.price) .hsub{display:none}
/* Equity is more than price: two clear sides, term on navy, meaning on white, two columns of rows */
.eq-dims,.eq-dims tbody{display:block;border:0;background:none;box-shadow:none}
.eq-dims thead{display:none}
.eq-dims tbody{display:grid;grid-template-columns:1fr;gap:10px}
.eq-dims tr{display:grid;grid-template-columns:minmax(120px,38%) 1fr;border-radius:14px;overflow:hidden;border:1px solid var(--line-strong,#D6CDB9);background:#fff}
.eq-dims th[scope=row]{width:auto !important;display:flex;align-items:center;padding:14px 16px !important;background:#0B1F4B;color:#fff !important;font:600 16px/1.25 var(--read,Georgia,serif);border:0}
.eq-dims td{display:flex;align-items:center;padding:14px 16px !important;font-size:15px;line-height:1.45;color:var(--ink-soft,#3A3F4B);border:0}
@media (min-width:900px){.eq-dims tbody{grid-template-columns:1fr 1fr;gap:12px}}
.tbl-wrap:has(.eq-dims){overflow:visible;border:0;background:none;box-shadow:none}
/* steps fill the row whatever the count */
@media (min-width:900px){ol.steps{grid-template-columns:repeat(auto-fit,minmax(150px,1fr)) !important}}
/* pages with narrow centered text: use the full width, two columns for lists */
.wrap.eq-narrow{max-width:1040px !important}
.wrap.eq-narrow>h2,.wrap.eq-narrow>.eq-lead{text-align:center;margin-left:auto;margin-right:auto;max-width:760px}
@media (min-width:900px){.wrap.eq-narrow .eq-bul{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px}}
/* top section of inner pages: headline, price line and buttons; the long lede lives further down */
@media (min-width:900px){.ph:has(.price) .lede{display:none}}

.wk-split{align-items:stretch !important}
.wk-split .photo{height:100%}
.wk-split .photo img{height:100%;object-fit:cover}
.wk-split ol.week{align-content:center}
/* phones: headlines in longer languages stay within three lines */
@media (max-width:480px){.hero h1,.ph h1{font-size:clamp(23px,6.4vw,30px) !important;line-height:1.14}}
