.m511-sets{max-width:1200px;margin:0 auto;padding:0 20px;font-family:inherit}.m511-sets-heading{text-align:center;font-size:28px;font-weight:700;margin:0 0 35px}.m511-sets-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.m511-set-card{border:1px solid #e3e3e3;border-radius:6px;overflow:hidden;background:#fff;min-width:0}.m511-set-cover{display:block;overflow:hidden;background:#f2f2f2}.m511-set-cover img{display:block;width:100%;height:100%;object-fit:cover}.m511-sets--home .m511-set-card{display:grid;grid-template-columns:34% 66%}.m511-sets--home .m511-set-cover{height:310px}.m511-set-card-body{min-width:0;display:flex;align-items:center;gap:16px;padding:18px}.m511-set-products{display:flex;align-items:center;justify-content:center;gap:8px;flex:0 0 35%}.m511-set-mini{width:45%;min-width:0;display:block;background:#f5f5f5}.m511-set-mini img{width:100%;height:auto;display:block}.m511-plus{font-size:20px;font-weight:700}.m511-set-card-info{min-width:0;flex:1}.m511-set-card-info h3{font-size:17px;margin:0 0 10px}.m511-set-card-info p{font-size:13px;line-height:1.5;margin:0 0 15px}.m511-set-price{display:block;margin-bottom:14px}.m511-set-button,.m511-set-add{display:inline-block;background:#111;color:#fff!important;border:1px solid #111;padding:12px 20px;font-weight:700;font-size:13px;text-decoration:none!important;cursor:pointer;transition:background .28s,border-color .28s}.m511-set-button:hover,.m511-set-add:hover:not(:disabled){background:#383838;border-color:#383838}.m511-set-add:disabled{opacity:.45;cursor:not-allowed}.m511-sets-more{text-align:center;margin-top:30px}.m511-sets--grid .m511-sets-list{grid-template-columns:repeat(4,minmax(0,1fr))}.m511-sets--grid .m511-set-cover{aspect-ratio:4/5}.m511-sets--grid .m511-set-card-body{display:block;padding:12px}.m511-sets--grid .m511-set-products{margin-bottom:14px}.m511-sets--grid .m511-set-card-info h3{font-size:15px}.m511-sets--grid .m511-set-button{display:block;text-align:center}.m511-set-detail{max-width:900px;margin:30px auto}.m511-set-detail-product{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid #ddd}.m511-set-detail-product>img{width:130px;height:auto}.m511-set-detail-product h3{font-size:20px;margin:0 0 15px}.m511-set-options{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:12px}.m511-set-options label{display:flex;flex-direction:column;gap:5px}.m511-set-options select{min-width:150px;padding:9px;border:1px solid #bbb}.m511-set-summary{margin:25px 0}.m511-set-total{font-weight:700;font-size:20px}.m511-set-status{font-size:14px;color:#555}.m511-no-image{display:flex;min-height:200px;align-items:center;justify-content:center;color:#777}@media(max-width:1000px){.m511-sets--home .m511-set-card{grid-template-columns:1fr}.m511-sets--home .m511-set-cover{height:auto;aspect-ratio:4/3}.m511-sets--grid .m511-sets-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.m511-sets-list,.m511-sets--grid .m511-sets-list{grid-template-columns:1fr}.m511-sets{padding:0 14px}.m511-set-detail-product{grid-template-columns:95px 1fr}.m511-set-detail-product>img{width:95px}}

/* v1.1.0: Home matching-set composition */
.m511-sets--home{max-width:1200px;padding:0}.m511-sets--home .m511-sets-heading{font-size:28px;margin:0 0 28px}.m511-sets-benefits{display:flex;align-items:center;justify-content:center;gap:54px;margin:0 0 48px}.m511-sets-benefits>div{display:flex;align-items:center;gap:12px}.m511-benefit-icon{font-size:30px;font-weight:300;line-height:1;min-width:35px;text-align:center}.m511-sets-benefits strong,.m511-sets-benefits small{display:block;font-size:11px;line-height:1.6}.m511-sets-benefits strong{font-weight:700}.m511-sets--home .m511-sets-list{gap:20px}.m511-sets--home .m511-set-card{display:grid;grid-template-columns:33.5% 66.5%;background:#f7f5f4;border:1px solid #e5e0dd;border-radius:6px}.m511-sets--home .m511-set-cover{height:275px}.m511-sets--home .m511-set-card-body{display:grid;grid-template-columns:39% 61%;padding:0;gap:0;align-items:stretch}.m511-sets--home .m511-set-products{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;background:#fff;padding:12px 10px;min-width:0}.m511-sets--home .m511-set-mini{width:80px;max-width:100%;aspect-ratio:1/1;background:#f4f4f4;display:flex;align-items:center;justify-content:center}.m511-sets--home .m511-set-mini img{width:100%;height:100%;object-fit:contain}.m511-sets--home .m511-plus{line-height:1;font-size:18px}.m511-sets--home .m511-set-card-info{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:16px 20px;position:relative}.m511-sets--home .m511-set-color{width:16px;height:16px;border:1px solid #d6d6d6;border-radius:50%;display:block;margin-bottom:20px}.m511-sets--home .m511-set-card-info h3{font-size:15px;font-weight:700;margin:0 0 12px}.m511-sets--home .m511-set-card-info p{font-size:12px;font-weight:600;line-height:1.6;margin:0 0 14px}.m511-sets--home .m511-set-info-bottom{border-top:1px solid #777;padding-top:15px;min-width:130px}.m511-sets--home .m511-set-price{font-size:17px;margin:0 0 18px}.m511-sets--home .m511-set-button{background:transparent;color:#111!important;border:1px solid #111;padding:10px 12px;font-size:13px}.m511-sets--home .m511-set-button:hover{background:#383838;color:#fff!important;border-color:#383838}.m511-sets--home .m511-sets-more{margin-top:35px}.m511-sets--home .m511-sets-more .m511-set-button{background:#111;color:#fff!important;min-width:220px;text-align:center;padding:15px 22px;font-size:18px}.m511-sets--home .m511-sets-more .m511-set-button:hover{background:#383838}.m511-sets--grid .m511-set-color{display:none}.m511-sets--grid .m511-set-info-bottom{border:0}.m511-sets--grid .m511-set-products{flex-basis:auto}
@media(max-width:1100px){.m511-sets--home{padding:0 20px}.m511-sets--home .m511-set-card{grid-template-columns:35% 65%}.m511-sets--home .m511-set-card-body{grid-template-columns:35% 65%}.m511-sets--home .m511-set-card-info{padding:12px}.m511-sets--home .m511-set-mini{width:70px}}
@media(max-width:850px){.m511-sets--home .m511-sets-list{grid-template-columns:1fr}.m511-sets--home .m511-set-card{grid-template-columns:34% 66%}.m511-sets--home .m511-set-card-body{grid-template-columns:38% 62%}.m511-sets-benefits{gap:20px;flex-wrap:wrap}}
@media(max-width:540px){.m511-sets--home .m511-set-card{grid-template-columns:34% 66%}.m511-sets--home .m511-set-card-body{grid-template-columns:34% 66%}.m511-sets--home .m511-set-cover{height:255px}.m511-sets--home .m511-set-mini{width:55px}.m511-sets--home .m511-set-card-info{padding:8px}.m511-sets--home .m511-set-card-info h3{font-size:12px}.m511-sets--home .m511-set-card-info p{font-size:10px}.m511-sets--home .m511-set-price{font-size:13px}.m511-sets--home .m511-set-button{font-size:10px;padding:8px}.m511-sets-benefits{gap:12px;margin-bottom:25px}.m511-sets-benefits strong,.m511-sets-benefits small{font-size:9px}.m511-benefit-icon{font-size:24px;min-width:25px}}

/* v1.1.2: Consistent bold headings and prices, scoped to set cards */
.m511-sets .m511-set-card-info h3,.m511-sets .m511-set-price,.m511-sets .m511-set-price .woocommerce-Price-amount{font-family:"511 Helvetica Now Display","Helvetica Now Display",Arial,sans-serif;font-weight:700!important}
.m511-sets-benefits .m511-benefit-icon svg{display:block;width:34px;height:34px;max-width:100%;max-height:100%;fill:none;stroke:currentColor}

.m511-set-card-info h3{text-transform:uppercase}.m511-accessories{margin:25px 0}.m511-accessory{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #ddd;margin:8px 0;cursor:pointer}.m511-accessory img{width:64px;height:64px;object-fit:contain}

/* Section heading: approved Illustrator specification */
.m511-sets--home .m511-sets-heading{font-size:24px;font-weight:700;}

/* Typography controls, scoped to Set Builder. */
.m511-sets .m511-sets-heading{font-size:var(--m511-title-size,24px);font-weight:var(--m511-title-weight,700);letter-spacing:var(--m511-title-tracking,0px)}
.m511-sets .m511-sets-benefits strong{font-size:var(--m511-benefit-title-size,11px);font-weight:var(--m511-benefit-title-weight,700);letter-spacing:var(--m511-benefit-title-tracking,0px)}
.m511-sets .m511-sets-benefits small{font-size:var(--m511-benefit-desc-size,11px);font-weight:var(--m511-benefit-desc-weight,400);letter-spacing:var(--m511-benefit-desc-tracking,0px)}
.m511-sets .m511-sets-more .m511-set-button{font-size:var(--m511-button-size,18px);font-weight:var(--m511-button-weight,700);letter-spacing:var(--m511-button-tracking,0px)}

/* v1.2.4 — Responsive home sets. Desktop composition is preserved. */
.m511-sets--home .m511-sets-benefits{display:block;overflow:hidden;max-width:100%;}
.m511-sets--home .m511-sets-benefits-track{display:flex;justify-content:center;width:100%;}
.m511-sets--home .m511-sets-benefits-group{display:flex;align-items:center;justify-content:center;gap:54px;flex:0 0 auto;}
.m511-sets--home .m511-sets-benefits-group[aria-hidden="true"]{display:none;}
.m511-sets--home .m511-sets-benefit{display:flex;align-items:center;gap:12px;flex:0 0 auto;}
@media(max-width:767px){
 .m511-sets--home{padding:0 24px;max-width:100%;overflow:hidden;}
 .m511-sets--home .m511-sets-heading{margin-bottom:26px;}
 .m511-sets--home .m511-sets-benefits{margin:0 -15px 30px;max-width:none;width:calc(100% + 30px);overflow:hidden;}
 .m511-sets--home .m511-sets-benefits-track{width:max-content;justify-content:flex-start;animation:m511-benefits-marquee 28s linear infinite;will-change:transform;}
 .m511-sets--home .m511-sets-benefits-group{gap:32px;padding-right:32px;}
 .m511-sets--home .m511-sets-benefits-group[aria-hidden="true"]{display:flex;}
 .m511-sets--home .m511-sets-benefit{gap:10px;white-space:nowrap;}
 .m511-sets--home .m511-benefit-icon{min-width:34px;font-size:30px;}
 .m511-sets--home .m511-sets-benefits strong,.m511-sets--home .m511-sets-benefits small{white-space:nowrap;}
 .m511-sets--home .m511-sets-list{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;}
 .m511-sets--home .m511-set-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;}
 .m511-sets--home .m511-set-cover{width:100%;height:auto;aspect-ratio:4/3;overflow:hidden;}
 .m511-sets--home .m511-set-cover img{width:100%;height:100%;object-fit:cover;object-position:center 35%;}
 .m511-sets--home .m511-set-card-body{display:flex;flex-direction:column;gap:0;min-width:0;}
 .m511-sets--home .m511-set-products{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;padding:16px;background:#fff;align-items:center;}
 .m511-sets--home .m511-set-mini{width:100%;max-width:150px;aspect-ratio:1/1;justify-self:center;}
 .m511-sets--home .m511-plus{font-size:20px;}
 .m511-sets--home .m511-set-card-info{width:100%;display:flex;align-items:stretch;justify-content:flex-start;padding:20px;background:#f7f5f4;}
 .m511-sets--home .m511-set-color{position:absolute;top:21px;right:20px;margin:0;}
 .m511-sets--home .m511-set-card-info h3{font-size:17px;padding-right:30px;margin-bottom:12px;line-height:1.3;}
 .m511-sets--home .m511-set-card-info p{font-size:13px;margin-bottom:15px;}
 .m511-sets--home .m511-set-info-bottom{width:100%;padding-top:14px;}
 .m511-sets--home .m511-set-price{font-size:20px;margin-bottom:15px;}
 .m511-sets--home .m511-set-button{display:block;text-align:center;font-size:14px;padding:13px 16px;}
 .m511-sets--home .m511-sets-more .m511-set-button{max-width:100%;margin:0 auto;}
}
@keyframes m511-benefits-marquee{to{transform:translateX(-50%);}}
@media(prefers-reduced-motion:reduce){.m511-sets--home .m511-sets-benefits-track{animation:none!important;}.m511-sets--home .m511-sets-benefits{overflow-x:auto;scrollbar-width:none;}.m511-sets--home .m511-sets-benefits::-webkit-scrollbar{display:none;}}

/* Compra de sets en modal, sin alterar la tarjeta de escritorio. */
.m511-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:20px}
.m511-modal[aria-hidden="false"]{display:flex}
.m511-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.58)}
.m511-modal-panel{position:relative;background:#fff;width:min(760px,100%);max-height:min(88vh,850px);overflow-y:auto;border-radius:9px;box-shadow:0 18px 70px rgba(0,0,0,.2);overscroll-behavior:contain}
.m511-modal-header{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;background:#fff;padding:20px 24px;border-bottom:1px solid #e7e7e7}
.m511-modal-header strong{display:block;font-size:17px;font-weight:700}
.m511-modal-header small{display:block;margin-top:4px;color:#666;font-size:13px}
.m511-modal-close{border:0;background:transparent;color:#111;font-size:30px;line-height:1;padding:0 4px;cursor:pointer}
.m511-modal .m511-set-detail{margin:0;max-width:none;padding:6px 24px 24px}
.m511-modal .m511-set-summary{margin:22px 0 0}
.m511-modal .m511-set-add{width:100%;text-align:center}
body.m511-modal-active{overflow:hidden}
@media(max-width:600px){
 .m511-modal{align-items:flex-end;padding:0}
 .m511-modal-panel{width:100%;max-height:91dvh;border-radius:18px 18px 0 0}
 .m511-modal-header{padding:18px}
 .m511-modal .m511-set-detail{padding:4px 18px 18px}
 .m511-modal .m511-set-detail-product{grid-template-columns:76px minmax(0,1fr);gap:14px;padding:18px 0}
 .m511-modal .m511-set-detail-product>img{width:76px}
 .m511-modal .m511-set-detail-product h3{font-size:15px;margin-bottom:10px}
 .m511-modal .m511-set-options select{min-width:120px;max-width:100%}
 .m511-modal .m511-set-summary{position:sticky;bottom:-18px;background:#fff;padding:12px 0 18px;border-top:1px solid #eee}
}

/* Modal premium 5'11: dos prendas compactas y selectores circulares. */
@media(min-width:701px){
 .m511-modal-panel{width:min(700px,calc(100vw - 40px));max-height:calc(100dvh - 48px)}
 .m511-modal .m511-set-detail-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 .m511-modal .m511-set-detail-product{display:flex;flex-direction:column;gap:10px;border:0;padding:12px 0 0;min-width:0}
 .m511-modal .m511-set-detail-product>img{width:100%;height:125px;object-fit:contain;background:#f7f7f7}
 .m511-modal .m511-set-detail-product h3{font-size:15px!important;font-weight:700;line-height:1.3;margin:0 0 10px}
 .m511-modal .m511-set-summary{margin:12px 0 0}
}
.m511-modal-header{padding:15px 22px}
.m511-modal-header strong{font-size:15px;letter-spacing:.025em}
.m511-modal-header small{font-size:12px}
.m511-modal .m511-set-detail{padding:0 22px 20px}
.m511-modal .m511-set-options{display:flex;gap:18px;flex-wrap:wrap;margin:0 0 8px}
.m511-modal .m511-choice-group{display:flex;flex-direction:column;gap:8px}
.m511-modal .m511-choice-label{font-size:11px;font-weight:600;letter-spacing:.09em}
.m511-modal .m511-choice-list{display:flex;gap:9px;align-items:center}
.m511-modal .m511-choice{width:34px;height:34px;border:1px solid #d4d4d4;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#222;font-size:12px;font-weight:500;padding:0;cursor:pointer;transition:border-color .2s,background .2s}
.m511-modal .m511-choice.is-selected{border:1.5px solid #111}
.m511-modal .m511-choice:disabled:not(.is-selected){opacity:.28;cursor:not-allowed;text-decoration:line-through}
.m511-modal .m511-choice--color{border:1px solid #ddd;padding:3px}
.m511-modal .m511-choice-swatch{display:block;width:100%;height:100%;border-radius:50%;border:1px solid rgba(0,0,0,.04)}
.m511-modal .m511-choice-group select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)!important}
.m511-modal .m511-product-price{font-size:14px;font-weight:700;display:block;min-height:20px;margin-top:6px}
.m511-modal .m511-set-status{font-size:12px;margin:4px 0}
.m511-modal .m511-set-total{font-size:19px;margin:8px 0 12px}
.m511-modal .m511-set-add{font-size:12px;letter-spacing:.06em;padding:12px}
@media(max-width:700px){
 .m511-modal .m511-set-detail-product{grid-template-columns:84px minmax(0,1fr);gap:13px;padding:13px 0}
 .m511-modal .m511-set-detail-product>img{width:84px;height:112px;object-fit:cover}
 .m511-modal .m511-set-detail-product h3{font-size:14px!important;font-weight:700;margin-bottom:9px}
 .m511-modal .m511-set-options{gap:14px}
 .m511-modal .m511-set-summary{margin:8px 0 0}
}
@media(prefers-reduced-motion:reduce){.m511-modal .m511-choice{transition:none}}

/* v1.2.7 — Tarjeta home compacta para móvil: modelo + piezas, información y compra. */
@media (max-width:767px){
 .m511-sets--home .m511-set-card{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);grid-template-rows:auto auto;background:#f7f5f4;}
 .m511-sets--home .m511-set-cover{grid-column:1;grid-row:1;width:100%;height:100%;aspect-ratio:3/4;min-height:0;}
 .m511-sets--home .m511-set-cover img{width:100%;height:100%;object-fit:cover;object-position:center 35%;}
 .m511-sets--home .m511-set-card-body{display:contents;}
 .m511-sets--home .m511-set-products{grid-column:2;grid-row:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:100%;height:100%;padding:10px 12px;background:#fff;}
 .m511-sets--home .m511-set-mini{width:100%;max-width:110px;aspect-ratio:1/1;flex:0 1 auto;}
 .m511-sets--home .m511-plus{font-size:18px;line-height:1;}
 .m511-sets--home .m511-set-card-info{grid-column:1/-1;grid-row:2;display:block;width:100%;padding:17px 18px 19px;min-width:0;}
 .m511-sets--home .m511-set-color{top:18px;right:18px;}
 .m511-sets--home .m511-set-card-info h3{font-size:16px;margin:0 0 8px;padding-right:28px;}
 .m511-sets--home .m511-set-card-info p{font-size:12px;line-height:1.45;margin:0 0 13px;}
 .m511-sets--home .m511-set-info-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:13px;width:100%;min-width:0;}
 .m511-sets--home .m511-set-price{font-size:19px;line-height:1.2;margin:0;white-space:nowrap;}
 .m511-sets--home .m511-set-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:42px;padding:9px 13px;font-size:12px;line-height:1.2;white-space:nowrap;margin:0;}
}
@media (max-width:360px){
 .m511-sets--home .m511-set-card-info{padding:15px 13px;}
 .m511-sets--home .m511-set-price{font-size:16px;}
 .m511-sets--home .m511-set-button{font-size:11px;padding:9px 10px;}
}

/* 5’11: Elementor gestiona los espacios verticales externos; márgenes laterales responsive. */
@media (min-width:600px) and (max-width:767px){.m511-sets{padding-left:24px;padding-right:24px}}
@media (max-width:599px){.m511-sets--home{padding-left:14px;padding-right:14px}.m511-sets{padding-top:0;padding-bottom:0}}
