html,body{margin:0;min-height:100%;background:#f4f6fb;color:#102345}body{font-family:Manrope,system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid #2d69aa;outline-offset:3px}.private-bar{background:#0d2d58;color:white;border-bottom:3px solid #d7af5f}.private-bar-inner{max-width:1225px;margin:auto;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 19px;flex-wrap:wrap}.private-brand{font-size:14px;font-weight:900;letter-spacing:.13em}.private-caption{font-size:10px;letter-spacing:.12em;color:#e2c585;font-weight:800}@media(max-width:520px){.private-bar{font-size:11px}.private-bar-inner{min-height:48px}.private-brand{font-size:12px}}
.quote-app{background:#f4f6fb;color:#102345;padding:36px 16px 76px;font-family:'Manrope',system-ui,sans-serif}.quote-app *{box-sizing:border-box}.quote-app .qp-wrap{max-width:1210px;margin:0 auto}.quote-app .qp-head{padding:28px 8px 30px}.quote-app .qp-eyebrow{font-size:11px;letter-spacing:.22em;font-weight:850;color:#a27821}.quote-app h1{font-size:clamp(28px,4.3vw,49px);line-height:1.16;letter-spacing:-.035em;color:#0a2651;margin:11px 0;font-weight:850}.quote-app .qp-head p{font-size:15px;line-height:1.6;color:#55657e;max-width:800px;margin:0 0 21px}.quote-app .qp-languages{display:flex;gap:7px;flex-wrap:wrap}.quote-app .qp-languages a{border:1px solid #dbe2ec;padding:7px 11px;background:white;border-radius:30px;font-size:11px;font-weight:800;text-decoration:none;color:#294369}.quote-app .qp-languages a[aria-current="page"]{background:#0d315f;color:white;border-color:#0d315f}.quote-app .qp-panel{background:white;border-radius:18px;box-shadow:0 12px 38px rgba(17,43,80,.045);border:1px solid #e7ebf2;padding:24px 25px;margin-bottom:20px}.quote-app .qp-section-title{display:flex;align-items:center;gap:11px;margin-bottom:21px;flex-wrap:wrap}.quote-app .qp-numb{border-radius:9px;background:#f6eedc;color:#9a701b;display:grid;place-items:center;font-weight:900;font-size:12px;min-width:33px;height:33px}.quote-app h2{font-size:19px;margin:0;color:#152d52;font-weight:850}.quote-app .qp-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.quote-app label{display:block;margin:0;color:#3b4b65;font-size:12px;font-weight:750}.quote-app label>span{display:block;margin-bottom:7px}.quote-app input,.quote-app select{width:100%;background:#fbfcff;border:1px solid #d6dfea;border-radius:10px;padding:11px 12px;color:#0e2b51;font-size:14px;outline:none;font-weight:500;min-height:44px}.quote-app input:focus,.quote-app select:focus{border-color:#2d69aa;box-shadow:0 0 0 3px #2d69aa25}.quote-app .qp-vat-input{position:relative}.quote-app .qp-vat-input input{padding-right:31px}.quote-app .qp-vat-input>span{position:absolute;right:13px;top:12px;color:#65778e;font-weight:750}.quote-app .qp-tax-note{margin-top:17px;background:#fff9ed;border:1px solid #eddcb7;border-radius:12px;padding:14px 17px;color:#665532;font-size:12px;line-height:1.65}.quote-app .qp-products{padding-bottom:16px}.quote-app .qp-add{margin-left:auto;color:white;background:#153961;border:0;border-radius:20px;padding:11px 17px;font-size:12px;font-weight:850;cursor:pointer}.quote-app .qp-table-scroller{overflow-x:auto}.quote-app .qp-table{min-width:970px;width:100%;border-collapse:separate;border-spacing:0;text-align:left}.quote-app .qp-table thead th{font-size:11px;font-weight:850;color:#728099;padding:12px 6px;border-bottom:1px solid #e0e6f0;white-space:nowrap}.quote-app .qp-table tbody td{padding:10px 5px;border-bottom:1px solid #eff2f7;vertical-align:middle}.quote-app .qp-table input{border-radius:8px;min-width:0;padding:9px 9px;min-height:40px;font-size:13px}.quote-app .qp-table .qp-col-name{width:180px}.quote-app .qp-table .qp-col-code{width:99px}.quote-app .qp-table .qp-col-qty{width:66px}.quote-app .qp-table .qp-col-price{width:99px}.quote-app .qp-table .qp-col-vat{width:67px}.quote-app .qp-table .qp-col-result{min-width:86px}.quote-app .qp-table .qp-cell-result{font-size:12px;font-weight:800;color:#143d6a;white-space:nowrap}.quote-app .qp-table button{background:#ffecef;border:0;color:#b43d56;width:32px;height:33px;border-radius:9px;font-size:19px;cursor:pointer}.quote-app .qp-tip{font-size:11px;color:#64748b;line-height:1.5;margin-top:13px}.quote-app .qp-summary{border-radius:20px;padding:26px;background:linear-gradient(130deg,#0c2a53,#174b77);color:#fff;margin-bottom:18px}.quote-app .qp-summary-head{margin-bottom:20px}.quote-app .qp-summary h2{color:#fff}.quote-app .qp-summary .qp-numb{background:#ffffff20;color:#f2d394}.quote-app .qp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.quote-app .qp-stat{padding:18px;border:1px solid #ffffff27;background:#ffffff0e;border-radius:13px;min-width:0}.quote-app .qp-stat .qp-stat-label{color:#d9e5f4;font-size:11px;font-weight:700;min-height:32px;line-height:1.35}.quote-app .qp-stat strong{display:block;color:#fff;font-size:clamp(15px,1.6vw,23px);font-weight:850;white-space:nowrap;margin-top:10px}.quote-app .qp-stat.qp-key{background:#e7c171;color:#0a2651}.quote-app .qp-stat.qp-key .qp-stat-label,.quote-app .qp-stat.qp-key strong{color:#102345}.quote-app .qp-summary-note{margin-top:18px;color:#c6d5e7;font-size:11px;line-height:1.6}.quote-app .qp-actions{display:flex;gap:12px;flex-wrap:wrap}.quote-app .qp-btn{min-height:51px;padding:12px 23px;border:0;border-radius:11px;font-size:14px;font-weight:850;cursor:pointer;display:inline-flex;align-items:center;gap:11px}.quote-app .qp-excel{background:#17764f;color:#fff}.quote-app .qp-pdf{background:#be3e48;color:#fff}.quote-app .qp-reset{background:white;color:#4d6178;border:1px solid #d9e3ee}.quote-app .qp-privacy{margin-top:18px;font-size:11px;color:#66778e;line-height:1.65}.quote-app .qp-sr{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}@media(max-width:950px){.quote-app .qp-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-app .qp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.quote-app{padding:18px 10px 40px}.quote-app .qp-panel,.quote-app .qp-summary{padding:17px 13px}.quote-app .qp-form-grid{gap:12px}.quote-app .qp-stats{gap:7px}.quote-app .qp-stat{padding:11px}.quote-app .qp-stat strong{font-size:16px}.quote-app .qp-btn{flex:1;justify-content:center;font-size:12px;padding:11px}.quote-app .qp-form-grid{grid-template-columns:1fr 1fr}.quote-app .qp-table{min-width:940px}}

.quote-app .qp-calc-hint{margin-top:12px;background:#eaf3fc;border:1px solid #cedff4;border-radius:10px;padding:13px 15px;color:#294369;line-height:1.6;font-size:12px}.quote-app .qp-stat.qp-key{outline:2px solid #f4d28d;outline-offset:-2px}.quote-app .qp-table td.qp-cell-result{font-variant-numeric:tabular-nums}.quote-app .qp-stat strong{font-variant-numeric:tabular-nums}

/* Manual numeric entry: hide browser stepper arrows; calculations stay automatic. */
.quote-app input[type="number"]{appearance:textfield;-moz-appearance:textfield}
.quote-app input[type="number"]::-webkit-outer-spin-button,.quote-app input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* Spinners are removed at their source: price, VAT, cost, and quantity fields are text inputs with numeric keyboards. */
.quote-app input.qp-invalid{border-color:#c74444;background:#fff3f3;box-shadow:0 0 0 2px #c7444420}


/* Private quote: benefits CTA, contact information shared with colleagues and customers. */
.quote-app .qp-benefits{margin-top:23px;padding:19px 20px;background:#f6f9ff;color:#173559;border-radius:13px;display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}
.quote-app .qp-benefits strong{font-size:18px;line-height:1.4;color:#123962}
.quote-app .qp-benefits p{font-size:12px;line-height:1.5;margin:5px 0 0;color:#485e78}
.quote-app #qp-contact{background:#137a55;color:#fff;text-decoration:none;padding:13px 19px;border-radius:9px;font-weight:850;font-size:13px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.quote-app #qp-contact:focus-visible{outline:3px solid #c4d7eb;outline-offset:3px}
@media(max-width:600px){.quote-app #qp-contact{width:100%}.quote-app .qp-benefits{padding:16px}}

/* Partner Business Tools — international, responsive premium welcome area. */
.private-bar{background:#0a2449;border-bottom:1px solid #244164}
.private-brand{display:inline-flex;align-items:center;gap:11px;font-size:13px}
.private-brand-symbol{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid #e5bf76;border-radius:10px;color:#f4d38c;font-size:16px;line-height:1;letter-spacing:0}
.private-caption{color:#e5bf76;font-size:10px}
.quote-app{background:radial-gradient(circle at 5% 0%,#dce9f9 0,transparent 34%),#f4f6fb;padding-top:29px}
.quote-app .qp-head{position:relative;overflow:hidden;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.82fr);gap:30px;align-items:center;background:linear-gradient(110deg,#09254a 2%,#133d6c 62%,#0d315c);border-radius:24px;padding:46px 44px;margin:0 0 17px;box-shadow:0 22px 50px rgba(4,35,72,.12)}
.quote-app .qp-head:before{content:"";position:absolute;z-index:-1;right:-190px;top:-290px;width:590px;height:590px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 65px rgba(255,255,255,.035),0 0 0 130px rgba(255,255,255,.025)}
.quote-app .qp-head:after{content:"";position:absolute;bottom:0;left:0;width:160px;height:4px;background:linear-gradient(90deg,#c99b48,#f8dd9d)}
.quote-app .qp-eyebrow{color:#f3d18f;letter-spacing:.16em;font-size:11px}
.quote-app .qp-head h1{color:#fff;font-size:clamp(33px,4.1vw,53px);line-height:1.08;letter-spacing:-.04em;margin:14px 0 12px}
.quote-app .qp-head h1 span{color:#f3cf85}
.quote-app .qp-hero-local-title{font-size:clamp(17px,1.7vw,22px);color:#f4f8ff;margin:0 0 11px;line-height:1.35;font-weight:750;letter-spacing:-.015em}
.quote-app .qp-head p{color:#d3e2f4;font-size:14px;max-width:610px;line-height:1.75;margin:0}
.quote-app .qp-hero-features{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}
.quote-app .qp-hero-features>span{display:inline-flex;align-items:center;gap:7px;color:#f7f9ff;background:#ffffff12;border:1px solid #ffffff24;padding:9px 12px;border-radius:999px;font-size:11px;font-weight:750}
.quote-app .qp-hero-features b{font-size:10px;color:#efce87}
.quote-app .qp-hero-side{position:relative;background:#fff;border:1px solid #eff2f6;border-radius:18px;padding:27px;box-shadow:0 16px 35px #00000018;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.quote-app .qp-side-kicker{font-size:10px;letter-spacing:.14em;color:#9a762c;font-weight:850}
.quote-app .qp-hero-side h3{font-size:clamp(22px,2.2vw,29px);color:#0e315b;line-height:1.22;letter-spacing:-.03em;margin:12px 0 10px}
.quote-app .qp-hero-side p{font-size:13px;color:#53657b;margin:0 0 24px;line-height:1.75}
.quote-app .qp-hero-start{background:linear-gradient(100deg,#0e654d,#11906a);color:#fff;border-radius:10px;padding:14px 17px;font-size:13px;font-weight:850;text-align:center;text-decoration:none;transition:filter .18s}
.quote-app .qp-hero-start:hover{filter:brightness(1.08)}
.quote-app .qp-side-foot{display:block;margin-top:15px;text-align:center;color:#64758b;font-size:10px;line-height:1.5}
.quote-app .qp-language-shell{display:flex;align-items:flex-start;gap:15px;background:#fff;border:1px solid #e6ebf3;border-radius:16px;padding:14px 18px;margin-bottom:22px;box-shadow:0 7px 22px rgba(17,43,80,.025)}
.quote-app .qp-language-label{font-size:11px;font-weight:850;white-space:nowrap;color:#405875;padding:9px 0}
.quote-app .qp-languages{display:flex;gap:6px;flex-wrap:wrap}
.quote-app .qp-languages a{font-size:11px;padding:7px 11px;border:1px solid #e0e6f1;transition:background .15s}
.quote-app .qp-languages a[aria-current=page]{background:#123861;border-color:#123861}
.quote-app .qp-panel{border-radius:19px}
.quote-app .qp-actions{margin-top:10px}
html{scroll-behavior:smooth}
@media(max-width:960px){.quote-app .qp-head{grid-template-columns:1fr;padding:32px;gap:25px}.quote-app .qp-hero-side{max-width:none}.quote-app .qp-language-shell{display:block}.quote-app .qp-language-label{display:block;padding:0 0 9px}}
@media(max-width:520px){.quote-app{padding-top:14px}.quote-app .qp-head{padding:27px 20px;border-radius:17px;gap:21px}.quote-app .qp-head h1{font-size:36px}.quote-app .qp-hero-features>span{font-size:10px}.quote-app .qp-hero-side{padding:20px}.quote-app .qp-language-shell{padding:13px}.quote-app .qp-hero-side h3{font-size:23px}.private-caption{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Foreign-sale VAT statement: opt-in; never alters manually entered prices. */
.quote-app .qp-foreign-tax{background:#f0f5fb;border:1px solid #d7e2f0;border-radius:13px;margin-top:18px;padding:15px 19px}
.quote-app .qp-foreign-tax-toggle{display:flex;align-items:center;gap:13px;font-size:13px;font-weight:850;color:#123962;cursor:pointer}
.quote-app .qp-foreign-tax-toggle input[type=checkbox]{width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:0;accent-color:#176a51;cursor:pointer}
.quote-app .qp-foreign-tax-toggle input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}
.quote-app .qp-foreign-tax-note{font-size:11px;line-height:1.6;color:#617085;margin:9px 0 0 33px;max-width:850px}
.quote-app .qp-foreign-tax.is-disabled{background:#f7f9fc;border-color:#e3e8ef;opacity:.8}
.quote-app .qp-foreign-tax.is-disabled .qp-foreign-tax-toggle{cursor:default}
.quote-app .qp-foreign-tax-badge{color:#14553d;font-size:12px;font-weight:800;margin-top:13px;background:#e9f7f0;border:1px solid #b6dcc9;border-radius:10px;padding:11px 14px}
@media(max-width:520px){.quote-app .qp-foreign-tax{padding:13px 12px}.quote-app .qp-foreign-tax-note{margin-left:0}}

/* Tax-aware totals and explicit gross Italian VAT pricing. */
.quote-app .qp-gross-note{margin:15px 0 0;color:#21456b;background:#f0f8ff;border:1px solid #c4d9f2;padding:12px 15px;border-radius:11px;font-size:12px;font-weight:750}.quote-app .qp-table{min-width:1030px}.quote-app .qp-table input[data-field="tax"]{min-width:61px;width:61px}.quote-app .qp-summary .qp-stat{padding:14px 13px}.quote-app .qp-summary .qp-stat .qp-stat-label{min-height:30px}.quote-app .qp-summary .qp-stat strong{font-size:clamp(14px,1.45vw,20px)}


/* Commercial-first presentation: four actionable figures, details available on demand. */
.quote-app .qp-primary-title{font-size:17px;color:#f9dfa6;margin:0 0 15px;letter-spacing:-.015em}
.quote-app .qp-primary-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.quote-app .qp-primary-stat{padding:19px 16px;background:linear-gradient(145deg,#ffffff14,#ffffff0b);border:1px solid #ffffff36;border-radius:14px;min-width:0}
.quote-app .qp-primary-stat span{display:block;color:#d9e5f4;font-size:12px;line-height:1.45;font-weight:700;min-height:38px}
.quote-app .qp-primary-stat strong{display:block;font-size:clamp(19px,1.8vw,25px);line-height:1.2;color:white;margin-top:10px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.quote-app .qp-primary-stat.is-highlight{background:#eac779;border-color:#eac779}
.quote-app .qp-primary-stat.is-highlight span,.quote-app .qp-primary-stat.is-highlight strong{color:#112a47}
.quote-app .qp-primary-stat.is-loss{background:#ffe0dd;border-color:#ffd0ca}
.quote-app .qp-primary-stat.is-loss span,.quote-app .qp-primary-stat.is-loss strong{color:#83251f}
.quote-app .qp-profit-explain{font-size:12px;color:#d7e5f7;line-height:1.6;margin:15px 0 8px;max-width:920px}
.quote-app .qp-breakdown{margin:19px 0 4px;border-top:1px solid #ffffff2b;padding-top:15px}
.quote-app .qp-breakdown summary{color:#fff;cursor:pointer;font-size:13px;font-weight:750;padding:9px 0;list-style:none}
.quote-app .qp-breakdown summary::before{content:'+';display:inline-grid;place-items:center;width:21px;height:21px;border:1px solid #ffffff7a;border-radius:50%;margin-right:10px}
.quote-app .qp-breakdown[open] summary::before{content:'–'}
.quote-app .qp-breakdown .qp-stats{margin-top:12px;grid-template-columns:repeat(4,minmax(0,1fr))}
.quote-app .qp-seller-selector{grid-column:span 2}
.quote-app .qp-foreign-tax-badge{margin-top:15px}
@media(max-width:900px){.quote-app .qp-primary-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.quote-app .qp-seller-selector{grid-column:span 2}.quote-app .qp-primary-stats{gap:9px}.quote-app .qp-primary-stat{padding:14px 11px}.quote-app .qp-primary-stat strong{font-size:19px}.quote-app .qp-breakdown .qp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Each product becomes an editable card on phones: no hidden price columns. */
@media(max-width:600px){
.quote-app .qp-table-scroller{overflow:visible}
.quote-app .qp-table{display:block;min-width:0;width:100%;border-collapse:separate}
.quote-app .qp-table thead{display:none}
.quote-app .qp-table tbody{display:grid;gap:12px}
.quote-app .qp-table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px 12px;background:#f8fbff;border:1px solid #dce7f2;border-radius:14px}
.quote-app .qp-table tbody td{display:block;min-width:0;width:auto!important;border:0;padding:0;background:none}
.quote-app .qp-table tbody td::before{content:attr(data-label);display:block;font-size:10px;font-weight:800;color:#47617f;line-height:1.3;margin-bottom:6px}
.quote-app .qp-table tbody td:first-child{grid-column:span 2}
.quote-app .qp-table tbody td.qp-cell-result{font-size:16px;font-weight:850;color:#123861;padding:6px 0}
.quote-app .qp-table tbody td:last-child{display:flex;align-items:center;justify-content:flex-end}
.quote-app .qp-table tbody td:last-child::before{display:none}
.quote-app .qp-table input,.quote-app .qp-table input[data-field="tax"]{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
}
