#moov-showcase-v3{--mv-navy:#082c66;--mv-blue:#156da9;--mv-cyan:#09a6d1;--mv-orange:#ff7028;--mv-pink:#ed2877;--mv-yellow:#ffc63d;width:100%;color:var(--mv-navy);overflow:hidden;font-family:inherit}#moov-showcase-v3,#moov-showcase-v3 *{box-sizing:border-box}#moov-showcase-v3 img{display:block;max-width:100%}#moov-showcase-v3 :is(h1,h2,h3,p){margin:0;padding:0}#moov-showcase-v3 a{text-decoration:none!important}#moov-showcase-v3 .mv-wrap{width:min(1220px,calc(100% - 48px));margin:auto}#moov-showcase-v3 .mv-hero{position:relative;isolation:isolate;background:#fff;padding:44px 0 65px}#moov-showcase-v3 .mv-hero-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:20px;align-items:center}#moov-showcase-v3 .mv-hero-copy{position:relative;z-index:3;padding:12px 0}#moov-showcase-v3 .mv-overline{display:inline-flex;align-items:center;gap:9px;padding:9px 13px;border:2px solid var(--mv-navy);border-radius:30px;font-size:11px;font-weight:900;letter-spacing:.12em}#moov-showcase-v3 .mv-spark-dot{width:10px;height:10px;border-radius:50%;background:var(--mv-pink)}#moov-showcase-v3 .mv-hero h1{color:var(--mv-navy)!important;font-size:clamp(54px,6.8vw,100px);font-weight:950;line-height:.94;letter-spacing:-.06em;margin:24px 0}#moov-showcase-v3 .mv-hero h1 strong{color:var(--mv-pink);font-weight:950;text-shadow:4px 5px 0 var(--mv-yellow)}#moov-showcase-v3 .mv-hero-copy>p:not(.mv-hero-footnote){font-size:clamp(16px,1.6vw,20px);line-height:1.55;color:#30547f;max-width:450px}#moov-showcase-v3 .mv-hero-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:27px 0 16px}#moov-showcase-v3 .mv-btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:53px;padding:13px 21px;border-radius:60px;font-size:14px;font-weight:900;line-height:1.2;transition:transform .2s,box-shadow .2s}#moov-showcase-v3 .mv-btn:hover{transform:translateY(-3px)}#moov-showcase-v3 .mv-btn-hot{background:var(--mv-orange);color:#fff!important;box-shadow:0 5px 0 #d34e17}#moov-showcase-v3 .mv-btn-line{border:2px solid var(--mv-navy);background:#fff;color:var(--mv-navy)!important}#moov-showcase-v3 .mv-hero-footnote{font-size:13px;color:#687f9a;font-style:italic;font-weight:700}#moov-showcase-v3 .mv-hero-art{position:relative;min-width:0;padding:25px 0 17px}#moov-showcase-v3 .mv-hero-orbit{position:absolute;top:8%;left:11%;width:82%;height:78%;background:#d5f4fc;border-radius:50% 50% 44% 56%/55% 44% 56% 45%;transform:rotate(16deg)}#moov-showcase-v3 .mv-truck{position:relative;z-index:2;width:115%;max-width:none;height:auto;transform:translateX(-3%) rotate(-2deg);filter:drop-shadow(0 18px 13px rgba(8,44,102,.16))}#moov-showcase-v3 .mv-burst{position:absolute;z-index:3;font-weight:900;line-height:1}#moov-showcase-v3 .mv-burst-a{top:4%;right:7%;font-size:65px;color:var(--mv-orange);transform:rotate(18deg)}#moov-showcase-v3 .mv-burst-b{bottom:6%;left:3%;font-size:45px;color:var(--mv-cyan)}#moov-showcase-v3 .mv-stamp{position:absolute;z-index:4;right:0;bottom:5%;width:108px;height:108px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:var(--mv-yellow);border:4px solid white;box-shadow:0 10px 25px rgba(8,44,102,.18);color:var(--mv-navy);font-size:13px;font-weight:850;line-height:1.15;text-align:center;transform:rotate(13deg)}#moov-showcase-v3 .mv-stamp b{color:#d84056;font-size:18px}#moov-showcase-v3 .mv-color-rule{position:absolute;bottom:0;width:100%;height:12px;background:linear-gradient(90deg,var(--mv-pink) 0 26%,var(--mv-orange) 26% 50%,var(--mv-yellow) 50% 72%,var(--mv-cyan) 72%)}#moov-showcase-v3 .mv-start{background:#fff;padding:75px 0 83px}#moov-showcase-v3 .mv-intro-head{text-align:center;max-width:760px;margin:0 auto 34px}#moov-showcase-v3 .mv-kicker{display:block;color:var(--mv-orange);font-size:11px;font-weight:950;letter-spacing:.17em;margin-bottom:9px}#moov-showcase-v3 .mv-intro-head h2{font-size:clamp(33px,4.1vw,54px);color:var(--mv-navy);letter-spacing:-.045em;line-height:1.1;font-weight:950}#moov-showcase-v3 .mv-intro-head h2 em{color:var(--mv-cyan);font-style:normal}#moov-showcase-v3 .mv-intro-head p{color:#45678a;font-size:17px;margin-top:13px;line-height:1.5}#moov-showcase-v3 .mv-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}#moov-showcase-v3 .mv-route{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;min-height:280px;border-radius:18px;padding:27px;color:#fff!important;box-shadow:0 13px 25px rgba(8,44,102,.13);transition:transform .25s,box-shadow .25s}#moov-showcase-v3 .mv-route::after{content:"";position:absolute;z-index:-1;right:-85px;bottom:-130px;width:250px;height:250px;border:30px solid rgba(255,255,255,.14);border-radius:50%}#moov-showcase-v3 .mv-route:hover{transform:translateY(-7px) rotate(-.5deg);box-shadow:0 20px 30px rgba(8,44,102,.23)}#moov-showcase-v3 .mv-route-one{background:#082e6e}#moov-showcase-v3 .mv-route-two{background:#087eae}#moov-showcase-v3 .mv-route-three{background:#f36c29}#moov-showcase-v3 .mv-route-number{font-size:11px;font-weight:950;letter-spacing:.13em;opacity:.88}#moov-showcase-v3 .mv-route-symbol{position:absolute;right:18px;top:2px;font-size:87px;font-weight:800;line-height:1;opacity:.28;transform:rotate(13deg)}#moov-showcase-v3 .mv-route strong{display:block;margin:53px 0 10px;max-width:275px;font-size:clamp(27px,2.7vw,37px);line-height:1.04;letter-spacing:-.04em;font-weight:950}#moov-showcase-v3 .mv-route-caption{display:block;max-width:280px;font-size:15px;line-height:1.4;opacity:.95}#moov-showcase-v3 .mv-route-action{display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%;margin-top:auto;padding-top:24px;font-size:11px;letter-spacing:.1em;font-weight:950}#moov-showcase-v3 .mv-route-action>span{display:grid;place-items:center;width:32px;height:32px;border:2px solid rgba(255,255,255,.7);border-radius:50%;font-size:19px}#moov-showcase-v3 .mv-collection{padding:78px 0 85px;scroll-margin-top:125px}#moov-showcase-v3 .mv-collection-editor{background:#f7f9fc}#moov-showcase-v3 .mv-collection-upload{background:var(--mv-navy)}#moov-showcase-v3 .mv-collection-ready{background:#fff}#moov-showcase-v3 .mv-collection-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:32px}#moov-showcase-v3 .mv-group-label{display:inline-flex;align-items:center;gap:9px;margin-bottom:13px;color:#0a77b1;font-size:11px;font-weight:950;letter-spacing:.14em}#moov-showcase-v3 .mv-group-label b{display:inline-grid;place-items:center;width:30px;height:30px;color:#fff;background:var(--mv-orange);border-radius:50%;font-size:12px;letter-spacing:0}#moov-showcase-v3 .mv-collection h2{color:var(--mv-navy);font-size:clamp(33px,4.3vw,53px);font-weight:950;letter-spacing:-.045em;line-height:1.08}#moov-showcase-v3 .mv-collection h2 span{color:var(--mv-blue)}#moov-showcase-v3 .mv-collection-head>p{max-width:310px;color:#52708e;font-size:16px;line-height:1.5;padding-bottom:3px}#moov-showcase-v3 .mv-collection-upload .mv-group-label{color:#79daf1}#moov-showcase-v3 .mv-collection-upload h2{color:#fff}#moov-showcase-v3 .mv-collection-upload h2 span{color:#3bd1ec}#moov-showcase-v3 .mv-collection-upload .mv-collection-head>p{color:#cee1f4}#moov-showcase-v3 .mv-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}#moov-showcase-v3 .mv-card{display:block;overflow:hidden;border-radius:19px;background:#fff;box-shadow:0 10px 32px rgba(8,44,102,.12);color:var(--mv-navy)!important;transition:transform .23s,box-shadow .23s}#moov-showcase-v3 .mv-card:hover{transform:translateY(-7px);box-shadow:0 19px 40px rgba(8,44,102,.20)}#moov-showcase-v3 .mv-card-visual{position:relative;isolation:isolate;height:285px;display:flex;align-items:center;justify-content:center;padding:48px 35px 18px;overflow:hidden}#moov-showcase-v3 .mv-card-visual::before{content:"";position:absolute;z-index:-1;inset:auto -50px -130px auto;width:350px;height:330px;border:40px solid rgba(255,255,255,.12);border-radius:50%;transform:rotate(-18deg)}#moov-showcase-v3 .mv-card-visual::after{content:"";position:absolute;z-index:-1;width:62%;height:100%;right:-20%;top:-20%;background:rgba(255,255,255,.075);transform:skew(-25deg)}#moov-showcase-v3 .mv-card-editor-a .mv-card-visual{background:#073878}#moov-showcase-v3 .mv-card-editor-b .mv-card-visual{background:#167aaa}#moov-showcase-v3 .mv-card-upload-a .mv-card-visual{background:#0c9ac2}#moov-showcase-v3 .mv-card-upload-b .mv-card-visual{background:#f36c29}#moov-showcase-v3 .mv-card-visual img{width:auto!important;height:auto!important;max-height:225px!important;max-width:94%!important;object-fit:contain!important;position:relative;z-index:2;filter:drop-shadow(0 13px 10px rgba(0,12,44,.27));transition:transform .23s}#moov-showcase-v3 .mv-card:hover .mv-card-visual img{transform:scale(1.055) rotate(-1deg)}#moov-showcase-v3 .mv-card-eyebrow{position:absolute;top:20px;left:22px;z-index:3;padding:7px 11px;background:#fff;color:var(--mv-navy);border-radius:5px;font-size:10px;font-weight:950;letter-spacing:.11em;transform:rotate(-2deg);box-shadow:3px 3px 0 rgba(3,21,61,.25)}#moov-showcase-v3 .mv-visual-doodle{position:absolute;right:21px;bottom:10px;color:rgba(255,255,255,.34);font-size:75px;line-height:1;transform:rotate(15deg)}#moov-showcase-v3 .mv-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:153px;padding:25px 26px 27px;border-top:6px solid var(--mv-orange)}#moov-showcase-v3 .mv-card-editor-b .mv-card-bottom{border-top-color:var(--mv-pink)}#moov-showcase-v3 .mv-card-upload-a .mv-card-bottom{border-top-color:var(--mv-cyan)}#moov-showcase-v3 .mv-card-upload-b .mv-card-bottom{border-top-color:var(--mv-yellow)}#moov-showcase-v3 .mv-card-kind{display:block;margin-bottom:7px;color:#177fac;font-size:10px;font-weight:950;letter-spacing:.14em}#moov-showcase-v3 .mv-card h3{color:var(--mv-navy);font-size:clamp(25px,2.5vw,33px);line-height:1.08;letter-spacing:-.03em;font-weight:950}#moov-showcase-v3 .mv-card-bottom p{font-size:14px;color:#5a728e;line-height:1.45;margin-top:7px}#moov-showcase-v3 .mv-card-arrow{display:grid;place-items:center;flex:0 0 54px;width:54px;height:54px;border-radius:50%;background:var(--mv-navy);color:#fff;font-size:25px;transition:background .23s,transform .23s}#moov-showcase-v3 .mv-card:hover .mv-card-arrow{background:var(--mv-orange);transform:rotate(45deg)}#moov-showcase-v3 .mv-feature{display:grid;grid-template-columns:.88fr 1.12fr;min-height:365px;color:#fff!important;background:var(--mv-orange);border-radius:22px;overflow:hidden;box-shadow:0 15px 35px rgba(8,44,102,.14);transition:transform .25s,box-shadow .25s}#moov-showcase-v3 .mv-feature:hover{transform:translateY(-6px);box-shadow:0 20px 39px rgba(8,44,102,.23)}#moov-showcase-v3 .mv-feature-copy{padding:40px 42px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}#moov-showcase-v3 .mv-feature-tag{display:inline-block;padding:8px 12px;border-radius:50px;font-size:10px;font-weight:950;letter-spacing:.13em;background:#fff;color:var(--mv-navy);margin-bottom:23px}#moov-showcase-v3 .mv-feature h3{color:#fff;font-size:clamp(49px,5.4vw,77px);line-height:.92;letter-spacing:-.05em;font-weight:950}#moov-showcase-v3 .mv-feature-copy p{max-width:330px;font-size:16px;line-height:1.5;margin:18px 0 25px;color:#fff}#moov-showcase-v3 .mv-feature-action{display:inline-flex;align-items:center;gap:18px;padding:13px 17px;border-radius:50px;background:var(--mv-navy);color:#fff;font-size:11px;letter-spacing:.06em;font-weight:950}#moov-showcase-v3 .mv-feature-image{display:flex;align-items:center;justify-content:center;position:relative;isolation:isolate;overflow:hidden;background:#0c3575;padding:35px}#moov-showcase-v3 .mv-feature-image::before{content:"";position:absolute;z-index:-1;width:430px;height:430px;border-radius:50%;border:55px solid #14509a;right:-80px;top:-70px}#moov-showcase-v3 .mv-feature-image img{max-height:310px!important;max-width:95%!important;width:auto!important;height:auto!important;object-fit:contain;filter:drop-shadow(0 17px 14px rgba(0,0,0,.26));transition:transform .23s}#moov-showcase-v3 .mv-feature:hover img{transform:scale(1.045) rotate(-1deg)}#moov-showcase-v3 .mv-feature-star{position:absolute;right:20px;bottom:3px;font-size:100px;color:rgba(255,255,255,.18)}#moov-showcase-v3 .mv-outro{background:var(--mv-navy);padding:62px 0}#moov-showcase-v3 .mv-outro-flex{display:flex;align-items:center;justify-content:space-between;gap:40px}#moov-showcase-v3 .mv-outro h2{font-size:clamp(33px,4.2vw,54px);color:#fff;font-weight:950;letter-spacing:-.045em;line-height:1.1}#moov-showcase-v3 .mv-outro h2 em{color:var(--mv-yellow);font-style:normal}#moov-showcase-v3 .mv-outro p{color:#c6dbee;font-size:16px;margin-top:10px}#moov-showcase-v3 .mv-outro .mv-btn{flex-shrink:0}#moov-showcase-v3 a:focus-visible{outline:4px solid var(--mv-yellow);outline-offset:4px}@media(max-width:980px){#moov-showcase-v3 .mv-hero-grid{grid-template-columns:1fr}#moov-showcase-v3 .mv-hero-art{order:-1;max-width:670px;width:100%;margin:auto}#moov-showcase-v3 .mv-hero-copy{text-align:center;padding:0}#moov-showcase-v3 .mv-hero-copy>p:not(.mv-hero-footnote){margin:auto}#moov-showcase-v3 .mv-hero-buttons{justify-content:center}#moov-showcase-v3 .mv-collection-head{align-items:start;flex-direction:column;gap:13px}#moov-showcase-v3 .mv-collection-head>p{max-width:650px}#moov-showcase-v3 .mv-route{min-height:290px;padding:22px}#moov-showcase-v3 .mv-route strong{font-size:27px}}@media(max-width:700px){#moov-showcase-v3 .mv-wrap{width:calc(100% - 32px)}#moov-showcase-v3 .mv-hero{padding:20px 0 45px}#moov-showcase-v3 .mv-hero-art{padding:10px 0}#moov-showcase-v3 .mv-truck{width:109%}#moov-showcase-v3 .mv-burst-a{font-size:39px}#moov-showcase-v3 .mv-burst-b{font-size:32px}#moov-showcase-v3 .mv-stamp{width:72px;height:72px;font-size:10px;border-width:3px}#moov-showcase-v3 .mv-stamp b{font-size:12px}#moov-showcase-v3 .mv-hero h1{font-size:clamp(55px,12vw,78px);margin:20px 0}#moov-showcase-v3 .mv-hero-copy>p:not(.mv-hero-footnote){font-size:16px}#moov-showcase-v3 .mv-start{padding:55px 0 62px}#moov-showcase-v3 .mv-route-grid,#moov-showcase-v3 .mv-product-grid{grid-template-columns:1fr}#moov-showcase-v3 .mv-route{min-height:223px}#moov-showcase-v3 .mv-route strong{margin-top:31px}#moov-showcase-v3 .mv-collection{padding:58px 0 65px}#moov-showcase-v3 .mv-card-visual{height:245px}#moov-showcase-v3 .mv-card-visual img{max-height:185px!important}#moov-showcase-v3 .mv-card-bottom{padding:22px;min-height:130px}#moov-showcase-v3 .mv-card-arrow{flex-basis:46px;width:46px;height:46px}#moov-showcase-v3 .mv-feature{grid-template-columns:1fr}#moov-showcase-v3 .mv-feature-copy{padding:32px}#moov-showcase-v3 .mv-feature h3{font-size:57px}#moov-showcase-v3 .mv-feature-image{min-height:260px}#moov-showcase-v3 .mv-feature-image img{max-height:225px!important}#moov-showcase-v3 .mv-outro{padding:48px 0}#moov-showcase-v3 .mv-outro-flex{align-items:flex-start;flex-direction:column;gap:22px}}
/* ===== VOOM PRODUCT PAGE SYSTEM: 318, 315, 692, 721 ===== */
/* Scope only to the four demo products, not native editor or basket pages. */
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .product-info-section{background:linear-gradient(#f4f9fd,#fff);padding:28px 18px 24px!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .product-info-section>.container{width:100%!important;max-width:1220px!important;margin:auto!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .product-info-section>.container>.columns{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important;gap:clamp(20px,3vw,40px)!important;align-items:start!important;margin:0!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .product-info-section :is(.picture-wrapper,.details-wrapper){min-width:0!important;max-width:none!important;width:auto!important;flex:none!important;margin:0!important;padding:0!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .picture-wrapper{position:sticky;top:126px}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .picture-wrapper .product-details-info{position:relative;margin:0!important;padding:21px 23px 25px!important;box-sizing:border-box!important;background:#fff;border:1px solid #dce8f2;border-radius:20px;box-shadow:0 13px 32px rgba(8,44,102,.075);overflow:hidden}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .picture-wrapper .product-details-info::before{content:"PERSONALIZE ONLINE / PREVIEW";display:block;color:#0b7eaa;font-size:12px;font-weight:900;letter-spacing:.07em;margin:0 0 13px}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .picture-wrapper .product-details-info::after{content:"";position:absolute;inset:auto 0 0;height:6px;background:linear-gradient(90deg,#ed2877 0 24%,#ff7028 24% 49%,#ffc63d 49% 74%,#09a6d1 74%)}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .picture-wrapper .picture{display:block!important;width:100%!important;margin:0!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .picture-wrapper .bigpicture{display:flex!important;align-items:center;justify-content:center;min-height:345px!important;width:100%!important;padding:18px!important;margin:0!important;background:#f4f8fb;border-radius:14px}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .picture-wrapper .bigpicture>img{display:block;max-width:100%!important;max-height:335px!important;width:auto!important;height:auto!important;object-fit:contain!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .details-wrapper{display:flex!important;flex-direction:column;align-items:stretch}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) :is(#product-title_318,#product-title_315,#product-title_692,#product-title_721){order:1;margin:0 0 15px!important;padding:0!important;color:#082c66!important;font-size:clamp(35px,3.7vw,52px)!important;font-weight:900!important;line-height:1.04!important;letter-spacing:-.045em}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) :is(#product-title_318,#product-title_315,#product-title_692,#product-title_721)::before{content:"THE MOOV GROUP / ONLINE EDITOR";display:block;margin-bottom:10px;color:#dc5c21;font-size:12px;line-height:1.4;font-weight:900;letter-spacing:.07em}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .details-wrapper>.product-variant-list{order:3;min-width:0;margin:0!important;padding:0!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .details-wrapper>:is(#client_side_errors_span,#client_side_information_span){order:2}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .product-variant-line{margin:0!important;padding:0!important}
/* Ordering form: preserve native Infigo inputs and submission. */
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .add-to-cart-wrapper{margin:0!important;padding:20px 23px!important;background:#fff;border:1px solid #dce8f2;border-top:5px solid #0aa6d0;border-radius:18px;box-shadow:0 12px 29px rgba(8,44,102,.085)}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .add-to-cart-wrapper::before{content:"Make these yours";display:block;color:#082c66;font-size:20px;font-weight:900;line-height:1.2;margin:0 0 15px}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .price-quantity-start-wrapper,html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .price-quantity-start-wrapper>.columns{margin:0!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .price-quantity-start-wrapper>.columns{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .price-quantity-start-wrapper>.columns>.column{flex:none!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .price-quantity-start-wrapper .productPrice{color:#082c66!important;font-size:23px!important;font-weight:900!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .quantity-wrapper :is(.field.is-horizontal,.field-label,.field-body){display:block!important;flex:none!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;text-align:left!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .quantity-wrapper .enterQuantityBoxLabel{display:block;margin:0 0 8px!important;color:#294b71!important;font-size:14px!important;font-weight:850!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .quantity-wrapper .enterQuantityBoxLabel::before{content:"01 / ";color:#0b88b8;font-weight:900}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .quantity-wrapper :is(select.quantity-input-selector,input.quantityBox:not([type="hidden"]):not([style*="display: none"])){display:block;width:100%!important;max-width:100%!important;min-height:52px!important;padding:11px 15px!important;background:#f6fafc!important;border:2px solid #cddfea!important;border-radius:10px!important;box-shadow:none!important;color:#082c66!important;font-family:inherit;font-size:17px!important;font-weight:800!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .quantity-wrapper :is(select,input):focus-visible{outline:3px solid #ff7028;outline-offset:2px}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) :is(.add-to-cart-buttons-wrapper,.action-start-design){display:block!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .action-start-design{position:relative;isolation:isolate}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .action-start-design::before{content:"02 / OPEN THE EDITOR";display:block;margin:0 0 8px;color:#0b83af;font-size:12px;line-height:1.3;font-weight:900;letter-spacing:.045em}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .add-to-cart-buttons-wrapper :is(input.dynamic_product_start,input[type="submit"],button[type="submit"]){display:block!important;width:100%!important;min-height:55px!important;padding:12px 20px!important;border:0!important;border-radius:11px!important;background:#ff7028!important;color:#fff!important;box-shadow:0 4px 0 #d3521a!important;font-family:inherit;font-size:19px!important;font-weight:900!important;line-height:1.2;cursor:pointer;transition:transform .18s,background .18s}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .add-to-cart-buttons-wrapper :is(input.dynamic_product_start,input[type="submit"],button[type="submit"]):hover{background:#f6611c!important;transform:translateY(-2px)}

/* Native delivery countdown is only shown if Infigo actually renders it. */
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) #delivery-countdown-banner{display:block!important;flex:none!important;order:4;width:100%!important;margin:14px 0 0!important;padding:0!important;background:#ecf8fc!important;color:#082c66!important;border:1px solid #cce8f2!important;border-left:5px solid #09a6d1!important;border-radius:15px!important;overflow:hidden}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) #delivery-countdown-banner .hero-body{padding:15px 17px!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) #delivery-countdown-banner .hero-body>.container{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) #delivery-countdown-banner .countdown_timer{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:center!important;gap:14px!important;margin:0!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) #delivery-countdown-banner .countdown_timer>.level-item{display:block!important;min-width:0!important;margin:0!important;padding:0!important;text-align:left!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) #delivery-countdown-banner .countdown_timer>.level-item+.level-item{padding-left:14px!important;border-left:1px solid #c9deea}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) #delivery-countdown-banner .heading{display:block!important;margin:0 0 5px!important;color:#137ba4!important;font-size:11px!important;font-weight:900!important;letter-spacing:.06em!important;text-transform:uppercase!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) #delivery-countdown-banner .title.is-4{display:block!important;margin:0!important;color:#082c66!important;font-size:clamp(18px,1.5vw,22px)!important;font-weight:900!important;line-height:1.3!important;white-space:normal!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) #delivery-countdown-banner :is(span,d.subtitle){color:#3f6787!important}
/* Lower product-detail panel. */
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .additional-description-section{padding:13px 18px 35px!important;background:#fff!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .additional-description-section>.container{max-width:1220px!important;width:100%!important;margin:auto!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .additional-description-wrapper>.content>section.section{display:block!important;margin:0!important;padding:20px 25px!important;background:#f3f9fc!important;border:1px solid #dbeaf4;border-radius:17px;box-shadow:none!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .additional-description-wrapper>.content>section.section::before{content:"CONSISTENT BRANDING. PROFESSIONAL PRINT.";display:block;margin:0 0 10px;color:#0b80ac;font-size:12px;font-weight:900;letter-spacing:.08em}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .additional-description-wrapper>.content>section.section :is(.container,.columns,.column.is-12.is-flex){max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .additional-description-wrapper>.content>section.section .column.is-12.is-flex>.columns{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,.6fr)!important;gap:24px!important;align-items:center!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .additional-description-wrapper :is(.ict-content-column,.ict-image-column){min-width:0!important;max-width:none!important;width:100%!important;flex:none!important;padding:0!important;margin:0!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .additional-description-wrapper .ict-paragraph p{color:#3b5b7b!important;font-size:15px!important;line-height:1.55!important;margin:0 0 9px!important}
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .additional-description-wrapper .ict-image-column img{max-height:185px!important;width:100%!important;height:auto!important;object-fit:contain}
/* Business Cards has no redundant long description. */
html:has(#product-title_318) .details-wrapper>.full-description-wrapper{display:none!important}
/* Name Badges keeps its CSV download guide but not the broken bottom image. */
html:has(#product-title_315) #product-title_315::before{content:"THE MOOV GROUP / BULK NAME UPLOAD"}
html:has(#product-title_315) .picture-wrapper .product-details-info::before{content:"NAME BADGES / PRODUCT PREVIEW"}
html:has(#product-title_315) .picture-wrapper .bigpicture{min-height:430px!important;overflow:hidden;background:radial-gradient(circle,#fff,#f4faff 38%,#eaf4fb)!important}
html:has(#product-title_315) .picture-wrapper .bigpicture>img{max-height:370px!important;transform:scale(1.65);filter:drop-shadow(0 10px 13px rgba(8,44,102,.09))}
html:has(#product-title_315) .add-to-cart-wrapper::before{content:"Create your name badges"}
html:has(#product-title_315) .action-start-design::before{content:"02 / OPEN THE DATA EDITOR"}

html:has(#product-title_315) .details-wrapper>.full-description-wrapper{display:block!important;order:5!important;margin:13px 0 0!important;padding:19px 21px!important;background:#fff!important;border:1px solid #dce8f2;border-radius:16px}
html:has(#product-title_315) .details-wrapper>.full-description-wrapper::before{content:"Add a whole list of names";display:block;margin-bottom:10px;color:#082c66;font-size:19px;font-weight:900}
html:has(#product-title_315) .full-description-wrapper p{color:#425f7f!important;font-size:15.5px!important;line-height:1.6!important;margin:0 0 9px!important}
html:has(#product-title_315) .full-description-wrapper a{display:inline-flex!important;align-items:center;justify-content:center;min-height:46px;max-width:100%;padding:12px 17px!important;border-radius:9px;background:#082c66!important;color:#fff!important;font-size:14px!important;font-weight:850!important;text-decoration:none!important}
html:has(#product-title_315) .additional-description-wrapper>.content>section.section::before{content:"Durable PETG badges · Magnetic backing";font-size:16px;letter-spacing:0;color:#082c66}
html:has(#product-title_315) .additional-description-wrapper .column.is-12.is-flex>.columns{display:block!important}
html:has(#product-title_315) .additional-description-wrapper :is(.ict-image-column,.ict-image-column *,img,h1,h2,h3){display:none!important}
@media(min-width:1024px){html:has(#product-title_315) .picture-wrapper::after{content:"ONE CSV. EVERY BADGE.";display:flex;align-items:center;min-height:95px;margin-top:15px;padding:22px;border-left:7px solid #ff7028;border-radius:15px;background:linear-gradient(110deg,#082c66,#10528b);color:#fff;font-size:clamp(21px,2vw,28px);font-weight:900}}
/* Upload-art products retain live Canva template URLs. */
html:has(#product-title_692,#product-title_721) :is(#product-title_692,#product-title_721)::before{content:"THE MOOV GROUP / UPLOAD YOUR ART"}
html:has(#product-title_692,#product-title_721) .picture-wrapper .product-details-info::before{content:"UPLOAD ART / PRODUCT PREVIEW"}
html:has(#product-title_692,#product-title_721) .add-to-cart-wrapper::before{content:"Ready to upload your artwork?"}
html:has(#product-title_692,#product-title_721) .action-start-design::before{content:"02 / OPEN THE ARTWORK UPLOADER"}

html:has(#product-title_692,#product-title_721) .details-wrapper>.full-description-wrapper{display:block!important;order:5!important;margin:14px 0 0!important;padding:22px 24px!important;min-width:0!important;border:1px solid #dce8f2!important;border-top:5px solid #09a6d1!important;border-radius:17px!important;background:#fff!important;box-shadow:0 10px 26px rgba(8,44,102,.06)!important}
html:has(#product-title_692,#product-title_721) .details-wrapper>.full-description-wrapper::before{content:"CREATE YOUR ARTWORK IN CANVA";display:block;margin:0 0 14px;color:#082c66;font-size:21px;font-weight:900;line-height:1.2}
html:has(#product-title_692,#product-title_721) .full-description-wrapper :is(p,li){color:#385b7d!important;font-size:15px!important;line-height:1.55!important}
html:has(#product-title_692,#product-title_721) .full-description-wrapper :is(ol,ul){margin:10px 0 13px!important;padding-left:23px!important;list-style-position:outside}
html:has(#product-title_692,#product-title_721) .full-description-wrapper li{margin-bottom:7px!important}
html:has(#product-title_692,#product-title_721) .full-description-wrapper li::marker{color:#0b80ac;font-weight:900}
html:has(#product-title_692,#product-title_721) .full-description-wrapper a[href*="canva.com"]{display:inline-flex!important;align-items:center;justify-content:center;min-height:47px;max-width:100%;padding:12px 19px!important;border:0;border-radius:10px;background:#082c66!important;color:#fff!important;font-size:15px!important;font-weight:900!important;text-decoration:none!important;box-shadow:0 3px 0 #0d6f9c}
html:has(#product-title_692) .picture-wrapper .product-details-info::before{content:"TRIFOLD BROCHURE / PRODUCT PREVIEW"}
html:has(#product-title_692) .details-wrapper>.full-description-wrapper::before{content:"CREATE YOUR TRIFOLD BROCHURE IN CANVA"}
/* ============================================================
   V36 — TRAVEL WALLET REFINEMENT (PRODUCT 721 ONLY)
   Uses the existing Infigo picture/details markup and product actions.
   No artificial quantity form, replacement upload button, or fake asset URL.
   ============================================================ */

/* Keep proven full-width Canva-description layout; minimize dead space. */
html:has(#product-title_721) .product-info-section>.container>.columns{
  display:grid!important;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr)!important;
  grid-template-rows:min-content min-content min-content auto auto auto!important;
  gap:0 clamp(22px,3vw,40px)!important;
  align-items:start!important;
}
html:has(#product-title_721) .product-info-section .details-wrapper{display:contents!important}
html:has(#product-title_721) .picture-wrapper{
  grid-column:1!important;grid-row:1/5!important;
  align-self:stretch!important;position:static!important;
  min-height:0!important;height:100%!important;margin:0!important;padding:0!important;
}
html:has(#product-title_721) .picture-wrapper .product-details-info{
  height:100%!important;min-height:0!important;box-sizing:border-box!important;
  display:flex!important;flex-direction:column!important;
  padding:20px 22px 22px!important;
  border-radius:20px!important;
  background:#fff!important;border-color:#d6e6f2!important;
  box-shadow:0 12px 30px rgba(8,44,102,.085)!important;
}
html:has(#product-title_721) .picture-wrapper .product-details-info::before{
  content:"TRAVEL WALLET / PRODUCT PREVIEW";
  margin-bottom:11px!important;
}
html:has(#product-title_721) .picture-wrapper .picture{
  flex:1 1 auto!important;display:flex!important;min-height:0!important;
}
html:has(#product-title_721) .picture-wrapper .bigpicture{
  flex:1 1 auto!important;display:flex!important;
  justify-content:center!important;align-items:center!important;
  width:100%!important;min-height:290px!important;
  padding:12px!important;margin:0!important;
  overflow:hidden!important;border-radius:16px!important;
  background:radial-gradient(ellipse at 51% 36%,#fff 0%,#f8fcff 46%,#eaf3f9 100%)!important;
}
html:has(#product-title_721) .picture-wrapper .bigpicture>img{
  display:block!important;
  width:100%!important;max-width:510px!important;
  max-height:345px!important;height:auto!important;
  object-fit:contain!important;object-position:center!important;
  transform:scale(1.07);
  filter:drop-shadow(0 16px 14px rgba(8,44,102,.17));
}
html:has(#product-title_721) #product-title_721{
  grid-column:2!important;grid-row:1!important;
  font-size:clamp(35px,3.5vw,49px)!important;
  letter-spacing:-.05em!important;line-height:1.03!important;
  margin-bottom:13px!important;
}
html:has(#product-title_721) .details-wrapper>#client_side_errors_span{grid-column:2!important;grid-row:2!important}
html:has(#product-title_721) .details-wrapper>#client_side_information_span{grid-column:2!important;grid-row:3!important}
html:has(#product-title_721) .details-wrapper>.product-variant-list{
  grid-column:2!important;grid-row:4!important;align-self:start!important;margin:0!important;
}
html:has(#product-title_721) #delivery-countdown-banner{
  grid-column:2!important;grid-row:5!important;align-self:start!important;
}
html:has(#product-title_721) .add-to-cart-wrapper::before{content:"Create your travel wallet"}

/* Full-width guide stays BELOW preview and Start (never inside purchase form). */
html:has(#product-title_721) .details-wrapper>.full-description-wrapper{
  grid-column:1/-1!important;grid-row:6!important;
  display:block!important;box-sizing:border-box!important;
  width:100%!important;max-width:none!important;min-width:0!important;
  margin:17px 0 0!important;padding:24px 26px!important;
  border:1px solid #d7e7f2!important;border-top:5px solid #09a6d1!important;
  border-radius:18px!important;background:#fff!important;
  box-shadow:0 12px 28px rgba(8,44,102,.065)!important;
}
/* Legacy description keeps its heading until the new copy is installed. */
html:has(#product-title_721) .details-wrapper>.full-description-wrapper::before{
  content:"MAKE YOUR TRAVEL WALLET IN CANVA";
  display:block!important;position:static!important;
  width:100%!important;max-width:none!important;
  margin:0 0 15px!important;padding:0!important;
  color:#082c66!important;font-size:clamp(22px,2.2vw,29px)!important;
  font-weight:950!important;letter-spacing:-.035em!important;line-height:1.15!important;
}
/* When the companion HTML is installed, use its real accessible heading. */
html:has(#product-title_721) .details-wrapper>.full-description-wrapper:has(.moov-wallet-guide)::before{
  content:none!important;display:none!important;
}
html:has(#product-title_721) .full-description-wrapper>.ict-paragraph{
  display:block!important;position:static!important;width:100%!important;
  max-width:none!important;margin:0!important;padding:0!important;
}
html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>p:first-child{
  display:block!important;position:static!important;width:100%!important;
  margin:0 0 15px!important;padding:0!important;
}
/* Preserve the exact existing Canva destination; no placeholder links. */
html:has(#product-title_721) .full-description-wrapper a[href*="canva.com"]{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:49px!important;max-width:100%!important;
  margin:0!important;padding:12px 20px!important;
  border:0!important;border-radius:11px!important;
  background:#082c66!important;color:#fff!important;
  font-size:15px!important;font-weight:900!important;
  line-height:1.2!important;text-decoration:none!important;
  box-shadow:0 4px 0 #0b7ba4!important;
  transition:background .16s,transform .16s;
}
html:has(#product-title_721) .full-description-wrapper a[href*="canva.com"]:hover{
  background:#11518e!important;transform:translateY(-2px);
}
html:has(#product-title_721) .full-description-wrapper a[href*="canva.com"]:focus-visible{
  outline:3px solid #ff7028!important;outline-offset:4px!important;
}
/* Legacy numbered steps continue to display properly before HTML replacement. */
html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>ol{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;counter-reset:wallet-step;list-style:none!important;
  width:100%!important;margin:0!important;padding:0!important;
}
html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>ol>li{
  position:relative!important;display:block!important;min-width:0!important;
  margin:0!important;padding:18px 20px 18px 59px!important;
  background:#f2f8fc!important;border:1px solid #dceaf3!important;
  border-radius:12px!important;color:#244a73!important;
  font-size:15px!important;font-weight:600!important;line-height:1.55!important;
  overflow-wrap:anywhere;
}
html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>ol>li::before{
  counter-increment:wallet-step;content:counter(wallet-step)!important;
  position:absolute!important;top:15px!important;left:17px!important;
  display:grid!important;place-items:center!important;width:29px!important;height:29px!important;
  border:0!important;border-radius:50%!important;background:#082c66!important;
  color:#fff!important;font-size:14px!important;font-weight:900!important;
}
html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>ol>li:last-child{
  grid-column:1/-1!important;background:#eaf7fb!important;border-color:#c5e6f2!important;
}
html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>ol>li:last-child::before{background:#0984b1!important}
html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>ol>li>ol{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;counter-reset:none!important;list-style:none!important;
  width:100%!important;margin:12px 0 0!important;padding:13px 0 0!important;
  border-top:1px solid #c5e0ed!important;
}
html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>ol>li>ol>li{
  position:relative!important;display:block!important;min-width:0!important;
  margin:0!important;padding:0 0 0 13px!important;
  background:transparent!important;border:0!important;
  color:#3d6380!important;font-size:13.5px!important;line-height:1.45!important;font-weight:500!important;
}
html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>ol>li>ol>li::before{
  content:""!important;position:absolute!important;top:.45em!important;left:0!important;
  width:6px!important;height:6px!important;border:0!important;
  border-radius:50%!important;background:#0b98bd!important;
}
html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>p:last-child:not(:first-child){
  display:block!important;position:static!important;box-sizing:border-box!important;
  width:100%!important;margin:15px 0 0!important;padding:12px 15px!important;
  background:#fff8e9!important;color:#6f562e!important;
  border:0!important;border-left:4px solid #ffbe33!important;border-radius:8px!important;
  font-size:13.5px!important;line-height:1.5!important;
}

/* The NEW guide markup lives inside the existing full description field. */
html:has(#product-title_721) .moov-wallet-guide{
  width:100%;max-width:none;min-width:0;margin:0;padding:0;
  font-family:inherit;color:#274e75;
}
html:has(#product-title_721) .moov-wallet-guide,
html:has(#product-title_721) .moov-wallet-guide *{box-sizing:border-box}
html:has(#product-title_721) .moov-wallet-guide__intro{
  display:grid;grid-template-columns:minmax(0,1fr) auto;
  gap:9px 25px;align-items:center;margin:0 0 18px;
}
html:has(#product-title_721) .moov-wallet-guide__eyebrow{
  grid-column:1/-1;margin:0!important;padding:0!important;
  color:#0c85b0!important;font-size:11px!important;
  letter-spacing:.11em;font-weight:900!important;text-transform:uppercase;
}
html:has(#product-title_721) .moov-wallet-guide__heading{
  grid-column:1;grid-row:2;margin:0!important;padding:0!important;
  font-size:clamp(22px,2.25vw,30px)!important;
  line-height:1.12!important;letter-spacing:-.035em;
  color:#082c66!important;font-weight:950!important;
}
html:has(#product-title_721) .moov-wallet-guide__summary{
  grid-column:1;grid-row:3;margin:0!important;padding:0!important;
  color:#53708b!important;line-height:1.45!important;
  font-size:14.5px!important;font-weight:500!important;
}
html:has(#product-title_721) a.moov-wallet-guide__button{
  grid-column:2;grid-row:2/4;
  white-space:nowrap;min-height:52px!important;
  padding:12px 23px!important;background:#082c66!important;
  border-radius:12px!important;color:#fff!important;
  font-size:15px!important;font-weight:900!important;
  text-decoration:none!important;box-shadow:0 4px 0 #0b7ba4!important;
}
html:has(#product-title_721) .moov-wallet-guide__steps{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:13px!important;counter-reset:moov-wallet-step;
  list-style:none!important;margin:0!important;padding:0!important;
}
html:has(#product-title_721) .moov-wallet-guide__step{
  position:relative!important;display:block!important;
  min-width:0!important;min-height:150px;
  margin:0!important;padding:20px 20px 19px 62px!important;
  background:#f3f8fc!important;border:1px solid #dce8f2!important;
  border-radius:14px!important;color:#385c7e!important;
  line-height:1.48!important;
}
html:has(#product-title_721) .moov-wallet-guide__step:nth-child(2){background:#eef9fc!important}
html:has(#product-title_721) .moov-wallet-guide__step:nth-child(3){background:#fff5eb!important;border-color:#ffddc8!important}
html:has(#product-title_721) .moov-wallet-guide__step::before{
  counter-increment:moov-wallet-step;
  content:counter(moov-wallet-step)!important;
  position:absolute!important;left:19px!important;top:18px!important;
  display:grid!important;place-items:center!important;
  width:29px!important;height:29px!important;
  border:0!important;border-radius:50%!important;
  background:#082c66!important;color:#fff!important;
  font-size:14px!important;font-weight:900!important;
}
html:has(#product-title_721) .moov-wallet-guide__step:nth-child(2)::before{background:#0b92be!important}
html:has(#product-title_721) .moov-wallet-guide__step:nth-child(3)::before{background:#ff7028!important}
html:has(#product-title_721) .moov-wallet-guide__step h3{
  margin:0 0 7px!important;padding:0!important;
  font-size:17px!important;line-height:1.2!important;
  font-weight:900!important;color:#082c66!important;
}
html:has(#product-title_721) .moov-wallet-guide__step p{
  margin:0!important;padding:0!important;
  font-size:14px!important;line-height:1.5!important;
  font-weight:500!important;color:#385b7d!important;
}
html:has(#product-title_721) .moov-wallet-guide__step ul{
  list-style:disc!important;margin:0!important;padding:0 0 0 18px!important;
}
html:has(#product-title_721) .moov-wallet-guide__step ul li{
  display:list-item!important;background:none!important;
  border:0!important;min-height:0!important;
  margin:0 0 3px!important;padding:0!important;
  color:#385b7d!important;font-size:14px!important;
  line-height:1.4!important;font-weight:500!important;
}
html:has(#product-title_721) .moov-wallet-guide__step ul li::before{content:none!important;display:none!important}
html:has(#product-title_721) .moov-wallet-guide__step strong{color:#082c66!important;font-weight:850!important}
html:has(#product-title_721) .moov-wallet-guide__note{
  margin:14px 0 0!important;padding:12px 16px!important;
  background:#fff8ed!important;border:1px solid #ffe1c6!important;
  border-left:4px solid #ffad47!important;border-radius:9px!important;
  color:#615039!important;font-size:13px!important;line-height:1.45!important;
}
html:has(#product-title_721) .moov-wallet-guide__note strong{color:#65441e!important}
@media(max-width:1023px){
  html:has(#product-title_721) .picture-wrapper .bigpicture{min-height:265px!important}
  html:has(#product-title_721) .picture-wrapper .bigpicture>img{max-height:300px!important;transform:scale(1.03)}
  html:has(#product-title_721) .moov-wallet-guide__steps{grid-template-columns:1fr!important}
  html:has(#product-title_721) .moov-wallet-guide__step{min-height:0!important}
}
@media(max-width:680px){
  html:has(#product-title_721) .picture-wrapper .bigpicture{min-height:235px!important}
  html:has(#product-title_721) .picture-wrapper .bigpicture>img{max-height:250px!important;transform:none}
  html:has(#product-title_721) .moov-wallet-guide__intro{display:flex;flex-direction:column;align-items:stretch;gap:12px}
  html:has(#product-title_721) a.moov-wallet-guide__button{width:100%!important;white-space:normal}
  html:has(#product-title_721) .moov-wallet-guide__step{padding:17px 16px 17px 57px!important}
  html:has(#product-title_721) .moov-wallet-guide__step::before{left:15px!important;top:16px!important}
}

/* Responsive behavior */
@media(max-width:1023px){
 html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .product-info-section>.container>.columns{grid-template-columns:1fr!important;gap:22px!important}
 html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .picture-wrapper{position:static}
 html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .picture-wrapper .bigpicture{min-height:260px!important}
 html:has(#product-title_315) .picture-wrapper .bigpicture{min-height:320px!important}
 html:has(#product-title_315) .picture-wrapper .bigpicture>img{transform:scale(1.4)}
 html:has(#product-title_315) .picture-wrapper::after{display:none!important}
 html:has(#product-title_721) .product-info-section>.container>.columns{grid-template-columns:1fr!important;grid-template-rows:none!important;row-gap:0!important}
 html:has(#product-title_721) .picture-wrapper{grid-column:1!important;grid-row:1!important;height:auto!important;margin:0 0 18px!important}
 html:has(#product-title_721) .picture-wrapper .product-details-info{height:auto!important}
 html:has(#product-title_721) #product-title_721{grid-column:1!important;grid-row:2!important}
 html:has(#product-title_721) .details-wrapper>#client_side_errors_span{grid-column:1!important;grid-row:3!important}
 html:has(#product-title_721) .details-wrapper>#client_side_information_span{grid-column:1!important;grid-row:4!important}
 html:has(#product-title_721) .details-wrapper>.product-variant-list{grid-column:1!important;grid-row:5!important}
 html:has(#product-title_721) #delivery-countdown-banner{grid-column:1!important;grid-row:6!important}
 html:has(#product-title_721) .details-wrapper>.full-description-wrapper{grid-column:1!important;grid-row:7!important}
 html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>ol>li>ol{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
 html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .product-info-section{padding:17px 13px 23px!important}
 html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .picture-wrapper .product-details-info{padding:15px 16px 19px!important}
 html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) :is(#product-title_318,#product-title_315,#product-title_692,#product-title_721){font-size:clamp(31px,8.4vw,40px)!important}
 html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .add-to-cart-wrapper{padding:18px!important}
 html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) #delivery-countdown-banner .countdown_timer{grid-template-columns:1fr!important;gap:11px!important}
 html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) #delivery-countdown-banner .countdown_timer>.level-item+.level-item{padding:11px 0 0!important;border:0;border-top:1px solid #c9deea}
 html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .additional-description-section{padding:10px 13px 28px!important}
 html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .additional-description-wrapper>.content>section.section .column.is-12.is-flex>.columns{grid-template-columns:1fr!important}
 html:has(#product-title_315) .picture-wrapper .bigpicture{min-height:255px!important}
 html:has(#product-title_315) .picture-wrapper .bigpicture>img{max-height:230px!important;transform:scale(1.1)}
 html:has(#product-title_315) .full-description-wrapper a{width:100%}
 html:has(#product-title_721) .details-wrapper>.full-description-wrapper{padding:19px!important;margin-top:15px!important}
 html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>ol{grid-template-columns:1fr!important}
 html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>ol>li:last-child{grid-column:1!important}
 html:has(#product-title_721) .full-description-wrapper>.ict-paragraph>ol>li>ol{grid-template-columns:1fr!important}
 html:has(#product-title_721) .full-description-wrapper a[href*="canva.com"]{width:100%!important}
}
/* END PRODUCT PAGE STYLES */

/* =========================================================
   V24 - MEGAEDIT ADD TO CART (editor toolbar only)
   Targets the verified Infigo translation label.
   ========================================================= */
:is(button,a,[role="button"],.button,.btn,.catfish-button,[ng-click]):has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"]){
  background-color:#FF7028!important;
  background-image:none!important;
  border-color:#FF7028!important;
  border-radius:7px!important;
  box-shadow:0 3px 0 #D35419!important;
}
:is(button,a,[role="button"],.button,.btn,.catfish-button,[ng-click]):has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"]):hover{
  background-color:#EB601E!important;
  border-color:#EB601E!important;
}
/* Orange fallback keeps the label readable if the wrapper differs. */
span[translate="pagelist.righthandbuttons.addtobasket.buttontext"]{
  color:#FF7028!important;
  font-weight:800!important;
}
:is(button,a,[role="button"],.button,.btn,.catfish-button,[ng-click]):has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"])
span[translate="pagelist.righthandbuttons.addtobasket.buttontext"]{
  color:#FFFFFF!important;
}

/* ============================================================
   V25 — MEGAEDIT PERSONALIZATION FORM POLISH
   - Preserves all backgrounds and the design dropdown
   - Keeps canvas, print guides, and toolbars unchanged
   - Editor only; does not target storefront product forms
   ============================================================ */

/* Text labels in MegaEdit's form, including background selection. */
:is(.DynamicProductWrapper, body:has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"])) :is(
  label,
  .control-label,
  .field-label,
  .form-label,
  [class*="fieldLabel"],
  [class*="formLabel"]
){
  color:#0A376C!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.4!important;
  letter-spacing:0!important;
}

/* The native design/background selector remains functional. */
:is(.DynamicProductWrapper, body:has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"])) :is(
  [translate="dynamicui.backgroundselecttitle"],
  [data-translate="dynamicui.backgroundselecttitle"]
){
  color:#082C66!important;
  font-size:15px!important;
  font-weight:900!important;
}

/* Make existing field groups easier to scan without moving them. */
:is(.DynamicProductWrapper, body:has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"])) :is(
  .form-group,
  .formGroup,
  .field-group,
  .fieldGroup,
  [class*="formField"],
  [class*="form-field"]
){
  margin-bottom:14px;
}

/* The input and selector styles are limited to MegaEdit, not the shop. */
:is(.DynamicProductWrapper, body:has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"])) :is(
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="number"],
  textarea,
  select
):not([readonly]):not([disabled]){
  box-sizing:border-box!important;
  min-height:43px!important;
  padding:9px 12px!important;
  background:#F5FAFD!important;
  color:#082C66!important;
  border:1.5px solid #C6DCEB!important;
  border-radius:8px!important;
  box-shadow:0 1px 2px rgba(8,44,102,.035)!important;
  font-family:inherit!important;
  font-size:15px!important;
  line-height:1.3!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}

:is(.DynamicProductWrapper, body:has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"])) :is(
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="number"],
  textarea,
  select
):not([readonly]):not([disabled]):focus{
  outline:none!important;
  border-color:#FF7028!important;
  background:#FFFFFF!important;
  box-shadow:0 0 0 3px rgba(255,112,40,.17)!important;
}

:is(.DynamicProductWrapper, body:has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"])) :is(input,textarea)::placeholder{
  color:#7289A1!important;
  opacity:1;
}

/* Make the form's select feel consistent, without replacing native UI. */
:is(.DynamicProductWrapper, body:has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"])) select{
  cursor:pointer;
}

/* Retain visible keyboard focus for accessibility. */
:is(.DynamicProductWrapper, body:has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"])) :is(input,textarea,select):focus-visible{
  outline:2px solid #FF7028!important;
  outline-offset:1px!important;
}

@media(max-width:800px){
  :is(.DynamicProductWrapper, body:has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"])) :is(
    input[type="text"],input[type="email"],input[type="tel"],
    input[type="number"],textarea,select
  ):not([readonly]):not([disabled]){
    font-size:16px!important;
    min-height:45px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  :is(.DynamicProductWrapper, body:has(span[translate="pagelist.righthandbuttons.addtobasket.buttontext"])) :is(input,select,textarea){transition:none!important}
}

/* ============================================================
   V26 — BUSINESS CARDS / EDITOR PERSONALIZATION INTRO
   Verified field selector: meuiField-4518345.
   Visual text only — keep the native selector and all 3 options.
   ============================================================ */

/* Keep the real source label in the DOM while replacing its visible copy. */
div.meuiLabel.meuiField-4518345 {
  display:block !important;
  width:100%;
  font-size:0 !important;
  margin:0 0 12px !important;
  padding:0 !important;
}

/* Add an unmistakable heading immediately above the design selector. */
div.meuiLabel.meuiField-4518345::before {
  content:"PERSONALIZE YOUR CARD";
  display:block;
  width:100%;
  box-sizing:border-box;
  padding:0 0 12px;
  margin:0 0 11px;
  border-bottom:2px solid #DAEAF4;
  color:#082C66 !important;
  font-size:20px !important;
  line-height:1.22 !important;
  font-weight:900 !important;
  letter-spacing:-.03em !important;
  white-space:normal;
}

/* Brief instruction + the renamed design choice label.
   The line break separates helpful copy from the field label. */
div.meuiLabel.meuiField-4518345::after {
  content:"Pick a design, then enter your details.\A\A CHOOSE YOUR DESIGN";
  display:block;
  width:100%;
  margin:0 0 6px;
  padding:0;
  color:#147EB0 !important;
  font-size:13px !important;
  line-height:1.55 !important;
  font-weight:750 !important;
  letter-spacing:0 !important;
  white-space:pre-line;
}

@media (max-width:680px) {
  div.meuiLabel.meuiField-4518345::before {
    font-size:18px !important;
  }
}

/* END V26 EDITOR INTRO — REFINED FOR V27 */

/* ============================================================
   V27 — SUBTLE MOOV WORDMARK, EDITOR SIDEBAR ONLY
   - CSS typography treatment; no external image needed
   - Only visible when the verified Business Cards field exists
   - Fixed inside the lower-right white sidebar area
   - Never appears on printable artwork or product pages
   - Hidden on smaller/shorter viewports to avoid form overlap
   ============================================================ */

@media (min-width:1200px) and (min-height:825px) {
  body:has(div.meuiLabel.meuiField-4518345)::after {
    content:"MOOV";
    position:fixed;
    bottom:57px;
    right:32px;
    z-index:10;
    display:block;
    box-sizing:border-box;
    min-width:94px;
    margin:0;
    padding:0 0 10px;
    background:linear-gradient(90deg,#ED2877 0 30%,#FF7028 30% 68%,#09A6D1 68% 100%) no-repeat right bottom / 54px 3px;
    color:#082C66;
    opacity:.68;
    font-family:inherit;
    font-size:27px;
    font-weight:950;
    font-style:italic;
    line-height:1;
    letter-spacing:-1.9px;
    text-align:right;
    pointer-events:none;
    user-select:none;
  }
}

/* END V27 COMPLETE CSS — includes all V26, V25 and product rules */

/* ============================================================
   V28 — NAME BADGES / CSV WORKFLOW CLARITY
   - Product 315 only; native CSV controls remain untouched
   - No changes to background swatches or canvas
   - Explains the distinction between download and upload
   ============================================================ */

/* Explain the two-stage workflow beside the Start button. */
html:has(#product-title_315) .action-start-design::before {
  content:"NEXT / OPEN THE NAME BADGE EDITOR" !important;
}



/* Make the existing download area unambiguously the preparation step. */
html:has(#product-title_315) .details-wrapper>.full-description-wrapper::before {
  content:"DOWNLOAD THE CSV TEMPLATE" !important;
  display:block;
  margin-bottom:10px;
  color:#082C66;
  font-size:19px;
  line-height:1.25;
  font-weight:900;
}

/* Protect existing download links and preserve their destination/actions. */
html:has(#product-title_315) .full-description-wrapper a:is(:hover,:focus-visible) {
  background:#0B4B83 !important;
  outline:2px solid #FF7028;
  outline-offset:2px;
}

/* END V28 NAME BADGES WORKFLOW STYLES */


/* ============================================================
   V31 — NO CUSTOM START LOADING ANIMATIONS OR MESSAGES
   Applies to every product page using the Infigo Start action,
   including the four Moov demo products and any future products.

   Removes only visual loading effects. Does not interrupt the
   native Start action, editor navigation, or form submissions.

   NOTE: The subsequent MegaEdit loading screen is separate.
   Admin > Content Management > Editable Content >
   MegaEdit.LoadingScreen.Hints controls its rotating hints.
   ============================================================ */

/* No rotating animation or extra text when Start becomes busy. */
.action-start-design:is(
  .is-loading,
  .loading,
  .is-busy,
  [aria-busy="true"],
  :has(input.dynamic_product_start:is(:disabled,.is-loading,.loading,[aria-busy="true"]))
)::after {
  content:none !important;
  display:none !important;
  animation:none !important;
  transition:none !important;
  background:none !important;
  border:0 !important;
}

/* Preserve the native Start control without animating or changing
   its text to an invented loading message. */
.action-start-design input.dynamic_product_start:is(
  :disabled,
  .is-loading,
  .loading,
  [aria-busy="true"]
) {
  animation:none !important;
  transition:none !important;
  background-image:none !important;
  cursor:default !important;
  opacity:1 !important;
  color:#FFFFFF !important;
  text-shadow:none !important;
}

/* Hide only decorative spinner icons placed around the Start button.
   Never hide parent loading overlays, dialogs, or form controls. */
.action-start-design :is(
  .spinner,
  .loader,
  .loading-spinner,
  .loading-indicator,
  .fa-spinner,
  .fa-circle-notch,
  .fa-refresh.fa-spin,
  .lds-ring,
  .lds-dual-ring,
  [class*="spinner-icon"],
  [class*="spinnerIcon"],
  [class*="loading-icon"],
  [class*="loadingIcon"]
),
.add-to-cart-buttons-wrapper :is(
  .spinner,
  .loader,
  .loading-spinner,
  .loading-indicator,
  .fa-spinner,
  .fa-circle-notch,
  .lds-ring,
  .lds-dual-ring
) {
  display:none !important;
  animation:none !important;
}

/* Avoid an additional busy mouse pointer specified by this site's
   Start button CSS. Do not change the browser's real navigation. */
.action-start-design:is(.is-loading,.loading,.is-busy,[aria-busy="true"]),
.action-start-design:has(input.dynamic_product_start:disabled) {
  cursor:default !important;
}

/* END V31 — START LOADING CLEANUP */


/* ============================================================
   V32 — FIX NAMETAGS TEXT OVERLAY / NO CUSTOM START FX
   ============================================================
   An earlier V28 rule injected a long paragraph into
   .action-start-design::after. The paragraph flowed into a narrow
   loading region, creating the vertical column shown in screenshot.
   The V28 text has been removed at its source above.

   This final safeguard applies to ALL product pages with Start:
   never render generated text, spinning pseudo-elements, or
   decorative pseudo-elements on the Start control itself.
   It does NOT hide actual buttons, CSV links, or form inputs.
   ============================================================ */

/* Kill leftover or platform-added ::after content beside Start,
   whether the button is idle or loading. */
html:has(#product-title_318,#product-title_315,#product-title_692,#product-title_721) .action-start-design::after,
html .action-start-design::after {
  content:none !important;
  display:none !important;
  animation:none !important;
  transition:none !important;
}

/* Native button pseudo-elements can supply a second busy spinner.
   Don't affect the real button's text, position, or click handler. */
html .action-start-design :is(
  input.dynamic_product_start,
  button.dynamic_product_start,
  button[type="submit"]
)::before,
html .action-start-design :is(
  input.dynamic_product_start,
  button.dynamic_product_start,
  button[type="submit"]
)::after,
html .add-to-cart-buttons-wrapper :is(
  button.dynamic_product_start,
  button[type="submit"]
)::after {
  content:none !important;
  display:none !important;
  animation:none !important;
}

/* Hide standard decorative in-button loader elements only. */
html .action-start-design :is(
  .spinner, .loader, .loading-spinner, .loading-indicator,
  .fa-spinner, .fa-circle-notch, .lds-ring, .lds-dual-ring,
  [class*="spinner"], [class*="Spinner"]
),
html .add-to-cart-buttons-wrapper :is(
  .spinner, .loader, .loading-spinner, .loading-indicator,
  .fa-spinner, .fa-circle-notch, .lds-ring, .lds-dual-ring
) {
  display:none !important;
  animation:none !important;
}

/* End V32 — the native Start action remains untouched. */


/* ============================================================
   V33 — TRIFOLD BROCHURE / PRODUCT PREVIEW REDESIGN
   Product 692 ONLY. Retains all original gallery images,
   their image links, and native preview functionality.
   Compact showcase, enlarged hero mockup, smaller detail views.
   Does not affect 318, 315, 721 or the MegaEdit uploader.
   ============================================================ */

/* Bring the left preview card into proportion with its order panel. */
html:has(#product-title_692) .picture-wrapper .product-details-info {
  padding:20px 20px 22px !important;
  background:#ffffff !important;
  border:1px solid #d8e7f1 !important;
  border-radius:19px !important;
  box-shadow:0 12px 30px rgba(8,44,102,.08) !important;
}

html:has(#product-title_692) .picture-wrapper .product-details-info::before {
  content:"TRIFOLD BROCHURE / SEE THE DETAILS" !important;
  margin-bottom:14px !important;
  color:#087ca8 !important;
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:.07em !important;
}

/* Keep the main render as the visual focus, not a tiny object
   in a huge grey rectangle. We scale the ORIGINAL product PNG,
   without replacing/cropping the source file. */
html:has(#product-title_692) .picture-wrapper .picture {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:stretch !important;
  gap:10px !important;
  width:100% !important;
  margin:0 !important;
}

html:has(#product-title_692) .picture-wrapper .bigpicture {
  box-sizing:border-box !important;
  display:flex !important;
  flex:0 0 100% !important;
  width:100% !important;
  max-width:100% !important;
  height:365px !important;
  min-height:365px !important;
  max-height:365px !important;
  margin:0 !important;
  padding:14px !important;
  align-items:center !important;
  justify-content:center !important;
  position:relative !important;
  overflow:hidden !important;
  background:radial-gradient(ellipse at 50% 44%, #fff 0%,#f6fbfe 58%,#eaf3f9 100%) !important;
  border:1px solid #dfebf4 !important;
  border-radius:13px !important;
}

html:has(#product-title_692) .picture-wrapper .bigpicture > img {
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:84% !important;
  max-height:265px !important;
  object-fit:contain !important;
  object-position:center !important;
  transform:scale(1.33) !important;
  transform-origin:center center !important;
  filter:drop-shadow(0 13px 10px rgba(18,42,72,.12));
}

/* Secondary brochure views: keep them, but give them less height
   than the main preview and make the row feel like one gallery. */
html:has(#product-title_692) .picture-wrapper .picture > .column:not(.bigpicture):has(img),
html:has(#product-title_692) .picture-wrapper .picture > :is(.smallpicture,.thumbnail,.thumb):has(img) {
  box-sizing:border-box !important;
  flex:1 1 calc(50% - 6px) !important;
  width:calc(50% - 6px) !important;
  max-width:calc(50% - 6px) !important;
  min-width:0 !important;
  margin:0 !important;
  padding:11px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#f7fafc !important;
  border:1px solid #e1eaf2 !important;
  border-radius:12px !important;
  overflow:hidden !important;
}

html:has(#product-title_692) .picture-wrapper .picture :is(
  .thumbs,.thumbnails,.picture-thumbs,.picture-thumbnails,
  .smallpictures,.small-pictures,.product-thumbnails
) {
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:0 !important;
}

html:has(#product-title_692) .picture-wrapper .picture img:not(.bigpicture img) {
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:126px !important;
  object-fit:contain !important;
}

/* Reduce overly large empty thumbnail containers in common
   Infigo gallery markup; leave linked images clickable. */
html:has(#product-title_692) .picture-wrapper .picture :is(
  .smallpicture,.thumbnail,.thumb,.product-thumbnail
):has(img) {
  min-height:0 !important;
  height:auto !important;
}

html:has(#product-title_692) .picture-wrapper .picture a:focus-visible {
  outline:3px solid #ff7028 !important;
  outline-offset:2px !important;
}

@media(max-width:700px) {
  html:has(#product-title_692) .picture-wrapper .product-details-info {
    padding:15px 15px 19px !important;
  }
  html:has(#product-title_692) .picture-wrapper .bigpicture {
    height:310px !important;
    min-height:310px !important;
    max-height:310px !important;
  }
  html:has(#product-title_692) .picture-wrapper .bigpicture > img {
    max-height:225px !important;
    transform:scale(1.26) !important;
  }
  html:has(#product-title_692) .picture-wrapper .picture img:not(.bigpicture img) {
    max-height:100px !important;
  }
}

/* END V33 — TRIFOLD PREVIEW ONLY */

/* ============================================================
   V34 — MOOV MULTIPART PDF UPLOADER
   Applies to Infigo's PDF upload editor, not product landing pages.
   This is a styling-only pass. Native upload, validation, preview,
   disabled state and basket actions are not modified.
   ============================================================ */

/* Multiple safe signals for the Infigo MultiPart editor. */
@supports selector(body:has(input[type="file"])) {
  /* Title and labels within recognizable MultiPart upload shells. */
  body:has(:is([class*="multipart" i],[id*="multipart" i]))
  :is(h1,h2,[class*="page-title" i]) {
    color:#082C66 !important;
    font-weight:850 !important;
    letter-spacing:-.025em;
  }

  /* The yellow requirements box becomes a calm blue/white instruction card.
     Match specific class/id words only, not unrelated product content. */
  :where(
    body:has([class*="multipart" i]),
    body:has([id*="multipart" i]),
    body:has(input[type="file"][accept*="pdf" i]),
    body:has(.dz-message)
  ) :is(
    [class*="upload-requirement" i],
    [id*="upload-requirement" i],
    [class*="uploadrequirement" i],
    [class*="requirements-panel" i],
    [class*="requirements-box" i]
  ) {
    box-sizing:border-box !important;
    background:#F3F9FD !important;
    background-image:none !important;
    border:1px solid #D2E5F0 !important;
    border-left:5px solid #09A6D1 !important;
    border-radius:13px !important;
    box-shadow:0 7px 18px rgba(8,44,102,.055) !important;
    color:#294D70 !important;
  }

  :where(
    body:has([class*="multipart" i]),
    body:has([id*="multipart" i]),
    body:has(input[type="file"][accept*="pdf" i]),
    body:has(.dz-message)
  ) :is(
    [class*="upload-requirement" i],
    [id*="upload-requirement" i],
    [class*="uploadrequirement" i],
    [class*="requirements-panel" i]
  ) :is(h2,h3,h4,strong,b,[class*="heading" i],[class*="title" i]) {
    color:#082C66 !important;
  }

  /* Current selected quantity and specification panel. */
  :where(
    body:has([class*="multipart" i]),
    body:has([id*="multipart" i]),
    body:has(input[type="file"][accept*="pdf" i])
  ) :is(
    [class*="selected-options" i],
    [id*="selected-options" i],
    [class*="selectedoptions" i],
    [class*="options-summary" i]
  ) {
    box-sizing:border-box !important;
    background:#F7FBFE !important;
    border:1px solid #DDEAF4 !important;
    border-radius:13px !important;
    color:#2A4C6F !important;
  }

  /* PDF dropzone: preserve file input/click/drop handling. */
  :where(
    body:has([class*="multipart" i]),
    body:has([id*="multipart" i]),
    body:has(input[type="file"][accept*="pdf" i]),
    body:has(.dz-message)
  ) :is(
    .dropzone,
    .drop-zone,
    [class*="dropzone" i],
    [class*="drop-zone" i],
    [class*="drag-drop" i],
    [class*="dragdrop" i],
    [class*="file-drop" i],
    [class*="upload-drop" i],
    [class*="upload-area" i]
  ) {
    box-sizing:border-box !important;
    background:#FAFDFF !important;
    background-image:none !important;
    border:2px dashed #91BEDB !important;
    border-radius:15px !important;
    color:#0B6095 !important;
    transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease;
  }

  /* Dragover/highlight states: no pointer/event changes. */
  :where(
    body:has([class*="multipart" i]),
    body:has([id*="multipart" i]),
    body:has(input[type="file"][accept*="pdf" i])
  ) :is(
    .dropzone,.drop-zone,[class*="dropzone" i],
    [class*="drop-zone" i],[class*="file-drop" i]
  ):is(:hover,.dragover,.drag-over,.dz-drag-hover) {
    background:#EFF8FC !important;
    border-color:#FF7028 !important;
    box-shadow:0 0 0 3px rgba(255,112,40,.09) !important;
  }

  /* Uploaded file/complete indicators remain visible. */
  :where(
    body:has([class*="multipart" i]),
    body:has([id*="multipart" i]),
    body:has(input[type="file"][accept*="pdf" i])
  ) :is(
    [class*="upload-count" i],
    [class*="upload-progress" i],
    [class*="uploads-completed" i],
    [class*="upload-summary" i]
  ) {
    border-radius:10px !important;
  }

  /* Checkout CTA: only style an ENABLED native action.
     Disabled controls are not force-enabled, made clickable, or recolored. */
  :where(
    body:has([class*="multipart" i]),
    body:has([id*="multipart" i]),
    body:has(input[type="file"][accept*="pdf" i])
  ) :is(
    [class*="preview-add" i],
    [class*="previewadd" i],
    [class*="preview-to-basket" i],
    [class*="add-to-basket" i]
  ):not(:disabled):not([disabled]):not([aria-disabled="true"]):not(.disabled) {
    background:#FF7028 !important;
    border-color:#FF7028 !important;
    color:#FFF !important;
    border-radius:9px !important;
    font-weight:800 !important;
    box-shadow:0 3px 0 #D35419 !important;
  }

  /* Accessibility without any uploader-behavior changes. */
  :where(
    body:has([class*="multipart" i]),
    body:has([id*="multipart" i])
  ) :is(.dropzone,.drop-zone,[class*="dropzone" i],button,a):focus-visible {
    outline:3px solid #FF7028 !important;
    outline-offset:3px !important;
  }
}

@media (prefers-reduced-motion:reduce) {
  :where(body:has([class*="multipart" i]),body:has([id*="multipart" i]))
  :is(.dropzone,.drop-zone,[class*="dropzone" i]) {
    transition:none !important;
  }
}

/* END V34 */

/* ============================================================
   V35 — MULTIPART UPLOAD REQUIREMENTS: SOFT ORANGE CARD
   Append AFTER V34. Keeps native PDF handling and all controls.
   Scope: Infigo MultiPart uploader only (not product pages).
   ============================================================ */

@supports selector(body:has(*)) {
  /* Covers the most common built-in warning/panel variants.
     V34 already established that the MultiPart body guard is active. */
  body:has(:is([class*="multipart" i],[id*="multipart" i])) :is(
    .notification.is-warning,
    .message.is-warning,
    .box.is-warning,
    .panel.is-warning,
    .is-warning.has-background-warning,
    .has-background-warning,
    .has-background-yellow,
    .bg-warning,
    .alert-warning,
    .upload-requirements,
    .uploadRequirements,
    .upload-requirements-panel,
    .upload-requirements-container,
    .uploadRequirementsPanel,
    [class*="upload_requirements" i],
    [class*="upload-requirements" i],
    [id*="upload_requirements" i],
    [id*="upload-requirements" i],
    [class*="requirements" i][class*="warning" i],
    [class*="requirements" i][class*="yellow" i]
  ) {
    background:#FFF0E6 !important;
    background-color:#FFF0E6 !important;
    background-image:none !important;
    border:1px solid #FFD3BA !important;
    border-left:5px solid #FF7028 !important;
    border-radius:12px !important;
    box-shadow:0 6px 20px rgba(8,44,102,.055) !important;
    color:#233E5D !important;
    overflow:hidden;
  }

  /* Some themes put their warning fill on the panel header and content
     separately. Only touch warning variants inside the uploader. */
  body:has(:is([class*="multipart" i],[id*="multipart" i]))
  :is(.message.is-warning,.panel.is-warning) > :is(.message-header,.panel-heading),
  body:has(:is([class*="multipart" i],[id*="multipart" i]))
  :is(.message.is-warning,.panel.is-warning) > :is(.message-body,.panel-block) {
    background:#FFF0E6 !important;
    background-image:none !important;
    color:#233E5D !important;
    border-color:#FFD3BA !important;
  }

  /* Navy heading and orange informational emphasis. */
  body:has(:is([class*="multipart" i],[id*="multipart" i])) :is(
    .notification.is-warning,
    .message.is-warning,
    .box.is-warning,
    .has-background-warning,
    .has-background-yellow,
    .bg-warning,
    .alert-warning,
    .upload-requirements,
    .uploadRequirements,
    [class*="upload_requirements" i],
    [class*="upload-requirements" i]
  ) :is(h2,h3,h4,strong,b,[class*="title" i],[class*="heading" i]) {
    color:#082C66 !important;
  }

  body:has(:is([class*="multipart" i],[id*="multipart" i])) :is(
    .notification.is-warning,
    .message.is-warning,
    .box.is-warning,
    .has-background-warning,
    .has-background-yellow,
    .bg-warning,
    .alert-warning,
    .upload-requirements,
    .uploadRequirements,
    [class*="upload_requirements" i],
    [class*="upload-requirements" i]
  ) :is(p,li,span) {
    color:#304F70 !important;
  }
}

/* END V35 — requirements card only */

/* ============================================================
   V37 — CALM BLUE MEGAEDIT WORKSPACE
   Applies to MegaEdit's on-screen editing workspace only.
   Does not change printable artwork, bleed guides, or inputs.
   Uses the .DynamicProductWrapper .canvas-container selector
   documented by Infigo for editor background customization.
   ============================================================ */

.DynamicProductWrapper .canvas-container {
  background-color:#F1F8FC !important;
  background-image:
    radial-gradient(circle, rgba(8,44,102,.07) 0.9px, transparent 1.3px),
    linear-gradient(140deg,#EDF6FB 0%,#F8FBFE 56%,#ECF4FA 100%) !important;
  background-position:0 0, center center !important;
  background-size:27px 27px, cover !important;
  background-repeat:repeat, no-repeat !important;
}

/* Intentionally no transparency, filters, or overlays on
   #previewCanvas or .upper-canvas: the print preview and all
   red/black guide lines must stay untouched. */

/* END V37 — MEGAEDIT WORKSPACE ONLY */
