/* JP Quotation public flow. Brand matches the approved JP Store home. */
@font-face{font-family:JPQManrope;src:url(customer/manrope.woff2) format('woff2');font-weight:200 800;font-display:swap}
@font-face{font-family:JPQDM;src:url(customer/dmsans.woff2) format('woff2');font-weight:100 900;font-display:swap}
body.jpq-customer-page,body.jpq-customer-page #content{background:#fbf4ed!important}
body.jpq-customer-page #content>.ast-container{max-width:1280px;display:block;padding:0 28px}
body.jpq-customer-page #primary{width:100%;margin:0;padding:0}
body.jpq-customer-page .site-main{padding:35px 0 70px}
body.jpq-customer-page .ast-article-single{background:transparent;padding:0}
body.jpq-customer-page .entry-header{display:none}
body.jpq-customer-page .entry-content{margin:0}
body.jpq-customer-page .entry-content>.elementor>.e-con{--container-max-width:1140px;--padding-top:0;--padding-bottom:0;--padding-left:0;--padding-right:0;background:transparent}
body.jpq-customer-page .entry-content .elementor-element{transform:none!important;transition:none}
body.jpq-customer-page .jpqc-legacy-intro[hidden]{display:none!important}
.jpq-flow.jpq-customer-flow{--jpqc-purple:#8242b5;--jpqc-ink:#2b2233;--jpqc-muted:#7e6b87;--jpqc-line:#e1d0e8;color:var(--jpqc-ink);font-family:JPQDM,Arial,sans-serif;max-width:1140px;margin:0 auto 30px;width:100%;font-size:15px;line-height:1.6}
.jpq-customer-flow *{box-sizing:border-box}
.jpq-customer-flow h1,.jpq-customer-flow h2,.jpq-customer-flow h3{font-family:JPQManrope,Arial,sans-serif;color:var(--jpqc-ink);font-weight:650}
.jpq-customer-flow .jpqc-hero{display:grid;grid-template-columns:minmax(0,1fr) 215px;gap:35px;align-items:center;border-bottom:1px solid var(--jpqc-line);padding:15px 0 30px;margin-bottom:24px}
.jpq-customer-flow .jpqc-eyebrow{display:block;font-size:10px;font-weight:650;letter-spacing:1.6px;color:#9874ac;line-height:1.7}
.jpq-customer-flow .jpqc-hero h1{font-size:clamp(33px,3.6vw,47px);line-height:1.17;letter-spacing:-1.8px;margin:15px 0 16px}
.jpq-customer-flow .jpqc-hero h1 em{font-style:normal;color:var(--jpqc-purple)}
.jpq-customer-flow .jpqc-hero p{font-size:16px;line-height:1.7;color:var(--jpqc-muted);max-width:610px;margin:0 0 16px}
.jpq-customer-flow .jpqc-trust{font-size:12px;color:#86728e;display:flex;gap:8px;align-items:center}
.jpq-customer-flow .jpqc-trust>span{display:grid;place-items:center;width:21px;height:21px;flex:0 0 21px;border-radius:50%;background:#e9def1;color:#88609d}
.jpq-customer-flow .jpqc-hero-art{position:relative;isolation:isolate;display:grid;place-items:center;min-height:215px}
.jpq-customer-flow .jpqc-hero-art::before{content:'';position:absolute;inset:20px 2px 2px;background:#ede0f2;border-radius:55% 45% 48% 52%;transform:rotate(-10deg);z-index:-1}
.jpq-customer-flow .jpqc-hero-art img{width:180px;height:180px;object-fit:contain;transform:rotate(6deg);filter:drop-shadow(0 12px 10px #5a2d7220)}
.jpq-customer-flow .jpqc-sun{position:absolute;width:45px;height:45px;border-radius:50%;background:#e99c9d;top:14px;right:12px;z-index:-1}
.jpq-customer-flow .jpqc-hero-stamp{position:absolute;bottom:2px;left:-3px;font-size:8px;font-weight:600;letter-spacing:1.2px;color:#a47cb5;border:1px solid #ceb6d9;border-radius:5px;transform:rotate(-7deg);padding:7px 11px;line-height:1.6;background:#fbf4ed}
.jpq-customer-flow .jpq-steps ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 30px}
.jpq-customer-flow .jpq-steps li{min-width:0;display:flex;align-items:center;gap:10px;background:transparent;border:1px solid #e4d5ea;color:#9b87a4;border-radius:12px;padding:13px 16px;font-size:13px;line-height:1.4;font-weight:500}
.jpq-customer-flow .jpq-steps li[aria-current]{background:#eee0f5;border-color:#d4b7e3;color:#815098;font-weight:650}
.jpq-customer-flow .jpq-steps li span{background:#fffcf9;width:28px;height:28px;flex:0 0 28px;color:inherit}
.jpq-customer-flow .jpq-steps li[aria-current] span{background:var(--jpqc-purple);color:white}
.jpq-customer-flow .jpqc-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:32px;align-items:start}
.jpq-customer-flow form{min-width:0;margin:0}
.jpq-customer-flow .jpq-card,.jpq-customer-flow.jpq-checkout .form-section{border:1px solid var(--jpqc-line);background:#fffcf9;border-radius:20px;padding:27px;margin:0 0 20px;box-shadow:0 8px 28px #4d2f5e04}
.jpq-customer-flow .jpq-item-head{gap:16px;border-bottom:1px solid #eee3f1;padding-bottom:17px;margin-bottom:21px}
.jpq-customer-flow .jpq-item-head h2,.jpq-customer-flow .jpq-item-head h3{font-size:20px;line-height:1.3;letter-spacing:-.5px;margin:0}
.jpq-customer-flow label{font-family:inherit;font-size:13px;font-weight:600;line-height:1.7;color:#66516f}
.jpq-customer-flow .jpqc-required{color:var(--jpqc-purple)}
.jpq-customer-flow input:not([type=hidden]):not([type=checkbox]),.jpq-customer-flow textarea,.jpq-customer-flow select{font-family:inherit!important;font-size:16px!important;line-height:1.5;min-height:49px!important;height:auto!important;max-width:100%;padding:12px 14px!important;border:1px solid #d9c9e1;border-radius:10px;background:#fff;color:#36293f;margin:6px 0;box-shadow:none}
.jpq-customer-flow textarea{min-height:95px!important;resize:vertical}
.jpq-customer-flow input::placeholder,.jpq-customer-flow textarea::placeholder{color:#a28faa;opacity:1}
.jpq-customer-flow input:focus,.jpq-customer-flow textarea:focus,.jpq-customer-flow select:focus{border-color:#a87cc2;box-shadow:0 0 0 3px #8242b50c!important}
.jpq-customer-flow .jpq-url-row{gap:12px;align-items:flex-end}
.jpq-customer-flow .jpq-url-row .jpq-button{flex-shrink:0;min-height:49px;font-size:13px;padding:12px 17px}
.jpq-customer-flow .jpq-button,.jpq-customer-flow.jpq-checkout .submit-budget-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:47px!important;padding:12px 20px!important;border-radius:12px;background:#fffaf7!important;border:1px solid #d0b8de!important;color:#805395!important;font:600 14px/1.5 JPQDM,Arial,sans-serif!important;text-decoration:none!important;box-shadow:none!important;transform:none;cursor:pointer;transition:background .2s,border-color .2s}
.jpq-customer-flow .jpq-button-primary,.jpq-customer-flow.jpq-checkout .submit-budget-btn{background:#8242b5!important;border-color:#8242b5!important;color:#fff!important}
.jpq-customer-flow .jpq-button-primary:hover,.jpq-customer-flow.jpq-checkout .submit-budget-btn:hover{background:#6f379d!important;border-color:#6f379d!important;color:#fff!important}
.jpq-customer-flow .jpq-button::before,.jpq-customer-flow .jpq-button::after,.jpq-customer-flow .submit-budget-btn::before,.jpq-customer-flow .submit-budget-btn::after{display:none!important}
.jpq-customer-flow .jpq-button-danger{background:transparent!important;color:#ac4962!important;border-color:#ead3dc!important;font-size:12px!important;padding:8px 12px!important;min-height:44px!important}
.jpq-customer-flow .jpq-button-danger:hover{background:#fff0f2!important;border-color:#d9a8b6!important}
.jpq-customer-flow .jpq-button:disabled,.jpq-customer-flow .submit-budget-btn:disabled{opacity:.55;cursor:wait}
.jpq-customer-flow :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #9b6db9!important;outline-offset:3px}
.jpq-customer-flow input:user-invalid,.jpq-customer-flow textarea:user-invalid{border-color:#b85068}
.jpq-customer-flow .jpq-fields{grid-template-columns:minmax(0,2fr) minmax(70px,.7fr) minmax(100px,1fr);gap:14px;margin:17px 0}
.jpq-customer-flow .jpqmi-status{color:#805592;font-size:13px;line-height:1.7;margin:12px 0;overflow-wrap:anywhere}
.jpq-customer-flow .jpqmi-status:empty{display:none}
.jpq-customer-flow .jpqc-product-details{border-top:1px solid #e8daed;margin-top:20px}
.jpq-customer-flow .jpqc-product-details>summary{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center;position:relative;padding:18px 24px 18px 0;list-style:none;font-size:14px;font-weight:650;color:#775385;cursor:pointer}
.jpq-customer-flow .jpqc-product-details>summary::-webkit-details-marker{display:none}
.jpq-customer-flow .jpqc-product-details>summary::after{content:'+';position:absolute;right:0;font-size:22px;color:#ac8abc}
.jpq-customer-flow .jpqc-product-details[open]>summary::after{content:'−'}
.jpq-customer-flow .jpqc-details-hint{font-size:11px;font-weight:400;color:#aa93b4}
.jpq-customer-flow .jpqc-upload{margin:20px 0 14px;padding:18px;background:#f6eef9;border:1px dashed #d6bddf;border-radius:13px}
.jpq-customer-flow .jpqc-upload input[type=file]{border:0!important;background:transparent;font-size:12px!important;min-height:44px!important;padding:8px 0!important}
.jpq-customer-flow input[type=file]::file-selector-button{border:1px solid #c7a8d6;border-radius:8px;background:#fffaf7;color:#805395;padding:10px 12px;margin-right:10px;font:600 12px JPQDM,Arial,sans-serif;cursor:pointer}
.jpq-customer-flow .jpqmi-preview{width:135px;height:135px;object-fit:contain;padding:8px;border:1px solid #dfcde7;background:#fff;border-radius:12px;margin:0 0 15px}
.jpq-customer-flow .jpq-muted{font-size:13px;line-height:1.75;color:#8e7899;margin:12px 0}
.jpq-customer-flow .jpqc-upload .jpq-muted{font-size:11px;margin:8px 0 0}
.jpq-customer-flow .jpqc-submit-bar{gap:12px;align-items:stretch;padding-top:4px;margin-top:0}
.jpq-customer-flow .jpqc-submit-bar .jpq-button{font-size:13px!important}
.jpq-customer-flow .jpqc-guide{position:sticky;top:120px;padding:24px 0 15px}
.jpq-customer-flow .jpqc-guide h2{font-size:31px;letter-spacing:-1px;line-height:1.2;margin:12px 0 24px}
.jpq-customer-flow .jpqc-guide ol{counter-reset:jpqc-list;list-style:none;margin:0;padding:0}
.jpq-customer-flow .jpqc-guide li{counter-increment:jpqc-list;position:relative;padding:0 0 23px 37px}
.jpq-customer-flow .jpqc-guide li::before{content:counter(jpqc-list);position:absolute;left:0;top:0;display:grid;place-items:center;width:25px;height:25px;border:1px solid #d6bfdf;border-radius:50%;color:#9872a9;font-size:11px}
.jpq-customer-flow .jpqc-guide li strong{display:block;font-size:14px;color:#765481;margin-bottom:4px}
.jpq-customer-flow .jpqc-guide li span{display:block;font-size:12px;color:#9c85a6;line-height:1.7}
.jpq-customer-flow .jpqc-guide-note{border-top:1px solid #dfcde7;padding-top:18px;margin-top:2px}
.jpq-customer-flow .jpqc-guide-note strong{font-size:13px;color:#845a96}
.jpq-customer-flow .jpqc-guide-note p{font-size:12px;line-height:1.75;color:#9b85a5;margin:8px 0 17px}
.jpq-customer-flow .jpqc-guide>a{font-size:12px;color:#87539e;font-weight:600;text-decoration:none}
.jpq-customer-flow .jpqc-guide>a span{margin-left:10px}
.jpq-customer-flow .jpqc-context-note{margin:0 0 20px}
.jpq-customer-flow .jpq-cart-main{grid-template-columns:95px minmax(0,1fr)}
.jpq-customer-flow .jpq-cart-main img{width:95px;height:95px;border-radius:12px;background:#f4eaf8;padding:8px}
.jpq-customer-flow .jpq-cart-product{font-size:17px;color:#74498c;line-height:1.55;text-decoration:none}
.jpq-customer-flow .jpq-cart-fields{grid-template-columns:110px minmax(0,1fr);gap:20px}
.jpq-customer-flow .jpq-price{color:#835696;font-size:14px}
.jpq-customer-flow .jpq-total{color:#79508e;font-size:18px}
.jpq-customer-flow .jpq-total strong{font-family:JPQManrope,Arial,sans-serif;font-size:26px}
.jpq-customer-flow.jpq-checkout .form-section-title{font-family:JPQManrope,Arial,sans-serif;font-size:20px;letter-spacing:-.5px;color:#765183}
.jpq-customer-flow .jpqc-checkout-product{display:grid;grid-template-columns:70px minmax(0,1fr);gap:16px;border:1px solid #e8daee;border-radius:12px;padding:16px;margin-bottom:12px;background:#fff}
.jpq-customer-flow .jpqc-checkout-product img{width:70px;height:70px;object-fit:contain;border-radius:8px;background:#f7f0fa}
.jpq-customer-flow .jpqc-checkout-product>div{overflow-wrap:anywhere}
.jpq-customer-flow .jpqc-checkout-product small{font-size:13px;color:#8e7799;line-height:1.7}
.jpq-customer-flow .jpqc-item-price{color:#84529b}
.jpq-customer-flow .jpqc-no-image{display:grid;place-items:center;background:#f2e8f6;border-radius:9px;font-size:30px}
.jpq-customer-flow.jpq-checkout .submit-wrapper{text-align:right;margin-top:24px}
.jpq-customer-flow.jpq-checkout .submit-budget-btn{min-width:240px}
.jpq-customer-flow input[type=checkbox]{accent-color:#8242b5}
.jpq-customer-flow.jpq-checkout .form-success{background:#eff7ef;border-color:#d0e3d0;color:#47684b;padding:25px;border-radius:16px;margin:30px 0}
/* Existing Elementor guidance is preserved, recoloured and optionally folded by JS. */
body.jpq-customer-page .jpqc-more-info{max-width:1140px;margin:30px auto;border:1px solid #dfcce7;border-radius:16px;background:#f4eaf8;overflow:clip;font-family:JPQDM,Arial,sans-serif;color:#775385}
body.jpq-customer-page .jpqc-more-info>summary{padding:23px 26px;cursor:pointer;font-size:17px;font-weight:600;list-style:none;display:flex;gap:20px;justify-content:space-between}
body.jpq-customer-page .jpqc-more-info>summary::-webkit-details-marker{display:none}
body.jpq-customer-page .jpqc-more-info>summary::after{content:'+';color:#a080b2;font-size:22px;line-height:1.2}
body.jpq-customer-page .jpqc-more-info[open]>summary::after{content:'−'}
body.jpq-customer-page .jp-quote-page{font-family:JPQDM,Arial,sans-serif;color:#66506f;max-width:1140px;margin:0 auto}
body.jpq-customer-page .jpqc-more-info .jp-quote-page{padding:0 25px 25px}
body.jpq-customer-page .jp-quote-page .jp-quote-hero{background:#eee1f5;border:1px solid #dccaE5;box-shadow:none;padding:25px}
body.jpq-customer-page .jp-quote-page .jp-info-section{background:#efe4f4;padding:25px}
body.jpq-customer-page .jp-quote-page .jp-step-card,body.jpq-customer-page .jp-quote-page .jp-flow-item{background:#fffcf9;border-color:#e2cfe9;box-shadow:none}
body.jpq-customer-page .jp-quote-page .jp-step-number{background:#9e73b6}
body.jpq-customer-page .jp-quote-page .jp-warning-box{border-color:#a37cb8;background:#fffcf9;box-shadow:none}
body.jpq-customer-page .jp-quote-page .jp-flow-item strong{color:#9564ac}
body.jpq-customer-page .jp-quote-page h2,body.jpq-customer-page .jp-quote-page h3{font-family:JPQManrope,Arial,sans-serif;color:#704580}
body.jpq-customer-page .jp-quote-page .jp-tag{background:#fffaf7;border-color:#dec8e7;color:#876893}
@media(max-width:1000px){.jpq-customer-flow .jpqc-form-layout{grid-template-columns:minmax(0,1fr) 210px;gap:22px}.jpq-customer-flow .jpq-card{padding:22px}.jpq-customer-flow .jpqc-submit-bar .jpq-button{width:100%}.jpq-customer-flow .jpqc-guide{top:100px}}
@media(max-width:760px){
 body.jpq-customer-page #content>.ast-container{padding:0 18px}body.jpq-customer-page .site-main{padding:22px 0 45px}
 .jpq-customer-flow .jpqc-hero{grid-template-columns:minmax(0,1fr);padding:10px 0 25px;gap:0;margin-bottom:20px}.jpq-customer-flow .jpqc-hero-art{display:none}.jpq-customer-flow .jpqc-hero h1{font-size:36px;letter-spacing:-1.4px;margin-top:12px}.jpq-customer-flow .jpqc-hero p{font-size:15px}.jpq-customer-flow .jpqc-eyebrow{font-size:9px;letter-spacing:1.3px}.jpq-customer-flow .jpqc-trust{font-size:12px}
 .jpq-customer-flow .jpq-steps ol{gap:7px;margin-bottom:22px}.jpq-customer-flow .jpq-steps li{flex-direction:column;align-items:flex-start;gap:7px;border-radius:10px;font-size:11px;line-height:1.45;padding:11px 9px}.jpq-customer-flow .jpq-steps li span{width:25px;height:25px;flex-basis:25px}
 .jpq-customer-flow .jpqc-form-layout{grid-template-columns:minmax(0,1fr);gap:16px}.jpq-customer-flow .jpq-card,.jpq-customer-flow.jpq-checkout .form-section{padding:21px 18px!important;border-radius:16px}.jpq-customer-flow .jpq-item-head{gap:10px;padding-bottom:16px}.jpq-customer-flow .jpq-item-head h2{font-size:19px}.jpq-customer-flow .jpq-url-row{display:block}.jpq-customer-flow .jpq-url-row .jpq-button{width:100%;margin:6px 0 0;min-height:47px}
 .jpq-customer-flow .jpq-fields{grid-template-columns:1fr 1fr;gap:12px}.jpq-customer-flow .jpq-fields>label:first-child{grid-column:1/-1}.jpq-customer-flow .jpqc-product-details>summary{font-size:14px}.jpq-customer-flow .jpqc-details-hint{font-size:11px;flex-basis:100%}.jpq-customer-flow .jpqc-upload{padding:14px}.jpq-customer-flow .jpqmi-preview{width:110px;height:110px}.jpq-customer-flow .jpq-actions{gap:10px}.jpq-customer-flow .jpq-actions .jpq-button{width:100%;font-size:14px!important}.jpq-customer-flow .jpqc-guide{position:static;padding:20px 6px}.jpq-customer-flow .jpqc-guide h2{font-size:25px;margin:10px 0 20px}.jpq-customer-flow .jpqc-guide h2 br{display:none}.jpq-customer-flow .jpqc-guide li{padding-bottom:19px}.jpq-customer-flow .jpqc-guide li span{font-size:13px}.jpq-customer-flow .jpqc-guide-note p{font-size:13px}
 .jpq-customer-flow .jpq-cart-main{grid-template-columns:65px minmax(0,1fr);gap:12px}.jpq-customer-flow .jpq-cart-main img{width:65px;height:65px}.jpq-customer-flow .jpq-cart-product{font-size:16px}.jpq-customer-flow .jpq-cart-fields{grid-template-columns:1fr}.jpq-customer-flow .jpq-total{font-size:16px}.jpq-customer-flow .jpq-total strong{font-size:24px}.jpq-customer-flow .jpqc-checkout-product{grid-template-columns:50px minmax(0,1fr);padding:12px;gap:12px}.jpq-customer-flow .jpqc-checkout-product img{width:50px;height:50px}.jpq-customer-flow.jpq-checkout .submit-budget-btn{width:100%;min-width:0}
 body.jpq-customer-page .jpqc-more-info>summary{padding:20px;font-size:15px}body.jpq-customer-page .jpqc-more-info .jp-quote-page{padding:0 16px 16px}body.jpq-customer-page .jp-quote-page .jp-quote-hero,body.jpq-customer-page .jp-quote-page .jp-info-section{padding:20px}body.jpq-customer-page .jp-quote-page h2{font-size:25px}body.jpq-customer-page .jp-quote-page .jp-steps-grid,body.jpq-customer-page .jp-quote-page .jp-flow-box{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.jpq-customer-flow *{transition:none!important;scroll-behavior:auto!important}}
.jpq-customer-flow .jpq-muted,.jpq-customer-flow .jpqc-guide li span,.jpq-customer-flow .jpqc-guide-note p{color:#7c6787}
.jpq-customer-flow .jpq-steps li{color:#826a8f}
.jpq-customer-flow .jpqc-success-title{font-size:28px;line-height:1.25;letter-spacing:-.8px;margin-bottom:10px}
.jpq-customer-flow input:not([type=hidden]):not([type=checkbox]),.jpq-customer-flow textarea,.jpq-customer-flow select{font-weight:400}
.jpq-customer-flow .jpqc-terms{margin-top:25px;padding:24px;background:#f0e5f6;border:1px solid #dec9e8;border-radius:16px;font-size:14px;line-height:1.8;color:#6d527a}
@media(max-width:760px){.jpq-customer-flow .jpqc-terms{padding:20px 17px;font-size:13px}}
