@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@300;400;500;600;700;800;900&display=swap');

/* ===== NVR global design system (promoted from the home page) ===== */
/* hide the Astra theme chrome everywhere — NVR renders its own header/footer */
#masthead,#colophon,.site-header,.site-footer,.ast-above-header-wrap,.site-below-footer-wrap{display:none!important}
.ast-page-builder-template .site-content,.site-content .ast-container{padding:0!important;margin:0!important;max-width:100%!important}

body{font-family:'Heebo',system-ui,sans-serif;background:#f8fafc;color:#0f172a;line-height:1.6;-webkit-font-smoothing:antialiased;}
.nvr{font-family:'Heebo',system-ui,sans-serif;color:#0f172a;background:#f8fafc;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
.nvr *{box-sizing:border-box}
.nvr a{transition:all .18s ease}
.nvr ::selection{background:#6e88ff;color:#fff}

@keyframes kz-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes kz-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes kz-pulse{0%,100%{box-shadow:0 0 0 0 rgba(110,136,255,.45)}50%{box-shadow:0 0 0 14px rgba(110,136,255,0)}}
@keyframes kz-bar{from{height:8%}}

/* hover / interaction */
.nvr-navlink:hover{background:#eef2ff!important;color:#001E99!important}
.nvr-pill:hover{background:#eef2ff!important}
.nvr-cta:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(0,30,153,.42)!important}
.nvr-outline:hover{transform:translateY(-2px);border-color:#6e88ff!important}
.nvr-card:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(2,12,60,.1);border-color:rgba(110,136,255,.45)!important}
.nvr-plan:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(2,12,60,.12)!important}
.nvr-plan-feat:hover{transform:translateY(-14px)!important;box-shadow:0 36px 70px rgba(0,30,153,.42)!important}
a.nvr-order:hover{background:#dde4ff!important}
a.nvr-order-white:hover{transform:translateY(-2px)}
.nvr-footlink:hover{color:#fff!important}

/* pricing toggle */
.nvr-toggle-active{border:none;cursor:pointer;font-family:inherit;font-weight:700;font-size:15px;padding:9px 24px;border-radius:999px;background:#001E99;color:#fff;box-shadow:0 6px 14px rgba(0,30,153,.28);transition:all .2s ease}
.nvr-toggle-idle{border:none;cursor:pointer;font-family:inherit;font-weight:700;font-size:15px;padding:9px 24px;border-radius:999px;background:transparent;color:#475569;transition:all .2s ease}

/* faq */
.nvr details{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:14px;overflow:hidden}
.nvr details summary{list-style:none;cursor:pointer;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:17.5px;font-weight:700;color:#0b1220}
.nvr details summary::-webkit-details-marker{display:none}
.nvr details summary .sign{flex-shrink:0;width:28px;height:28px;border-radius:8px;background:#eef2ff;color:#001E99;display:grid;place-items:center;font-size:20px;font-weight:700}
.nvr details[open] summary .sign:before{content:"−"}
.nvr details:not([open]) summary .sign:before{content:"+"}
.nvr details .ans{padding:0 22px 22px;color:#475569;font-size:16px;line-height:1.7;margin:0}

/* ===== app-page helpers (order / login / account / contact forms) ===== */
.nvr-shell{max-width:1100px;margin:0 auto;padding:clamp(34px,5vw,64px) 22px;}
.nvr-shell--narrow{max-width:760px;}
.nvr-pagehead{text-align:center;max-width:680px;margin:0 auto clamp(28px,4vw,44px);}
.nvr-pagehead .eyebrow{color:#001E99;font-weight:700;font-size:15px;letter-spacing:.4px;}
.nvr-pagehead h1{font-size:clamp(28px,4vw,44px);font-weight:900;letter-spacing:-1px;margin:12px 0 0;color:#0b1220;}
.nvr-pagehead p{font-size:18px;color:#475569;margin:14px 0 0;}
.nvr-panel{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:clamp(24px,4vw,38px);box-shadow:0 18px 44px rgba(2,12,60,.06);}
.nvr-trust{display:flex;gap:22px;flex-wrap:wrap;justify-content:center;margin-top:30px;color:#475569;font-size:15px;font-weight:500;}
.nvr-trust span{display:flex;align-items:center;gap:8px;}
.nvr-trust .ic{color:#16a34a;font-weight:800;}

/* style the plugin form widgets to match the brand */
.nvr-order-form input,.nvr-login-form input,.nvr-register-form input,
.nvr-account input,.wpcf7 input:not([type=submit]),.wpcf7 textarea{
  width:100%;font-family:inherit;font-size:15px;color:#0f172a;background:#f8fafc;
  border:1px solid rgba(15,23,42,.14);border-radius:12px;padding:13px 15px;transition:all .18s ease;}
.nvr-order-form input:focus,.nvr-login-form input:focus,.nvr-register-form input:focus,
.wpcf7 input:focus,.wpcf7 textarea:focus{outline:none;border-color:#6e88ff;background:#fff;box-shadow:0 0 0 4px rgba(110,136,255,.16);}
.nvr-btn,.nvr-order-form button,.nvr-login-form button,.nvr-register-form button,.wpcf7 input[type=submit]{
  cursor:pointer;font-family:inherit;font-weight:800;font-size:16px;color:#fff;border:none;
  padding:14px 22px;border-radius:12px;background:linear-gradient(135deg,#001E99,#3a52d6);
  box-shadow:0 10px 24px rgba(0,30,153,.28);transition:all .2s ease;}
.nvr-btn:hover,.nvr-order-form button:hover,.nvr-login-form button:hover,
.nvr-register-form button:hover,.wpcf7 input[type=submit]:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(0,30,153,.4);}

/* contact form (Contact Form 7) styled as a branded panel */
.wpcf7{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:clamp(22px,3vw,32px);box-shadow:0 18px 44px rgba(2,12,60,.06);direction:rtl;text-align:right;}
.wpcf7 p{margin:0 0 16px;}
.wpcf7 label{display:block;font-weight:700;color:#0b1220;font-size:14.5px;margin-bottom:7px;}
.wpcf7 input[type=submit]{width:auto;min-width:180px;}
.wpcf7-spinner{display:none;}

@media(max-width:782px){.nvr-cols2{grid-template-columns:1fr!important;}}
