/* Rango Group — refined premium action system. Loaded last. */
:root{--rango-accent:#c9f64a;--rango-shadow:rgba(201,246,74,.22)}
.cta-lime,.cta-dark,.footer-cta,.site-header nav .nav-quote,.login-form .btn,.portal-form .btn,.portal-card .btn,.btn{
  box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:16px;
  min-height:54px;padding:15px 23px;border-radius:13px;
  font-family:'DM Sans',sans-serif;font-weight:800;font-size:12px;letter-spacing:.085em;
  line-height:1.25;text-align:center;text-decoration:none;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease,filter .2s ease;
  -webkit-tap-highlight-color:transparent;
}
.cta-lime,.login-form .btn,.portal-form .btn:not(.secondary),.btn:not(.secondary){
  background:linear-gradient(125deg,#e0ff8a 0%,#c9f64a 45%,#a6e72c 100%)!important;
  color:#10180c!important;border:1px solid #dafa86!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.62),0 6px 0 rgba(54,83,20,.27),0 14px 30px rgba(134,193,42,.12);
}
.cta-lime span{display:inline-grid;place-items:center;flex:0 0 auto;width:32px;height:32px;
  border-radius:9px;background:rgba(17,35,9,.12);font-size:20px;line-height:1;transition:transform .2s ease,background .2s ease}
.cta-dark,.footer-cta,.btn.secondary{background:linear-gradient(135deg,#2d3d2e,#141d16)!important;color:#f3f9ef!important;
  border:1px solid #526d47!important;box-shadow:inset 0 1px 0 #ffffff19,0 10px 22px #0003}
.text-action,.under-link{display:inline-flex;align-items:center;gap:10px;text-underline-offset:5px;transition:color .2s ease,transform .2s ease}
.cta-lime:hover,.cta-dark:hover,.footer-cta:hover,.btn:hover,.site-header nav .nav-quote:hover{
  transform:translateY(-2px);filter:brightness(1.04);box-shadow:0 14px 30px var(--rango-shadow),inset 0 1px 0 #ffffff77}
.cta-lime:hover span{transform:translate(2px,-2px);background:rgba(17,35,9,.2)}
.cta-lime:active,.cta-dark:active,.footer-cta:active,.btn:active{transform:translateY(1px);box-shadow:0 3px 10px #0003}
a:focus-visible,button:focus-visible{outline:3px solid #efffba;outline-offset:4px}
@media(max-width:700px){
 .hero-actions{gap:13px!important}
 .hero-actions .cta-lime,.public-form .cta-lime,.last-cta .cta-lime,.note-panel .cta-lime{
  width:100%!important;min-height:60px!important;padding:12px 15px 12px 20px!important;
  border-radius:14px!important;font-size:12px!important;letter-spacing:.055em!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  text-align:left!important;gap:12px!important;white-space:normal!important;
 }
 .hero-actions .cta-lime span,.public-form .cta-lime span,.last-cta .cta-lime span{
  width:36px!important;height:36px!important;min-width:36px!important;display:grid!important;place-items:center!important;
  border-radius:10px!important;font-size:20px!important;line-height:1!important
 }
 .hero-actions .text-action{align-self:center!important;justify-content:center!important;min-height:44px!important;
  padding:10px 8px!important;font-size:11px!important;font-weight:800!important;letter-spacing:.08em!important}
 .menu-toggle{width:46px!important;height:46px!important;border-radius:13px!important;
  background:linear-gradient(145deg,#26382a,#101a12)!important;border:1px solid #658343!important;
  color:var(--rango-accent)!important;box-shadow:inset 0 1px 0 #ffffff1f,0 5px 12px #0004}
 .login-form .btn,.portal-form .btn,.btn{min-height:52px;border-radius:12px}
 .footer-cta,.cta-dark{min-height:54px;border-radius:12px}
}
@media(prefers-reduced-motion:reduce){.cta-lime,.cta-dark,.footer-cta,.btn,.text-action,.under-link,.cta-lime span{transition:none!important}}
