/* Quartz Home Enhancer 1.1.0 — Navy Luxe with larger showcase cards and automation motion. */
:root{--qe-brand:#112d4e;--qe-brand-light:#235684;--qe-accent:#78a9d6;--qe-accent-light:#c9dfef;--qe-ink:#1b2d40;--qe-muted:#66788a;--qe-ivory:#f7fafd;--qe-pearl:#eef4f9;--qe-ease:cubic-bezier(.22,1,.36,1)}
.quartz-enhancer,.quartz-enhancer *{box-sizing:border-box}
.quartz-enhancer{isolation:isolate;position:relative;width:100%;overflow:hidden;font-family:inherit;color:var(--qe-ink);direction:ltr;text-align:left}
.quartz-enhancer a{color:inherit;text-decoration:none}
.quartz-enhancer a:focus-visible,.quartz-enhancer button:focus-visible{outline:3px solid var(--qe-accent);outline-offset:4px}
.quartz-enhancer img{display:block;max-width:100%;height:auto}
.quartz-enhancer h2,.quartz-enhancer h3,.quartz-enhancer p{margin:0;padding:0}
.quartz-enhancer h2,.quartz-enhancer h3{font-family:inherit;color:inherit}
.quartz-enhancer p{line-height:1.7}
.qe-section{padding:clamp(58px,6.2vw,98px) 22px}
.qe-container{width:min(1180px,100%);margin:0 auto;position:relative;z-index:1}
.qe-tone--white{background:linear-gradient(180deg,#fff 0%,#fff 62%,#f7fafd 100%)}
.qe-tone--light{background:radial-gradient(ellipse at 92% 4%,rgba(120,169,214,.18),transparent 48%),linear-gradient(155deg,#fff 0%,var(--qe-pearl) 100%)}
.qe-tone--ivory{background:radial-gradient(circle at 3% 95%,rgba(120,169,214,.10),transparent 36%),linear-gradient(128deg,#fff 0%,var(--qe-ivory) 100%)}
.qe-tone--violet,.qe-tone--navy{background:linear-gradient(140deg,var(--qe-brand) 0%,var(--qe-brand-light) 100%);color:#fff}
.qe-tone--dark{background:radial-gradient(ellipse at 10% 85%,rgba(120,169,214,.13),transparent 42%),radial-gradient(ellipse at 90% -20%,rgba(180,217,243,.10),transparent 47%),linear-gradient(122deg,#091b30 0%,var(--qe-brand) 53%,#1f4d76 100%);color:#fff}
.qe-tone--clear{background:transparent}
/* Add these class names to Elementor's Advanced → CSS Classes field. */
.qe-bg-pearl{background:radial-gradient(ellipse at 90% 6%,rgba(120,169,214,.22),transparent 50%),linear-gradient(150deg,#fff,var(--qe-pearl)) !important}
.qe-bg-ivory{background:linear-gradient(140deg,#fff,var(--qe-ivory)) !important}
.qe-bg-orchid,.qe-bg-ice{background:radial-gradient(circle at 15% 12%,rgba(120,169,214,.17),transparent 36%),linear-gradient(135deg,#e5f0fa,#fff 70%) !important}
.qe-bg-dark{background:radial-gradient(ellipse at 5% 95%,rgba(164,209,244,.11),transparent 42%),linear-gradient(132deg,#091b30,var(--qe-brand),var(--qe-brand-light)) !important}
.qe-bg-champagne,.qe-bg-silver{background:linear-gradient(145deg,#fff 0%,#eaf2f8 100%) !important}
.qe-bg-dark,.qe-bg-dark h1,.qe-bg-dark h2{color:#fff}
.qe-section-head{text-align:center;max-width:740px;margin:0 auto clamp(34px,4vw,58px)}
.qe-eyebrow{display:inline-flex;align-items:center;gap:11px;font-size:10px;font-weight:700;letter-spacing:.23em;text-transform:uppercase;color:var(--qe-brand-light);line-height:1.4}
.qe-section-head .qe-eyebrow:before{content:"";height:1px;width:28px;background:var(--qe-accent)}
.qe-section-head h2{font-size:clamp(34px,4vw,54px);letter-spacing:-.05em;line-height:1.1;font-weight:650;margin:12px 0 15px}
.qe-section-head p{font-size:clamp(15px,1.5vw,17px);color:var(--qe-muted);font-weight:400}

/* Solutions — new hero/showcase treatment */
.qe-solutions{overflow:hidden}
.qe-solutions .qe-container{width:min(1120px,100%)}
.qe-solution-showcase{position:relative;padding:clamp(32px,4.2vw,48px);border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(246,251,255,.82));border:1px solid rgba(35,86,132,.10);box-shadow:0 18px 56px rgba(14,40,68,.08);backdrop-filter:blur(6px)}
.qe-automation-visual{position:absolute;inset:-18px;pointer-events:none;overflow:hidden;border-radius:34px;z-index:0}
.qe-solution-showcase .qe-section-head,.qe-solution-showcase .qe-solution-grid{position:relative;z-index:1}
.qe-solutions .qe-section-head{max-width:780px}
.qe-solutions .qe-section-head p{max-width:660px;margin:0 auto}
.qe-solutions:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 14% 16%,rgba(120,169,214,.18),transparent 23%),radial-gradient(circle at 83% 17%,rgba(120,169,214,.10),transparent 24%),radial-gradient(circle at 80% 78%,rgba(120,169,214,.16),transparent 26%);pointer-events:none}
.qe-automation-visual:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(35,86,132,.065) 0 1px,transparent 1px 84px),repeating-linear-gradient(180deg,rgba(35,86,132,.04) 0 1px,transparent 1px 74px);mask:linear-gradient(to bottom,transparent 0,rgba(0,0,0,.8) 18%,rgba(0,0,0,.8) 82%,transparent 100%);animation:qe-grid-drift 18s linear infinite}
.qe-circuit{position:absolute;background:linear-gradient(90deg,transparent,rgba(120,169,214,.62),transparent);opacity:.62;filter:drop-shadow(0 0 7px rgba(120,169,214,.26))}
.qe-circuit--h1{top:18%;left:-10%;width:48%;height:1px;animation:qe-float-x 7s ease-in-out infinite}
.qe-circuit--h2{top:67%;right:-4%;width:41%;height:1px;animation:qe-float-x 9s ease-in-out infinite reverse}
.qe-circuit--v1{left:12%;top:-6%;width:1px;height:40%;background:linear-gradient(180deg,transparent,rgba(120,169,214,.48),transparent);animation:qe-float-y 8s ease-in-out infinite}
.qe-circuit--v2{right:16%;bottom:-6%;width:1px;height:42%;background:linear-gradient(180deg,transparent,rgba(120,169,214,.4),transparent);animation:qe-float-y 10s ease-in-out infinite reverse}
.qe-orb{position:absolute;border-radius:999px;background:radial-gradient(circle,rgba(120,169,214,.20) 0,rgba(120,169,214,.06) 45%,transparent 70%);filter:blur(.2px)}
.qe-orb--1{width:230px;height:230px;right:-22px;top:10%;animation:qe-pulse-orb 8s ease-in-out infinite}
.qe-orb--2{width:180px;height:180px;left:-35px;bottom:6%;animation:qe-pulse-orb 10s ease-in-out infinite reverse}
.qe-dot{position:absolute;width:10px;height:10px;border-radius:999px;background:linear-gradient(145deg,#cce3f4,#72a7d7);box-shadow:0 0 0 7px rgba(120,169,214,.11),0 0 22px rgba(120,169,214,.22);animation:qe-pulse-node 3.8s ease-in-out infinite}
.qe-dot--1{top:18%;left:36%}
.qe-dot--2{top:66%;right:30%;animation-delay:1.1s}
.qe-dot--3{bottom:19%;left:18%;animation-delay:1.9s}
.qe-solution-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.qe-solution-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;min-height:272px;padding:28px 26px 26px;background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(255,255,255,.96));border:1px solid rgba(29,75,116,.14);border-radius:24px;box-shadow:0 14px 36px rgba(15,47,77,.055);transition:transform .65s var(--qe-ease),box-shadow .65s var(--qe-ease),border-color .4s ease,background .4s ease;overflow:hidden}
.qe-solution-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,transparent,var(--qe-accent),transparent);opacity:0;transition:opacity .4s ease}
.qe-solution-card:after{content:"";position:absolute;inset:auto -22% -26% auto;width:120px;height:120px;border-radius:24px;background:radial-gradient(circle,rgba(120,169,214,.14),transparent 66%);transform:translate3d(0,0,0)}
.qe-solution-card:hover,.qe-solution-card:focus-visible{transform:translateY(-8px);border-color:rgba(120,169,214,.48);box-shadow:0 26px 52px rgba(15,47,77,.12);background:linear-gradient(180deg,rgba(255,255,255,.96),#fff)}
.qe-solution-card:hover:before,.qe-solution-card:focus-visible:before{opacity:1}
.qe-solution-icon{width:90px;height:90px;display:grid;place-items:center;border-radius:24px;background:linear-gradient(155deg,#eff7fd,#dcebf7);color:var(--qe-brand);flex-shrink:0;margin-bottom:22px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(35,86,132,.08),0 10px 24px rgba(35,86,132,.07);transition:transform .6s var(--qe-ease),box-shadow .6s var(--qe-ease),color .4s ease}
.qe-solution-icon svg{width:46px;height:46px}
.qe-solution-card:hover .qe-solution-icon{transform:translateY(-2px) scale(1.04);box-shadow:inset 0 0 0 1px rgba(35,86,132,.1),0 18px 32px rgba(35,86,132,.12);color:var(--qe-brand-light)}
.qe-solution-card h3{font-size:22px;line-height:1.2;font-weight:650;letter-spacing:-.028em;margin:0 0 10px}
.qe-solution-card p{font-size:14px;color:var(--qe-muted);max-width:230px;line-height:1.7}

/* Products — larger cards */
.qe-products .qe-container{width:min(1120px,100%)}
.qe-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.qe-product-card{display:block;position:relative;border:1px solid rgba(29,75,116,.14);border-radius:24px;padding:14px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);box-shadow:0 12px 36px rgba(15,47,77,.06);transition:transform .65s var(--qe-ease),box-shadow .65s var(--qe-ease),border-color .35s ease}
.qe-product-card:hover,.qe-product-card:focus-visible{transform:translateY(-8px);border-color:rgba(120,169,214,.7);box-shadow:0 26px 56px rgba(15,47,77,.13)}
.qe-product-card:after{content:"";position:absolute;inset:0;border-radius:24px;pointer-events:none;border:1px solid transparent;background:linear-gradient(125deg,rgba(120,169,214,.45),transparent 28%,transparent 72%,rgba(120,169,214,.23)) border-box;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .5s}
.qe-product-card:hover:after{opacity:1}
.qe-product-frame{display:flex;align-items:center;justify-content:center;height:clamp(240px,23vw,310px);padding:28px 34px;border-radius:18px;background:radial-gradient(ellipse at 50% 62%,#fff 0%,#f5f9fd 100%);overflow:hidden;position:relative}
.qe-product-frame:before{content:"";position:absolute;inset:14px;border:1px solid rgba(25,62,103,.07);border-radius:12px;pointer-events:none}
.qe-product-frame img{width:100%;height:100%;max-height:230px;object-fit:contain;object-position:center;mix-blend-mode:multiply;transition:transform .8s var(--qe-ease)}
.qe-product-card:hover .qe-product-frame img{transform:scale(1.08)}
.qe-product-info{display:flex;align-items:flex-start;gap:16px;padding:22px 16px 16px;min-height:116px}
.qe-product-info>div{flex:1;min-width:0}
.qe-product-number{font-size:12px;color:var(--qe-brand-light);font-weight:700;align-self:flex-start;padding-top:4px}
.qe-product-info h3{font-size:20px;font-weight:650;line-height:1.3;letter-spacing:-.02em}
.qe-product-info p{font-size:13px;color:var(--qe-muted);line-height:1.65;margin-top:7px}
.qe-product-arrow{font-size:21px;color:var(--qe-brand-light);transition:transform .5s var(--qe-ease)}
.qe-product-card:hover .qe-product-arrow{transform:translate(4px,-4px)}
.qe-action-row{text-align:center;margin-top:38px}
.qe-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:13px 24px;border-radius:8px;font-size:12px;font-weight:650;letter-spacing:.04em;transition:transform .4s var(--qe-ease),box-shadow .4s var(--qe-ease),background .4s}
.qe-btn:hover,.qe-btn:focus-visible{transform:translateY(-3px)}
.qe-btn-outline{border:1px solid rgba(17,45,78,.24);color:var(--qe-brand)!important;background:rgba(255,255,255,.72)}
.qe-btn-outline:hover{border-color:var(--qe-accent);box-shadow:0 10px 25px rgba(15,47,77,.08)}
.qe-btn-ice{background:linear-gradient(110deg,#b8d8ed,var(--qe-accent-light),#e8f3fc);color:#103253!important;box-shadow:0 13px 26px rgba(9,34,62,.22);overflow:hidden}
.qe-btn-ice:after{content:"";position:absolute;inset:-1px auto -1px -70%;width:40%;transform:skewX(-27deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transition:left .75s var(--qe-ease);left:0}
.qe-btn-ice:hover:after{left:170%}
.qe-btn-ice:hover{box-shadow:0 18px 34px rgba(0,0,0,.25)}
.qe-btn-solid{background:var(--qe-brand);color:#fff!important}

/* Training */
.qe-training .qe-container{max-width:1210px}
.qe-training-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:stretch;gap:clamp(25px,4vw,55px)}
.qe-training-story{position:relative;min-height:610px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:19px;overflow:hidden;background:#0c2139;box-shadow:0 22px 65px rgba(7,25,47,.26)}
.qe-training-photo{position:absolute;inset:0}
.qe-training-photo img{width:100%;height:100%;object-fit:cover;object-position:center;opacity:.72;transition:transform 1.3s var(--qe-ease)}
.qe-training-story:hover .qe-training-photo img{transform:scale(1.035)}
.qe-training-story:after{content:"";inset:0;position:absolute;background:linear-gradient(180deg,rgba(8,27,47,.07) 13%,rgba(8,27,47,.32) 41%,rgba(7,21,38,.98) 100%);pointer-events:none}
.qe-training-copy{position:relative;z-index:1;padding:clamp(25px,4vw,45px);max-width:580px}
.qe-training-badge{display:inline-flex;align-items:center;gap:11px;font-size:10px;font-weight:700;letter-spacing:.13em;color:var(--qe-accent-light);border:1px solid rgba(201,223,239,.55);border-radius:30px;padding:10px 14px;margin-bottom:24px}
.qe-training-copy h2{font-size:clamp(34px,4vw,57px);font-weight:600;letter-spacing:-.05em;line-height:1.05;color:#fff;margin-bottom:17px}
.qe-training-copy p{max-width:415px;font-size:15px;color:rgba(255,255,255,.85);margin-bottom:24px}
.qe-training-form-wrap{background:linear-gradient(158deg,#fff 0%,#f5f9fd 100%);border-radius:19px;border:1px solid rgba(255,255,255,.68);box-shadow:0 28px 65px rgba(0,0,0,.17);padding:clamp(25px,3vw,40px);color:var(--qe-ink);align-self:stretch;min-width:0}
.qe-form-heading{margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid rgba(17,45,78,.10)}
.qe-form-heading h3{font-size:clamp(23px,2.3vw,33px);font-weight:650;letter-spacing:-.035em;margin-top:7px}
.qe-form-content{font-size:14px;color:var(--qe-ink)}
.qe-form-content form{width:100%;max-width:100%}
.qe-form-content label{color:var(--qe-ink);font-weight:500}
.qe-form-content input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),.qe-form-content select,.qe-form-content textarea{max-width:100%;width:100%;background:#fff;border:1px solid #d9e5ef;border-radius:7px;box-shadow:none;min-height:43px;padding:10px 13px;color:var(--qe-ink);outline:none;transition:border-color .2s,box-shadow .2s}
.qe-form-content textarea{min-height:90px;resize:vertical}
.qe-form-content input:focus,.qe-form-content select:focus,.qe-form-content textarea:focus{border-color:var(--qe-accent);box-shadow:0 0 0 3px rgba(120,169,214,.16)}
.qe-form-content button[type=submit],.qe-form-content input[type=submit],.qe-form-content .frm_button_submit,.qe-form-content .wpforms-submit,.qe-form-content .wpcf7-submit{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px!important;min-height:46px;background:var(--qe-brand)!important;color:#fff!important;border:0!important;border-radius:6px!important;font-weight:600;box-shadow:0 8px 19px rgba(17,45,78,.14);cursor:pointer;transition:transform .3s,box-shadow .3s}
.qe-form-content button[type=submit]:hover,.qe-form-content input[type=submit]:hover{transform:translateY(-2px);box-shadow:0 14px 23px rgba(17,45,78,.2)}
.qe-form-content .frm_forms{max-width:100%}
.qe-form-empty{font-size:15px;color:var(--qe-muted);padding:35px 5px}
.qe-form-empty .qe-btn{margin-top:23px}
.qe-admin-note{background:#fff3d7;color:#493c23;padding:10px;margin-top:16px;font-size:12px}

/* Why */
.qe-why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.qe-why-card{position:relative;min-height:280px;padding:36px 32px 31px;border:1px solid rgba(29,75,116,.12);border-radius:18px;background:linear-gradient(145deg,#fff 0%,#f7fafd 100%);box-shadow:0 11px 33px rgba(15,47,77,.045);overflow:hidden;transition:transform .65s var(--qe-ease),box-shadow .6s var(--qe-ease),border-color .4s}
.qe-why-card:hover{transform:translateY(-6px);border-color:rgba(120,169,214,.48);box-shadow:0 24px 47px rgba(15,47,77,.1)}
.qe-why-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:15px;background:linear-gradient(145deg,#edf6fd,#dcecf7);color:#235684;margin-bottom:37px}
.qe-why-icon svg{width:28px;height:28px}
.qe-why-numeral{position:absolute;top:35px;right:32px;font-size:12px;font-weight:600;letter-spacing:.14em;color:#9eb4c9}
.qe-why-card h3{font-size:19px;line-height:1.4;letter-spacing:-.025em;margin-bottom:12px}
.qe-why-card p{font-size:14px;color:var(--qe-muted);max-width:310px}
.qe-why-rule{position:absolute;bottom:0;left:32px;width:53px;height:2px;background:linear-gradient(90deg,var(--qe-accent),transparent);transition:width .55s var(--qe-ease)}
.qe-why-card:hover .qe-why-rule{width:calc(100% - 64px)}
.qe-why-grid--photos .qe-why-card{padding:11px 11px 30px}
.qe-why-photo{border-radius:12px;overflow:hidden;aspect-ratio:1/1;margin-bottom:22px;background:#f3f8fd}
.qe-why-photo img{width:100%;height:100%;object-fit:contain;transition:transform .75s var(--qe-ease)}
.qe-why-grid--photos .qe-why-card:hover img{transform:scale(1.025)}
.qe-why-grid--photos .qe-why-card h3,.qe-why-grid--photos .qe-why-card p{margin-left:17px;margin-right:17px}
.qe-why-grid--photos .qe-why-numeral{display:none}
.qe-why-grid--photos .qe-why-rule{left:28px}
.qe-image-placeholder{display:grid;place-items:center;width:100%;height:100%;font-size:42px;color:var(--qe-accent)}

/* Motion: progressive enhancement only; never hide content when JS is blocked. */
html.qe-motion-ready .quartz-enhancer .qe-reveal:not(.qe-in-view){opacity:0;transform:translate3d(0,20px,0)}
.quartz-enhancer .qe-reveal{transition:opacity .82s var(--qe-ease),transform .82s var(--qe-ease);transition-delay:calc(var(--qe-order,0) * 55ms)}
.quartz-enhancer .qe-reveal.qe-in-view{opacity:1;transform:translate3d(0,0,0)}
/* Hover elevation must override the final reveal transform. */
.quartz-enhancer .qe-solution-card.qe-in-view:hover,.quartz-enhancer .qe-solution-card.qe-in-view:focus-visible,.quartz-enhancer .qe-product-card.qe-in-view:hover,.quartz-enhancer .qe-product-card.qe-in-view:focus-visible{transform:translateY(-8px)}
.quartz-enhancer .qe-why-card.qe-in-view:hover{transform:translateY(-6px)}
/* Elementor editor preview should not hide content. */
.elementor-editor-active .quartz-enhancer .qe-reveal,.elementor-editor-preview .quartz-enhancer .qe-reveal{opacity:1!important;transform:none!important}

@keyframes qe-grid-drift{0%{transform:translate3d(0,0,0)}50%{transform:translate3d(-8px,6px,0)}100%{transform:translate3d(0,0,0)}}
@keyframes qe-float-x{0%,100%{transform:translateX(0)}50%{transform:translateX(16px)}}
@keyframes qe-float-y{0%,100%{transform:translateY(0)}50%{transform:translateY(14px)}}
@keyframes qe-pulse-orb{0%,100%{transform:scale(1);opacity:.9}50%{transform:scale(1.08);opacity:.65}}
@keyframes qe-pulse-node{0%,100%{transform:scale(1);opacity:.9}50%{transform:scale(1.18);opacity:1}}

@media(min-width:1500px){.qe-section{padding-top:102px;padding-bottom:102px}}
@media(max-width:1024px){.qe-solution-showcase{padding:28px 24px}.qe-solution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.qe-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.qe-training-layout{grid-template-columns:1fr 1fr;gap:22px}.qe-training-story{min-height:580px}.qe-training-form-wrap{padding:24px}}
@media(max-width:767px){.qe-section{padding:58px 16px}.qe-section-head{margin-bottom:30px}.qe-section-head h2{font-size:34px}.qe-solution-showcase{padding:22px 18px;border-radius:22px}.qe-solution-grid{gap:12px}.qe-solution-card{min-height:220px;padding:20px 18px;border-radius:18px}.qe-solution-icon{width:72px;height:72px;margin-bottom:16px;border-radius:18px}.qe-solution-icon svg{width:36px;height:36px}.qe-solution-card h3{font-size:18px}.qe-solution-card p{font-size:12px}.qe-product-grid{gap:14px}.qe-product-card{padding:8px;border-radius:16px}.qe-product-frame{height:192px;padding:22px 16px;border-radius:14px}.qe-product-info{min-height:104px;gap:8px;padding:14px 8px}.qe-product-info h3{font-size:15px}.qe-product-info p{font-size:11px}.qe-product-number,.qe-product-arrow{display:none}.qe-training-layout{grid-template-columns:1fr}.qe-training-story{min-height:505px}.qe-training-form-wrap{padding:25px 22px}.qe-why-grid{grid-template-columns:1fr}.qe-why-card{min-height:230px;padding:27px}.qe-why-icon{margin-bottom:25px}}
@media(max-width:430px){.qe-solution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.qe-product-grid{grid-template-columns:1fr}.qe-product-frame{height:240px;padding:18px}.qe-product-info{padding:14px}.qe-product-number,.qe-product-arrow{display:block}.qe-training-story{min-height:445px}.qe-training-copy{padding:24px}.qe-training-copy h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){.quartz-enhancer *,.quartz-enhancer *:before,.quartz-enhancer *:after{animation-duration:.01ms!important;transition-duration:.01ms!important;transition-delay:0ms!important;scroll-behavior:auto!important}html.qe-motion-ready .quartz-enhancer .qe-reveal:not(.qe-in-view){opacity:1;transform:none}}

/* ============= V1.2 — BIG SHOWCASE + IN-YOUR-FACE AUTOMATION MOTION ============= */
.quartz-enhancer.qe-section{padding:var(--qe-pad-y,72px) clamp(14px,3vw,46px)}
.quartz-enhancer .qe-container{width:min(var(--qe-content-max,1500px),100%);max-width:none}
/* Full-bleed viewport option works inside most boxed Elementor Shortcode widgets.
   Keep the Elementor parent overflow visible (default) for breakout. */
.quartz-enhancer.qe--fullwidth{width:100vw;max-width:100vw;margin-inline:calc(50% - 50vw);}

/* A high-contrast, cinematic tech environment, not an invisible gradient. */
.quartz-enhancer.qe-solutions:not(.qe-tone--clear){
  background:radial-gradient(ellipse 52% 70% at 14% 22%,rgba(24,119,200,.32),transparent 72%),
             radial-gradient(ellipse 48% 58% at 93% 80%,rgba(10,144,225,.28),transparent 75%),
             linear-gradient(117deg,#031528 2%,#092e54 52%,#041b34 100%);
  color:#fff;
}
.qe-solutions .qe-container{isolation:isolate}
.qe-solutions .qe-automation-visual{position:absolute;inset:-120px 0;z-index:0;overflow:hidden;pointer-events:none;border-radius:0;opacity:1;}
.qe-solutions .qe-automation-visual:before{display:none}
.qe-tech-map{position:absolute;inset:-1%;width:102%;height:102%;opacity:.84;filter:drop-shadow(0 0 5px rgba(35,163,250,.36))}
.qe-map-line{fill:none;stroke:#58bbfc;stroke-width:2.1;stroke-dasharray:20 26;animation:qe-data-flow 9s linear infinite;opacity:.7}
.qe-map-line--b{stroke:#9cddff;stroke-dasharray:9 28;animation-duration:6s;animation-direction:reverse}
.qe-map-line--c{animation-duration:12s;stroke-dasharray:22 22}
.qe-map-line--d,.qe-map-line--e{stroke-width:1.5;stroke-dasharray:6 18;animation-duration:10s}
.qe-map-node{fill:#bce9ff;stroke:#1a9de8;stroke-width:6;paint-order:stroke;animation:qe-node-beat 2.8s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.qe-map-node:nth-of-type(2n){animation-delay:1s}
.qe-tech-grid{position:absolute;inset:0;opacity:.38;background-image:linear-gradient(rgba(109,186,247,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(109,186,247,.22) 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(ellipse at center,#000 18%,transparent 83%);animation:qe-grid-scan 9s linear infinite}
.qe-tech-spot{position:absolute;width:360px;height:360px;border:1px solid rgba(105,195,247,.15);border-radius:50%;box-shadow:0 0 60px rgba(53,153,223,.16),inset 0 0 60px rgba(53,153,223,.09);animation:qe-orb-breathe 6s ease-in-out infinite}
.qe-tech-spot:before,.qe-tech-spot:after{content:"";position:absolute;border:1px dashed rgba(139,218,255,.25);border-radius:50%;inset:30px;animation:qe-orbit 24s linear infinite}
.qe-tech-spot:after{inset:75px;animation-direction:reverse;animation-duration:16s}
.qe-tech-spot--a{left:-170px;top:14%}
.qe-tech-spot--b{right:-180px;bottom:6%;animation-delay:-3s}
.qe-tech-tracer{position:absolute;z-index:1;height:2px;width:45%;opacity:.75;background:linear-gradient(90deg,transparent,rgba(165,231,255,.05) 50%,#b8f0ff 90%,transparent);filter:drop-shadow(0 0 10px #47bdff);animation:qe-tracer-run 7s linear infinite;transform:translateX(-160%)}
.qe-tech-tracer--a{top:26%;left:0}
.qe-tech-tracer--b{top:73%;left:0;animation-duration:9s;animation-delay:-4s;opacity:.5}
.qe-solution-showcase{position:relative;z-index:1;background:linear-gradient(146deg,rgba(11,45,83,.24),rgba(7,29,55,.40));box-shadow:inset 0 0 0 1px rgba(165,224,255,.10),0 30px 90px rgba(0,6,17,.24);border:1px solid rgba(111,191,249,.20);border-radius:32px;padding:clamp(24px,3.6vw,52px);backdrop-filter:blur(1.5px)}
.qe-solutions .qe-section-head{max-width:800px;margin-bottom:43px}
.qe-solutions .qe-section-head h2{color:#fff;font-size:clamp(44px,5vw,68px);font-weight:700;text-shadow:0 3px 20px rgba(0,16,34,.3)}
.qe-solutions .qe-section-head .qe-eyebrow{color:#9bdcff;font-size:11px;letter-spacing:.24em}
.qe-solutions .qe-section-head p{color:#cee9fc;font-size:clamp(16px,1.7vw,20px);line-height:1.55}
.qe-solutions .qe-solution-grid{grid-template-columns:repeat(var(--qe-cols,4),minmax(0,1fr));gap:clamp(14px,1.6vw,24px)}
.qe-solutions .qe-solution-card{min-height:var(--qe-solution-height,276px);padding:clamp(22px,2.3vw,34px);border:1px solid rgba(118,199,252,.34);border-radius:24px;box-shadow:0 16px 35px rgba(0,13,30,.27),inset 0 1px rgba(255,255,255,.06);background:linear-gradient(145deg,rgba(18,69,114,.86),rgba(6,36,67,.89));color:#fff;backdrop-filter:blur(8px);justify-content:flex-end}
.qe-solutions .qe-solution-card:after{background:radial-gradient(circle,rgba(40,168,251,.3),transparent 70%);width:150px;height:150px}
.qe-solutions .qe-solution-card:hover{background:linear-gradient(155deg,rgba(22,90,151,.97),rgba(6,42,82,.98));border-color:#a8e4ff;box-shadow:0 24px 65px rgba(0,20,42,.46),inset 0 0 0 1px rgba(164,229,255,.13)}
.qe-solutions .qe-solution-card h3{font-size:clamp(21px,1.9vw,28px);color:#fff;font-weight:700;line-height:1.23;margin-bottom:8px}
.qe-solutions .qe-solution-card p{font-size:clamp(14px,1.0vw,16px);color:#d3e9fc;line-height:1.55;max-width:300px}
.qe-solutions .qe-solution-icon{width:var(--qe-icon-size,98px);height:var(--qe-icon-size,98px);border-radius:25px;background:linear-gradient(145deg,rgba(126,211,255,.26),rgba(42,120,183,.26));border:1px solid rgba(135,222,255,.55);color:#e0f6ff;box-shadow:0 0 30px rgba(27,165,252,.22),inset 0 0 30px rgba(56,165,245,.1);margin-bottom:25px;position:relative;overflow:visible}
.qe-solutions .qe-solution-icon:before{content:"";position:absolute;inset:-7px;border:1px dashed rgba(114,199,255,.25);border-radius:31px;animation:qe-orbit 26s linear infinite}
.qe-solutions .qe-solution-icon svg{width:54%;height:54%;stroke-width:2.5;filter:drop-shadow(0 0 10px rgba(114,205,255,.2))}
.qe-solutions .qe-solution-card:hover .qe-solution-icon{color:#fff;box-shadow:0 0 40px rgba(51,172,252,.43),inset 0 0 40px rgba(56,165,245,.18)}

/* Products: two genuinely large showroom cards per row (rather than tiny thumbnails). */
.qe-products .qe-product-grid{grid-template-columns:repeat(var(--qe-cols,2),minmax(0,1fr));gap:30px}
.qe-products .qe-section-head h2{font-size:clamp(40px,4.7vw,62px)}
.qe-products .qe-product-card{border-radius:27px;padding:14px;border-color:#cbdfea;box-shadow:0 20px 50px rgba(11,43,76,.095)}
.qe-products .qe-product-card:hover{transform:translateY(-10px);box-shadow:0 32px 80px rgba(17,62,105,.19);border-color:#6fa9cf}
.qe-products .qe-product-frame{height:var(--qe-image-height,390px);min-height:240px;padding:22px;border-radius:18px;background:radial-gradient(ellipse at 50% 55%,#fff 32%,#ecf5fd 100%)}
.qe-products .qe-product-frame:before{inset:12px;border:1px solid rgba(35,86,132,.16)}
.qe-products .qe-product-frame img{width:100%;height:100%;max-height:none;object-fit:contain;mix-blend-mode:multiply;transform:scale(var(--qe-image-zoom,1.15));transition:transform .65s var(--qe-ease)}
.qe-products .qe-product-card:hover .qe-product-frame img{transform:scale(calc(var(--qe-image-zoom,1.15) + .045))}
.qe-products .qe-product-info{min-height:122px;align-items:center;padding:24px 24px 22px;gap:19px}
.qe-products .qe-product-info h3{font-size:clamp(21px,2.2vw,27px);font-weight:700}
.qe-products .qe-product-info p{font-size:15px;line-height:1.5}
.qe-products .qe-product-number{font-size:13px;font-weight:800}
.qe-products .qe-product-arrow{font-size:25px}

/* Visibility levels, including full motion shutdown for accessibility. */
.qe-solutions.qe-motion--low .qe-tech-map,.qe-solutions.qe-motion--low .qe-tech-grid{opacity:.3}
.qe-solutions.qe-motion--medium .qe-tech-map{opacity:.62}
.qe-solutions.qe-motion--off .qe-automation-visual *,
.qe-solutions.qe-motion--off .qe-automation-visual *::before,
.qe-solutions.qe-motion--off .qe-automation-visual *::after,
.qe-solutions.qe-motion--off .qe-solution-icon:before{animation:none!important}
.qe-solutions.qe-motion--off .qe-tech-tracer{display:none}
.qe-solutions.qe-motion--off .qe-automation-visual{opacity:.35}
@keyframes qe-data-flow{to{stroke-dashoffset:-368}}
@keyframes qe-node-beat{0%,100%{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}
@keyframes qe-grid-scan{to{background-position:80px 80px}}
@keyframes qe-orb-breathe{0%,100%{transform:scale(1);opacity:.68}50%{transform:scale(1.17);opacity:1}}
@keyframes qe-orbit{to{transform:rotate(360deg)}}
@keyframes qe-tracer-run{0%{transform:translateX(-160%)}100%{transform:translateX(340%)}}

@media(max-width:1150px){.qe-solutions .qe-solution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.qe-products .qe-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.qe-products .qe-product-frame{height:min(var(--qe-image-height,390px),320px)}}
@media(max-width:767px){.quartz-enhancer.qe-section{padding:52px 16px}.qe-solutions .qe-solution-showcase{padding:28px 17px}.qe-solutions .qe-section-head h2{font-size:42px}.qe-solutions .qe-solution-grid{gap:13px}.qe-solutions .qe-solution-card{min-height:225px;padding:19px;border-radius:17px}.qe-solutions .qe-solution-icon{width:75px;height:75px;border-radius:18px;margin-bottom:19px}.qe-solutions .qe-solution-icon:before{border-radius:22px}.qe-solutions .qe-solution-card h3{font-size:19px}.qe-solutions .qe-solution-card p{font-size:12px}.qe-products .qe-product-grid{gap:16px}.qe-products .qe-product-frame{height:240px}.qe-products .qe-product-info{padding:17px 13px;min-height:98px}.qe-products .qe-product-info h3{font-size:18px}.qe-products .qe-product-info p{font-size:12px}}
@media(max-width:570px){.qe-products .qe-product-grid{grid-template-columns:1fr}.qe-products .qe-product-frame{height:min(var(--qe-image-height,390px),355px)}.qe-products .qe-product-number,.qe-products .qe-product-arrow{display:block}.qe-solutions .qe-solution-showcase{padding:24px 12px;border-radius:20px}.qe-solutions .qe-solution-grid{gap:9px}.qe-solutions .qe-solution-card{padding:14px;min-height:190px}.qe-solutions .qe-solution-icon{width:67px;height:67px}.qe-solutions .qe-solution-card h3{font-size:17px}.qe-solutions .qe-solution-card p{font-size:11px;line-height:1.45}}
@media(prefers-reduced-motion:reduce){.qe-automation-visual *,.qe-automation-visual *::before,.qe-automation-visual *::after,.qe-solutions .qe-solution-icon:before{animation:none!important}.qe-tech-tracer{display:none!important}}
/* Elementor transparent tone still needs an accessible dark canvas for the light Solutions text. */
.quartz-enhancer.qe-solutions.qe-tone--clear .qe-solution-showcase{background:linear-gradient(135deg,rgba(4,25,47,.98),rgba(10,56,98,.96));color:#fff}
/* Admin-selected background concepts. */
.qe-solutions.qe-bgstyle--grid .qe-tech-map,.qe-solutions.qe-bgstyle--grid .qe-tech-tracer{display:none}
.qe-solutions.qe-bgstyle--grid .qe-tech-grid{opacity:.85;background-size:52px 52px;animation-duration:4.5s}
.qe-solutions.qe-bgstyle--grid .qe-tech-spot{opacity:.85}
.qe-solutions.qe-bgstyle--minimal .qe-automation-visual{display:none}
.qe-solutions.qe-bgstyle--minimal:not(.qe-tone--clear){background:linear-gradient(135deg,#04172b,#092e54 55%,#0b385e)}
