/* i.G.C. Print Shop Stage Quote Page: supplements ips-home.css */
.quote-intro{background:linear-gradient(115deg,#111926 0%,#141725 58%,#291831 100%);color:#edf3ff;position:relative;overflow:hidden}
.quote-intro:before{content:"";position:absolute;width:750px;height:500px;left:-260px;top:-200px;pointer-events:none;background:radial-gradient(ellipse,rgba(89,208,255,.16),transparent 68%)}
.quote-intro-inner{padding-block:64px 70px;display:grid;grid-template-columns:1.45fr .7fr;align-items:center;gap:7%;position:relative}
.quote-intro h1{font-size:clamp(2.65rem,4.5vw,4.7rem);font-weight:950;line-height:1.09;letter-spacing:-.055em;margin:23px 0 18px}
.quote-intro h1 span{background:linear-gradient(90deg,#59d0ff,#a476ff 75%,#de78ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.quote-intro p{max-width:660px;color:#c2cee1;font-size:16px;line-height:1.8;margin:0}
.quote-intro-notes{display:flex;gap:15px 22px;flex-wrap:wrap;margin-top:24px;color:#c7d5e8;font-size:12px}
.quote-intro-art{min-height:245px;border:1px solid rgba(173,196,238,.21);border-radius:23px;background:radial-gradient(circle at 85% 20%,rgba(197,91,255,.29),transparent 65%),radial-gradient(circle at 12% 90%,rgba(89,208,255,.28),transparent 65%),#182035;box-shadow:0 25px 60px #0005;display:flex;flex-direction:column;justify-content:space-between;padding:22px;overflow:hidden;transform:rotate(2deg)}
.quote-art-kicker,.quote-art-foot{color:#c7d4ef;font-size:10px;font-weight:900;letter-spacing:.16em}
.quote-art-monogram{align-self:center;color:#b879ff;font-size:clamp(4rem,8vw,8rem);font-weight:1000;line-height:1;letter-spacing:-.12em}.quote-art-monogram span{color:#59d0ff}
.quote-art-foot{text-align:right;color:#a5e8ff}
.quote-content{background:#f5f7fb;padding:72px 0 90px}
.quote-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,.85fr);align-items:start;gap:26px}
.quote-main,.quote-side-card{border:1px solid #e0e7f2;border-radius:23px;background:#fff;box-shadow:0 16px 45px rgba(17,35,68,.055)}
.quote-main{padding:clamp(22px,3vw,40px);min-width:0}
.quote-kicker{font-size:11px;font-weight:900;letter-spacing:.14em;color:#5063bf}
.quote-panel-head h2,.quote-side-card h2{font-size:clamp(1.65rem,2.5vw,2.4rem);line-height:1.12;letter-spacing:-.05em;margin:10px 0 10px;font-weight:950;color:#172136}
.quote-panel-head p{margin:0 0 25px;color:#617087;font-size:14px;line-height:1.7}
.quote-preview-notice{background:#eef7ff;border:1px solid #b8dff9;border-radius:12px;color:#274e72;padding:12px 15px;font-size:12px;line-height:1.6;margin-bottom:24px}.quote-preview-notice strong{color:#195179}
.quote-form{display:flex;flex-direction:column;gap:20px}
.quote-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.quote-field{min-width:0}.quote-field label{display:block;margin:0 0 8px;font-weight:800;color:#253149;font-size:13px}.quote-field label span{color:#a13deb}
.quote-field input:not([type=file]),.quote-field select,.quote-field textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box;display:block;border-radius:12px;border:1px solid #ccd6e5;background:#f8faff;color:#1c2b43;font:inherit;font-size:14px;padding:13px 14px;outline:none;transition:border .15s,box-shadow .15s}
.quote-field input::placeholder,.quote-field textarea::placeholder{color:#78889b;opacity:1}
.quote-field input:focus,.quote-field select:focus,.quote-field textarea:focus{background:#fff;border-color:#5b9bd7;box-shadow:0 0 0 4px rgba(89,208,255,.18)}
.quote-field textarea{resize:vertical;min-height:155px;line-height:1.6}
.quote-field-help{margin-top:7px;color:#64758c;font-size:12px;line-height:1.45}
.quote-upload{display:flex;align-items:center;gap:15px;border:1px dashed #91aed1;border-radius:15px;background:linear-gradient(110deg,#f2faff,#f8f5ff);padding:16px;flex-wrap:wrap}
.quote-upload-symbol{height:43px;width:43px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(120deg,#5dcefb,#aa7cff);color:#10223d;font-size:28px;font-weight:900;flex:none}
.quote-upload-copy{display:flex;flex-direction:column;gap:3px;flex:1;min-width:180px}.quote-upload-copy strong{color:#263854;font-size:13px;overflow-wrap:anywhere}.quote-upload-copy small{color:#657891;font-size:11px}
.quote-upload input[type=file]{font-size:12px;color:#465774;width:100%;max-width:240px}.quote-upload input::file-selector-button{border-radius:9px;border:1px solid #c8d6eb;background:#fff;color:#1c304e;font:inherit;font-weight:750;padding:9px 12px;margin-right:7px;cursor:pointer}
.quote-security{border:1px solid #e1e7f0;background:#f8faff;border-radius:14px;padding:17px;display:grid;gap:18px}.quote-security .quote-field{max-width:290px}
.quote-confirm{display:flex;gap:10px;color:#475970;font-size:13px;line-height:1.55;align-items:flex-start;cursor:pointer}.quote-confirm input{flex:none;width:17px;height:17px;margin:2px 0 0;accent-color:#705cf3}.quote-confirm span{flex:1}
.quote-form-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:2px}
.quote-button{display:inline-flex;gap:10px;align-items:center;justify-content:center;border-radius:12px;min-height:49px;padding:13px 19px;font:inherit;font-size:13px;font-weight:850;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:transform .15s,box-shadow .15s;white-space:normal}
.quote-button:hover{transform:translateY(-2px)}.quote-button:focus-visible{outline:3px solid #498de7;outline-offset:3px}
.quote-button-primary{color:#101724!important;background:linear-gradient(95deg,#57ccfa,#c55bff);box-shadow:0 12px 25px rgba(120,117,240,.22)}.quote-button-secondary{background:#f2f6fc;color:#253651;border-color:#d5deec}.quote-form-hint{font-size:12px;color:#64758c}
.quote-legal{font-size:12px;line-height:1.6;color:#64748b;margin:20px 0 0}.quote-legal a{color:#3151b8;text-underline-offset:3px;font-weight:800}
.quote-errors{padding:17px 19px;margin:0 0 23px;border-radius:13px;border:1px solid #f5b7c0;background:#fff0f2;color:#903041;font-size:13px}.quote-errors ul{margin:9px 0 0;padding-left:20px}
.quote-success{border:1px solid #a9e3c2;background:#ebfcf2;border-radius:15px;color:#1d6040;display:flex;gap:16px;padding:20px;margin-bottom:23px}.quote-success h3{margin:0 0 8px;font-size:19px;color:#19583b}.quote-success p{margin:0;font-size:13px;line-height:1.7}.quote-success-icon{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%;color:#fff;background:#1f9963;font-weight:900}
.quote-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.quote-sidebar{display:flex;flex-direction:column;gap:19px}.quote-side-card{padding:26px}.quote-side-card h2{font-size:27px;line-height:1.16;margin-bottom:24px}
.quote-steps{display:flex;flex-direction:column;gap:21px}.quote-steps>div{display:flex;gap:13px}.quote-step-num{display:grid;place-items:center;width:37px;height:37px;border-radius:11px;flex:none;background:#e5f7ff;color:#276796;font-size:12px;font-weight:900}.quote-steps strong{display:block;color:#23344d;font-size:14px}.quote-steps p{font-size:12px;color:#64758b;line-height:1.65;margin:4px 0 0}
.quote-contact-card{padding:25px;border-radius:21px;background:linear-gradient(125deg,#1a3852,#282044);color:#f0f5ff}.quote-contact-icon{display:grid;place-items:center;background:rgba(89,208,255,.15);border:1px solid rgba(89,208,255,.35);border-radius:12px;width:42px;height:42px;font-size:23px;color:#88dcfc;margin-bottom:16px}.quote-contact-card strong{display:block;font-size:19px;line-height:1.25}.quote-contact-card p{font-size:12px;color:#c2cfe1;margin:10px 0 15px;line-height:1.6}.quote-contact-card a{font-size:12px;font-weight:800;color:#8fe0ff;text-decoration:none;overflow-wrap:anywhere}.quote-contact-card a:hover{text-decoration:underline}
.quote-bottom-cta{background:#20283d;color:#e6edff;padding:22px 0}.quote-bottom-cta .shell{display:flex;align-items:center;justify-content:center;gap:15px;flex-wrap:wrap;text-align:center}.quote-bottom-cta span{font-size:10px;font-weight:900;letter-spacing:.15em;color:#8bdcff}.quote-bottom-cta strong{font-size:15px}
@media(max-width:970px){.quote-layout{grid-template-columns:minmax(0,1fr)}.quote-sidebar{display:grid;grid-template-columns:1.3fr 1fr}.quote-intro-inner{grid-template-columns:1fr .6fr;gap:4%}}
@media(max-width:700px){.quote-intro-inner{grid-template-columns:1fr;gap:24px;padding-block:48px}.quote-intro h1{font-size:clamp(2.4rem,9.3vw,3.3rem)}.quote-intro-art{display:none}.quote-content{padding:37px 0 62px}.quote-sidebar{grid-template-columns:1fr}.quote-form-grid{grid-template-columns:1fr}.quote-main{padding:20px}.quote-form-actions .quote-button-primary{width:100%}.quote-upload input[type=file]{max-width:100%}}
@media(prefers-reduced-motion:reduce){.quote-button{transition:none}}
