/**
 * Previstar Brand Kit — scoped styles
 * Loaded ONLY on pages carrying the `pvs-page` body class.
 * Every selector below is namespaced, so nothing here can reach
 * the rest of summitet.com.
 */

.pvs-page{
  --pvs-navy:      #163C4B;
  --pvs-navy-deep: #011E2E;
  --pvs-navy-mid:  #1E4E61;
  --pvs-lime:      #BBD640;
  --pvs-lime-dark: #9DB82C;
  --pvs-ice:       #F2F6F7;
  --pvs-line:      #D6E0E3;
  --pvs-body:      #3C4C52;

  /* Clearance for the existing SummitET fixed header.
     Change this number if the sticky sub-nav overlaps. */
  --pvs-header-offset: 80px;
}

/* ============================================================
   1. SCOPED TYPOGRAPHY  (page-only, never sitewide)
   ============================================================ */
.pvs-page .et_pb_section p,
.pvs-page .et_pb_section li{
  font-family:'Open Sans',Arial,sans-serif;
  color:var(--pvs-body);
  line-height:1.65;
}
.pvs-page .et_pb_section h1,
.pvs-page .et_pb_section h2,
.pvs-page .et_pb_section h3,
.pvs-page .et_pb_section h4{
  font-family:'Poppins',Arial,sans-serif;
}
.pvs-page .et_pb_section h1{ font-size:44px; line-height:1.12; letter-spacing:-.5px; font-weight:700; color:var(--pvs-navy); }
.pvs-page .et_pb_section h2{ font-size:32px; line-height:1.2;  font-weight:600; color:var(--pvs-navy); }
.pvs-page .et_pb_section h3{ font-size:16px; font-weight:600;  color:var(--pvs-navy); }

@media (max-width:980px){
  .pvs-page .et_pb_section h1{ font-size:32px; }
  .pvs-page .et_pb_section h2{ font-size:25px; }
}

/* ============================================================
   2. SECTION BACKGROUND TREATMENTS
   ============================================================ */
.pvs-page .pvs-ice{ background-color:var(--pvs-ice) !important; }
.pvs-page .pvs-navy{ background-color:var(--pvs-navy) !important; }

/* Network texture + left-weighted gradient — hero */
.pvs-page .pvs-hero{
  background-color:var(--pvs-navy-deep) !important;
  background-image:var(--pvs-texture-url) !important;
  background-size:cover !important;
  background-position:center center !important;
  position:relative;
}
.pvs-page .pvs-hero:before{
  content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(90deg,
    rgba(1,30,46,.93) 0%,
    rgba(1,30,46,.74) 55%,
    rgba(1,30,46,.55) 100%);
}
.pvs-page .pvs-hero > .et_pb_row,
.pvs-page .pvs-hero > .et_pb_row_inner{ position:relative; z-index:2; }

/* Network texture + flat overlay — interior bands */
.pvs-page .pvs-texture{
  background-color:var(--pvs-navy-deep) !important;
  background-image:var(--pvs-texture-url) !important;
  background-size:cover !important;
  background-position:center center !important;
  position:relative;
}
.pvs-page .pvs-texture:before{
  content:""; position:absolute; inset:0; z-index:1;
  background:rgba(1,30,46,.84);
}
.pvs-page .pvs-texture > .et_pb_row{ position:relative; z-index:2; }

/* Light type on dark sections */
.pvs-page .pvs-hero h1, .pvs-page .pvs-hero h2, .pvs-page .pvs-hero h3,
.pvs-page .pvs-texture h1, .pvs-page .pvs-texture h2, .pvs-page .pvs-texture h3,
.pvs-page .pvs-navy h1, .pvs-page .pvs-navy h2, .pvs-page .pvs-navy h3{ color:#fff !important; }

.pvs-page .pvs-hero p, .pvs-page .pvs-texture p, .pvs-page .pvs-navy p,
.pvs-page .pvs-hero li, .pvs-page .pvs-texture li, .pvs-page .pvs-navy li{ color:#C3D3D8 !important; }

.pvs-page .pvs-hero h1 em{ font-style:normal; color:var(--pvs-lime); }

/* ============================================================
   3. EYEBROW + ACCENT RULE
   ============================================================ */
.pvs-page .pvs-eyebrow p,
.pvs-page .pvs-eyebrow{
  font-size:11px !important;
  letter-spacing:.2em;
  text-transform:uppercase;
  font-weight:600;
  font-family:'Poppins',sans-serif;
  color:var(--pvs-lime-dark) !important;
  margin-bottom:10px !important;
}
.pvs-page .pvs-texture .pvs-eyebrow p,
.pvs-page .pvs-navy .pvs-eyebrow p,
.pvs-page .pvs-hero .pvs-eyebrow p{ color:var(--pvs-lime) !important; }

.pvs-page .pvs-rule{
  width:64px !important; height:4px;
  background:var(--pvs-lime) !important;
  margin-bottom:22px !important;
}
.pvs-page .pvs-rule .et_pb_divider_internal{ border-top:none; }
.pvs-page .pvs-rule-center{ margin-left:auto !important; margin-right:auto !important; }

/* ============================================================
   4. BUTTONS
   ============================================================ */
.pvs-page .et_pb_button.pvs-btn,
.pvs-page .et_pb_button.pvs-btn:hover{
  background-color:var(--pvs-lime) !important;
  border:2px solid var(--pvs-lime) !important;
  color:var(--pvs-navy) !important;
  font-family:'Poppins',sans-serif;
  font-weight:600; font-size:13px;
  text-transform:uppercase; letter-spacing:.08em;
  padding:14px 30px !important; border-radius:2px;
}
.pvs-page .et_pb_button.pvs-btn:hover{
  background-color:var(--pvs-lime-dark) !important;
  border-color:var(--pvs-lime-dark) !important;
}
.pvs-page .et_pb_button.pvs-btn-outline{
  background:transparent !important;
  border:2px solid #fff !important;
  color:#fff !important;
  font-family:'Poppins',sans-serif; font-weight:600; font-size:13px;
  text-transform:uppercase; letter-spacing:.08em;
  padding:14px 30px !important; border-radius:2px;
}
.pvs-page .et_pb_button.pvs-btn-outline:hover{
  background:#fff !important; color:var(--pvs-navy) !important;
}
.pvs-page .et_pb_button.pvs-btn:after,
.pvs-page .et_pb_button.pvs-btn-outline:after{ display:none !important; }

/* ============================================================
   5. CARDS
   ============================================================ */
.pvs-page .pvs-card{
  background:#fff;
  border:1px solid var(--pvs-line);
  border-top:3px solid var(--pvs-lime);
  border-radius:3px;
  padding:24px !important;
  height:100%;
}
.pvs-page .pvs-card h3{ margin-bottom:8px; color:var(--pvs-navy); }
.pvs-page .pvs-card p{ font-size:14px; margin-bottom:10px; color:var(--pvs-body); }
.pvs-page .pvs-card .pvs-more{
  display:inline-block; font-family:'Poppins',sans-serif;
  font-size:12px; font-weight:600; letter-spacing:.06em;
  text-transform:uppercase; color:var(--pvs-navy); text-decoration:none;
}
.pvs-page .pvs-card .pvs-more:hover{ color:var(--pvs-lime-dark); }

.pvs-page .pvs-card .pvs-ico{
  width:38px; height:38px; margin-bottom:12px;
  border:2px solid var(--pvs-lime); border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  color:var(--pvs-navy); font-size:15px;
}

.pvs-page .pvs-card-split{ display:grid; grid-template-columns:130px 1fr; gap:18px; align-items:start; }
@media (max-width:767px){ .pvs-page .pvs-card-split{ grid-template-columns:1fr; } }

/* Equalize card heights inside a Divi row */
.pvs-page .pvs-cards .et_pb_column{ display:flex; }
.pvs-page .pvs-cards .et_pb_module{ width:100%; }

/* ============================================================
   6. CHECK LISTS
   ============================================================ */
.pvs-page .pvs-check ul{ list-style:none; padding:0; margin:0; }
.pvs-page .pvs-check li{ padding:8px 0 8px 30px; position:relative; font-size:15px; }
.pvs-page .pvs-check li:before{
  content:""; position:absolute; left:0; top:14px;
  width:14px; height:8px;
  border-left:3px solid var(--pvs-lime);
  border-bottom:3px solid var(--pvs-lime);
  transform:rotate(-45deg);
}

/* ============================================================
   7. READINESS CYCLE CHIPS
   ============================================================ */
.pvs-page .pvs-cycle{
  display:flex; flex-wrap:wrap; gap:10px;
  align-items:center; justify-content:center;
  font-family:'Poppins',sans-serif; font-weight:600;
  font-size:12px; text-transform:uppercase; letter-spacing:.08em;
}
.pvs-page .pvs-cycle span{
  border:1px solid var(--pvs-lime); color:var(--pvs-navy);
  background:#fff; padding:10px 16px; border-radius:2px;
}
.pvs-page .pvs-cycle b{ color:var(--pvs-lime-dark); }

/* ============================================================
   8. WIREFRAME PLACEHOLDERS
   Delete this whole block once real imagery is in place.
   ============================================================ */
.pvs-page .pvs-ph{
  background:rgba(22,60,75,.06);
  border:1px dashed var(--pvs-line);
  border-radius:4px;
  display:flex; align-items:center; justify-content:center; text-align:center;
  color:#7D8F96; font-family:'Poppins',sans-serif;
  font-size:11px; letter-spacing:.14em; text-transform:uppercase;
  padding:14px; min-height:220px;
}
.pvs-page .pvs-texture .pvs-ph,
.pvs-page .pvs-navy .pvs-ph,
.pvs-page .pvs-hero .pvs-ph{
  background:rgba(255,255,255,.06);
  border-color:rgba(187,214,64,.35);
  color:#9FB4BC;
}

/* ============================================================
   9. STICKY SUB-NAV
   Offsets beneath the existing SummitET fixed header.
   ============================================================ */
.pvs-page .pvs-subnav{
  background:var(--pvs-navy) !important;
  position:sticky; top:var(--pvs-header-offset); z-index:99;
  padding:0 !important;
}
.pvs-page .pvs-subnav-inner{
  display:flex; gap:38px; justify-content:center; flex-wrap:wrap;
  font-family:'Poppins',sans-serif; font-size:12px; font-weight:500;
  text-transform:uppercase; letter-spacing:.09em; padding:15px 20px;
}
.pvs-page .pvs-subnav a{ color:#fff; text-decoration:none; padding-bottom:3px; border-bottom:2px solid transparent; }
.pvs-page .pvs-subnav a:hover,
.pvs-page .pvs-subnav a.is-active{ border-color:var(--pvs-lime); }
@media (max-width:980px){ .pvs-page .pvs-subnav{ display:none; } }

/* ============================================================
   10. TEST-MODE BANNER
   Shows only on the staging page. Disappears automatically
   once the plugin is pointed at the live slug.
   ============================================================ */
.pvs-page.pvs-test-mode:before{
  content:"PREVISTAR TEST PAGE — NOT LIVE";
  display:block; width:100%;
  background:var(--pvs-lime); color:var(--pvs-navy);
  font-family:'Poppins',sans-serif; font-size:11px; font-weight:600;
  letter-spacing:.18em; text-transform:uppercase;
  text-align:center; padding:7px 10px;
  position:relative; z-index:100000;
}

/* ============================================================
   11. ACCESSIBILITY
   ============================================================ */
.pvs-page a:focus-visible,
.pvs-page .et_pb_button:focus-visible{
  outline:3px solid var(--pvs-lime);
  outline-offset:3px;
}
