/* SMP Consulting shared styles */
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Helvetica Neue',sans-serif;line-height:1.6;color:#1a2332;-webkit-font-smoothing:antialiased}
a{color:#0066cc;text-decoration:none}
a:hover{color:#004c99}
img{max-width:100%}
input,select,button{font-family:inherit}
input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{opacity:.4}
a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #0066cc;outline-offset:2px}

@keyframes greenGlow{0%{box-shadow:0 0 5px rgba(16,185,129,.5),0 0 15px rgba(16,185,129,.3),0 0 25px rgba(16,185,129,.2)}50%{box-shadow:0 0 10px rgba(16,185,129,.7),0 0 25px rgba(16,185,129,.5),0 0 35px rgba(16,185,129,.3)}100%{box-shadow:0 0 5px rgba(16,185,129,.5),0 0 15px rgba(16,185,129,.3),0 0 25px rgba(16,185,129,.2)}}
@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}}

/* Layout pieces that need to respond to viewport width */
.hero-grid{max-width:1200px;margin:0 auto;padding:88px 24px 80px;display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center}
.hero-title{font-family:Montserrat,sans-serif;font-size:54px;line-height:1.1;font-weight:800;letter-spacing:-1.2px;margin-bottom:22px;text-wrap:pretty}
.hero-title-crm{font-size:56px;line-height:1.08;letter-spacing:-1.4px;margin-bottom:24px}
.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.panel{border-radius:12px;padding:60px;position:relative;overflow:hidden}
.panel-dark{background:linear-gradient(135deg,#1a2332 0%,#2c3e50 100%);color:#ffffff;margin-bottom:40px}
.panel-outline{background:#ffffff;border:3px solid #0066cc;margin-bottom:40px;box-shadow:0 10px 40px rgba(0,102,204,0.1)}
.panel-cta{background:linear-gradient(135deg,#0066cc 0%,#004499 100%);color:#ffffff;text-align:center;margin-top:60px}
.panel-title{font-family:Montserrat,sans-serif;font-size:42px;font-weight:700;margin-bottom:20px;letter-spacing:-.8px}

@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr;gap:40px;padding:56px 24px 48px}
  .calc-grid{grid-template-columns:1fr}
}
@media (max-width:768px){
  .hero-title,.hero-title-crm{font-size:38px;letter-spacing:-.8px}
  .panel{padding:32px 24px}
  .panel-title{font-size:30px}
}
@media (max-width:480px){
  .hero-title,.hero-title-crm{font-size:32px}
  .panel-title{font-size:26px}
}

/* Elements with a hover state (base + hover pairs) */
.hv1{display:inline-block;background:#0066cc;color:#ffffff;font-size:15px;font-weight:700;padding:11px 22px;border-radius:6px;transition:background .2s ease,transform .2s ease}
.hv1:hover{background:#0052a3;color:#ffffff;transform:translateY(-1px)}
.hv2{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#ffffff;border:1px solid #e4e9ef;border-radius:10px;padding:16px 18px;box-shadow:0 1px 3px rgba(26,35,50,.05);transition:box-shadow .2s ease,border-color .2s ease}
.hv2:hover{box-shadow:0 8px 20px rgba(26,35,50,.09);border-color:#c9d3de}
.hv3{display:inline-block;background:#ffffff;color:#1a2332;padding:16px 36px;font-size:17px;font-weight:600;border-radius:8px;animation:greenGlow 2s ease-in-out infinite;transition:transform .2s ease}
.hv3:hover{transform:translateY(-2px);color:#1a2332}
.hv4{display:inline-block;background:#0066cc;color:#ffffff;padding:16px 36px;font-size:17px;font-weight:600;border-radius:8px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.hv4:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,102,204,.3);background:#0052a3;color:#ffffff}
.hv5{display:inline-block;background:#ffffff;color:#0066cc;padding:18px 40px;font-size:18px;font-weight:600;border-radius:8px;transition:transform .2s ease,box-shadow .2s ease}
.hv5:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(255,255,255,.3);color:#0066cc}
.hv6{display:inline-block;background:#0066cc;color:#ffffff;font-size:17px;font-weight:700;padding:17px 34px;border-radius:8px;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}
.hv6:hover{background:#0052a3;color:#ffffff;transform:translateY(-1px);box-shadow:0 8px 24px rgba(0,102,204,.28)}
.hv7{display:inline-block;background:#ffffff;color:#1a2332;border:1px solid #d7dee6;font-size:17px;font-weight:600;padding:16px 28px;border-radius:8px;transition:border-color .2s ease}
.hv7:hover{border-color:#1a2332;color:#1a2332}
.hv8{background:#ffffff;border:1px solid #e4e9ef;border-top:3px solid #0066cc;border-radius:10px;padding:28px 24px;box-shadow:0 3px 14px rgba(26,35,50,.06);transition:box-shadow .2s ease}
.hv8:hover{box-shadow:0 12px 28px rgba(26,35,50,.11)}
.hv9{display:inline-block;background:#0066cc;color:#ffffff;font-size:16.5px;font-weight:700;padding:16px 30px;border-radius:8px;transition:background .2s ease}
.hv9:hover{background:#3d8fe0;color:#ffffff}
.hv10{display:inline-block;background:#ffffff;color:#0052a3;font-size:17px;font-weight:700;padding:17px 34px;border-radius:8px;transition:transform .2s ease,box-shadow .2s ease}
.hv10:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(0,0,0,.18);color:#0052a3}
.hv11{display:inline-block;background:rgba(255,255,255,.12);color:#ffffff;border:1px solid rgba(255,255,255,.45);font-size:17px;font-weight:600;padding:16px 28px;border-radius:8px;transition:background .2s ease}
.hv11:hover{background:rgba(255,255,255,.22);color:#ffffff}
.hv12{display:inline-block;background:#ffffff;color:#1a2332;font-size:17px;font-weight:700;padding:17px 34px;border-radius:8px;transition:transform .2s ease,box-shadow .2s ease}
.hv12:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(0,0,0,.28);color:#1a2332}
