/* Firewalls.vn CMS v6.5.5 - Quote/Proposal CSS Hotfix */
:root{
  --fwq-navy:#0b1322;
  --fwq-ink:#0f172a;
  --fwq-muted:#5f6f86;
  --fwq-line:#dbe7f5;
  --fwq-soft:#f3f8ff;
  --fwq-blue:#1493ff;
  --fwq-cyan:#21d4fd;
}
body.fw-body{overflow-x:hidden;background:linear-gradient(180deg,#f8fbff 0%,#edf6ff 100%)!important;}
.page-section{padding-top:44px!important;padding-bottom:64px!important;}
.cyber-hero.compact{padding:54px 0!important;margin:0!important;background:linear-gradient(135deg,#08111f 0%,#0b3656 68%,#0d4a73 100%)!important;color:#fff!important;border-bottom:1px solid rgba(255,255,255,.08)!important;}
.cyber-hero.compact h1{color:#fff!important;font-size:clamp(40px,5vw,68px)!important;letter-spacing:-.05em!important;margin:12px 0!important;}
.cyber-hero.compact p,.cyber-hero.compact span{color:rgba(255,255,255,.82)!important;}
.cyber-hero .hero-grid{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr)!important;gap:28px!important;align-items:center!important;}
.cyber-hero .hero-card{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:24px!important;padding:28px!important;box-shadow:none!important;}
.cyber-hero .hero-card b{display:block;color:#fff!important;font-size:22px!important;margin-bottom:10px!important;}
.cyber-hero .hero-card span{display:block!important;line-height:1.6!important;}
.card{border:1px solid var(--fwq-line)!important;border-radius:26px!important;background:rgba(255,255,255,.94)!important;box-shadow:0 18px 52px rgba(16,42,86,.08)!important;}
.grid.two{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(360px,.86fr)!important;gap:28px!important;align-items:start!important;}
.quote-form{padding:32px!important;}
.quote-form h2,.quote-form h3{letter-spacing:-.035em!important;color:var(--fwq-ink)!important;}
.quote-form h2{font-size:32px!important;margin:0 0 22px!important;}
.quote-form h3{font-size:22px!important;margin:26px 0 8px!important;}
.form-grid.two{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px 20px!important;}
.quote-form label{display:block!important;margin:0!important;color:var(--fwq-ink)!important;font-weight:850!important;font-size:15px!important;line-height:1.35!important;}
.quote-form input,.quote-form select,.quote-form textarea{width:100%!important;box-sizing:border-box!important;margin-top:8px!important;border:1px solid #cfdceb!important;border-radius:15px!important;min-height:52px!important;padding:13px 15px!important;background:#fff!important;color:var(--fwq-ink)!important;font-size:16px!important;box-shadow:none!important;outline:none!important;transition:border-color .18s ease, box-shadow .18s ease!important;}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--fwq-blue)!important;box-shadow:0 0 0 4px rgba(20,147,255,.13)!important;}
.quote-form textarea{min-height:112px!important;resize:vertical!important;}
.quote-form > label{margin-top:18px!important;}
.line-item{display:grid!important;grid-template-columns:130px minmax(180px,1fr) 130px 80px 140px!important;gap:10px!important;align-items:center!important;margin-bottom:10px!important;background:#f8fbff!important;border:1px solid #e1ebf7!important;border-radius:18px!important;padding:10px!important;}
.line-item select,.line-item input{margin-top:0!important;border-radius:12px!important;min-height:46px!important;}
.template-list{display:grid!important;gap:14px!important;}
.template-row{border:1px solid #e1ebf7!important;border-radius:20px!important;padding:20px!important;margin:0!important;background:linear-gradient(180deg,#fff,#f9fcff)!important;box-shadow:none!important;}
.template-row b{display:block!important;color:var(--fwq-ink)!important;font-size:18px!important;margin-bottom:7px!important;}
.template-row span{display:block!important;color:var(--fwq-muted)!important;line-height:1.55!important;margin:0 0 8px!important;}
.template-row small{display:inline-flex!important;align-items:center!important;gap:6px!important;color:#0b70df!important;background:#eff7ff!important;border:1px solid #d9ecff!important;padding:6px 10px!important;border-radius:999px!important;font-weight:800!important;}
.quote-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:22px!important;align-items:end!important;margin:0 0 26px!important;padding:4px 0 10px!important;}
.quote-head h1{font-size:clamp(34px,4.6vw,56px)!important;letter-spacing:-.055em!important;margin:8px 0!important;color:var(--fwq-ink)!important;}
.quote-head p{font-size:17px!important;color:var(--fwq-muted)!important;}
.quote-head > div:last-child{display:flex!important;gap:10px!important;flex-wrap:wrap!important;justify-content:flex-end!important;}
.quote-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;overflow:hidden!important;}
.quote-table th{background:#f3f8ff!important;color:#24344d!important;font-size:14px!important;text-transform:uppercase!important;letter-spacing:.04em!important;}
.quote-table th,.quote-table td{padding:17px 15px!important;border-bottom:1px solid #e5edf6!important;text-align:left!important;vertical-align:top!important;}
.quote-table tbody tr:hover{background:#fbfdff!important;}
.quote-table small{color:var(--fwq-muted)!important;}
.totals{max-width:430px!important;margin:28px 0 0 auto!important;background:#f8fbff!important;border:1px solid #e1ebf7!important;border-radius:20px!important;padding:18px!important;}
.totals div{display:flex!important;justify-content:space-between!important;gap:18px!important;padding:9px 0!important;color:var(--fwq-ink)!important;}
.totals .grand{font-size:22px!important;border-top:2px solid #102033!important;margin-top:10px!important;padding-top:18px!important;}
.grand b{color:#04776b!important;}
.proposal-page{max-width:1180px!important;}
.proposal-cover{background:radial-gradient(circle at 82% 20%,rgba(33,212,253,.22),transparent 36%),linear-gradient(135deg,#08111f 0%,#0d3b5a 100%)!important;color:#fff!important;border-radius:30px!important;padding:58px!important;margin-bottom:26px!important;box-shadow:0 28px 80px rgba(6,25,56,.18)!important;}
.proposal-cover h1{color:#fff!important;font-size:clamp(38px,5vw,64px)!important;letter-spacing:-.055em!important;margin:20px 0!important;}
.proposal-cover p{color:rgba(255,255,255,.86)!important;font-size:18px!important;}
.proposal-page .card{margin-bottom:18px!important;padding:30px!important;}
.proposal-page .card h2{font-size:27px!important;letter-spacing:-.04em!important;margin:0 0 15px!important;color:var(--fwq-ink)!important;}
.proposal-page .card p,.proposal-page .card li{color:#334155!important;line-height:1.75!important;}
.btn,.fw-primary-btn,.fw-outline-btn{white-space:nowrap!important;}
.btn{border-radius:15px!important;padding:13px 19px!important;font-weight:900!important;}
.btn.secondary{background:#fff!important;color:#0877ff!important;border:1px solid #cfe0f3!important;}
.notice.error{background:#fee2e2!important;color:#991b1b!important;padding:14px 16px!important;border-radius:16px!important;border:1px solid #fecaca!important;margin-bottom:18px!important;}
@media(max-width:1180px){.grid.two,.cyber-hero .hero-grid{grid-template-columns:1fr!important}.line-item{grid-template-columns:repeat(2,minmax(0,1fr))!important}.line-item input[name="item_name[]"]{grid-column:span 2!important}.quote-head{grid-template-columns:1fr!important}.quote-head>div:last-child{justify-content:flex-start!important}}
@media(max-width:820px){.page-section{padding-top:28px!important}.form-grid.two,.line-item{grid-template-columns:1fr!important}.line-item input[name="item_name[]"]{grid-column:auto!important}.quote-form{padding:24px!important}.quote-table{display:block!important;overflow-x:auto!important;white-space:nowrap!important}.totals{margin-left:0!important}.proposal-cover{padding:34px 24px!important;border-radius:24px!important}.proposal-page .card{padding:24px!important}.cyber-hero.compact{padding:42px 0!important}}
@media print{.fw-header,.fw-footer,.fw-floating-contact,.btn,.fw-actions{display:none!important}.page-section{padding:0!important}.card,.proposal-cover{box-shadow:none!important;border:1px solid #ddd!important;background:#fff!important;color:#000!important}.proposal-cover h1{color:#000!important}}
