/* Form layout adapter. Original reference rules are in reference.css. */
.trm26,.trm26-hero{--primary:#1e293b;--accent:#bb003b;--accent-light:#fff4f7;--border-active:#bb003b;--border:#dce0e7;--card-bg:#fff;--text-main:#1e293b;--text-muted:#64748b;--focus-ring:#bb003b33;color:#1e293b;font-family:Arial,Helvetica,sans-serif;line-height:1.6;box-sizing:border-box}
.trm26{width:100%;max-width:100%;margin:28px auto;border:0;box-shadow:none;border-radius:0;overflow:visible;background:#fff}
.trm26 *,.trm26 *::before,.trm26 *::after{box-sizing:border-box}
.trm26 .trm26-body{padding:0}
.trm26 [hidden]{display:none!important}
.trm26 a{color:#bb003b}.trm26 a:hover{color:#93002e}
.trm26 .trm-layout{width:100%;scroll-margin-top:110px}
.trm26 .frm_forms,.trm26 .frm_form_fields,.trm26 .frm_fields_container,.trm26 fieldset{width:100%;max-width:none}
.trm26 .frm_fields_container{gap:0}
.trm26 .frm_fields_container>.frm_form_field:has(.trm-layout){grid-column:1/-1!important;width:100%!important;min-width:0}
.trm26 .trm-layout .frm_form_field{grid-column:auto!important;float:none!important;width:100%!important;max-width:none;margin:0!important;padding:0;min-width:0}
.trm26 .trm-layout [data-trm-slot]{min-width:0;margin:0 0 18px}
.trm26 .trm-layout .frm_primary_label{display:block;font-size:14px;font-weight:600;color:#1e293b;margin-bottom:8px}
.trm26 .trm-layout .trm-choice-field>.frm_primary_label{display:none}
.trm26 .trm-layout .frm_radio,.trm26 .trm-layout .frm_checkbox{margin:0!important;min-width:0;padding:0}
.trm26 .trm-layout .frm_radio>label,.trm26 .trm-layout .frm_checkbox>label{height:100%;margin:0!important;white-space:normal;font-family:inherit}
.trm26 .trm-layout .trm-choice-grid{width:100%;margin:0;padding:0}
.trm26 .trm-choice-copy{display:block;width:100%;min-width:0}
.trm26 .trm-choice-copy .tile-title,.trm26 .trm-choice-copy .tile-desc,.trm26 .trm-choice-copy small{display:block}
.trm26 .trm-choice-copy small{font-size:13px;color:var(--text-muted);margin-top:5px}
.trm26 .trm-choice-copy svg{display:block;margin:auto;color:var(--accent)}
.trm26 .trm-layout input[type=radio],.trm26 .trm-layout input[type=checkbox]{appearance:auto!important;-webkit-appearance:auto!important;accent-color:#bb003b;width:20px;height:20px;min-width:20px;box-shadow:none;background:initial;border:initial}
.trm26 .trm-layout input[type=radio]::before,.trm26 .trm-layout input[type=checkbox]::before{content:none!important}
.trm26 .trm-layout .tile-card{padding-top:32px}
.trm26 .trm-layout .tile-card.selected{border-color:#bb003b;background:#fff4f7;box-shadow:0 0 0 1px #bb003b}
.trm26 .trm-layout label:has(input:focus-visible){outline:3px solid #bb003b55;outline-offset:3px}
.trm26 .trm-layout input:not([type=radio]):not([type=checkbox]):not([type=hidden]),.trm26 .trm-layout textarea,.trm26 .trm-layout select{font:400 16px/1.5 Arial,Helvetica,sans-serif;padding:11px 13px;min-height:46px;width:100%;border:1px solid #dce0e7;border-radius:7px;background:#fff;color:#1e293b;box-shadow:none}
.trm26 .trm-layout textarea{min-height:110px}
.trm26 .trm-layout input:focus,.trm26 .trm-layout textarea:focus{outline:2px solid #bb003b55;outline-offset:2px}
.trm26 .trm-layout .frm_description{color:#64748b;font-size:13px}
.trm26 .trm-layout .frm_error{color:#a00032;font-size:14px}
.trm26 .trm-layout .frm_form_field.frm_blank_field{outline:2px solid #bb003b55;outline-offset:5px}
.trm26 .trm-step-navigation{margin:0 0 28px}
.trm26 .trm-steps{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;list-style:none;margin:0 0 20px;padding:0}
.trm26 .trm-steps li{min-width:0;margin:0;padding:0}
.trm26 .trm-steps button{display:block;width:100%;height:100%;padding:10px 0;text-align:left;color:#64748b;background:transparent;border:0;border-bottom:2px solid #e2e8f0;border-radius:0;box-shadow:none;cursor:pointer;font-family:inherit}
.trm26 .trm-steps button b{display:block;font-size:18px;line-height:1.3}
.trm26 .trm-steps button span{display:block;font-size:11px;line-height:1.5;overflow-wrap:normal;hyphens:none}
.trm26 .trm-steps button[aria-current=step],.trm26 .trm-steps button:hover{color:#bb003b;border-color:#bb003b}
.trm26 .trm-step-caption{font-size:11px;font-weight:700;text-transform:uppercase;margin:0}
.trm26 progress{display:block;width:100%;height:4px;margin:12px 0 0;border:0;accent-color:#bb003b;background:#e2e8f0}
.trm26 progress::-webkit-progress-bar{background:#e2e8f0}.trm26 progress::-webkit-progress-value{background:#bb003b}.trm26 progress::-moz-progress-bar{background:#bb003b}
.trm26 .trm-controls,.trm26 .frm_submit{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:28px 0 0;padding:24px 0 0;border-top:1px solid #dce0e7}
.trm26 .trm-controls button,.trm26 .trm-review button,.trm26 .frm_button_submit{font:700 15px/1.4 Arial,Helvetica,sans-serif;padding:13px 20px;border-radius:7px;border:0;box-shadow:none;cursor:pointer;background:#eef1f5;color:#1e293b}
.trm26 .trm-controls [data-next],.trm26 .frm_button_submit{background:#bb003b;color:#fff;margin-left:auto}
.trm26 .trm-controls [data-top]{font-size:13px;padding:10px 0;background:none;text-decoration:underline;font-weight:400}
.trm26 .frm_button_submit:hover,.trm26 .trm-controls [data-next]:hover{background:#93002e;color:#fff}
.trm26 button:focus-visible{outline:3px solid #bb003b55;outline-offset:3px}
.trm26 .trm-review{margin-top:30px;background:#faf6f7;border:1px solid #edbdcd;border-radius:14px;padding:28px;scroll-margin-top:110px}
.trm26 .trm-review h3{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:18px}
.trm26 .trm-review h3 button{font-size:13px;padding:6px 10px;background:white;color:#bb003b}
.trm26 .trm-review dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:10px 24px;margin-bottom:24px}
.trm26 .trm-review dt{font-weight:700}.trm26 .trm-review dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.trm26 .trm-panel fieldset{border:0;padding:0;margin:0;min-width:0}
.trm26 .trm-panel .shape-image{height:260px;width:100%;object-fit:contain}
.trm26 .trm-panel .shape-card{min-height:340px;padding:32px 12px 20px}
.trm26 .trm-panel .shape-card .tile-title{font-size:16px}
.trm26 .trm-panel .sleep-choice input{position:static;margin:0}
.trm26 .trm-panel .sleep-matrix-scroll{display:block}
.trm26 .trm-panel .measure-image{max-height:300px;object-fit:contain}
.trm26 .trm-panel figure{margin:0 0 24px}
.trm26 .trm-panel .massage-hero{width:100%;aspect-ratio:16/7;object-fit:cover;object-position:center 60%}
.trm26 .trm-panel .underframe-product-preview{width:128px;height:84px;object-fit:contain}
.trm26 .trm-panel .frm_form_field.trm-k_name .frm_form_fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.trm26 .trm-setup-notice{padding:14px;border-left:4px solid #bb003b;background:#fff4f7}
.trm26-hero{background:#efece6;padding:0!important;margin-bottom:30px}
.trm26-hero>.wp-block-columns{margin:0!important;gap:0!important}
.trm26-hero .wp-block-column:first-child{padding:32px}
.trm26-hero .wp-block-image{margin:0}.trm26-hero .wp-block-image img{display:block;width:100%;height:100%;min-height:300px;object-fit:cover}
.trm26-hero h1{font-size:clamp(30px,4vw,48px);line-height:1.1;color:#1e293b;margin:20px 0}
.trm26-hero .trm-eyebrow{color:#bb003b;font-size:12px;letter-spacing:2px;font-weight:700}
@media(max-width:760px){.trm26 .trm-steps{grid-template-columns:repeat(4,minmax(0,1fr))}.trm26 .trm-steps button span{font-size:11px}.trm26 .trm-review{padding:18px}.trm26 .trm-review dl{grid-template-columns:1fr;gap:4px}.trm26 .trm-review dd{margin-bottom:12px}.trm26 .trm-panel .shape-image{height:190px}.trm26 .trm-panel .shape-card{min-height:280px}.trm26-hero .wp-block-column:first-child{padding:24px}.trm26 .trm-controls [data-top]{order:3;width:100%}}
@media(prefers-reduced-motion:reduce){.trm26 *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Version 2.1: getrennte Personenprofile und Matratzengrößen. */
.trm26 .trm-person-profile{border-top:2px solid #e2e8f0;padding-top:24px;margin:32px 0}
.trm26 .trm-person-heading{font:700 24px/1.3 Arial,Helvetica,sans-serif;color:#1e293b;margin:0 0 20px}
.trm26 .trm-size-fields{padding:20px;background:#f8f9fb;border:1px solid #dce0e7;border-radius:10px;margin:20px 0 28px}
.trm26 .trm-size-fields:has(> [hidden]):not(:has(> :not([hidden]))){display:none}
.trm26 .trm-size-fields textarea,.trm26 .trm-shared-size textarea{min-height:110px}
.trm26 .trm-layout select{appearance:auto!important;-webkit-appearance:menulist!important;padding-right:32px;min-height:48px}
.trm26 .trm-layout [hidden]{display:none!important}
.trm26 .trm-review h4{font:700 18px/1.4 Arial,Helvetica,sans-serif;color:#bb003b;margin:24px 0 12px}
.trm26-hero h1,.trm26-hero h1 em{font-family:Arial,Helvetica,sans-serif!important}
@media(max-width:600px){.trm26 .trm-size-fields{padding:14px}.trm26 .trm-person-heading{font-size:21px}}

/* 2.1.1: Bild rechts neben dem ersten Größenbereich, mobil darunter. */
.trm26 .trm-size-illustrated{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center}
.trm26 .trm-size-inputs{min-width:0}
.trm26 .trm-size-illustrated:not(:has(.trm-size-inputs > [data-trm-slot]:not([hidden]))){display:none!important}
.trm26 .trm-size-visual{margin:0;min-width:0}
.trm26 .trm-size-visual img{display:block;width:100%;height:auto;max-width:100%;border-radius:12px}
.trm26 .trm-size-illustrated textarea{min-height:125px;resize:vertical}
@media(max-width:760px){.trm26 .trm-size-illustrated{grid-template-columns:1fr;gap:18px}}
