.personalized-item{min-width:0;margin:0 0 22px;padding:20px;border:1px solid #ded2e8;border-radius:18px;background:#fff}.personalized-item legend{max-width:100%;padding:0 8px;font:700 1.15rem Fredoka,sans-serif;color:#3d1f5c}.sub-product-summary{display:flex;gap:14px;align-items:center;margin:0 0 18px}.sub-product-summary img{flex:0 0 72px;border-radius:12px;object-fit:cover}.sub-product-summary div{flex:1;min-width:0}.sub-product-summary small{font-size:.72rem;overflow-wrap:anywhere}.sub-product-summary p{margin:5px 0 0;font-size:.78rem;color:#665c70}.personalized-item .fields{gap:14px}.personalized-item select{width:100%;min-height:48px;border:1px solid #d6c8e0;border-radius:12px;padding:10px;background:#fff;color:#1b1033;font:inherit}.personalized-item label{display:block}.personalized-item label input,.personalized-item label textarea{display:block;width:100%;margin-top:7px}.sub-upload{margin-top:18px;padding:18px;border:2px dashed #bfa6ce;border-radius:14px;background:#fff8ec}.sub-upload p{margin:10px 0 0;font-size:.74rem;color:#665c70}.sub-upload input{max-width:100%;font-size:.8rem}.sub-files{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.sub-files figure{width:130px;margin:0;min-width:0}.sub-files img{width:130px;height:110px;object-fit:contain;border:1px solid #e8dfec;border-radius:10px;background:#f8f4fa}.sub-files figcaption{font-size:.7rem;overflow-wrap:anywhere}.sub-file-remove{margin-top:5px;padding:6px 9px;border:1px solid #d6c8e0;border-radius:8px;background:#fff;color:#3d1f5c;cursor:pointer}.sub-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#subSendStatus{color:#08777a}#subSuccess[hidden]{display:none}#subSuccess h3{font-family:Fredoka,sans-serif;overflow-wrap:anywhere}#quoteForm>button[type=submit]{color:#fff;background:#b91e69}#quoteForm .fields input,#quoteForm .fields textarea{min-width:0}.quote-grid{grid-template-columns:minmax(230px,.65fr) minmax(0,1.35fr)}@media(max-width:980px){.quote-grid{grid-template-columns:1fr}.quote-copy{max-width:650px}}@media(max-width:720px){.personalized-item{padding:15px}.sub-product-summary{gap:9px}.sub-product-summary img{width:52px;height:52px;flex-basis:52px}.sub-files figure{width:110px}.sub-files img{width:110px;height:100px}.personalized-item input,.personalized-item select,.personalized-item textarea{font-size:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* v1.53.1: espacio suficiente para título y formulario, sin desbordes. */
.quote-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:40px}
.quote-grid>*{min-width:0;max-width:100%}
.quote-copy h2{font-size:clamp(2rem,3.2vw,3rem);overflow-wrap:anywhere}
.quote-card .fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.quote-card .field,.personalized-item label{min-width:0;overflow-wrap:anywhere}
.quote-card input,.quote-card textarea,.quote-card select{min-width:0;max-width:100%;box-sizing:border-box}
.quote-card .legal-consent{display:flex;align-items:flex-start;gap:10px;margin-top:20px;font-size:.78rem;line-height:1.6}
.quote-card .legal-consent input{flex:0 0 18px;width:18px;height:18px;margin:3px 0 0}
.quote-card .legal-consent span{min-width:0;overflow-wrap:anywhere}
@media(max-width:1100px){.quote-grid{grid-template-columns:minmax(0,1fr);gap:28px}.quote-copy{position:static;max-width:720px}.quote-copy h2{max-width:20ch}}
@media(max-width:720px){.quote-card .fields{grid-template-columns:minmax(0,1fr)}.quote-copy h2{font-size:clamp(2rem,7vw,2.7rem)}.sub-upload{padding:12px}}

/* v1.53.2: carga múltiple con zona visible de arrastrar y soltar. */
.sub-upload{text-align:center;transition:background .15s,border-color .15s}
.sub-upload strong{display:block;color:#3d1f5c;font-family:Fredoka,sans-serif;font-size:1.15rem}
.sub-upload-icon{display:grid;place-items:center;width:44px;height:44px;margin:0 auto 8px;border-radius:50%;background:#eee2f6;color:#6a2c91;font-size:26px;font-weight:800}
.sub-upload-or{display:block;margin:6px 0;color:#665c70;font-size:.8rem}
.sub-upload-choose{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:40px;margin:0;padding:9px 16px;border:0;border-radius:10px;background:#662b8c;color:#fff;font:700 .85rem Nunito,sans-serif;cursor:pointer}
.sub-upload-choose:focus-visible{outline:3px solid #efb42b;outline-offset:3px}
.sub-upload-choose:disabled{opacity:.55;cursor:wait}
.sub-upload input.sub-file-input{display:none}
.sub-upload.is-dragging{background:#eee2f6;border-color:#662b8c;border-style:solid;box-shadow:0 0 0 3px #662b8c20}

/* Confirmación visible junto a los archivos elegidos. */
.sub-upload-status{margin-top:14px;padding:10px;border-radius:10px;background:#e4f5ee;color:#135d45;font-size:.85rem;font-weight:800}
.sub-upload p.sub-upload-error{color:#a21b45;font-weight:700;text-align:left;overflow-wrap:anywhere}.sub-upload-error:empty{display:none}
.sub-upload .sub-files{justify-content:center;text-align:left}.sub-upload .sub-files figure{padding:8px;width:150px;max-width:100%;border:1px solid #dccde5;border-radius:12px;background:#fff}.sub-upload .sub-files img{display:block;width:100%;height:115px;object-fit:contain}.sub-files figcaption small{display:block;margin-top:5px;color:#135d45;font-size:.68rem;font-weight:700}.sub-upload p.sub-upload-reminder{font-size:.72rem}

/* Un resumen por producto; el detalle se abre solo cuando se necesita. */
.sub-selection-row{border:1px solid #e2d3e8;border-radius:14px;background:#fff;overflow:hidden;margin-bottom:12px}.sub-selection-row>summary{display:flex;align-items:center;gap:12px;padding:12px;cursor:pointer;list-style:none}.sub-selection-row>summary::-webkit-details-marker{display:none}.sub-selection-row>summary img{width:48px;height:48px;object-fit:cover;border-radius:9px;flex-shrink:0}.sub-selection-row>summary>span:first-of-type{min-width:0;flex:1}.sub-selection-row>summary strong{font-size:.85rem;display:block;overflow-wrap:anywhere}.sub-selection-row>summary small{display:block;font-size:.72rem;color:#705b7b;margin-top:3px}.sub-row-action{color:#a81764;font-size:.75rem;font-weight:800}.sub-row-action:after{content:' ＋'}.sub-selection-row[open] .sub-row-action:after{content:' −'}.sub-selection-row .personalized-item{margin:0;border:0;border-top:1px solid #eee3f1;border-radius:0}.sub-selection-row>summary:focus-visible{outline:3px solid #efb42b;outline-offset:-3px}.pc-form-launch{font:700 .8rem Nunito,sans-serif;border:1px solid #dcc8e6;border-radius:10px;padding:9px 13px;background:#f6eff9;color:#3d1f5c;cursor:pointer;margin-bottom:16px}

/* Opciones solicitadas y revisión compacta antes del envío. */
.sub-variant-intro{margin-top:4px;padding:10px 12px;border-radius:10px;background:#faf4fc}.sub-variant-intro strong{font-size:.8rem}.sub-variant-intro p{font-size:.71rem;line-height:1.55;color:#705b7b;margin:5px 0 0}.field [data-option-count]{font-size:.65rem;color:#705b7b;line-height:1.5}.sub-selection-row>summary small{overflow-wrap:anywhere}
.sub-review{width:min(760px,calc(100% - 24px));max-height:calc(100dvh - 32px);padding:0;margin:auto;border:1px solid #e1cfe9;border-radius:20px;background:#fff;color:#301142;overflow-y:auto;box-shadow:0 24px 90px #1c0d3350}.sub-review::backdrop{background:#211032b8}.sub-review button{font:700 .75rem Nunito,sans-serif;cursor:pointer}.sub-review button:disabled{opacity:.5;cursor:default}.sub-review button:focus-visible,.sub-review summary:focus-visible{outline:3px solid #efb42b;outline-offset:2px}.sub-review-head{display:flex;align-items:center;gap:15px;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #eee2f2}.sub-review-head .kicker{font-size:.6rem}.sub-review-head h2{font-size:1.35rem;line-height:1.4;margin:4px 0}.sub-review-head p{font-size:.75rem;color:#705b7b;margin:0}.sub-review-head>button{border:1px solid #dfcbe8;border-radius:50%;width:40px;height:40px;flex-shrink:0;background:#f6eff9;color:#4b2b61;font-size:1.5rem}.sub-review-body{padding:18px 24px}.sub-review-body>p{font-size:.78rem;line-height:1.65;margin:0 0 16px;color:#705b7b}.sub-review-warning{padding:12px;border:1px solid #e5b94e;border-radius:10px;background:#fff8df;color:#64430e!important}.sub-review-warning[hidden]{display:none}.sub-review-contact{border:1px solid #e2d3e8;border-radius:12px;padding:12px 14px;margin-bottom:16px}.sub-review summary{cursor:pointer;color:#5e2a7b;font-size:.75rem;font-weight:800}.sub-review-contact dl{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;margin:14px 0 0}.sub-review-contact dl>div{min-width:0}.sub-review-contact dt{font-size:.65rem;color:#705b7b}.sub-review-contact dd{margin:4px 0 0;font-size:.78rem;font-weight:700;overflow-wrap:anywhere}.sub-review-item{border:1px solid #e2d3e8;border-radius:14px;padding:14px;margin-bottom:14px}.sub-review-item-head{display:flex;align-items:center;gap:12px}.sub-review-item-head>img{width:72px;height:72px;object-fit:contain;border-radius:10px;background:#fff8ec;flex-shrink:0}.sub-review-item-head>div{flex:1;min-width:0}.sub-review-item-head h3{font-size:.9rem;line-height:1.4;margin:0 0 5px;overflow-wrap:anywhere}.sub-review-item-head p{font-size:.66rem;color:#705b7b;margin:0 0 5px}.sub-review-item-head small{font-size:.65rem;color:#5e2a7b}.sub-review-item-head button,.sub-review-foot [data-review-close]{border:1px solid #dcc8e6;border-radius:9px;padding:9px 12px;background:#f6eff9;color:#4b2b61}.sub-review-options{font-size:.77rem;line-height:1.6;overflow-wrap:anywhere;margin:12px 0}.sub-review-notes,#subReviewNotes{font-size:.73rem;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65;color:#705b7b}.sub-review-images{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.sub-review-images figure{margin:0;flex:0 1 140px;max-width:100%;padding:8px;border-radius:10px;background:#faf4fc}.sub-review-images img{display:block;width:100%;height:90px;object-fit:contain}.sub-review-images figcaption{font-size:.65rem;font-weight:800;margin-top:7px;line-height:1.5;color:#5e2a7b}.sub-review-images figcaption span{display:block;overflow-wrap:anywhere;font-size:.6rem;font-weight:400;color:#705b7b}.sub-review-pending{font-size:.68rem;color:#705b7b;line-height:1.65;margin:10px 0 0}.sub-review-general{padding:5px 0}.sub-review-foot{padding:0 24px 20px}.sub-review-foot>div{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.sub-review-foot .btn{background:#b91e69;color:#fff;font-size:.8rem;padding:12px 16px}.sub-review-foot p{font-size:.75rem;line-height:1.6;overflow-wrap:anywhere}.sub-review-foot .error{color:#a21b45}.sub-review-foot p:empty{display:none}@media(max-width:500px){.sub-review-head{padding:16px}.sub-review-head h2{font-size:1.1rem}.sub-review-body{padding:16px}.sub-review-contact dl{grid-template-columns:1fr}.sub-review-item{padding:12px}.sub-review-item-head{gap:9px;flex-wrap:wrap}.sub-review-item-head>img{width:56px;height:56px}.sub-review-item-head h3{font-size:.8rem}.sub-review-foot{padding:0 16px 16px}.sub-review-foot>div{display:grid;grid-template-columns:1fr}.sub-review-images figure{flex-basis:calc(50% - 5px)}}
.sub-upload-budget{padding:12px 14px;margin:0 0 16px;border:1px solid rgba(90,52,128,.2);border-radius:12px;background:#fff;color:#3d1f5c;font-size:.78rem;line-height:1.5}

/* v1.70: revisión con correcciones y cambios pendientes explícitos. */
.sub-review-design-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:14px}.sub-design-state{font-size:.72rem;font-weight:700;color:#135d45;background:#e4f5ee;border-radius:8px;padding:8px 10px;line-height:1.5}.sub-design-state.is-pending{color:#714600;background:#fff2c9}.sub-review-design-actions button,.sub-review-warning button,.sub-review-return button,.sub-success-code button{min-height:44px;padding:10px 13px;border:1px solid #d6c1e0;border-radius:10px;background:#f6eff9;color:#4b2b61;font:700 .78rem Nunito,sans-serif;cursor:pointer}.sub-review-warning{font-size:.78rem;line-height:1.6;margin-bottom:16px}.sub-review-warning p{margin:8px 0}.sub-review-warning ul{list-style:none;padding:0;margin:12px 0}.sub-review-warning li{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0}.sub-review-warning li span{min-width:0;overflow-wrap:anywhere}.sub-omit-label{display:flex;align-items:flex-start;gap:10px;border-top:1px solid #dec488;padding-top:12px}.sub-omit-label input{flex:0 0 20px;width:20px;height:20px;margin:3px 0 0;accent-color:#662b8c}.sub-review-return{margin-bottom:14px}.sub-review-return:has(button[hidden]){display:none}[data-review-return][hidden]{display:none!important}.sub-code-label{display:block;font-size:.8rem;font-weight:800;margin-top:20px}.sub-success-code{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}.sub-success-code input{flex:1;min-width:0;width:100%;padding:12px;border:2px solid #0f8b8d;border-radius:12px;color:#3d1f5c;background:#effaf7;font:700 1rem Nunito,sans-serif}.sub-success-items{padding-left:20px;font-size:.8rem;line-height:1.8;overflow-wrap:anywhere}#subCopyStatus{font-size:.78rem;color:#135d45}#subSuccessTitle{font-size:1.5rem;line-height:1.3}#subSuccessTitle:focus{outline:none}.sub-success-code button:focus-visible,.sub-review-return button:focus-visible{outline:3px solid #efb42b;outline-offset:3px}@media(max-width:500px){.sub-review-warning li{align-items:flex-start;flex-direction:column}.sub-review-design-actions{align-items:stretch;flex-direction:column}.sub-review-item-head>button{min-height:44px}.sub-success-code{flex-direction:column}}

.sub-receipt-tracking{background:#effaf7;border:1px solid #beded5;padding:18px;border-radius:14px;margin:18px 0}.sub-receipt-tracking strong{color:#135d45}.sub-receipt-tracking .btn{margin-right:8px;margin-bottom:10px}.sub-receipt-tracking button{min-height:44px;padding:12px;border:1px solid #cfb9da;border-radius:10px;color:#3d1f5c;background:#fff;font:inherit;font-size:.8rem;cursor:pointer}.sub-receipt-tracking input{width:100%;min-width:0;box-sizing:border-box;padding:12px;margin-top:10px;font-size:16px;border:1px solid #cfb9da;border-radius:9px}.sub-receipt-tracking p{font-size:.8rem}.sub-receipt-tracking [hidden]{display:none!important}

.whatsapp-consent strong,.whatsapp-consent small{display:block}.whatsapp-consent strong{color:var(--ink);margin-bottom:5px}.whatsapp-consent small{margin-top:8px;line-height:1.7}.sub-receipt-whatsapp{margin:22px 0;padding:20px;border-radius:20px;background:#edf8f4;border:1px solid rgba(15,139,141,.2)}.sub-receipt-whatsapp strong{font-family:"Fredoka",sans-serif;font-size:1.2rem}.sub-receipt-whatsapp p,.sub-receipt-whatsapp small{font-size:.78rem;line-height:1.8}.sub-receipt-whatsapp small{display:block;margin-top:12px}.sub-receipt-whatsapp .btn{background:var(--ink);color:var(--paper);font-size:.8rem;max-width:100%;white-space:normal;text-align:center;padding:12px 18px}

/* El recorrido lleva primero a los adjuntos de cada producto. */
.sub-step-heading{display:flex;align-items:flex-start;gap:13px;margin:12px 0 20px}.sub-step-heading>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;background:var(--mango);color:var(--ink);font:700 .8rem "Space Mono",monospace}.sub-step-heading h3{font:600 1.35rem "Fredoka",sans-serif;margin:0 0 6px}.sub-step-heading p,.sub-upload-help{font-size:.78rem;line-height:1.7;margin:0}.sub-upload-help{padding:12px;background:var(--paper);border-radius:12px}.sub-row-action{white-space:normal;text-align:center}.sub-upload:focus{outline:3px solid var(--mango);outline-offset:5px}#selectedProducts{scroll-margin-top:110px}

.sub-artwork-summary{padding:18px;border:1px solid #e2d3e8;border-radius:16px;background:#fff8ec}.sub-artwork-summary strong{font:600 1.1rem Fredoka,sans-serif}.sub-artwork-summary p,.sub-artwork-summary li{font-size:.76rem;line-height:1.8;overflow-wrap:anywhere}.sub-artwork-summary ul{padding-left:20px}

.sub-pending-designs{margin:18px 0;padding:20px;border:1px solid #d6a32d;border-radius:18px;background:#fff1d8;color:#1b1033}.sub-pending-designs strong{font:600 1.15rem Fredoka,sans-serif}.sub-pending-designs p{font-size:.78rem;line-height:1.8}.sub-pending-designs button{margin:5px 8px 5px 0;min-height:44px;padding:10px 15px;border:1px solid #d5bcd8;border-radius:12px;background:#fff;color:#3d1f5c;font:700 .76rem Nunito,sans-serif;cursor:pointer}

/* Detalles opcionales plegados para dar prioridad a los datos de contacto. */
.sub-products-panel{margin:0 0 26px;border:1px solid #e1cfe9;border-radius:18px;background:#fff;overflow:hidden}.sub-products-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;cursor:pointer;list-style:none}.sub-products-panel>summary::-webkit-details-marker{display:none}.sub-products-title{min-width:0;font:600 1.15rem Fredoka,sans-serif;color:#1b1033}.sub-products-title small{display:block;margin-top:6px;font:500 .73rem/1.7 Nunito,sans-serif;color:#705b7b}.sub-products-action{flex-shrink:0;color:#b91e69;font:800 .74rem Nunito,sans-serif}.sub-products-action:after{content:' +';font-size:1rem}.sub-products-panel[open] .sub-products-action:after{content:' −'}.sub-products-panel>summary:focus-visible{outline:3px solid #ffb627;outline-offset:-4px}.sub-products-content{padding:0 20px 8px;border-top:1px solid #eee2f2}.sub-products-help{font-size:.76rem;line-height:1.8;color:#705b7b;margin:16px 0}.sub-products-content .sub-selection-row{margin-bottom:12px}@media(max-width:480px){.sub-products-panel>summary{padding:16px;gap:10px}.sub-products-content{padding:0 12px 6px}.sub-products-action{font-size:.7rem}.sub-products-title{font-size:1.05rem}}
