﻿/* light editorial hero, centered */
  .hero{position:relative;padding:72px 0 54px;overflow:hidden;text-align:center}
  .hero::before{content:"";position:absolute;inset:0;background:radial-gradient(900px 460px at 50% -20%,rgba(14,123,196,.12),transparent 62%);z-index:-1}
  .hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:50px 50px;opacity:.5;mask:radial-gradient(600px 340px at 50% 30%,#000,transparent 72%);z-index:-1}
  .hero .sol-logo{font-size:13px;font-weight:800;letter-spacing:2px;color:var(--primary);text-transform:uppercase;margin-bottom:14px}
  .hero h1{font-size:clamp(36px,5.2vw,62px);line-height:1.03;letter-spacing:-2px;font-weight:800;margin:0 auto 20px;max-width:880px}
  .hero h1 .accent{color:var(--primary)}
  .hero .lede{font-size:18.5px;line-height:1.62;color:var(--ink-soft);max-width:660px;margin:0 auto 30px}
  .hero-ctas{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}

  /* BENTO pillars */
  .bento{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(180px,auto);gap:16px}
  @media(max-width:900px){.bento{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:560px){.bento{grid-template-columns:1fr}}
  .box{border:1px solid var(--line);border-radius:20px;padding:28px;position:relative;overflow:hidden;background:#fff;transition:.25s;display:flex;flex-direction:column}
  .box:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:transparent}
  @media(max-width:900px){.box{grid-column:auto!important}}
  .box .bi{width:46px;height:46px;border-radius:12px;background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;margin-bottom:16px}.box .bi svg{width:23px;height:23px}
  .box h3{font-size:19px;font-weight:800;letter-spacing:-.3px;margin-bottom:8px}
  .box p{font-size:14.5px;line-height:1.58;color:var(--ink-soft)}
  .box.w3{grid-column:span 3}.box.w2{grid-column:span 2}
  .box.accent{background:var(--primary-soft);border-color:var(--primary-light)}
  .box .mini-rows{margin-top:auto;padding-top:16px;display:flex;flex-direction:column;gap:8px}
  .mini-row{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:8px 11px}
  .mini-row .av{width:24px;height:24px;border-radius:50%;background:var(--primary-light);font-size:10px;font-weight:800;color:var(--primary-dark);display:flex;align-items:center;justify-content:center}
  .mini-row b{font-size:12px}.mini-row .tag{margin-left:auto;font-size:9.5px;font-weight:700;padding:3px 7px;border-radius:999px;background:#E7F8EE;color:#1A9E54}

  /* alternating feature rows */
  .fblock{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
  .fblock + .fblock{margin-top:64px}
  .fblock.flip .ftext{order:2}
  @media(max-width:940px){.fblock,.fblock.flip{grid-template-columns:1fr;gap:32px}.fblock.flip .ftext{order:0}}
  .ftext .fkick{display:inline-flex;align-items:center;gap:9px;font-size:12.5px;font-weight:700;letter-spacing:.6px;color:var(--primary);text-transform:uppercase;margin-bottom:14px}
  .ftext .fkick .ln{width:26px;height:2px;background:var(--primary);border-radius:2px}
  .ftext h3{font-size:clamp(23px,2.7vw,31px);line-height:1.14;letter-spacing:-.6px;font-weight:800;margin-bottom:16px}
  .ftext>p{font-size:16px;line-height:1.66;color:var(--ink-soft);margin-bottom:24px}
  .flist{list-style:none;display:flex;flex-direction:column;gap:18px}
  .flist li{display:flex;gap:14px}
  .flist .fnum{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--primary-light);color:var(--primary-dark);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
  .flist h3,.flist h4{font-size:15.5px;font-weight:700;margin-bottom:4px}
  .flist p{font-size:14px;line-height:1.55;color:var(--ink-soft)}

