/* Valens Edge — Lovable-style layout */
.edge-v2 {
  --edge-navy: hsl(218, 55%, 9%);
  --edge-cyan: rgb(27, 155, 187);
  --edge-cyan-bright: rgb(37, 188, 244);
  --edge-text: #1f3553;
  --edge-muted: #6b7f95;
  --edge-border: #e5edf2;
  --edge-soft: #f8fcfd;
  --edge-serif: inherit;
  font-family: inherit;
  color: var(--edge-text);
}

.edge-v2 .container-s { max-width: 1180px; margin: 0 auto; }
body.page-template-template-valens-edge .inner-banner,
body.page-template-templates-template-valens-edge-php .inner-banner { display: none !important; }
body.page-template-template-valens-edge,
body.page-template-templates-template-valens-edge-php { padding-top: 0 !important; }

.edge-v2__hero { position: relative; min-height: 66vh; overflow: hidden; padding-top: var(--v2-bar-h, 72px); display:flex; align-items:center; }
.edge-v2__hero-bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.edge-v2__hero-overlay { position:absolute; inset:0; background:linear-gradient(180deg, rgba(6,20,40,.42) 0%, rgba(6,20,40,.78) 100%); }
.edge-v2__hero-inner { position:relative; z-index:1; width:100%; padding:3rem 0; }
.edge-v2__hero-content { max-width: 56rem; margin:0 auto; text-align:center; }
.edge-v2__eyebrow,.edge-v2__section-eyebrow { margin:0 0 .85rem; font-size:.7rem; letter-spacing:.2em; text-transform:uppercase; color:#8ed8ea; font-weight:600; }
.edge-v2__title { margin:0; font-family:var(--edge-serif); font-size:clamp(2.25rem,6vw,4.2rem); line-height:1.06; color:#fff; }
.edge-v2__lead { margin:1.15rem 0 0; max-width:42rem; color:rgba(255,255,255,.9); font-size:1.1rem; line-height:1.6; }
.edge-v2__hero-actions { display:flex; gap:.75rem; flex-wrap:wrap; margin-top:1.75rem; justify-content:center; }

.edge-v2__btn { min-height:46px; padding:.72rem 1.35rem; border-radius:999px; font-weight:500; font-size:.92rem; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; transition:.2s ease; }
.edge-v2__btn--primary { background:linear-gradient(135deg,#25bcf4 0%,#6adefb 100%); color:#0d2742; }
.edge-v2__btn--ghost { border:1px solid rgba(255,255,255,.4); color:#fff; background:rgba(255,255,255,.1); }
.edge-v2__btn--light { border:1px solid var(--edge-border); color:var(--edge-text); background:#fff; }

.edge-v2__intro,.edge-v2__partners,.edge-v2__services,.edge-v2__who,.edge-v2__cta { padding:4.5rem 0; background:#fff; }
.edge-v2__section-title { margin:0 0 1rem; font-family:var(--edge-serif); font-size:clamp(1.7rem,3.2vw,2.35rem); line-height:1.14; color:#1f3553; }
.edge-v2__section-title--compact { font-size:clamp(1.35rem,2.6vw,1.95rem) !important; line-height:1.2; }
.edge-v2__section-copy,.edge-v2__intro-copy p,.edge-v2__who-copy p { color:var(--edge-muted); line-height:1.75; font-size:1.02rem; }
.edge-v2__section-head { margin-bottom:2rem; }

.edge-v2__partner-grid { display:grid; gap:1rem; }
.edge-v2__partner-card { border:1px solid var(--edge-border); border-radius:14px; padding:1.25rem; text-align:center; background:#fff; }
.edge-v2__partner-mark { width:46px; height:46px; border-radius:12px; background:#eaf6f9; color:#2f9bb0; font-weight:700; display:inline-flex; align-items:center; justify-content:center; margin-bottom:.8rem; }
.edge-v2__partner-card h3 { margin:0 0 .25rem; font-size:1rem; font-weight:500; }
.edge-v2__partner-card p { margin:0; color:var(--edge-muted); font-size:.9rem; }

.edge-v2__service-grid { display:grid; gap:1rem; }
.edge-v2__service-card { border:1px solid var(--edge-border); border-radius:14px; padding:1.25rem; background:#fff; }
.edge-v2__service-title { margin:0 0 .7rem; display:flex; align-items:center; gap:.55rem; font-size:1.05rem; font-weight:500; color:#233a57; }
.edge-v2__service-icon { width:1.8rem; height:1.8rem; border-radius:10px; background:#ecf7fa; color:#2f9bb0; display:inline-flex; align-items:center; justify-content:center; }
.edge-v2__service-copy { margin:0; color:var(--edge-muted); font-size:.95rem; line-height:1.7; }
.edge-v2__service-list { margin:0; padding-left:1rem; color:var(--edge-muted); line-height:1.65; }
.edge-v2__service-list li { margin:0 0 .35rem; }
.edge-v2__services .edge-v2__section-title { font-size: clamp(2rem, 5.6vw, 2.45rem); }

.edge-v2__pillars { padding: 3.25rem 0 4rem; background:#fff; }
.edge-v2__pillar-grid { display:grid; gap:.8rem; }
.edge-v2__pillar-card { padding:1rem 1.1rem; border:1px solid var(--edge-border); border-radius:12px; background:#fff; }
.edge-v2__pillar-card h3 { margin:0 0 .3rem; font-size:1rem; color:#233a57; }
.edge-v2__pillar-card p { margin:0; color:var(--edge-muted); line-height:1.65; font-size:.95rem; }

.edge-v2__who-grid { display:grid; gap:1.5rem; align-items:start; }
.edge-v2__audience-list { list-style:none; margin:0; padding:0; display:grid; gap:.8rem; }
.edge-v2__audience-list li { border:1px solid var(--edge-border); border-radius:12px; padding:.85rem .95rem; display:flex; gap:.6rem; align-items:flex-start; background:#fff; font-size:.95rem; line-height:1.45; color:var(--edge-text); }
.edge-v2__audience-icon { color:#2f9bb0; width:16px; height:16px; min-width:16px; min-height:16px; margin-top:.1rem; display:inline-flex; align-items:center; justify-content:center; flex:0 0 16px; }
.edge-v2__audience-icon .valens-icon { width:14px; height:14px; }

.edge-v2__cta-inner { max-width:860px; margin:0 auto; text-align:center; border:1px solid var(--edge-border); border-radius:18px; background:linear-gradient(180deg,#f2fafc 0%,#fff 100%); padding:2.25rem 1.25rem; }
.edge-v2__cta-icon { color:#2f9bb0; display:inline-flex; margin-bottom:.6rem; }
.edge-v2__cta-inner h2 { margin:0 0 .85rem; font-family:var(--edge-serif); font-size:clamp(1.45rem,2.8vw,2rem); line-height:1.15; color:#1f3553; }
.edge-v2__cta-inner p { margin:0 0 1.2rem; color:var(--edge-muted); line-height:1.7; }
.edge-v2__hero-actions--center { justify-content:center !important; }

@media (min-width:768px){
  .edge-v2__hero-content { margin:0; text-align:left; }
  .edge-v2__hero-actions { justify-content:flex-start; }
  .edge-v2__partner-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .edge-v2__service-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .edge-v2__pillar-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .edge-v2__who-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:2rem; }
  .edge-v2__audience-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .edge-v2__cta-inner { padding:2.75rem 2.2rem; }
}

@media (max-width: 767px){
  .edge-v2__hero-content { padding-left: 1rem; padding-right: 1rem; }
}
