@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700;800&display=swap');
:root{--orange:#E87722;--orange-dk:#C5611A;--orange-lt:#FEF0E6;--navy:#1A2B3C;--navy-md:#243850;--navy-lt:#EAF0F6;--gold:#F5A623;--steel:#4A6078;--green:#2E7D32;--red:#C62828;--bg:#F7F8FA;--white:#fff;--border:#DDE3EA;--text:#1A2B3C;--muted:#607080;--radius:10px;--shadow:0 2px 16px rgba(26,43,60,.10);--shadow-md:0 4px 24px rgba(26,43,60,.14)}
*,*::before,*::after{box-sizing:border-box}
body{background:var(--bg);color:var(--text);font-family:'Open Sans',system-ui,sans-serif;font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6{font-family:'Open Sans',sans-serif;font-weight:700;color:var(--navy);line-height:1.25}
a{color:var(--orange)}a:hover{color:var(--orange-dk)}
#mainNav{background:var(--navy);box-shadow:0 2px 12px rgba(0,0,0,.25);padding:.6rem 0;border-bottom:3px solid var(--orange)}
.brand-name{font-weight:800;font-size:1.2rem;color:#fff;letter-spacing:-.3px}
.brand-accent{color:var(--orange)}
.navbar-nav .nav-link{color:rgba(255,255,255,.85)!important;font-size:.88rem;font-weight:600;padding:.45rem .85rem;border-radius:6px;transition:background .15s,color .15s}
.navbar-nav .nav-link:hover{background:rgba(255,255,255,.1);color:#fff!important}
.btn-nav-cta{background:var(--orange)!important;color:#fff!important;border-radius:20px!important;padding:.4rem 1.2rem!important;font-weight:700!important;font-size:.85rem!important}
.btn-nav-cta:hover{background:var(--orange-dk)!important}
.main-content{min-height:calc(100vh - 220px)}
.card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:var(--white)}
.card-header{background:var(--navy);color:#fff;border-radius:var(--radius) var(--radius) 0 0!important;padding:.9rem 1.4rem;font-weight:700;font-size:.95rem;border-bottom:none}
.card-header i{margin-right:.4rem;opacity:.85}
.hero{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-md) 60%,#2D4A63 100%);color:#fff;padding:4rem 0 3.5rem;position:relative;overflow:hidden;border-bottom:4px solid var(--orange)}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 80% 50%,rgba(232,119,34,.12) 0%,transparent 60%);pointer-events:none}
.hero h1{font-size:clamp(1.9rem,4.5vw,2.9rem);font-weight:800;line-height:1.15}
.hero .lead{font-size:1.1rem;opacity:.9}
.hero-badge{display:inline-flex;align-items:center;gap:.4rem;background:rgba(232,119,34,.2);border:1px solid rgba(232,119,34,.4);color:var(--gold);padding:.35rem .9rem;border-radius:20px;font-size:.82rem;font-weight:700;letter-spacing:.4px;text-transform:uppercase;margin-bottom:1.2rem}
.btn-cta-primary{background:var(--orange);border:none;color:#fff;font-weight:700;font-size:1rem;padding:.85rem 2.2rem;border-radius:50px;box-shadow:0 4px 18px rgba(232,119,34,.45);transition:background .15s,transform .15s;display:inline-flex;align-items:center;gap:.5rem}
.btn-cta-primary:hover{background:var(--orange-dk);transform:translateY(-2px);color:#fff}
.btn-cta-secondary{background:rgba(255,255,255,.1);border:2px solid rgba(255,255,255,.45);color:#fff;font-weight:600;padding:.85rem 2.2rem;border-radius:50px;transition:background .15s;display:inline-flex;align-items:center;gap:.5rem}
.btn-cta-secondary:hover{background:rgba(255,255,255,.18);color:#fff}
.btn-primary{background-color:var(--orange)!important;border-color:var(--orange)!important;font-weight:600}
.btn-primary:hover,.btn-primary:focus{background-color:var(--orange-dk)!important;border-color:var(--orange-dk)!important}
.btn-warning{background-color:var(--gold)!important;border-color:var(--gold)!important;color:var(--navy)!important;font-weight:600}
.btn-outline-primary{color:var(--orange)!important;border-color:var(--orange)!important}
.btn-outline-primary:hover{background-color:var(--orange)!important;color:#fff!important}
.btn-success{background-color:var(--green)!important;border-color:var(--green)!important}
.bg-primary{background-color:var(--orange)!important}
.bg-warning{background-color:var(--gold)!important;color:var(--navy)!important}
.text-primary{color:var(--orange)!important}
.feature-card{background:#fff;border:1.5px solid var(--border);border-radius:var(--radius);padding:2rem 1.5rem;text-align:center;transition:transform .2s,box-shadow .2s,border-color .2s;height:100%}
.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--orange)}
.feature-icon{width:64px;height:64px;background:var(--orange-lt);border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin:0 auto 1.1rem}
.step-card{text-align:center;padding:1.5rem 1rem}
.step-number{width:54px;height:54px;background:linear-gradient(135deg,var(--orange),var(--orange-dk));color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:800;margin:0 auto 1rem;box-shadow:0 4px 12px rgba(232,119,34,.35)}
.form-label{font-weight:600;font-size:.875rem;color:var(--steel);margin-bottom:.3rem}
.form-control,.form-select{border:1.5px solid var(--border);border-radius:7px;padding:.6rem .95rem;font-size:.9rem;font-family:'Open Sans',sans-serif;transition:border-color .15s,box-shadow .15s;color:var(--text)}
.form-control:focus,.form-select:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(232,119,34,.12);outline:none}
.input-group-text{background:var(--orange-lt);border-color:var(--border);color:var(--orange-dk);font-weight:600}
.required-star{color:var(--red);margin-left:2px}
.product-item{background:var(--navy-lt);border:1.5px solid var(--border);border-radius:9px;padding:1.2rem 1.4rem;margin-bottom:1rem;position:relative}
.product-item .remove-item{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--red);font-size:1.2rem;cursor:pointer;opacity:.65}
.product-item .remove-item:hover{opacity:1}
.stat-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem 1rem;text-align:center}
.stat-number{font-size:2.2rem;font-weight:800;color:var(--orange);line-height:1}
.stat-label{color:var(--muted);font-size:.82rem;margin-top:.3rem}
.table{font-size:.875rem}
.table thead th{background:var(--navy-lt);color:var(--navy);font-weight:700;border-bottom:2px solid #C5D5E5;white-space:nowrap;font-size:.8rem;text-transform:uppercase;letter-spacing:.4px}
.table tbody tr:hover{background:#FAFBFC}
.table td{vertical-align:middle}
.table-primary{background:var(--orange-lt)!important}
.table-primary td{color:var(--navy)!important;font-weight:600}
.offer-document .offer-block{background:#fff;border:2px solid var(--border);border-radius:var(--radius);margin-bottom:1.75rem;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.offer-document .offer-block.selected{border-color:var(--green);box-shadow:0 0 0 3px rgba(46,125,50,.12)}
.offer-block-header{background:linear-gradient(135deg,var(--navy-lt),#D8E6F2);padding:1rem 1.4rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:1rem}
.offer-letter{width:52px;height:52px;background:linear-gradient(135deg,var(--orange),var(--orange-dk));color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;flex-shrink:0;box-shadow:0 3px 10px rgba(232,119,34,.35)}
.badge{font-size:.75rem;font-weight:700;padding:.35em .7em;border-radius:5px}
.alert{border-radius:9px;border:none;font-size:.9rem}
.alert-success{background:#E8F5E9;color:#1B5E20;border-left:4px solid var(--green)}
.alert-danger{background:#FFEBEE;color:#B71C1C;border-left:4px solid var(--red)}
.alert-info{background:var(--navy-lt);color:var(--navy);border-left:4px solid var(--navy-md)}
.alert-warning{background:#FFF8E1;color:#7B4F00;border-left:4px solid var(--gold)}
.notif-item{padding:.85rem 1rem;border-bottom:1px solid var(--border)}
.notif-item.unread{background:var(--orange-lt)}
.notif-item:last-child{border-bottom:none}
.site-footer{background:var(--navy);color:#8FAFC8;padding:3rem 0 1.5rem;margin-top:4rem;border-top:3px solid var(--orange)}
.footer-link{color:#8FAFC8;text-decoration:none;transition:color .15s}
.footer-link:hover{color:var(--gold)}
.site-footer .fw-semibold,.site-footer h5{color:#fff}
@media(max-width:576px){.hero{padding:2.5rem 0 2rem}.btn-cta-primary,.btn-cta-secondary{width:100%;margin-bottom:.5rem;justify-content:center}.stat-number{font-size:1.8rem}.card-header{padding:.75rem 1rem;font-size:.88rem}.table{font-size:.78rem}}
@media print{#mainNav,.site-footer,.btn,.no-print,.alert{display:none!important}.offer-document .offer-block{page-break-inside:avoid}body{background:#fff;font-size:12px}}