/* Cómic CCS: campaña original y catálogo fotográfico */
:root{--paper:#f6f6f6;--violet:#ad43fa;--r:20px}
body:before{display:none}body{font-size:16px}.wrap{max-width:1240px}a,button,select{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #9140e8;outline-offset:5px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.ticker{font-size:11px;letter-spacing:1px}.top{height:84px}.brand img{width:150px;height:68px}.desktop-nav{font-size:14px}.ey{font-size:12px;letter-spacing:1.5px}.muted{font-size:15px}.hero{min-height:560px;padding:44px 36px;background:var(--y);border:2px solid #111;border-top:0;border-radius:0 0 24px 24px;grid-template-columns:1fr 1fr}.hero:before,.hero:after{display:none}.hero-copy{max-width:530px}.hero h1{font-size:80px;line-height:.96}.marker{background:#111;color:#fff;box-shadow:none;padding:3px 10px}.hero p{font-size:18px;font-weight:600;max-width:420px}.hero-art{height:480px;min-height:0;overflow:hidden;margin-right:-36px}.hero-art picture{display:block;width:100%;height:100%}.hero-art img{position:absolute;width:200%;max-width:none;height:100%;object-fit:cover;object-position:right;right:0;top:0;filter:none}.hero-badges span{font-size:11px}.btn{font-size:14px;min-height:44px}.hero .btn{padding:14px 22px}.quick-links{grid-template-columns:repeat(6,1fr);padding:28px 18px 22px;gap:18px}.quick{border:0;padding:0;background:transparent}.quick b{font-size:14px;margin-top:7px}.illustrated-icon{display:block;width:76px;height:76px;margin:auto;border-radius:50%;background-image:url('/assets/campaign/icons.webp');background-size:321px 401px;background-position:calc(-5px - var(--ix)*79px) calc(-96px - var(--iy)*111px);background-repeat:no-repeat}.quick:hover{box-shadow:none;transform:translateY(-3px)}
.paths{gap:16px}.visual-path{display:block;position:relative;aspect-ratio:1.3;background-image:url('/assets/campaign/choices.webp');background-size:212% auto;background-position:3% 49%;border-radius:24px;overflow:hidden;transition:transform .2s}.visual-path.custom{background-position:97% 49%}.visual-path:hover{transform:translateY(-4px)}.marquee{font-size:12px;padding:14px 0}.benefits{margin-top:20px}.benefits b{font-size:14px}.benefits span{font-size:12px}.benefits article{padding:18px 14px}.sec{padding-top:56px;padding-bottom:48px}.sec h2,.process h2{font-size:48px;line-height:1.05}.text-link{font-size:14px}.products{gap:18px}.product{border:1.5px solid #dedede;border-radius:18px}.product-photo{height:auto;aspect-ratio:1.03;display:block;background:#f2f2f2}.product-photo:before,.product-photo:after{display:none}.product-photo .garment-img{position:absolute;max-width:none;width:212%;height:auto;padding:0;filter:none;top:-2%;left:-3%}.product-photo.look-classic .garment-img{left:-110%}.product-photo.look-crop .garment-img{top:-132%}.product-photo.look-oversize .garment-img{top:-132%;left:-110%}.product-photo.custom-photo .garment-img{position:static;width:100%;height:100%;object-fit:cover}.pmeta{padding:16px}.pmeta h3{font-size:22px}.pmeta .muted{font-size:14px}.badge{font-size:11px}.product .btn{font-size:12px}.price{font-size:24px}.series-card small{font-size:12px}.empty{font-size:14px}.campaign-banner{min-height:360px}.campaign-copy p{font-size:16px}.campaign-art{min-height:340px}.campaign-art img{height:320px;object-fit:contain;filter:none}.bubble{font-size:12px}.builder{padding:32px}.builder-title p{font-size:15px;line-height:1.5}.builder-tag{font-size:11px}.preview{min-height:530px;background:#eaeaea;border-color:#ddd}.preview-grid{display:none}.preview-shirt{display:block;width:96%;height:440px;background:none;clip-path:none;object-fit:contain;filter:none}.preview-shirt.kids-preview{object-fit:cover;max-width:80%;border-radius:16px}.preview[data-fit="kids"] .art-on-shirt{display:none}.art-on-shirt{top:43%;width:24%;height:25%;filter:none}.preview[data-fit="crop"] .art-on-shirt{top:45%;height:19%;width:23%}.preview-label{font-size:12px;max-width:calc(100% - 32px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-note{font-size:11px;color:#555;border-color:#999}.view-switch{position:absolute;z-index:6;top:14px;left:14px;display:flex;background:#fff;border:1px solid #ccc;padding:3px;border-radius:30px}.view-switch button{border:0;border-radius:30px;background:transparent;padding:9px 12px;min-height:38px;font-size:12px;font-weight:700;cursor:pointer}.view-switch button[aria-pressed="true"]{background:#111;color:#fff}.view-switch button:disabled{opacity:.35;cursor:default}.field label,.mini-label{font-size:12px;color:#ddd}.field select{font-size:16px;min-height:48px}.chip{font-size:12px;min-height:40px}.design b{font-size:13px}.total small{font-size:12px}.total span{font-size:12px;color:#aaa}.builder .btn.full{font-size:14px}.crew{display:block;padding:0;max-width:1204px;margin:20px auto 48px;border:2px solid #111;border-radius:24px;min-height:0}.crew-copy{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.crew:before,.crew-word{display:none}.crew-art{display:block;min-height:0}.crew-art img{display:block;width:100%;height:auto;filter:none}.step p{font-size:14px;color:#bcbcbc}.step strong{font-size:20px}.pack{background:#f5f5f5}.pack p{font-size:16px}.pack-art img{height:auto;max-height:460px;filter:none;border-radius:20px}.pack-shadow{display:none}.pack-badges span{font-size:11px}.faq p{font-size:16px}.faq summary{font-size:16px;gap:16px}.foot-links,.adminlink{font-size:14px}.foot-brand img{height:86px;width:150px;object-fit:contain}.toast{font-size:14px;line-height:1.4}.final-cta .ey{line-height:1.5}
@media(max-width:980px){.hero h1{font-size:60px}.hero{padding:30px 24px}.hero-art{margin-right:-24px;height:450px}.quick-links{grid-template-columns:repeat(6,1fr)}.products{grid-template-columns:repeat(4,1fr);gap:10px}.pmeta{padding:12px}.pmeta h3{font-size:20px}.pmeta .muted{font-size:12px}.product .btn{font-size:11px;padding:8px}.hero .btn{font-size:12px}.mobile-menu{top:115px}}
@media(max-width:760px){.ticker{font-size:9px;min-height:28px;gap:8px;letter-spacing:.3px}.top{height:70px}.brand img{width:126px;height:60px}.mobile-menu{top:98px}.hero{display:block;padding:0;margin:0 10px;border:0;background:white;min-height:0;overflow:hidden;border-radius:0}.hero-art{margin:0;width:100%;height:auto;aspect-ratio:1122/1402;overflow:hidden}.hero-art img{position:static;width:100%;height:auto;object-fit:contain}.hero-copy{position:static;max-width:none}.hero-copy>.ey,.hero-copy>h1,.hero-copy>p,.hero-badges{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);margin:0;padding:0}.hero .ctas{position:absolute;z-index:7;left:4%;top:63.5%;width:35%;padding:3px 0;background:white;display:grid;gap:5px}.hero .btn{font-size:clamp(9px,2.3vw,15px);min-height:0;padding:7px 5px;gap:4px;border-width:1.5px;white-space:nowrap}.quick-links{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;padding:16px 10px 24px;overflow:visible}.quick{min-width:0}.illustrated-icon{width:48px;height:48px;background-size:203px 253.6px;background-position:calc(-3px - var(--ix)*50px) calc(-61px - var(--iy)*70px)}.quick b{font-size:11px}.paths{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 10px 22px}.visual-path{border-radius:14px}.benefits{grid-template-columns:1fr 1fr;margin-top:16px}.benefits article{padding:14px 10px;min-height:0;gap:8px}.benefits b{font-size:12px}.benefits span{font-size:11px}.benefits svg{width:20px}.sec{padding:36px 12px}.sec h2,.process h2{font-size:36px}.sec-head{gap:10px}.products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;overflow:visible}.product{min-width:0;border-radius:14px}.pmeta h3{font-size:20px}.pmeta .muted{font-size:13px}.price{font-size:21px}.product .btn{font-size:11px;min-height:40px}.badge{font-size:10px}.campaign-banner{grid-template-columns:1fr;min-height:0}.campaign-copy{padding:24px 20px 0}.campaign-copy h2{font-size:38px}.campaign-copy p{font-size:15px}.campaign-art{min-height:260px}.campaign-art img{height:260px}.builder{padding:24px 14px}.builder h2{font-size:37px}.preview{min-height:390px}.preview-shirt{height:330px;width:95%}.preview-note{top:auto;bottom:16px;font-size:9px}.preview-label{max-width:64%;font-size:10px}.view-switch button{font-size:12px}.builder-grid{grid-template-columns:1fr}.builder-tag{font-size:10px}.crew{margin:0 10px 32px;border-radius:14px}.crew-art{min-height:0}.crew-art img{height:auto}.step p{font-size:13px}.pack h2{font-size:36px}.pack-art{min-height:0}.pack-art img{height:auto;max-height:none}.pack-inner{gap:24px}.foot-links{font-size:14px}.toast{bottom:16px;width:max-content;max-width:calc(100% - 24px)}.final-cta .btn{font-size:14px}.ey{font-size:11px}}
@media(max-width:360px){.illustrated-icon{transform:scale(.88);transform-origin:center}.quick b{font-size:10px}.hero .btn{padding:5px 3px}.pmeta{padding:10px}.product .btn{font-size:10px;gap:3px}.price{font-size:19px}.benefits article{gap:5px}.benefits span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.visual-path{transition:none}}
@media(min-width:1100px){.products{grid-template-columns:repeat(5,minmax(0,1fr))}.pmeta h3{font-size:20px}}
.product-photo{aspect-ratio:482/448}.product-photo .garment-img{width:232.78%;left:-12.03%;top:-3.79%}.product-photo.look-classic .garment-img{left:-120.75%}.product-photo.look-crop .garment-img{top:-159.6%}.product-photo.look-oversize .garment-img{top:-159.6%;left:-120.75%}.product-photo.custom-photo .garment-img{width:100%;height:100%;position:static}
/* Banner principal: la pieza completa es la protagonista */
.hero-full{display:block;margin:0 18px;padding:0;min-height:0;height:auto;background:#fff;border:0;border-radius:0 0 28px 28px;overflow:hidden}
.hero-full-link{display:block;line-height:0;cursor:pointer}
.hero-full-link img{display:block;width:100%;height:auto;max-height:760px;object-fit:cover;object-position:center top}
.hero-full-link:focus-visible{outline:4px solid #8b3dff;outline-offset:-6px}
.path-copy{position:absolute;left:20px;right:20px;bottom:18px;z-index:5;color:#fff;text-shadow:0 2px 6px #000;font-size:18px;display:flex;flex-direction:column;gap:3px;pointer-events:none}.path-copy b{font-size:22px}.path-copy small{font-size:13px;font-weight:600}.visual-path.choose .path-copy{color:#111;text-shadow:0 1px 3px #fff}
@media(max-width:760px){.hero-full{margin:0 10px;border-radius:0 0 18px 18px}.hero-full-link img{width:100%;max-height:none;object-fit:contain}.hero .ctas{display:none}.paths{grid-template-columns:1fr 1fr}.path-copy{left:12px;right:12px;bottom:11px}.path-copy b{font-size:15px;line-height:1.05}.path-copy small{font-size:10px;line-height:1.15}}
.visual-path:after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.84));z-index:2;pointer-events:none}.visual-path.choose:after{background:linear-gradient(180deg,transparent,rgba(255,229,0,.94))}.visual-path.custom{box-shadow:inset 0 0 0 2px #111}
.pack-art{position:relative;isolation:isolate}.pack-art:before{content:"";position:absolute;inset:8% 4% 7%;background:repeating-linear-gradient(135deg,#ffe500 0 18px,#111 18px 21px,#fff 21px 39px);opacity:.16;border:2px solid #111;border-radius:28px;z-index:-1;transform:rotate(-3deg)}.pack-sticker{position:absolute;top:7%;right:5%;z-index:3;background:#b9ff48;border:2px solid #111;box-shadow:4px 4px 0 #111;border-radius:50%;width:82px;height:82px;display:grid;place-items:center;text-align:center;font:700 12px/1 Impact,'Arial Black',sans-serif;transform:rotate(8deg)}.pack-caption{display:block;margin:8px auto 0;width:max-content;max-width:90%;background:#111;color:#fff;border-radius:999px;padding:8px 13px;font-size:12px;font-weight:800;position:relative;z-index:3}
/* Empaque: composición de colección, no una foto aislada */
.pack{max-width:1204px;margin:30px auto 48px;padding:0!important;background:#111!important;color:#fff;border:2px solid #111;border-radius:32px;overflow:hidden;position:relative;isolation:isolate}.pack:before{content:"";position:absolute;inset:0;background:radial-gradient(#fff 1px,transparent 1.5px);background-size:13px 13px;opacity:.07;pointer-events:none}.pack-inner{max-width:none!important;grid-template-columns:.92fr 1.08fr!important;gap:0!important;align-items:stretch!important;position:relative;z-index:1}.pack-copy{padding:50px 44px 46px;display:flex;flex-direction:column;align-items:flex-start}.pack-kicker{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.pack-kicker span{border:1px solid #555;border-radius:999px;padding:7px 10px;color:#ffe500;font-size:10px;font-weight:1000;letter-spacing:1.2px}.pack-copy .ey{color:#ffe500}.pack h2{font-size:56px!important;line-height:.9!important;margin:11px 0 20px!important;color:#fff}.pack h2 span{background:#ffe500;color:#111;box-shadow:6px 6px 0 #8b3dff;padding:2px 9px}.pack-copy p{color:#c7c7c7;max-width:470px;font-size:15px;line-height:1.55}.pack-badges{margin:18px 0 24px}.pack-badges span{border:1px solid #555;background:#202020}.pack-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%;margin:0 0 28px;border-top:1px solid #333;padding-top:17px}.pack-specs div{display:flex;flex-direction:column;gap:4px}.pack-specs b{color:#ffe500;font:32px/1 Impact,'Arial Black',sans-serif}.pack-specs span{color:#bbb;font-size:11px;line-height:1.2}.pack-copy .btn{margin-top:auto}.pack-art{min-height:480px!important;background:#ffe500;overflow:hidden;display:grid;place-items:center}.pack-art:before{inset:-10% -8% -8%;opacity:.18;z-index:0;border:0;border-radius:0;transform:rotate(-8deg);background:repeating-linear-gradient(135deg,#fff 0 20px,#ffe500 20px 43px,#111 43px 46px)}.pack-art:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 70%,#8b3dff 0 7%,transparent 7.2%),radial-gradient(circle at 88% 18%,#111 0 2px,transparent 2.5px);background-size:auto,15px 15px;opacity:.25;pointer-events:none}.pack-art img{width:92%!important;height:auto!important;max-height:440px!important;filter:drop-shadow(0 24px 15px rgba(0,0,0,.25))!important;z-index:2}.pack-shadow{width:70%;height:18%;background:#111;opacity:.18;filter:blur(18px);bottom:12%;z-index:1}.pack-sticker{top:9%;right:8%;width:92px;height:92px;background:#b9ff48;font-size:13px;box-shadow:5px 5px 0 #111}.pack-tape{position:absolute;top:5%;left:7%;z-index:3;background:#111;color:#ffe500;padding:8px 12px;font-size:10px;font-weight:1000;letter-spacing:1.4px;transform:rotate(-7deg);box-shadow:4px 4px 0 #fff}.pack-caption{margin:0;position:absolute;bottom:5%;left:50%;transform:translateX(-50%);white-space:nowrap}.pack-burst{position:absolute;left:7%;bottom:14%;z-index:3;color:#111;font:54px/.75 Impact,'Arial Black',sans-serif;transform:rotate(-12deg);opacity:.85;text-align:center}.pack-callout{position:absolute;z-index:4;background:#fff;color:#111;border:2px solid #111;box-shadow:4px 4px 0 #111;padding:8px 10px;font:11px/1.05 Impact,'Arial Black',sans-serif;text-align:center;transform:rotate(-5deg)}.pack-callout-a{right:5%;bottom:19%}.pack-callout-b{left:6%;top:20%;transform:rotate(6deg);background:#8b3dff;color:#fff}
@media(max-width:760px){.pack{margin:22px 10px 34px;border-radius:24px}.pack-inner{display:block!important}.pack-copy{padding:31px 20px 28px}.pack h2{font-size:40px!important}.pack-copy p{font-size:14px}.pack-specs{margin-bottom:22px}.pack-specs b{font-size:25px}.pack-specs span{font-size:10px}.pack-art{min-height:360px!important}.pack-art img{width:100%!important;max-height:335px!important}.pack-sticker{width:70px;height:70px;top:8%;right:5%;font-size:10px}.pack-tape{font-size:8px;top:5%;left:5%}.pack-burst{font-size:38px;left:4%;bottom:17%}.pack-callout{font-size:9px;padding:6px 7px}.pack-caption{font-size:10px;bottom:5%;max-width:82%;overflow:hidden;text-overflow:ellipsis}.pack-copy .btn{width:100%}}
.quick-links{grid-template-columns:repeat(8,minmax(0,1fr));gap:12px}.quick b{font-size:12px}.visual-path{box-shadow:0 8px 0 rgba(17,17,17,.1),inset 0 0 0 2px #111}.visual-path:after{display:none}.path-copy{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}.visual-path:hover{box-shadow:0 12px 0 rgba(17,17,17,.14),inset 0 0 0 3px #111}
@media(max-width:980px){.quick-links{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 10px}.quick b{font-size:13px}}
@media(max-width:760px){.quick-links{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px 8px;padding:16px 10px 22px}.quick b{font-size:11px}.illustrated-icon{width:58px;height:58px;background-size:246px 307px;background-position:calc(-4px - var(--ix)*60px) calc(-74px - var(--iy)*85px)}}
.custom-design{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;margin-top:14px;padding:12px;border:1px dashed #555;border-radius:14px;background:#202020}.custom-design strong{display:block;color:#fff;font-size:13px}.custom-design small{display:block;color:#aaa;font-size:11px;margin-top:3px}.upload-design{display:inline-flex;align-items:center;gap:8px;border:1px solid #777;border-radius:999px;padding:9px 12px;color:#ffe500;font-size:11px;font-weight:900;cursor:pointer;white-space:nowrap}.upload-design input{position:absolute;width:1px;height:1px;opacity:0}.upload-design:hover{border-color:#ffe500;background:#2b2b2b}.upload-design b{font-size:16px}.clear-design{border:0;background:transparent;color:#aaa;font-size:11px;text-decoration:underline;cursor:pointer}.clear-design:hover{color:#fff}.builder-helper{margin:8px 0 0;color:#aaa;font-size:11px;text-align:center}.custom-design + .total{margin-top:18px}
@media(max-width:560px){.custom-design{grid-template-columns:1fr;align-items:start}.upload-design{justify-content:center}.clear-design{justify-self:end}}
.process-visual{margin:22px 0 28px;border:2px solid #3a3a3a;border-radius:22px;overflow:hidden;background:#171717;box-shadow:8px 8px 0 #ffe500}.process-visual img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.process-visual + .steps{margin-top:0}
@media(max-width:760px){.process-visual{margin:18px 0 22px;border-radius:16px;box-shadow:5px 5px 0 #ffe500}.process-visual img{aspect-ratio:3/2}}

/* Revisión de jerarquía: rutas compactas, campaña a imagen completa y proceso en dos columnas. */
.paths{gap:14px;padding-top:16px;padding-bottom:24px}
.visual-path{min-height:174px;aspect-ratio:auto!important;display:flex;align-items:stretch;gap:16px;padding:25px 28px;background-image:none!important;border:2px solid #111;border-radius:24px;overflow:hidden;position:relative;box-shadow:5px 5px 0 rgba(17,17,17,.12)!important}
.visual-path:before{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-92px;bottom:-126px;background:currentColor;opacity:.1;pointer-events:none}
.visual-path:after{display:none!important}
.visual-path.choose{background:#ffe500!important;color:#111}
.visual-path.custom{background:#111!important;color:#fff;box-shadow:5px 5px 0 #ad43fa!important}
.visual-path.custom:before{opacity:.22}
.path-mark{position:relative;z-index:2;display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border:2px solid currentColor;border-radius:15px;background:rgba(255,255,255,.82);font:1000 26px/1 Arial,sans-serif}
.visual-path.custom .path-mark{background:#ffe500;color:#111}
.path-content{position:relative;z-index:2;display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;justify-content:center}
.path-kicker{font-size:10px;font-weight:1000;letter-spacing:1.3px;opacity:.72}
.path-content>b{margin-top:6px;font:1000 clamp(23px,2.7vw,34px)/.96 Impact,'Arial Black',sans-serif;letter-spacing:-.3px;text-transform:uppercase}
.path-content small{max-width:360px;margin-top:8px;font-size:13px;line-height:1.35;opacity:.76}
.path-cta{margin-top:auto;padding-top:13px;font-size:11px;font-weight:1000;text-transform:uppercase;letter-spacing:.4px}
.path-cta i{font-style:normal;font-size:19px;vertical-align:-2px;margin-left:5px}

.campaign-banner{display:block;min-height:520px;isolation:isolate;position:relative;overflow:hidden}
.campaign-banner:after{display:none}
.campaign-art{position:absolute;inset:0;min-height:0;display:block;overflow:hidden;z-index:1}
.campaign-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;filter:none}
.campaign-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,17,17,.98) 0%,rgba(17,17,17,.86) 25%,rgba(17,17,17,.42) 47%,rgba(17,17,17,0) 75%);z-index:3;pointer-events:none}
.campaign-art .dots{display:none}
.campaign-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:520px;width:min(55%,650px);padding:62px 58px;position:relative;z-index:5}
.campaign-copy h2{font-size:clamp(44px,5vw,68px);max-width:590px}
.campaign-copy p{max-width:430px;color:#f2f2f2;font-size:15px}

.process-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:24px;align-items:stretch;margin-top:24px}
.process-layout .process-visual{height:100%;margin:0;border-radius:24px;box-shadow:8px 8px 0 #ffe500}
.process-layout .process-visual img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover}
.process-layout .steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
.process-layout .step{min-height:0;display:flex;flex-direction:column;padding:19px}
.process-layout .step svg{margin:18px 0 11px}

@media(max-width:760px){
  .paths{grid-template-columns:1fr 1fr;gap:9px;padding:10px 10px 22px}
  .visual-path{min-height:166px;padding:17px 14px;display:block;border-radius:17px}
  .path-mark{width:38px;height:38px;border-radius:12px;font-size:21px}
  .path-content>b{font-size:22px;margin-top:10px}
  .path-content small{font-size:11px;margin-top:6px}
  .path-cta{padding-top:10px;font-size:10px}
  .campaign-banner{min-height:560px;margin-left:10px;margin-right:10px;border-radius:24px}
  .campaign-art img{object-position:center center}
  .campaign-art:after{background:linear-gradient(180deg,rgba(17,17,17,.08) 0%,rgba(17,17,17,.2) 30%,rgba(17,17,17,.96) 83%)}
  .campaign-copy{width:100%;min-height:560px;justify-content:flex-end;padding:30px 22px 28px}
  .campaign-copy h2{font-size:42px}
  .campaign-copy p{font-size:14px;margin-bottom:15px}
  .campaign-copy .btn{align-self:flex-start}
  .process-layout{grid-template-columns:1fr;gap:19px;margin-top:20px}
  .process-layout .process-visual{height:auto;border-radius:18px;box-shadow:5px 5px 0 #ffe500}
  .process-layout .process-visual img{height:auto;aspect-ratio:16/10}
  .process-layout .steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .process-layout .step{padding:14px;min-height:172px}
  .process-layout .step svg{margin:15px 0 9px;width:29px;height:29px}
}

@media(max-width:390px){
  .visual-path{padding:14px 11px;min-height:158px}
  .path-content>b{font-size:19px}
  .path-content small{font-size:10px}
  .campaign-copy h2{font-size:37px}
  .process-layout .step{min-height:165px;padding:12px}
}

/* Catálogo: filtros visibles sin quitarle protagonismo a las prendas. */
.catalog-tools{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(145px,1fr));gap:10px;margin-top:24px;padding:12px;border:1px solid #dedede;border-radius:18px;background:#fafafa}
.catalog-tools label{display:flex;flex-direction:column;gap:5px;min-width:0}
.catalog-tools label>span{font-size:10px;font-weight:1000;letter-spacing:.9px;color:#777;text-transform:uppercase}
.catalog-tools input,.catalog-tools select{width:100%;min-height:44px;border:1px solid #d7d7d7;border-radius:11px;background:#fff;color:#111;padding:10px 12px;font:700 14px/1.2 inherit;outline:none}
.catalog-tools input:focus,.catalog-tools select:focus{border-color:#9140e8;box-shadow:0 0 0 3px #9140e822}
.catalog-search{position:relative;justify-content:flex-end}
.catalog-search svg{position:absolute;left:12px;bottom:13px;width:18px;height:18px;fill:none;stroke:#666;stroke-width:1.8;pointer-events:none}
.catalog-search input{padding-left:38px}
.catalog-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 2px 14px;color:#777;font-size:12px;font-weight:700}
.catalog-meta button{border:0;background:transparent;color:#7a2fd1;font:800 12px/1.2 inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:7px 3px}
.catalog-meta button:hover{color:#111}
.product-specs{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 4px}
.product-specs span{border:1px solid #dedede;border-radius:999px;padding:5px 7px;color:#555;font-size:10px;font-weight:800;line-height:1}
.catalog-empty{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center;padding:32px 18px}
.catalog-empty strong{font-size:18px;color:#222}
.catalog-empty span{color:#777}
.catalog-empty .btn{margin-top:7px}
@media(max-width:980px){.catalog-tools{grid-template-columns:1fr 1fr}.catalog-search{grid-column:1/-1}}
@media(max-width:560px){.catalog-tools{grid-template-columns:1fr 1fr;gap:8px;padding:10px;border-radius:15px}.catalog-tools label>span{font-size:9px}.catalog-tools input,.catalog-tools select{font-size:13px;min-height:43px;padding:9px 8px}.catalog-search input{padding-left:36px}.catalog-meta{font-size:11px;margin-bottom:11px}.product-specs{gap:4px}.product-specs span{font-size:9px;padding:5px 6px}.catalog-empty{min-height:180px}}

/* Las fotos de producto ya vienen recortadas y transparentes: mostrar la prenda completa. */
.product-photo .garment-img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none;object-fit:contain;object-position:center;padding:10px;filter:none}
.product-photo.custom-photo .garment-img{position:static!important;object-fit:cover;padding:0}

/* Kids usa la misma base clásica: la referencia también debe verse sobre la prenda. */
.preview[data-fit="kids"] .art-on-shirt:not([hidden]){display:block!important}

/* Personalizador de ubicaciones y medidas DTF */
.shirt-stage{position:relative;z-index:2;width:min(100%,360px);height:min(78%,440px);min-height:330px;display:grid;place-items:center}
.preview-shirt{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:contain!important;clip-path:none!important;filter:drop-shadow(0 22px 18px #000)!important;z-index:1}
.print-layer{position:absolute;z-index:4;pointer-events:none}
.print-mark{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:3px;overflow:visible}
.print-mark img{min-width:0;min-height:0;max-width:100%;max-height:100%;width:100%;height:100%;display:block;object-fit:contain;filter:drop-shadow(0 4px 3px #0007)}
.print-mark.is-placeholder{border:1.5px dashed #ffe500;background:#ffe5001c;color:#ffe500;box-shadow:0 0 0 1px #1118}
.print-placeholder{font-size:clamp(18px,3vw,30px);line-height:1;font-weight:900}
.print-spec{position:absolute;left:50%;bottom:-17px;transform:translateX(-50%);white-space:nowrap;padding:3px 5px;border-radius:4px;background:#111d;color:#fff;font-size:7px;font-weight:900;letter-spacing:.3px}
.print-mark.has-art .print-spec{background:#ffe500;color:#111}
.placement-area{display:grid;gap:10px;margin-top:2px}
.placement-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}
.placement-heading p{margin:2px 0 0;color:#888;font-size:10px;line-height:1.35}
.placement-count{flex:0 0 auto;border:1px solid #555;border-radius:999px;padding:6px 8px;color:#ffe500;font-size:9px;font-weight:900;white-space:nowrap}
.placement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:380px;overflow:auto;padding:2px 2px 3px;scrollbar-width:thin}
.placement-option{min-width:0;display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;text-align:left;padding:8px;border:1px solid #3d3d3d;border-radius:12px;background:#1b1b1b;color:#fff;cursor:pointer;transition:.15s}
.placement-option:hover{border-color:#777;transform:translateY(-1px)}
.placement-option.on{border-color:#ffe500;background:#292600;box-shadow:0 0 0 1px #ffe50055}
.placement-code{grid-row:1 / span 2;align-self:stretch;display:grid;place-items:center;border-radius:9px;background:#2d2d2d;color:#ffe500;font-size:10px;font-weight:1000;letter-spacing:.3px}
.placement-option.on .placement-code{background:#ffe500;color:#111}
.placement-garment{position:relative;display:block;width:40px;height:37px;background:#4c4c4c;clip-path:polygon(28% 7%,40% 0,60% 0,72% 7%,100% 26%,86% 46%,76% 37%,76% 100%,24% 100%,24% 37%,14% 46%,0 26%);grid-column:2;grid-row:1}
.placement-garment.back{background:#3d3d3d}
.placement-garment i{position:absolute;display:block;transform:translate(-50%,-50%);background:#ffe500;border-radius:2px;opacity:.95}
.placement-copy{display:grid;gap:2px;grid-column:2;grid-row:2;min-width:0}
.placement-copy b{font-size:10px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.placement-copy small{font-size:8px;line-height:1.2;color:#aaa;white-space:normal}
.placement-summary{min-height:16px;color:#aaa;font-size:9px;line-height:1.35}
.dtf-note{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 8px;border:1px solid #383838;border-radius:11px;padding:8px 10px;background:#181818}
.dtf-note span{color:#ffe500;font-size:9px;font-weight:1000;letter-spacing:.7px}
.dtf-note b{font-size:11px;color:#fff;justify-self:end}
.dtf-note small{grid-column:1 / -1;color:#777;font-size:8px;line-height:1.25}
.total-breakdown{align-items:stretch;gap:14px}
.total-lines{display:grid;gap:6px;flex:1}
.total-lines div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.total-lines span{margin:0;color:#fff;font-size:12px;font-weight:800}
.total-final{min-width:105px;display:grid;align-content:center;justify-items:end;border-left:1px solid #333;padding-left:14px}
.total-final small{font-size:8px;color:#aaa;font-weight:1000;letter-spacing:.8px}
.total-final strong{font-size:30px;color:var(--y);line-height:1}

@media(max-width:760px){
  .shirt-stage{width:min(100%,310px);height:300px;min-height:300px}
  .preview-shirt{height:300px!important}
  .print-spec{font-size:6px;bottom:-15px}
  .placement-grid{max-height:none}
  .placement-option{padding:7px}
  .placement-copy b{font-size:9px}
  .placement-copy small{font-size:7px}
  .placement-heading{align-items:flex-start;flex-direction:column;gap:5px}
  .total-breakdown{gap:10px}
  .total-final{min-width:88px;padding-left:10px}
  .total-final strong{font-size:24px}
}

/* Acciones reales del hero: cada CTA tiene su propio destino. */
.hero-full-media{position:relative;line-height:0}
.hero-full-media>img{display:block;width:100%;height:auto;max-height:760px;object-fit:cover;object-position:center top}
.hero-full-actions{position:absolute;left:50%;bottom:6%;transform:translateX(-50%);z-index:6;display:flex;align-items:center;justify-content:center;gap:10px;max-width:calc(100% - 28px);line-height:1.1}
.hero-full-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:148px;padding:12px 17px;border:2px solid #111;border-radius:999px;box-shadow:4px 4px 0 #111;font-size:11px;font-weight:1000;letter-spacing:.4px;text-transform:uppercase;white-space:nowrap;transition:.18s}
.hero-full-cta:hover,.hero-full-cta:focus-visible{transform:translateY(-2px);box-shadow:6px 6px 0 #111;outline:none}
.hero-full-cta-create{background:#ffe500;color:#111}
.hero-full-cta-drops{background:#111;color:#fff}
@media(max-width:760px){
  .hero-full-media>img{max-height:none;object-fit:contain}
  .hero-full-actions{bottom:5%;gap:7px;max-width:calc(100% - 20px)}
  .hero-full-cta{min-width:0;padding:10px 11px;font-size:9px;box-shadow:3px 3px 0 #111}
}

/* Personalizador: texto, zoom y movimiento sobre la referencia. */
.preview-controls{position:absolute;right:14px;bottom:13px;z-index:8;display:flex;align-items:center;gap:4px;padding:4px;border:1px solid #444;border-radius:999px;background:#111d;backdrop-filter:blur(5px)}
.preview-controls button,.preview-controls output{min-width:27px;height:26px;border:0;border-radius:999px;background:#242424;color:#fff;display:grid;place-items:center;font-size:11px;font-weight:900}
.preview-controls button{cursor:pointer}
.preview-controls button:hover,.preview-controls button:focus-visible{background:#ffe500;color:#111;outline:none}
.preview-controls output{min-width:42px;color:#ffe500;font-size:9px}
.preview-controls button:last-child{padding:0 8px;font-size:8px;color:#aaa}
.text-design{display:grid;gap:8px;padding:10px;border:1px solid #3d3d3d;border-radius:14px;background:#181818}
.text-design-controls{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(105px,1fr) minmax(95px,.8fr);gap:8px}
.text-control{min-width:0}
.text-control input,.text-control select{width:100%;min-height:40px;border:1px solid #444;border-radius:10px;background:#fff;color:#111;padding:9px 10px;outline:none}
.text-control input:focus,.text-control select:focus{border-color:#ffe500;box-shadow:0 0 0 3px #ffe50033}
.text-design-help{color:#777;font-size:9px;line-height:1.3}
.print-art-content{min-width:0;min-height:0;overflow:hidden;width:100%;height:100%;display:grid;place-items:center;transform-origin:center;transition:transform .08s ease;pointer-events:auto;cursor:grab;touch-action:none}
.print-art-content:active{cursor:grabbing}
.print-text{display:block;max-width:100%;padding:2px 4px;text-align:center;font-size:clamp(10px,2.2vw,23px);font-weight:1000;line-height:.95;word-break:break-word;text-transform:uppercase;text-shadow:0 1px 2px #0007}
.print-mark.has-content{pointer-events:auto}
.builder-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.builder-actions .btn{width:100%;font-size:11px}
.cart-open-button{width:100%;border:1px solid #555;border-radius:999px;background:#1b1b1b;color:#ffe500;padding:10px;font-size:10px;font-weight:1000;letter-spacing:.4px;cursor:pointer}
.cart-open-button:hover,.cart-open-button:focus-visible{border-color:#ffe500;outline:none}
.cart-drawer{position:fixed;inset:0;z-index:200;visibility:hidden;pointer-events:none}
.cart-drawer.open{visibility:visible;pointer-events:auto}
.cart-backdrop{position:absolute;inset:0;background:#0008;opacity:0;transition:opacity .2s}
.cart-drawer.open .cart-backdrop{opacity:1}
.cart-panel{position:absolute;top:0;right:0;bottom:0;width:min(440px,100%);display:flex;flex-direction:column;background:#111;color:#fff;box-shadow:-18px 0 50px #0008;transform:translateX(100%);transition:transform .24s ease}
.cart-drawer.open .cart-panel{transform:translateX(0)}
.cart-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:24px 22px 18px;border-bottom:1px solid #333}
.cart-header h2{margin:5px 0 0;font:1000 31px/.95 Impact,'Arial Black',sans-serif;text-transform:uppercase}
.cart-close{width:36px;height:36px;border:1px solid #555;border-radius:50%;background:#222;color:#fff;font-size:27px;line-height:1;cursor:pointer}
.cart-close:hover,.cart-close:focus-visible{background:#ffe500;color:#111;outline:none}
.cart-items{display:grid;gap:10px;overflow:auto;padding:16px 18px;flex:1}
.cart-empty{border:1px dashed #555;border-radius:14px;padding:24px 16px;color:#999;font-size:12px;line-height:1.45;text-align:center}
.cart-item{display:grid;gap:10px;padding:13px;border:1px solid #333;border-radius:14px;background:#191919}
.cart-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.cart-item-head strong{font-size:14px;line-height:1.1}
.cart-item-price{color:#ffe500;font-weight:1000;white-space:nowrap}
.cart-item-details{display:grid;gap:3px;color:#999;font-size:10px;line-height:1.35}
.cart-item-actions{display:flex;align-items:center;gap:6px}
.cart-qty{display:flex;align-items:center;gap:8px;border:1px solid #444;border-radius:999px;padding:3px 5px}
.cart-qty button{width:24px;height:24px;border:0;border-radius:50%;background:#2b2b2b;color:#fff;cursor:pointer}
.cart-qty button:hover{background:#ffe500;color:#111}
.cart-qty span{min-width:16px;text-align:center;font-size:11px;font-weight:900}
.cart-remove{margin-left:auto;border:0;background:transparent;color:#ff8b8b;font-size:10px;text-decoration:underline;cursor:pointer}
.cart-footer{display:grid;gap:12px;padding:16px 18px 20px;border-top:1px solid #333;background:#151515}
.cart-total-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.cart-total-row span{color:#aaa;font-size:11px}
.cart-total-row strong{color:#ffe500;font-size:28px}
.cart-footer small{color:#777;font-size:9px;line-height:1.35}
body.cart-open{overflow:hidden}
@media(max-width:760px){
  .text-design-controls{grid-template-columns:1fr 1fr}
  .text-control-grow{grid-column:1/-1}
  .preview-controls{right:10px;bottom:10px}
  .builder-actions{grid-template-columns:1fr}
  .cart-panel{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .hero-full-cta,.print-art-content,.cart-backdrop,.cart-panel{transition:none}
}

/* SEO visible: contexto útil para personas y buscadores. */
.seo-intro{margin:0 18px;padding:28px 30px 26px;border:1px solid #dedede;border-radius:24px;background:#fffdf4;box-shadow:5px 5px 0 #ffe500}
.seo-intro-inner{max-width:840px}
.seo-intro h1{margin:8px 0 12px;font:1000 clamp(31px,4vw,52px)/.95 Impact,'Arial Black',sans-serif;letter-spacing:-.7px;text-transform:uppercase}
.seo-intro p{max-width:820px;margin:0;color:#555;font-size:14px;line-height:1.6}
.seo-intro-note{margin-top:8px!important}
.seo-intro-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px!important}
.seo-intro-links a{display:inline-flex;align-items:center;border:2px solid #111;border-radius:999px;padding:9px 13px;background:#111;color:#fff;font-size:10px;font-weight:1000;text-transform:uppercase}
.seo-intro-links a:last-child{background:#ffe500;color:#111}
.seo-content{padding:6px 18px 44px}
.seo-content-inner{max-width:1144px;margin:auto;padding:28px;border-radius:26px;background:#f5f3ed}
.seo-content h2{margin:7px 0 18px;font:1000 clamp(33px,4vw,49px)/.95 Impact,'Arial Black',sans-serif;letter-spacing:-.7px;text-transform:uppercase}
.seo-content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.seo-content-grid article{padding:17px;border:1px solid #dedbd2;border-radius:17px;background:#fff}
.seo-content-grid h3{margin:0 0 8px;font-size:17px}
.seo-content-grid p{margin:0;color:#666;font-size:12px;line-height:1.55}
@media(max-width:760px){
  .seo-intro{margin:0 10px;padding:23px 18px 21px;border-radius:18px;box-shadow:4px 4px 0 #ffe500}
  .seo-intro h1{font-size:35px}
  .seo-intro p{font-size:13px}
  .seo-content{padding:0 12px 34px}
  .seo-content-inner{padding:21px 16px;border-radius:20px}
  .seo-content h2{font-size:34px}
  .seo-content-grid{grid-template-columns:1fr;gap:9px}
}


/* Personalizador compacto: flujo móvil primero, sin editor técnico al frente. */
.builder-grid-compact{grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);align-items:start;gap:18px}
.compact-preview{min-height:430px!important;position:sticky;top:14px}
.compact-preview .shirt-stage{height:360px;min-height:360px}
.compact-preview .preview-shirt{height:360px}
.compact-fields{display:grid;gap:11px}
.customizer-intro{display:grid;gap:4px}
.customizer-intro h3{margin:0;font:1000 25px/.98 Impact,'Arial Black',sans-serif;text-transform:uppercase}
.customizer-intro p{margin:0;color:#aaa;font-size:11px;line-height:1.4}
.step-kicker{color:#ffe500;font-size:9px;font-weight:1000;letter-spacing:.8px;text-transform:uppercase}
.custom-mode{display:grid;gap:7px}
.custom-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.custom-mode-option{min-width:0;display:flex;align-items:center;gap:8px;text-align:left;padding:10px;border:1px solid #3d3d3d;border-radius:13px;background:#1b1b1b;color:#fff;cursor:pointer;transition:.15s}
.custom-mode-option:hover{border-color:#777;transform:translateY(-1px)}
.custom-mode-option.on{border-color:#ffe500;background:#2b2700;box-shadow:0 0 0 1px #ffe50055}
.custom-mode-option>span:last-child{display:grid;gap:2px;min-width:0}
.custom-mode-option strong{font-size:10px;line-height:1.1}
.custom-mode-option small{color:#999;font-size:8px;line-height:1.15}
.custom-mode-icon{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:50%;background:#333;color:#ffe500;font-size:16px;font-weight:1000}
.custom-mode-option.on .custom-mode-icon{background:#ffe500;color:#111}
.custom-source[hidden]{display:none!important}
.custom-source{display:grid;gap:9px;padding:11px;border:1px solid #343434;border-radius:14px;background:#181818}
.custom-source .field{display:grid;gap:5px}
.custom-source .mini-label,.garment-details .mini-label{color:#aaa}
.garment-details{display:grid;gap:8px;padding:11px;border:1px solid #343434;border-radius:14px;background:#181818}
.garment-details .field label{font-size:9px;color:#aaa}
.garment-details select{min-height:42px}
.idea-callout{display:grid;gap:4px;padding:9px 10px;border:1px dashed #5d5416;border-radius:10px;background:#2a2605}
.idea-callout strong{font-size:12px}
.idea-callout small{color:#c9c09b;font-size:10px;line-height:1.35}
.order-notes{display:grid;gap:6px;padding:11px;border:1px solid #343434;border-radius:14px;background:#181818}
.order-notes textarea{width:100%;min-height:78px;resize:vertical;border:1px solid #444;border-radius:10px;background:#fff;color:#111;padding:10px;font:600 12px/1.4 Arial,sans-serif;outline:none}
.order-notes textarea:focus{border-color:#ffe500;box-shadow:0 0 0 3px #ffe50033}
.order-notes small{color:#888;font-size:9px;line-height:1.35}
.placement-more{width:100%;border:1px dashed #5d5d5d;border-radius:999px;background:transparent;color:#ffe500;padding:8px 10px;font-size:9px;font-weight:1000;letter-spacing:.4px;cursor:pointer}
.placement-more:hover,.placement-more:focus-visible{border-color:#ffe500;outline:none}
.preview-status{position:absolute;right:12px;bottom:42px;max-width:60%;padding:5px 8px;border-radius:999px;background:#fff;color:#555;font-size:8px;line-height:1.2;text-align:right;box-shadow:0 1px 4px #0002}
.print-art-content{cursor:default;pointer-events:none}
@media(min-width:761px){
  .placement-more{display:none!important}
}
@media(max-width:760px){
  .builder-sec{padding:16px 8px 30px}
  .builder{padding:16px 10px;border-radius:21px}
  .builder-title{gap:8px;margin-bottom:12px}
  .builder-title h2{font-size:33px}
  .builder-title p{font-size:11px;line-height:1.35}
  .builder-tag{font-size:8px!important}
  .builder-grid-compact{display:flex;flex-direction:column;gap:10px}
  .compact-preview{order:0;position:relative;top:auto;width:100%;min-height:232px!important;height:232px;border-radius:16px}
  .compact-preview .shirt-stage{height:185px;min-height:185px}
  .compact-preview .preview-shirt{height:205px;max-height:205px}
  .compact-preview .view-switch{top:8px;left:8px}
  .compact-preview .view-switch button{min-height:32px;padding:7px 10px;font-size:10px}
  .compact-preview .preview-note{top:9px;right:9px;font-size:8px;padding:5px 7px}
  .compact-preview .preview-label{left:9px;bottom:10px;font-size:8px}
  .preview-status{right:9px;bottom:10px;max-width:58%;font-size:7px;padding:4px 6px}
  .compact-fields{order:1;gap:8px}
  .customizer-intro{padding:2px 1px}
  .customizer-intro h3{font-size:21px}
  .customizer-intro p{font-size:10px}
  .custom-mode-grid{gap:5px}
  .custom-mode-option{min-height:63px;display:grid;place-items:center;gap:4px;padding:7px 3px;text-align:center;border-radius:11px}
  .custom-mode-option>span:last-child{display:grid;gap:3px;justify-items:center}
  .custom-mode-option strong{font-size:8px;line-height:1.05}
  .custom-mode-option small{display:none}
  .custom-mode-icon{width:24px;height:24px;flex-basis:24px;font-size:14px}
  .garment-details,.custom-source,.order-notes{padding:9px;border-radius:12px;gap:7px}
  .step-kicker{font-size:8px}
  .field label,.mini-label{font-size:9px}
  .field select,.garment-details select{min-height:40px;padding:8px 9px;font-size:13px}
  .two-fields{gap:6px}
  .char-row{gap:5px}
  .chip{min-height:34px;padding:7px 9px;font-size:10px}
  .designs{gap:6px}
  .design{min-height:100px;padding:5px}
  .design b{font-size:9px}
  .order-notes textarea{min-height:72px;font-size:11px;padding:9px}
  .order-notes small{font-size:8px}
  .placement-heading{align-items:flex-start;gap:7px}
  .placement-heading p{font-size:8px}
  .placement-count{padding:5px 7px;font-size:8px}
  .placement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;max-height:none;overflow:visible;padding:1px}
  .placement-grid:not(.is-expanded) .placement-option:nth-child(n+7){display:none}
  .placement-option{grid-template-columns:27px 1fr;column-gap:5px;padding:5px;border-radius:9px}
  .placement-code{font-size:8px;border-radius:7px}
  .placement-garment{width:29px;height:27px}
  .placement-copy b{font-size:8px}
  .placement-copy small{font-size:7px}
  .placement-summary{font-size:8px;max-height:34px;overflow:auto}
  .dtf-note{padding:7px 8px}
  .dtf-note span{font-size:8px}
  .dtf-note b{font-size:9px}
  .dtf-note small{font-size:7px}
  .total-breakdown{gap:8px;padding:10px}
  .total-lines{gap:4px}
  .total-lines small,.total-lines span{font-size:9px}
  .total-final strong{font-size:25px}
  .builder-actions{gap:6px}
  .builder-actions .btn{min-height:42px;font-size:10px}
  .builder-helper{font-size:8px!important;line-height:1.35}
}


/* Flujo por pasos del personalizador: un panel abierto a la vez. */
.customizer-step{border:1px solid #3d3d3d;border-radius:15px;background:#181818;overflow:hidden;scroll-margin-top:18px}
.customizer-step.is-open{border-color:#5a5314;box-shadow:0 0 0 1px #ffe50022}
.customizer-step.is-locked{opacity:.72}
.customizer-step-header{width:100%;display:grid;grid-template-columns:32px minmax(0,1fr) 24px;align-items:center;gap:9px;padding:12px 13px;border:0;background:#202020;color:#fff;text-align:left;cursor:pointer}
.customizer-step-header:hover:not(:disabled){background:#282600}
.customizer-step-header:disabled{cursor:not-allowed;color:#888}
.customizer-step-number{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#333;color:#ffe500;font-size:10px;font-weight:1000}
.customizer-step.is-open .customizer-step-number,.customizer-step.is-complete .customizer-step-number{background:#ffe500;color:#111}
.customizer-step-title{display:grid;gap:3px;min-width:0}
.customizer-step-title strong{font-size:11px;letter-spacing:.5px}
.customizer-step-title small{color:#999;font-size:8px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.customizer-step-arrow{color:#ffe500;font-size:19px;line-height:1;text-align:center;transform:rotate(0deg);transition:transform .18s}
.customizer-step.is-open .customizer-step-arrow{transform:rotate(180deg)}
.customizer-step-header:disabled .customizer-step-arrow{color:#666}
.customizer-step-content{display:grid;gap:10px;padding:11px}
.customizer-step-content[hidden]{display:none!important}
.step-intro{padding:8px 10px;border:1px dashed #4f4817;border-radius:10px;background:#242000;color:#c9c09b;font-size:10px;line-height:1.4}
.step-next{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;border:0;border-radius:10px;background:#ffe500;color:#111;padding:12px 13px;font-size:10px;font-weight:1000;letter-spacing:.35px;cursor:pointer}
.step-next span{font-size:17px;line-height:1}
.step-next:hover,.step-next:focus-visible{background:#fff06b;outline:none}
.customizer-step.is-complete .customizer-step-header{background:#242400}
@media(max-width:760px){
  .customizer-step{border-radius:12px}
  .customizer-step-header{grid-template-columns:28px minmax(0,1fr) 20px;gap:7px;padding:10px}
  .customizer-step-number{width:26px;height:26px;font-size:9px}
  .customizer-step-title strong{font-size:9px}
  .customizer-step-title small{font-size:7px}
  .customizer-step-arrow{font-size:16px}
  .customizer-step-content{gap:8px;padding:8px}
  .step-intro{padding:7px 8px;font-size:8px}
  .step-next{min-height:40px;padding:10px 11px;font-size:9px}
}


/* Indicador de avance del flujo de personalización. */
.customizer-progress{display:grid;gap:7px;padding:1px 2px 3px}
.customizer-progress-top{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#888;font-size:8px;font-weight:1000;letter-spacing:.7px}
.customizer-progress-top strong{color:#ffe500;font-size:9px}
.customizer-progress-track{height:4px;border-radius:99px;background:#343434;overflow:hidden}
.customizer-progress-track span{display:block;width:33.333%;height:100%;border-radius:inherit;background:#ffe500;transition:width .22s ease}
.customizer-progress-current{color:#aaa;font-size:9px;font-weight:900;letter-spacing:.35px;text-transform:uppercase}
@media(max-width:760px){
  .customizer-progress{gap:5px;padding:0 1px 2px}
  .customizer-progress-top{font-size:7px}
  .customizer-progress-top strong{font-size:8px}
  .customizer-progress-track{height:3px}
  .customizer-progress-current{font-size:8px}
}

/* Flujo de estampados por ubicación */
.customizer-progress-track span{width:25%}
.placement-designs{display:grid;gap:7px}
.placement-design-card{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:9px 10px;border:1px solid #3d3d3d;border-radius:11px;background:#1b1b1b;color:#fff;text-align:left;cursor:pointer}
.placement-design-card:hover{border-color:#777}
.placement-design-card.on{border-color:#ffe500;background:#292600;box-shadow:0 0 0 1px #ffe50055}
.placement-design-index{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#333;color:#ffe500;font-size:9px;font-weight:1000}
.placement-design-card.on .placement-design-index{background:#ffe500;color:#111}
.placement-design-copy{display:grid;gap:2px;min-width:0}
.placement-design-copy b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.placement-design-copy small{color:#999;font-size:8px;line-height:1.2}
.placement-design-status{max-width:135px;color:#aaa;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.placement-design-status.ready{color:#ffe500}
.placement-design-edit{color:#888;font-size:8px;font-weight:1000;letter-spacing:.4px}
.placement-designer-panel{display:grid;gap:9px;padding:11px;border:1px solid #514b16;border-radius:14px;background:#211f08}
.placement-designer-panel[hidden]{display:none!important}
.placement-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.placement-editor-heading .mini-label{color:#ffe500}
.placement-editor-heading small{display:block;margin-top:3px;color:#c9c09b;font-size:9px}
.placement-source-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
.placement-source-tabs button{min-height:36px;border:1px solid #4a451a;border-radius:9px;background:#181818;color:#aaa;padding:7px 5px;font-size:8px;font-weight:1000;letter-spacing:.25px;cursor:pointer}
.placement-source-tabs button:hover{border-color:#ffe500;color:#fff}
.placement-source-tabs button.on{border-color:#ffe500;background:#ffe500;color:#111}
.placement-source-panel{display:grid;gap:8px}
.placement-source-panel[hidden]{display:none!important}
.placement-source-panel .field{display:grid;gap:5px}
.placement-notes{width:100%;min-height:76px;resize:vertical;border:1px solid #4b4518;border-radius:10px;background:#fff;color:#111;padding:10px;font:600 12px/1.4 Arial,sans-serif;outline:none}
.placement-notes:focus{border-color:#ffe500;box-shadow:0 0 0 3px #ffe50033}
.final-review{display:grid;gap:8px;padding:10px;border:1px solid #343434;border-radius:13px;background:#181818}
.final-placement-summary{display:grid;gap:6px}
.final-placement{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:7px 8px;border-radius:8px;background:#222}
.final-placement>div{display:grid;gap:2px;min-width:0}
.final-placement b{font-size:10px}
.final-placement small{color:#999;font-size:8px}
.final-placement>span{max-width:52%;color:#ffe500;font-size:9px;text-align:right;overflow-wrap:anywhere}
.print-note-placeholder{font-size:clamp(16px,3vw,26px);color:#ffe500}
.print-mark.has-note{border:1.5px dashed #ffe500;background:#ffe5001c;color:#ffe500}
@media(max-width:760px){
  .placement-design-card{grid-template-columns:27px minmax(0,1fr);gap:5px;padding:7px}
  .placement-design-index{width:23px;height:23px;font-size:8px}
  .placement-design-copy b{font-size:8px}
  .placement-design-copy small{font-size:7px}
  .placement-design-status{grid-column:2;max-width:none;font-size:7px}
  .placement-design-edit{display:none}
  .placement-designer-panel{padding:9px;border-radius:12px}
  .placement-source-tabs{gap:4px}
  .placement-source-tabs button{min-height:34px;padding:6px 3px;font-size:7px}
  .placement-notes{min-height:70px;font-size:11px;padding:9px}
  .final-placement{padding:6px}
  .final-placement b{font-size:8px}
  .final-placement small,.final-placement>span{font-size:7px}
}


/* Ruta separada para comprar diseños prediseñados. */
.ready-sec{margin:16px 18px 0;padding:32px 30px 27px;background:#111;color:#fff;border:2px solid #111;border-radius:24px;box-shadow:7px 7px 0 #ffe500}
.ready-sec-inner{max-width:1320px;margin:0 auto}
.ready-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}
.ready-head h2{margin:7px 0 10px;font:1000 clamp(34px,4.3vw,58px)/.9 Impact,'Arial Black',sans-serif;letter-spacing:-.6px;text-transform:uppercase}
.ready-head p{max-width:740px;margin:0;color:#bcbcbc;font-size:14px;line-height:1.55}
.ready-head-tag{border:1px solid #ffe500;color:#ffe500;border-radius:999px;padding:9px 12px;white-space:nowrap;font-size:10px;font-weight:1000;letter-spacing:.5px}
.ready-designs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.ready-card{display:grid;min-width:0;background:#1a1a1a;border:1px solid #3b3b3b;border-radius:16px;overflow:hidden}
.ready-card-preview{position:relative;aspect-ratio:1/1;background:#f3f3f0;overflow:hidden}
.ready-preview-stage{position:absolute;inset:0;overflow:hidden}
.ready-preview-shirt{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.ready-preview-prints{position:absolute;inset:0;pointer-events:none}
.ready-preview-print{position:absolute;display:grid;place-items:center;transform:translate(-50%,-50%);overflow:hidden}
.ready-preview-print img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 1px #0003)}
.ready-card-stamp{position:absolute;top:10px;left:10px;background:#ffe500;color:#111;border:1px solid #111;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:1000;letter-spacing:.35px}
.ready-card-body{display:grid;gap:8px;padding:14px}
.ready-card-meta{display:flex;justify-content:space-between;gap:6px;color:#888;font-size:9px;font-weight:900;text-transform:uppercase}
.ready-card-body h3{margin:0;color:#fff;font-size:18px;line-height:1.05}
.ready-card-body p{min-height:29px;margin:0;color:#aaa;font-size:10px;line-height:1.35}
.ready-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}
.ready-card-bottom strong{color:#ffe500;font-size:22px;white-space:nowrap}
.ready-card-bottom .btn{min-height:36px;padding:8px 9px;font-size:9px}
.ready-footnote{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:22px;color:#999;font-size:11px}
.ready-footnote a{color:#ffe500;font-weight:900;text-decoration:underline}
.ready-empty{grid-column:1/-1;display:grid;gap:10px;justify-items:start;color:#aaa}
.ready-empty strong{color:#fff;font-size:18px}
.ready-empty .btn{margin-top:4px}

/* Detalle de compra rápida. */
.ready-drawer{position:fixed;inset:0;z-index:210;visibility:hidden;pointer-events:none}
.ready-drawer.open{visibility:visible;pointer-events:auto}
.ready-backdrop{position:absolute;inset:0;background:#0009;opacity:0;transition:opacity .2s}
.ready-drawer.open .ready-backdrop{opacity:1}
.ready-panel{position:absolute;top:0;right:0;bottom:0;width:min(850px,100%);overflow:auto;background:#111;color:#fff;box-shadow:-18px 0 50px #0008;transform:translateX(100%);transition:transform .24s ease}
.ready-drawer.open .ready-panel{transform:translateX(0)}
.ready-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:24px 24px 18px;border-bottom:1px solid #333}
.ready-header h2{margin:5px 0 0;font:1000 31px/.95 Impact,'Arial Black',sans-serif;text-transform:uppercase}
.ready-detail{padding:20px 24px 30px}
.ready-detail-grid{display:grid;grid-template-columns:minmax(260px,.88fr) minmax(0,1.12fr);gap:24px;align-items:start}
.ready-detail-visual{position:sticky;top:0;min-width:0;aspect-ratio:1/1;border-radius:18px;overflow:hidden;background:#f3f3f0}
.ready-detail-visual .ready-preview-stage{position:absolute;inset:0}
.ready-detail-copy{display:grid;gap:13px;min-width:0}
.ready-detail-kicker{color:#ffe500;font-size:10px;font-weight:1000;letter-spacing:.8px}
.ready-detail-copy h3{margin:0;font:1000 clamp(30px,5vw,54px)/.9 Impact,'Arial Black',sans-serif;text-transform:uppercase}
.ready-detail-copy>p{margin:0;color:#aaa;font-size:13px;line-height:1.5}
.ready-placement-list{display:grid;gap:7px}
.ready-placement-list>div{display:flex;justify-content:space-between;gap:12px;border:1px solid #3a3a3a;border-radius:10px;padding:9px 10px;background:#191919}
.ready-placement-list span{font-size:11px;font-weight:900}
.ready-placement-list small{color:#999;font-size:10px;text-align:right}
.ready-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ready-field{display:grid;gap:5px;color:#aaa;font-size:10px;font-weight:900}
.ready-field select,.ready-field input{width:100%;min-height:44px;border:1px solid #444;border-radius:9px;background:#202020;color:#fff;padding:8px 10px;font-size:14px}
.ready-price-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-top:1px solid #3a3a3a;border-bottom:1px solid #3a3a3a;padding:13px 0}
.ready-price-row span{color:#999;font-size:11px}
.ready-price-row strong{color:#ffe500;font-size:31px}
.ready-actions{display:grid;gap:8px}
.ready-actions .btn{width:100%;min-height:46px}
.ready-modify{border:0;background:transparent;color:#ffe500;text-align:left;text-decoration:underline;cursor:pointer;font-size:11px;font-weight:900;padding:5px 0}
.ready-disclaimer{color:#777;font-size:10px;line-height:1.45}

@media(max-width:980px){
  .ready-designs{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .ready-sec{margin:12px 10px 0;padding:22px 14px 19px;border-radius:18px;box-shadow:4px 4px 0 #ffe500}
  .ready-head{display:grid;gap:12px;margin-bottom:16px}
  .ready-head h2{font-size:37px}
  .ready-head p{font-size:11px;line-height:1.45}
  .ready-head-tag{justify-self:start;font-size:8px;padding:7px 9px}
  .ready-designs{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .ready-card{border-radius:12px}
  .ready-card-stamp{top:7px;left:7px;padding:4px 5px;font-size:6px}
  .ready-card-body{gap:6px;padding:9px}
  .ready-card-meta{font-size:7px}
  .ready-card-body h3{font-size:14px}
  .ready-card-body p{min-height:25px;font-size:8px}
  .ready-card-bottom{display:grid;grid-template-columns:1fr;gap:6px}
  .ready-card-bottom strong{font-size:18px}
  .ready-card-bottom .btn{width:100%;min-height:35px;font-size:8px}
  .ready-footnote{display:grid;gap:4px;text-align:center;font-size:9px}
  .ready-panel{width:100%}
  .ready-header{padding:17px 15px 13px}
  .ready-header h2{font-size:27px}
  .ready-detail{padding:14px 15px 24px}
  .ready-detail-grid{grid-template-columns:1fr;gap:16px}
  .ready-detail-visual{position:relative;max-height:310px;aspect-ratio:1/1}
  .ready-detail-copy h3{font-size:39px}
  .ready-detail-copy>p{font-size:11px}
  .ready-placement-list>div{padding:8px}
  .ready-placement-list span{font-size:10px}
  .ready-placement-list small{font-size:8px}
  .ready-controls{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ready-field:last-child{grid-column:1/-1}
  .ready-field select,.ready-field input{min-height:42px;font-size:13px}
  .ready-price-row strong{font-size:27px}
}
@media(prefers-reduced-motion:reduce){
  .ready-backdrop,.ready-panel{transition:none}
}

/* Galería externa de estampados alojada en Google Drive. */
.drive-gallery-note{display:block;margin-top:6px;color:#888;font-size:10px;line-height:1.35}
.drive-gallery-note a{color:#ffe500;text-decoration:underline;font-weight:800}
.badge.drive{background:#b9ff48;color:#111}

/* Prediseñados: navegación ligera y galería escalable. */
.ready-toolbar{display:grid;gap:15px;margin:0 0 20px}
.ready-toolbar-top{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.ready-view-tabs,.ready-filters{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.ready-view-tab,.ready-filter,.ready-inline-action{position:relative;border:0;border-radius:0;background:transparent;color:#a9a9a9;padding:4px 0;font:900 10px/1 inherit;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;outline:0;-webkit-tap-highlight-color:transparent}
.ready-view-tab::after,.ready-filter::after,.ready-inline-action::after{content:"";position:absolute;left:50%;bottom:-6px;width:0;height:2px;background:#ffe500;transform:translateX(-50%);transition:width .22s ease}
.ready-view-tab:hover,.ready-view-tab.on,.ready-filter:hover,.ready-filter.on,.ready-inline-action:hover{color:#fff}
.ready-view-tab:hover::after,.ready-filter:hover::after,.ready-inline-action:hover::after{width:58%}
.ready-view-tab.on{color:#ffe500}
.ready-view-tab.on::after,.ready-filter.on::after{width:100%}
.ready-filters{gap:18px;padding-top:1px;border-top:1px solid rgba(255,255,255,.12)}
.ready-filters .ready-filter{padding-top:12px}
.ready-count{color:#8f8f8f;font-size:10px;white-space:nowrap}
.ready-gallery-more{grid-column:1/-1;display:flex;justify-content:center;padding:8px 0 2px}
.ready-inline-action{color:#ffe500;padding:6px 2px}
.ready-view-label{position:absolute;left:10px;bottom:10px;z-index:3;padding:5px 8px;border-radius:999px;background:rgba(0,0,0,.72);color:#fff;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.ready-view-switch{display:flex;gap:7px;margin:0 0 14px}
.ready-view-switch button{flex:1;border:1px solid rgba(255,255,255,.14);background:#141414;color:#aaa;border-radius:999px;padding:9px 10px;font:800 10px/1 inherit;cursor:pointer}
.ready-view-switch button.on{background:#ffe500;border-color:#ffe500;color:#111}
.ready-mockup-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center;border-radius:inherit}
.ready-card-preview .ready-mockup-image{padding:8px}
@media(max-width:640px){
  .ready-toolbar{gap:12px;margin-bottom:15px}
  .ready-toolbar-top{display:grid;gap:12px}
  .ready-view-tabs,.ready-filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:3px}
  .ready-view-tabs::-webkit-scrollbar,.ready-filters::-webkit-scrollbar{display:none}
  .ready-view-tab,.ready-filter{flex:0 0 auto;padding:4px 0;font-size:9px}
  .ready-filters .ready-filter{padding-top:10px}
  .ready-count{font-size:9px}
}

/* Visores ampliados para revisar la franela y el estampado. */
.ready-zoom-trigger{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;padding:0;border:0;background:transparent;color:inherit;cursor:zoom-in}
.ready-zoom-trigger:focus-visible{outline:3px solid #ffe500;outline-offset:-5px}
.ready-zoom-icon{position:absolute;right:10px;bottom:10px;z-index:4;display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:#111d;color:#ffe500;font-size:21px;line-height:1;pointer-events:none;transition:transform .18s ease,background .18s ease}
.ready-zoom-trigger:hover .ready-zoom-icon,.ready-zoom-trigger:focus-visible .ready-zoom-icon{transform:scale(1.08);background:#111;color:#fff}
.ready-view-label,.ready-card-stamp,.ready-card-series{pointer-events:none}
.design-thumb.has-image{position:relative;cursor:zoom-in}
.design-thumb-zoom{position:absolute;right:7px;bottom:7px;display:grid;place-items:center;width:26px;height:26px;border:1px solid rgba(255,255,255,.78);border-radius:50%;background:#111d;color:#ffe500;font-size:17px;line-height:1;pointer-events:none}
.preview-zoom-trigger{position:absolute;right:12px;bottom:12px;z-index:8;display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:7px 10px;border:1px solid #111;border-radius:999px;background:#fff;color:#111;font-size:9px;font-weight:1000;letter-spacing:.4px;cursor:zoom-in;box-shadow:2px 2px 0 #111}
.preview-zoom-trigger svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.preview-zoom-trigger:hover,.preview-zoom-trigger:focus-visible{background:#ffe500;outline:none}
.print-mark.has-content,.print-mark.has-content .print-art-content,.print-mark.has-content img{pointer-events:auto}
.print-mark.has-content img{cursor:zoom-in}
.image-lightbox{position:fixed;inset:0;z-index:310;visibility:hidden;pointer-events:none;opacity:0;transition:opacity .2s ease}
.image-lightbox.open{visibility:visible;pointer-events:auto;opacity:1}
.image-lightbox-backdrop{position:absolute;inset:0;background:#000d;cursor:zoom-out}
.image-lightbox-dialog{position:relative;z-index:1;width:min(960px,calc(100% - 28px));height:min(900px,calc(100% - 28px));margin:14px auto;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;overflow:hidden;border:1px solid #444;border-radius:18px;background:#151515;color:#fff;box-shadow:0 22px 70px #000b;transform:scale(.96);transition:transform .2s ease}
.image-lightbox.open .image-lightbox-dialog{transform:scale(1)}
.image-lightbox-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 20px 14px;border-bottom:1px solid #333}
.image-lightbox-header h2{margin:5px 0 0;font:1000 clamp(24px,4vw,42px)/.95 Impact,'Arial Black',sans-serif;text-transform:uppercase}
.image-lightbox-viewer{position:relative;display:grid;grid-template-columns:clamp(40px,6vw,64px) minmax(0,1fr) clamp(40px,6vw,64px);min-height:0;overflow:hidden;background:#f3f3f0}
.image-lightbox-viewer .image-lightbox-stage{grid-column:1/-1;grid-row:1;width:100%;height:100%}
.image-lightbox-stage{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden;padding:18px;background:#f3f3f0}
.image-lightbox-stage>img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;cursor:zoom-out}
.image-lightbox-stage.is-custom{background:#e8e8e5}
.image-lightbox-custom-frame{position:relative;display:grid;place-items:center;flex:none}
.image-lightbox-custom-frame .lightbox-shirt-stage{flex:none}
.image-lightbox-nav{grid-row:1;z-index:3;align-self:center;justify-self:center;display:grid;place-items:center;width:42px;height:42px;border:1px solid #111;border-radius:50%;background:#111d;color:#ffe500;font-size:32px;line-height:1;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}
.image-lightbox-nav.prev{grid-column:1}
.image-lightbox-nav.next{grid-column:3}
.image-lightbox-nav:hover,.image-lightbox-nav:focus-visible{background:#ffe500;color:#111;transform:scale(1.06);outline:none}
.image-lightbox-nav span{display:block;transform:translateY(-2px)}
.image-lightbox-pager{padding:8px 12px 0;color:#ffe500;font-size:11px;font-weight:900;letter-spacing:.06em;text-align:center;text-transform:uppercase;background:#151515}
.image-lightbox-help{margin:0;padding:10px 18px 13px;color:#999;font-size:11px;text-align:center;border-top:1px solid #333}
body.image-lightbox-open{overflow:hidden}
@media(max-width:760px){
  .preview-zoom-trigger{right:8px;bottom:8px;min-height:32px;padding:6px 8px;font-size:8px}
  .ready-zoom-icon{right:7px;bottom:7px;width:27px;height:27px;font-size:18px}
  .design-thumb-zoom{right:5px;bottom:5px;width:23px;height:23px;font-size:15px}
  .image-lightbox-dialog{width:calc(100% - 18px);height:calc(100% - 18px);margin:9px auto;border-radius:14px}
  .image-lightbox-header{padding:14px 13px 11px}
  .image-lightbox-header h2{font-size:27px}
  .image-lightbox-viewer{grid-template-columns:40px minmax(0,1fr) 40px}
  .image-lightbox-nav{width:34px;height:34px;font-size:28px}
  .image-lightbox-stage{padding:10px}
  .image-lightbox-pager{font-size:9px;padding-top:6px}
  .image-lightbox-help{font-size:10px;padding:8px 12px 10px}
}
/* UX: galería de estampados controlada en móvil */
.design-search-field input{
  width:100%;
  min-height:48px;
  border:1px solid #444;
  border-radius:10px;
  background:#fff;
  color:#111;
  padding:10px 12px;
  font-size:16px;
  font-weight:700;
  font-family:inherit;
  outline:none;
}
.design-search-field input:focus{
  border-color:#ffe500;
  box-shadow:0 0 0 3px rgba(255,229,0,.22);
}
.designs-empty{
  min-height:130px;
  display:grid;
  gap:7px;
  place-content:center;
  padding:20px;
  border:1px dashed #555;
  border-radius:12px;
  color:#aaa;
  text-align:center;
}
.designs-empty strong{color:#fff;font-size:14px}
.designs-empty span{font-size:12px}
@media (max-width:760px){
  .design-search-field input{min-height:40px;font-size:13px;padding:8px 9px}
}

/* Empaque: hacer protagonista la caja y la franela */
.pack-art img{
  width:100%!important;
  max-height:700px!important;
}
@media (max-width:760px){
  .pack-art img{
    width:100%!important;
    max-height:420px!important;
  }
}

/* Capa de movimiento: interacción útil, ligera y mobile-first */
:root{
  --ccs-motion-ease:cubic-bezier(.22,1,.36,1);
}
.scroll-progress{
  position:fixed;
  top:0;
  left:0;
  z-index:9999;
  width:100%;
  height:3px;
  background:#ffe500;
  transform:scaleX(0);
  transform-origin:0 50%;
  pointer-events:none;
  box-shadow:0 1px 0 #111;
  transition:transform .15s linear;
}
[data-motion-reveal]{
  opacity:0;
  transform:translate3d(0,24px,0);
  transition:opacity .65s var(--ccs-motion-ease),transform .65s var(--ccs-motion-ease);
}
[data-motion-reveal].is-visible{
  opacity:1;
  transform:none;
}
[data-motion-stagger] > *{
  opacity:0;
  transform:translate3d(0,16px,0);
  transition:opacity .55s var(--ccs-motion-ease),transform .55s var(--ccs-motion-ease);
}
[data-motion-stagger].is-visible > *{
  opacity:1;
  transform:none;
}
[data-motion-stagger].is-visible > *:nth-child(2){transition-delay:70ms}
[data-motion-stagger].is-visible > *:nth-child(3){transition-delay:140ms}
[data-motion-stagger].is-visible > *:nth-child(4){transition-delay:210ms}
[data-motion-stagger].is-visible > *:nth-child(5){transition-delay:280ms}
[data-motion-stagger].is-visible > *:nth-child(6){transition-delay:350ms}
[data-motion-stagger].is-visible > *:nth-child(7){transition-delay:420ms}
[data-motion-stagger].is-visible > *:nth-child(8){transition-delay:490ms}
.desktop-nav a:after{
  transition:right .28s var(--ccs-motion-ease);
}
.desktop-nav a.is-active:after{
  right:0;
}
.mobile-menu a{
  position:relative;
}
.mobile-menu a:after{
  content:"";
  position:absolute;
  left:14px;
  bottom:7px;
  width:0;
  height:2px;
  background:#ffe500;
  transition:width .28s var(--ccs-motion-ease);
}
.mobile-menu a.is-active{
  color:#ffe500;
}
.mobile-menu a.is-active:after{
  width:34px;
}
@media (hover:hover){
  .quick,
  .visual-path,
  .product,
  .series-card,
  .ready-card,
  .design,
  .step,
  .seo-content-grid article{
    transition:transform .3s var(--ccs-motion-ease),box-shadow .3s var(--ccs-motion-ease),border-color .2s ease;
  }
  .quick:hover{transform:translate3d(0,-6px,0)}
  .visual-path:hover{transform:translate3d(0,-6px,0) scale(1.01);box-shadow:7px 7px 0 #ffe500}
  .product:hover{transform:translate3d(0,-6px,0);box-shadow:7px 7px 0 #ffe500}
  .series-card:hover{transform:translate3d(0,-5px,0);box-shadow:5px 5px 0 #111}
  .ready-card:hover{transform:translate3d(0,-5px,0);box-shadow:5px 5px 0 #ffe500}
  .design:hover{transform:translate3d(0,-3px,0);box-shadow:3px 3px 0 #ffe500}
  .step:hover{transform:translate3d(0,-4px,0);border-color:#ffe500;box-shadow:5px 5px 0 #ffe500}
  .seo-content-grid article:hover{transform:translate3d(0,-4px,0);box-shadow:4px 4px 0 #ffe500}
  .hero-full-media>img,
  .campaign-art img,
  .pack-art img{
    transition:transform .9s var(--ccs-motion-ease);
  }
  .hero-full-media:hover>img{transform:scale(1.015)}
  .campaign-art:hover img{transform:scale(1.025) rotate(-.4deg)}
  .pack-art:hover img{transform:scale(1.03)}
}
.btn:active,
.hero-full-cta:active,
.icon:active{
  transform:translateY(1px) scale(.98);
  box-shadow:2px 2px 0 #111;
}
@keyframes ccsAmbient{
  0%,100%{transform:rotate(-3deg) translate3d(0,0,0)}
  50%{transform:rotate(-1deg) translate3d(5px,-5px,0)}
}
@keyframes ccsDots{
  to{background-position:18px 12px}
}
@keyframes ccsSticker{
  0%,100%{transform:rotate(8deg) translate3d(0,0,0)}
  50%{transform:rotate(5deg) translate3d(0,-5px,0)}
}
.pack-art:before{
  background-size:72px 72px;
  animation:ccsAmbient 12s ease-in-out infinite;
}
.dots{
  animation:ccsDots 18s linear infinite;
}
.pack-sticker{
  animation:ccsSticker 5s ease-in-out infinite;
}
.builder:before{
  animation:ccsAmbient 16s ease-in-out infinite reverse;
}
@media(max-width:760px){
  .scroll-progress{height:2px}
  [data-motion-reveal]{transform:translate3d(0,16px,0)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .scroll-progress{transition:none}
  [data-motion-reveal],
  [data-motion-stagger] > *{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
  .marquee span,
  .dots,
  .pack-art:before,
  .pack-sticker,
  .builder:before{
    animation:none!important;
  }
  .hero-full-media>img,
  .campaign-art img,
  .pack-art img{
    transition:none!important;
  }
  .desktop-nav a:after,
  .mobile-menu a:after{
    transition:none!important;
  }
}


/* Selección de entrega en el carrito */
.shipping-choice{display:grid;gap:8px;margin:0 0 12px;padding:11px 12px;border:1px solid #333;border-radius:12px;background:#191919}
.shipping-choice-title{font-size:9px;color:#ffe500;font-weight:1000;letter-spacing:.8px}
.shipping-choice label{display:flex;align-items:flex-start;gap:8px;color:#fff;font-size:11px;cursor:pointer}
.shipping-choice input{accent-color:#ffe500;margin-top:2px}
.shipping-choice label span{display:grid;gap:2px}
.shipping-choice label strong{font-size:11px}
.shipping-choice label small{color:#999;font-size:9px}
.cart-delivery-row strong{color:#ffe500}
@media(max-width:760px){
  .shipping-choice{padding:10px}
  .shipping-choice label strong{font-size:10px}
  .shipping-choice label small{font-size:8px}
}
