.lookmat-public {
	--lookmat-gold: #FFBD00;
	--lookmat-black: #0b0b0b;
	--lookmat-ink: #171717;
	--lookmat-gray-900: #282828;
	--lookmat-gray-700: #5b5b5b;
	--lookmat-gray-300: #d0d0d0;
	--lookmat-gray-100: #f2f2f2;
	--lookmat-white: #fff;
	width: 100%;
	max-width: 1280px;
	margin: 28px auto;
	color: var(--lookmat-ink);
	font-family: Catamaran, Arial, Helvetica, sans-serif;
	font-size: 16px;
	line-height: 1.5;
}
.lookmat-public *, .lookmat-public *::before, .lookmat-public *::after { box-sizing: border-box; }
.lookmat-public button, .lookmat-public input, .lookmat-public select, .lookmat-public textarea, .lookmat-public details, .lookmat-public fieldset, .lookmat-public canvas, .lookmat-public a { border-radius: 0; }
.lookmat-public button, .lookmat-public input, .lookmat-public select, .lookmat-public textarea { font: inherit; }
.lookmat-public button:focus-visible, .lookmat-public input:focus-visible, .lookmat-public select:focus-visible, .lookmat-public textarea:focus-visible, .lookmat-public a:focus-visible, .lookmat-public summary:focus-visible, .lookmat-public canvas:focus-visible { outline: 4px solid var(--lookmat-gold); outline-offset: 3px; }
.lookmat-public-header { display: flex; align-items: center; gap: 22px; border: 1px solid var(--lookmat-black); border-bottom: 8px solid var(--lookmat-gold); padding: 28px 32px; background: var(--lookmat-black); color: var(--lookmat-white); }
.lookmat-public-header h2 { margin: 0; color: var(--lookmat-white); font-size: clamp(28px, 4vw, 43px); line-height: 1.05; font-weight: 600; }
.lookmat-public-header p:not(.lookmat-public-kicker) { max-width: 760px; margin: 8px 0 0; color: #d7d7d7; }
.lookmat-public-kicker { margin: 0 0 5px; color: var(--lookmat-gold); font-size: 12px; line-height: 1.2; font-weight: 850; letter-spacing: .17em; text-transform: uppercase; }
.lookmat-public-icon { display: grid; width: 76px; height: 76px; flex: 0 0 76px; place-items: center; border: 2px solid var(--lookmat-gold); color: var(--lookmat-gold); }
.lookmat-public-icon svg { width: 46px; height: 46px; fill: currentColor; }
.lookmat-public-layout { display: grid; grid-template-columns: minmax(0, 1fr) 270px; gap: 24px; align-items: start; padding-top: 24px; }
.lookmat-public-main { min-width: 0; border: 1px solid var(--lookmat-black); background: var(--lookmat-white); box-shadow: 9px 9px 0 #dedede; }
.lookmat-progress { display: grid; grid-template-columns: repeat(6, 1fr); margin: 0; padding: 0; border-bottom: 1px solid var(--lookmat-black); list-style: none; }
.lookmat-progress li { position: relative; min-width: 0; padding: 13px 6px; border-right: 1px solid var(--lookmat-gray-300); color: var(--lookmat-gray-700); text-align: center; }
.lookmat-progress li:last-child { border-right: 0; }
.lookmat-progress span { display: grid; width: 25px; height: 25px; margin: 0 auto 5px; place-items: center; border: 1px solid #777; background: var(--lookmat-white); font-size: 12px; font-weight: 800; }
.lookmat-progress strong { display: block; overflow: hidden; font-size: 11px; letter-spacing: .04em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.lookmat-progress li.is-current { border-bottom: 5px solid var(--lookmat-gold); background: var(--lookmat-black); color: var(--lookmat-white); }
.lookmat-progress li.is-current span { border-color: var(--lookmat-gold); background: var(--lookmat-gold); color: var(--lookmat-black); }
.lookmat-progress li.is-complete span { border-color: var(--lookmat-black); background: var(--lookmat-black); color: var(--lookmat-white); }
.lookmat-wizard-form { margin: 0; }
.lookmat-scene { display: none; min-height: 520px; padding: clamp(22px, 4vw, 42px); }
.lookmat-scene.is-current { display: block; animation: lookmat-in .24s ease-out; }
@keyframes lookmat-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
.lookmat-scene-heading { margin-bottom: 26px; }
.lookmat-scene-heading > span { display: block; margin-bottom: 6px; color: #8a6700; font-size: 12px; font-weight: 850; letter-spacing: .15em; }
.lookmat-scene-heading h3 { margin: 0; color: var(--lookmat-black); font-size: clamp(25px, 3.2vw, 34px); line-height: 1.1; }
.lookmat-scene-heading p { margin: 8px 0 0; color: var(--lookmat-gray-700); }
.lookmat-family-filter { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.lookmat-family-filter button { border: 1px solid var(--lookmat-black); padding: 9px 16px; background: var(--lookmat-white); color: var(--lookmat-black); cursor: pointer; font-weight: 750; }
.lookmat-family-filter button.is-active { background: var(--lookmat-black); color: var(--lookmat-white); }
.lookmat-public-course-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.lookmat-public-course { position: relative; display: grid; min-width: 0; grid-template-columns: 105px minmax(0, 1fr); align-items: stretch; overflow: hidden; border: 1px solid var(--lookmat-gold); padding: 0; background: var(--lookmat-white); color: var(--lookmat-ink); text-align: left; cursor: pointer; box-shadow: 5px 5px 0 #e0e0e0; transition: background-color .16s ease, color .16s ease, border-color .16s ease, transform .16s ease, box-shadow .16s ease; }
.lookmat-public-course::after { position: absolute; inset: 0 auto 0 0; width: 8px; background: var(--course-color, var(--lookmat-gold)); content: ""; }
.lookmat-public-course:hover, .lookmat-public-course.is-selected { border-color: var(--lookmat-gold); background: var(--lookmat-black); color: var(--lookmat-white); }
.lookmat-public-course:hover { transform: translate(-2px, -2px); box-shadow: 8px 8px 0 #d7d7d7; }
.lookmat-public-course.is-selected { border-width: 4px; box-shadow: 7px 7px 0 var(--lookmat-gold); }
.lookmat-public-course:hover .lookmat-public-course-copy > small, .lookmat-public-course.is-selected .lookmat-public-course-copy > small, .lookmat-public-course:hover .lookmat-course-facts em, .lookmat-public-course.is-selected .lookmat-course-facts em { color: var(--lookmat-white); }
.lookmat-public-course:hover .lookmat-family-label, .lookmat-public-course.is-selected .lookmat-family-label { background: var(--lookmat-gold); color: var(--lookmat-black); border-color: var(--lookmat-black); }
.lookmat-public-course-art { display: grid; min-height: 145px; place-items: center; overflow: hidden; background: var(--lookmat-black); color: var(--course-color, var(--lookmat-gold)); }
.lookmat-public-course-art img { width: 100%; height: 100%; object-fit: cover; }
.lookmat-public-course-art svg { width: 54px; height: 54px; fill: currentColor; }
.lookmat-public-course-copy { display: flex; min-width: 0; flex-direction: column; justify-content: center; gap: 5px; padding: 17px; }
.lookmat-family-label { align-self: flex-start; border: 1px solid var(--lookmat-black); padding: 3px 7px; background: var(--course-color, var(--lookmat-gold)); color: var(--lookmat-black); font-size: 10px; font-style: normal; font-weight: 850; letter-spacing: .07em; }
.lookmat-public-course-copy > strong { font-size: 19px; line-height: 1.18; }
.lookmat-public-course-copy > small { color: var(--lookmat-gray-700); line-height: 1.3; }
.lookmat-public--curso .lookmat-public-course-copy > small { font-size: clamp(14px, 1.25vw, 16px); font-weight: 600; line-height: 1.35; }
.lookmat-course-facts { display: flex; min-width: 0; flex-wrap: nowrap; align-items: center; gap: 5px; margin-top: 6px; white-space: nowrap; }
.lookmat-course-facts em { color: var(--lookmat-gray-900); font-size: clamp(10px, 1vw, 12px); font-style: normal; font-weight: 750; }
.lookmat-course-facts em + em::before { margin-right: 7px; color: currentColor; content: "|"; font-weight: 500; }
/* 2.15.0 · Curso: duración + mensualidad como información principal; matrícula en línea secundaria. */
.lookmat-public--curso .lookmat-course-facts--course { gap: 7px; margin-top: 8px; }
.lookmat-public--curso .lookmat-course-facts--course em { font-size: clamp(14px, 1.35vw, 17px); font-weight: 600; line-height: 1.25; }
.lookmat-course-registration { display: block; margin-top: 1px; color: var(--lookmat-gray-900); font-size: clamp(10px, 1vw, 12px); font-weight: 750; line-height: 1.3; }
.lookmat-public-course:hover .lookmat-course-registration, .lookmat-public-course.is-selected .lookmat-course-registration { color: var(--lookmat-white); }

.lookmat-public-group-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.lookmat-public-group { position: relative; display: flex; min-height: 170px; flex-direction: column; align-items: flex-start; justify-content: center; gap: 7px; border: 1px solid var(--lookmat-gold); border-left: 9px solid var(--lookmat-gold); padding: 52px 18px 18px; background: var(--lookmat-white); color: var(--lookmat-ink); text-align: left; cursor: pointer; transition: background-color .16s ease, color .16s ease, border-color .16s ease, box-shadow .16s ease; }
.lookmat-public-group strong { font-size: 21px; }
.lookmat-public-group small { color: var(--lookmat-gray-700); }
.lookmat-public-group:not(:disabled):hover, .lookmat-public-group.is-selected { border-color: var(--lookmat-gold); background: var(--lookmat-black); color: var(--lookmat-white); box-shadow: 7px 7px 0 var(--lookmat-gold); }
.lookmat-public-group:not(:disabled):hover small, .lookmat-public-group.is-selected small { color: #eee; }
.lookmat-public-group:not(:disabled):hover .lookmat-family-label, .lookmat-public-group.is-selected .lookmat-family-label { background: var(--lookmat-gold); color: var(--lookmat-black); border-color: var(--lookmat-black); }
.lookmat-group-start-badge { position: absolute; top: 14px; right: 14px; z-index: 1; display: inline-flex; align-items: center; min-height: 28px; border: 1px solid var(--lookmat-black); padding: 4px 9px; background: var(--lookmat-black); color: var(--lookmat-white); font-size: 11px; font-weight: 800; line-height: 1; white-space: nowrap; }
.lookmat-public-group:not(:disabled):hover .lookmat-group-start-badge, .lookmat-public-group.is-selected .lookmat-group-start-badge { border-color: var(--lookmat-white); background: var(--lookmat-white); color: var(--lookmat-black); }
.lookmat-public-group:disabled { cursor: not-allowed; filter: grayscale(1); opacity: .65; }
/* 2.21.0 · Grupos agotados: estado claro sin permitir selección. */
.lookmat-public-group-shell { display: grid; min-width: 0; align-content: start; gap: 10px; }
.lookmat-public-group-shell .lookmat-public-group { width: 100%; }
.lookmat-public-group.is-full:disabled { border-color: rgba(125,125,125,.75); border-left-color: #9b9b9b; background: rgba(210,210,210,.66); color: #555; cursor: not-allowed; filter: none; opacity: 1; box-shadow: none; }
.lookmat-public-group.is-full:disabled small { color: #666; }
.lookmat-public-group.is-full:disabled .lookmat-group-start-badge { border-color: #707070; background: #707070; color: #fff; }
.lookmat-group-sold-out { display: block; width: 100%; box-sizing: border-box; margin: 2px 0 3px; border: 1px solid #8f1016; padding: 9px 12px; background: #b51f27; color: #fff; font-size: clamp(15px,1.6vw,19px); font-weight: 850; letter-spacing: .055em; line-height: 1.1; text-align: center; }
.lookmat-group-interest-cta { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; border: 1px solid var(--lookmat-black); padding: 10px 16px; background: var(--lookmat-black); color: var(--lookmat-white) !important; font-size: 13px; font-weight: 800; line-height: 1.2; text-align: center; text-decoration: none !important; transition: background-color .16s ease,color .16s ease,border-color .16s ease; }
.lookmat-group-interest-cta:hover,.lookmat-group-interest-cta:focus-visible { border-color: var(--lookmat-gold); background: var(--lookmat-gold); color: var(--lookmat-black) !important; outline: 2px solid var(--lookmat-black); outline-offset: 2px; }
.lookmat-online-message { border: 1px solid var(--lookmat-black); border-left: 12px solid var(--lookmat-gold); padding: 30px; background: var(--lookmat-black); color: var(--lookmat-white); text-align: center; }
.lookmat-online-message svg { width: 66px; height: 66px; fill: var(--lookmat-gold); }
.lookmat-online-message h4 { margin: 10px 0 6px; color: var(--lookmat-white); font-size: 24px; }
.lookmat-online-message p { margin: 0; color: #ddd; }
.lookmat-public-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px; }
.lookmat-public-field { display: flex; min-width: 0; flex-direction: column; gap: 6px; margin: 0 0 16px; color: var(--lookmat-ink); font-weight: 700; }
.lookmat-public-field > span { font-size: 13px; }
.lookmat-public-span-2 { grid-column: 1 / -1; }
.lookmat-public input:not([type="radio"]):not([type="checkbox"]), .lookmat-public select, .lookmat-public textarea { width: 100%; min-height: 48px; border: 1px solid #686868; padding: 9px 11px; background: var(--lookmat-white); color: var(--lookmat-ink); }
.lookmat-public textarea { resize: vertical; }
.lookmat-public input:invalid:not(:placeholder-shown), .lookmat-public select:invalid:not(:focus) { border-left: 6px solid #a51d20; }
.lookmat-minor-toggle { display: flex; align-items: flex-start; gap: 12px; margin: 12px 0 20px; border: 1px solid var(--lookmat-black); padding: 16px; background: #fff8df; cursor: pointer; }
.lookmat-minor-toggle input { width: 22px; height: 22px; flex: 0 0 22px; border-radius: 0; }
.lookmat-minor-toggle strong { display: block; }
.lookmat-representative { border: 1px solid var(--lookmat-black); border-top: 7px solid var(--lookmat-gold); padding: 20px; }
.lookmat-representative legend { padding: 0 8px; font-size: 19px; font-weight: 850; }
.lookmat-price-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-bottom: 24px; }
.lookmat-price-summary > div { border: 1px solid var(--lookmat-black); border-top: 7px solid var(--lookmat-gold); padding: 14px; background: var(--lookmat-gray-100); }
.lookmat-price-summary span { display: block; color: var(--lookmat-gray-700); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.lookmat-price-summary strong { display: block; margin-top: 3px; font-size: 22px; }
.lookmat-choice-fieldset { margin: 0 0 20px; border: 0; padding: 0; }
.lookmat-choice-fieldset legend { margin-bottom: 8px; font-size: 17px; font-weight: 850; }
.lookmat-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.lookmat-choice-grid label { position: relative; cursor: pointer; }
.lookmat-choice-grid input { position: absolute; opacity: 0; pointer-events: none; }
.lookmat-choice-grid span { display: flex; min-height: 58px; align-items: center; border: 1px solid var(--lookmat-black); padding: 12px 15px; background: var(--lookmat-white); font-weight: 750; }
.lookmat-choice-grid input:checked + span { border-left: 9px solid var(--lookmat-gold); background: var(--lookmat-black); color: var(--lookmat-white); }
.lookmat-choice-grid input:focus-visible + span { outline: 4px solid var(--lookmat-gold); outline-offset: 3px; }
.lookmat-bank-fields { display: grid; grid-template-columns: 1fr 1.5fr; gap: 16px; border: 1px solid var(--lookmat-black); padding: 16px; background: #fff8df; }
.lookmat-coupon { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: end; margin-top: 18px; border-top: 1px solid var(--lookmat-gray-300); padding-top: 18px; }
.lookmat-coupon .lookmat-public-field { margin: 0; }
.lookmat-coupon button, .lookmat-signature button { min-height: 48px; border: 1px solid var(--lookmat-black); padding: 9px 17px; background: var(--lookmat-black); color: var(--lookmat-white); cursor: pointer; font-weight: 800; }
.lookmat-coupon p { grid-column: 1 / -1; margin: 0; color: #7a4c00; font-weight: 700; }
.lookmat-terms { border: 1px solid var(--lookmat-black); margin-bottom: 18px; }
.lookmat-terms summary { padding: 15px 18px; background: var(--lookmat-black); color: var(--lookmat-white); cursor: pointer; font-weight: 800; }
.lookmat-terms > div { max-height: 390px; overflow-y: auto; padding: 20px; }
.lookmat-terms h2, .lookmat-terms h3, .lookmat-terms h4 { line-height: 1.2; }
.lookmat-required-acceptance { display: grid; gap: 10px; margin: 18px 0; }
.lookmat-required-acceptance label { display: flex; align-items: flex-start; gap: 10px; border-left: 7px solid var(--lookmat-gold); padding: 12px 14px; background: #fff8df; }
.lookmat-required-acceptance input { width: 21px; height: 21px; flex: 0 0 21px; border-radius: 0; }
.lookmat-consent-list { display: grid; gap: 10px; }
.lookmat-consent-list fieldset { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 5px 14px; margin: 0; border: 1px solid var(--lookmat-black); padding: 14px; }
.lookmat-consent-list fieldset.has-error { border: 4px solid #a51d20; }
.lookmat-consent-list legend { padding: 0 6px; font-weight: 850; }
.lookmat-consent-list p { margin: 0; color: var(--lookmat-gray-700); font-size: 13px; }
.lookmat-consent-list fieldset > div { display: flex; gap: 10px; grid-column: 2; grid-row: 1 / span 2; }
.lookmat-consent-list label { display: flex; align-items: center; gap: 5px; border: 1px solid #777; padding: 7px 9px; cursor: pointer; }
.lookmat-signature { margin-top: 22px; border-top: 7px solid var(--lookmat-gold); padding-top: 15px; }
.lookmat-signature h4 { margin: 0; font-size: 19px; }
.lookmat-signature p { margin: 4px 0 10px; color: var(--lookmat-gray-700); }
.lookmat-signature canvas { display: block; width: 100%; height: 180px; border: 1px solid var(--lookmat-black); background: #fff; cursor: crosshair; touch-action: none; }
.lookmat-signature canvas.has-error { border: 5px solid #a51d20; }
.lookmat-signature button { margin-top: 8px; min-height: 38px; background: var(--lookmat-white); color: var(--lookmat-black); }
.lookmat-review { display: grid; gap: 13px; margin-bottom: 20px; }
.lookmat-review section { border: 1px solid var(--lookmat-black); border-top: 7px solid var(--course-color, var(--lookmat-gold)); }
.lookmat-review h4 { margin: 0; padding: 11px 14px; background: var(--lookmat-black); color: var(--lookmat-white); font-size: 18px; }
.lookmat-review dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; }
.lookmat-review dl div { border-right: 1px solid var(--lookmat-gray-300); border-bottom: 1px solid var(--lookmat-gray-300); padding: 9px 12px; }
.lookmat-review dt { color: var(--lookmat-gray-700); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.lookmat-review dd { margin: 3px 0 0; font-weight: 750; }
.lookmat-review-media { padding: 14px; border-bottom: 1px solid var(--lookmat-gray-300); background: #f7f7f7; }
.lookmat-review-media img { display: block; width: 100%; max-height: 280px; object-fit: cover; }
.lookmat-review-media.lookmat-review-avatar { display: flex; justify-content: flex-start; }
.lookmat-review-media.lookmat-review-avatar img { width: 82px; height: 82px; border: 4px solid var(--lookmat-gold); object-fit: cover; }
.lookmat-review-description { border-bottom: 1px solid var(--lookmat-gray-300); padding: 14px 16px; background: var(--lookmat-white); }
.lookmat-review-description p { margin: 0; color: var(--lookmat-gray-700); line-height: 1.6; white-space: pre-line; }
.lookmat-final-acceptance { margin-top: 28px; border-top: 8px solid var(--lookmat-gold); padding-top: 20px; }
.lookmat-final-acceptance > h4 { margin: 0; font-size: 22px; }
.lookmat-final-acceptance > p { color: var(--lookmat-gray-700); }
.lookmat-submit-feedback { border-left: 6px solid var(--lookmat-gold); padding-left: 10px; color: #7a4c00; font-weight: 700; }
.lookmat-wizard-actions { display: flex; justify-content: space-between; gap: 10px; border-top: 1px solid var(--lookmat-black); padding: 16px clamp(22px, 4vw, 42px); background: var(--lookmat-gray-100); }
.lookmat-primary, .lookmat-secondary { min-height: 50px; border: 1px solid var(--lookmat-black); padding: 10px 22px; cursor: pointer; font-weight: 850; }
.lookmat-primary { margin-left: auto; background: var(--lookmat-gold); color: var(--lookmat-black); }
.lookmat-primary:hover { background: var(--lookmat-black); color: var(--lookmat-white); }
.lookmat-primary:disabled { cursor: not-allowed; filter: grayscale(1); opacity: .45; }
.lookmat-secondary { background: var(--lookmat-white); color: var(--lookmat-black); }
.lookmat-support-card { position: sticky; top: 40px; border: 1px solid var(--lookmat-black); border-top: 10px solid var(--lookmat-gold); padding: 20px; background: var(--lookmat-black); color: var(--lookmat-white); box-shadow: 7px 7px 0 #d5d5d5; }
.lookmat-support-card h3 { margin: 0 0 8px; color: var(--lookmat-white); font-size: 24px; }
.lookmat-support-hours { margin: 0 0 16px; color: #d7d7d7; font-size: 13px; line-height: 1.45; }
.lookmat-support-card ul { margin: 0; padding: 0; list-style: none; }
.lookmat-support-card li { border-top: 1px solid #494949; padding: 10px 0; }
.lookmat-support-card span { display: block; color: var(--lookmat-gold); font-size: 10px; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.lookmat-support-card a { color: var(--lookmat-white); text-decoration: none; word-break: break-word; }
.lookmat-success { padding: clamp(35px, 7vw, 80px) 25px; text-align: center; }
.lookmat-success svg { width: 82px; height: 82px; fill: var(--lookmat-gold); }
.lookmat-success h3 { margin: 8px 0; font-size: clamp(27px, 4vw, 38px); }
.lookmat-success > p:not(.lookmat-public-kicker) { max-width: 620px; margin: 0 auto 22px; color: var(--lookmat-gray-700); }
.lookmat-success a { display: inline-block; border: 1px solid var(--lookmat-black); padding: 12px 20px; background: var(--lookmat-black); color: var(--lookmat-white); text-decoration: none; font-weight: 850; }
.lookmat-public-empty { border: 1px dashed #888; padding: 24px; background: var(--lookmat-gray-100); text-align: center; }
@media (max-width: 960px) {
	.lookmat-public-layout { grid-template-columns: 1fr; }
	.lookmat-support-card { position: static; }
}
@media (max-width: 700px) {
	.lookmat-public { margin: 12px auto; overflow: hidden; }
	.lookmat-public-header { align-items: flex-start; padding: 20px 16px; }
	.lookmat-public-icon { width: 50px; height: 50px; flex-basis: 50px; }
	.lookmat-public-icon svg { width: 32px; height: 32px; }
	.lookmat-progress { grid-template-columns: repeat(6, minmax(45px, 1fr)); overflow-x: auto; }
	.lookmat-progress strong { display: none; }
	.lookmat-scene { min-height: 420px; padding: 24px 15px; }
	.lookmat-public-course-grid, .lookmat-public-group-grid, .lookmat-public-field-grid, .lookmat-choice-grid, .lookmat-price-summary, .lookmat-bank-fields { grid-template-columns: 1fr; }
	.lookmat-public-span-2 { grid-column: auto; }
	.lookmat-public-course { grid-template-columns: 85px minmax(0, 1fr); }
	.lookmat-public-course-art { min-height: 135px; }
	.lookmat-course-facts { flex-wrap: wrap; white-space: normal; }
	.lookmat-consent-list fieldset { grid-template-columns: 1fr; }
	.lookmat-consent-list fieldset > div { grid-column: 1; grid-row: auto; }
	.lookmat-coupon { grid-template-columns: 1fr; }
	.lookmat-coupon p { grid-column: 1; }
	.lookmat-review dl { grid-template-columns: 1fr; }
	.lookmat-wizard-actions { padding: 13px 15px; }
	.lookmat-primary, .lookmat-secondary { min-height: 48px; padding: 9px 15px; }
}
@media (prefers-reduced-motion: reduce) {
	.lookmat-public *, .lookmat-public *::before, .lookmat-public *::after { scroll-behavior: auto; animation-duration: .01ms; transition-duration: .01ms; }
}
.lookmat-choice-grid label.is-disabled { opacity: .48; cursor: not-allowed; }


/* 2.3.0: course-only card payment and original-tab confirmation state. */
.lookmat-price-summary .is-emphasis { border-left-color: var(--lookmat-black); background: #fff8df; }
.lookmat-payment-method-static { margin: 0 0 20px; border: 1px solid var(--lookmat-black); border-left: 9px solid var(--lookmat-gold); padding: 15px 17px; background: #fffaf0; }
.lookmat-payment-method-static > span { display: block; color: var(--lookmat-gray-700); font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.lookmat-payment-method-static > strong { display: block; margin-top: 3px; font-size: 19px; }
.lookmat-payment-method-static > p { margin: 5px 0 0; color: var(--lookmat-gray-700); font-size: 13px; }
.lookmat-payment-waiting { padding: clamp(35px, 7vw, 70px) clamp(20px, 5vw, 55px); text-align: center; }
.lookmat-payment-waiting h3 { margin: 8px 0; font-size: clamp(26px, 4vw, 36px); }
.lookmat-payment-waiting > p:not(.lookmat-public-kicker):not(.lookmat-context-note) { max-width: 640px; margin: 0 auto 22px; color: var(--lookmat-gray-700); }
.lookmat-waiting-mark { display: grid; width: 78px; height: 78px; margin: 0 auto 18px; place-items: center; border: 2px solid var(--lookmat-black); border-bottom: 8px solid var(--lookmat-gold); }
.lookmat-waiting-mark span { width: 28px; height: 28px; border: 4px solid #d2d2d2; border-top-color: var(--lookmat-black); border-radius: 50%; animation: lookmat-spin .8s linear infinite; }
@keyframes lookmat-spin { to { transform: rotate(360deg); } }
.lookmat-waiting-actions { display: flex; flex-wrap: wrap; align-items: stretch; justify-content: center; gap: 10px; width: fit-content; max-width: 100%; margin: 24px auto 16px; }
.lookmat-waiting-actions .lookmat-primary,.lookmat-waiting-actions .lookmat-secondary{margin-left:0!important;display:inline-flex;align-items:center;justify-content:center;min-width:200px;text-align:center;}
.lookmat-payment-waiting .lookmat-waiting-actions .lookmat-primary{background:var(--lookmat-gold)!important;color:var(--lookmat-black)!important;border-color:var(--lookmat-black)!important;}
.lookmat-payment-waiting .lookmat-waiting-actions .lookmat-primary:hover,.lookmat-payment-waiting .lookmat-waiting-actions .lookmat-primary:focus{background:var(--lookmat-black)!important;color:var(--lookmat-white)!important;}
.lookmat-link-button { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.lookmat-payment-waiting .lookmat-context-note { max-width: 650px; margin: 18px auto 0; border-left: 6px solid var(--lookmat-gold); padding: 10px 12px; background: var(--lookmat-gray-100); color: var(--lookmat-gray-700); text-align: left; }
@media (max-width: 700px) {
	.lookmat-waiting-actions { display: grid; grid-template-columns: 1fr; width:100%; }
	.lookmat-waiting-actions .lookmat-primary, .lookmat-waiting-actions .lookmat-secondary { width: 100%; min-width:0; }
}


/* 2.4.0 · Included items */
.lookmat-card-includes,.lookmat-card-requirements{display:grid;gap:4px;margin-top:9px;padding:9px 10px;border:1px solid rgba(20,20,20,.18);background:rgba(255,255,255,.7);text-align:left}.lookmat-card-includes>b,.lookmat-card-requirements>b{font-weight:600;font-style:normal}.lookmat-card-includes>span,.lookmat-card-requirements>span{display:flex;gap:7px;align-items:flex-start;font-size:12px;line-height:1.35}.lookmat-card-includes i,.lookmat-card-requirements i,.lookmat-review-checklist i{font-style:normal;font-weight:700;flex:0 0 auto}.lookmat-review-section--checklist{border-top:3px solid var(--course-color,#FFBD00)}.lookmat-review-checklist{display:grid;gap:7px}.lookmat-review-checklist>span{display:flex;gap:8px;align-items:flex-start;line-height:1.45}@media(max-width:640px){.lookmat-card-includes,.lookmat-card-requirements{padding:8px}.lookmat-card-includes>span,.lookmat-card-requirements>span{font-size:11.5px}}

/* 2.6.0 · Course/group interactive states and callout readability. */
.lookmat-public-course:hover .lookmat-card-includes,.lookmat-public-course.is-selected .lookmat-card-includes,.lookmat-public-course:hover .lookmat-card-requirements,.lookmat-public-course.is-selected .lookmat-card-requirements{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:var(--lookmat-white)}
@media(max-width:700px){.lookmat-course-facts{flex-wrap:wrap;white-space:normal}.lookmat-public-group{padding-top:52px}}

/* 2.12.0 · Stronger visual treatment for the featured-course section. */
.lookmat-course-selection-section--featured {
	border: 1px solid rgba(255,189,0,.56);
	padding: clamp(16px, 2.4vw, 24px);
	background: rgba(255,189,0,.18);
}
.lookmat-course-selection-section--featured .lookmat-course-divider { margin-bottom: 18px; }
.lookmat-course-selection-section--featured .lookmat-course-divider > strong {
	font-size: clamp(18px, 2.1vw, 23px);
	font-weight: 800;
	letter-spacing: .045em;
}
@media (max-width: 640px) {
	.lookmat-course-selection-section--featured { padding: 14px; }
	.lookmat-course-selection-section--featured .lookmat-course-divider > strong { font-size: 18px; }
}

/* 2.7.0 · Featured courses and review information link. */
.lookmat-course-selection-section + .lookmat-course-selection-section { margin-top: 30px; }
.lookmat-course-divider { display: flex; align-items: center; gap: 10px; margin: 0 0 14px; color: var(--lookmat-black); }
.lookmat-course-divider::before, .lookmat-course-divider::after { height: 1px; flex: 1 1 auto; background: var(--lookmat-gold); content: ""; }
.lookmat-course-divider > span { display: inline-grid; width: 30px; height: 30px; flex: 0 0 30px; place-items: center; border: 1px solid var(--lookmat-black); background: var(--lookmat-gold); color: var(--lookmat-black); font-size: 17px; }
.lookmat-course-divider > strong { flex: 0 0 auto; font-size: 13px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.lookmat-course-divider--regular::before, .lookmat-course-divider--regular::after { background: var(--lookmat-black); opacity: .35; }
.lookmat-featured-star { position: absolute; z-index: 3; top: 12px; right: 12px; display: inline-grid; width: 34px; height: 34px; place-items: center; border: 1px solid var(--lookmat-black); background: var(--lookmat-gold); color: var(--lookmat-black); font-size: 19px; line-height: 1; box-shadow: 2px 2px 0 rgba(0,0,0,.16); }
.lookmat-public-course.is-featured .lookmat-public-course-copy { padding-right: 58px; }
.lookmat-public-course:hover .lookmat-featured-star, .lookmat-public-course.is-selected .lookmat-featured-star { border-color: var(--lookmat-gold); background: var(--lookmat-gold); color: var(--lookmat-black); }
.lookmat-review-more { border-bottom: 1px solid var(--lookmat-gray-300); padding: 0 16px 14px; background: var(--lookmat-white); }
.lookmat-public .lookmat-review-more-link, .lookmat-public .lookmat-review-more-link:visited { display: inline-flex; min-height: 42px; align-items: center; justify-content: center; border: 1px solid var(--lookmat-black); padding: 8px 16px; background: var(--lookmat-black); color: var(--lookmat-white); text-decoration: none; font-weight: 800; transition: background-color .16s ease, color .16s ease, border-color .16s ease; }
.lookmat-public .lookmat-review-more-link:hover, .lookmat-public .lookmat-review-more-link:focus-visible { border-color: var(--lookmat-gold); background: var(--lookmat-gold); color: var(--lookmat-black); outline: 2px solid var(--lookmat-black); outline-offset: 2px; }
@media (max-width: 640px) {
	.lookmat-course-divider--regular > strong { font-size: 12px; }
	.lookmat-featured-star { top: 10px; right: 10px; width: 30px; height: 30px; font-size: 17px; }
	.lookmat-public-course.is-featured .lookmat-public-course-copy { padding-right: 48px; }
}

/* 2.25.0 · Online courses skip the group/modality step entirely. */
.lookmat-public.is-online-course-flow .lookmat-progress {
	grid-template-columns: repeat(5, 1fr);
}
.lookmat-public.is-online-course-flow .lookmat-progress li:nth-child(2) {
	display: none;
}
@media (max-width: 700px) {
	.lookmat-public.is-online-course-flow .lookmat-progress {
		grid-template-columns: repeat(5, minmax(45px, 1fr));
	}
}

/* 2.26.0 · Shorter flow, review-time conditions and compact optional consents. */
.lookmat-progress { grid-template-columns: repeat(5, 1fr); }
.lookmat-terms-acceptance { display: grid; gap: 10px; }
.lookmat-terms--review { margin: 0; }
.lookmat-terms--review summary { padding: 12px 14px; font-size: 14px; }
.lookmat-terms--review > div { max-height: 420px; }
.lookmat-consent-list--simple { gap: 8px; margin: 14px 0 0; }
.lookmat-consent-list--simple .lookmat-consent-check { display: flex; align-items: flex-start; gap: 10px; margin: 0; border: 1px solid var(--lookmat-gray-300); padding: 12px 14px; background: var(--lookmat-white); color: var(--lookmat-black); cursor: pointer; line-height: 1.45; }
.lookmat-consent-list--simple .lookmat-consent-check input { width: 20px; height: 20px; flex: 0 0 20px; margin: 1px 0 0; border-radius: 0; }
.lookmat-consent-list--simple .lookmat-consent-check:focus-within { outline: 3px solid var(--lookmat-gold); outline-offset: 2px; }
@media (max-width: 700px) {
	.lookmat-progress { grid-template-columns: repeat(5, minmax(45px, 1fr)); }
}
.lookmat-public.is-online-course-flow .lookmat-progress { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 700px) {
	.lookmat-public.is-online-course-flow .lookmat-progress { grid-template-columns: repeat(4, minmax(45px, 1fr)); }
}

/* 2.46.0 · Payment-first enrollment flow, resilient state and mobile-safe controls. */
.lookmat-public--curso .lookmat-progress {
	grid-template-columns: repeat(5, 1fr);
}
.lookmat-course-payment-panel {
	display: grid;
	gap: 16px;
	margin-top: 24px;
	border: 1px solid var(--lookmat-black);
	border-left: 10px solid var(--lookmat-gold);
	padding: clamp(18px, 3vw, 26px);
	background: #fffaf0;
}
.lookmat-course-payment-panel__copy strong {
	display: block;
	margin: 0 0 5px;
	font-size: clamp(18px, 2.1vw, 22px);
	font-weight: 850;
}
.lookmat-course-payment-panel__copy p {
	margin: 0;
	color: var(--lookmat-gray-700);
	line-height: 1.55;
}
.lookmat-course-payment-panel__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 10px;
}
.lookmat-course-payment-panel__actions .lookmat-primary,
.lookmat-course-payment-panel__actions .lookmat-secondary {
	display: inline-flex;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	margin-left: 0;
	text-align: center;
}
.lookmat-course-payment-panel__actions [data-course-start-payment] {
	min-width: min(100%, 320px);
}
.lookmat-course-payment-panel__actions [data-course-start-payment][hidden],
.lookmat-course-payment-panel__actions [data-course-payment-open],
.lookmat-course-payment-panel__actions [data-course-payment-check] {
	display: none !important;
}
.lookmat-course-payment-status {
	min-height: 0;
	margin: 0;
	border-top: 1px solid rgba(8,8,8,.16);
	padding-top: 12px;
	color: var(--lookmat-gray-700);
	font-size: 13px;
	font-weight: 750;
	line-height: 1.5;
}
.lookmat-course-payment-status:empty {
	display: none;
}
.lookmat-economics-locked [data-payment-plan],
.lookmat-economics-locked [data-coupon-code],
.lookmat-economics-locked [data-apply-coupon] {
	cursor: not-allowed;
	opacity: .58;
}
.lookmat-success-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: center;
	gap: 10px;
	margin-top: 22px;
}
.lookmat-success-actions a {
	display: inline-flex;
	min-height: 50px;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}
.lookmat-success-actions [data-contract-download] {
	background: var(--lookmat-gold);
	color: var(--lookmat-black);
}

@media (max-width: 700px) {
	.lookmat-public--curso .lookmat-progress {
		grid-template-columns: repeat(5, minmax(45px, 1fr));
	}
	.lookmat-course-payment-panel {
		gap: 14px;
		margin-top: 18px;
		border-left-width: 7px;
		padding: 16px;
	}
	.lookmat-course-payment-panel__actions {
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
	}
	.lookmat-course-payment-panel__actions .lookmat-primary,
	.lookmat-course-payment-panel__actions .lookmat-secondary {
		width: 100%;
		min-height: 52px;
		margin: 0;
		padding: 11px 14px;
	}
	.lookmat-wizard-actions {
		flex-wrap: wrap;
		gap: 9px;
	}
	.lookmat-wizard-actions .lookmat-primary,
	.lookmat-wizard-actions .lookmat-secondary {
		min-height: 52px;
	}
	.lookmat-wizard-actions [data-submit] {
		width: 100%;
		margin-left: 0;
	}
	.lookmat-success-actions {
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
		max-width: 420px;
		margin-right: auto;
		margin-left: auto;
	}
	.lookmat-success-actions a {
		width: 100%;
		min-height: 52px;
	}
	.lookmat-public-field-grid {
		grid-template-columns: 1fr;
	}
	.lookmat-public-span-2 {
		grid-column: 1;
	}
}
