.license-overview{padding:38px 0 36px;background:#eeede8;border-bottom:1px solid var(--line)}.catalog-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:21px}.catalog-heading .eyebrow{margin:0;font-size:10px}.catalog-heading .text-link{font-size:11px}.class-catalog{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.class-tile{background:#fff;border:1px solid #d9d8d2;border-top:2px solid var(--red);padding:18px 15px;min-height:126px;position:relative;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s,border-color .2s}.class-tile:hover{color:var(--ink);border-color:var(--red);transform:translateY(-3px)}.class-tile strong{font-family:var(--heading);font-size:32px;line-height:1.1;display:block;margin-bottom:10px}.class-tile span{font-size:10px;line-height:1.6;color:var(--muted);padding-right:12px}.class-tile>.icon{position:absolute;right:10px;bottom:13px;width:13px;height:13px;color:var(--red)}.class-tile-seminar{background:var(--ink);color:white;border-color:var(--ink);border-top-color:var(--red)}.class-tile-seminar span{color:#ccc}.class-tile-seminar:hover{color:white}.catalog-note{font-size:10px;color:var(--muted);margin:16px 0 0;max-width:800px}
.enrollment-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:50px;align-items:start}.enrollment-main{min-width:0}.enrollment-main>.lead{font-size:16px;margin-bottom:30px}.enrollment-main>.lead b{font-weight:700;color:var(--ink)}.enrollment-aside{position:sticky;top:125px}.enrollment-aside .content-block{padding:27px}.enrollment-aside h3{font-size:32px}.enrollment-aside p,.enrollment-aside li{font-size:12px}.enrollment-aside ol{padding-left:18px}.enrollment-aside li{margin-bottom:12px}.enrollment-aside hr{border:0;border-top:1px solid var(--line);margin:25px 0}.enrollment-aside .text-link{font-size:11px;gap:9px}.enrollment-help{padding:24px 8px;font-size:12px}.enrollment-help p{margin-bottom:7px}.form-progress{list-style:none;padding:0;margin:0 0 32px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.form-progress li{display:flex;align-items:center;gap:8px;color:#777;font-size:10px;padding:12px 0;border-bottom:2px solid #d7d6cf}.form-progress li>span{width:23px;height:23px;display:grid;place-items:center;border:1px solid #bdbdb7;border-radius:50%;font-size:10px;flex-shrink:0}.form-progress li[aria-current=step]{color:var(--red);border-color:var(--red);font-weight:700}.form-progress li[aria-current=step]>span{background:var(--red);border-color:var(--red);color:white}.form-progress .is-complete{color:var(--ink)}.form-progress .is-complete>span{background:var(--ink);color:white;border-color:var(--ink)}.enrollment-form{background:white;border:1px solid var(--line);padding:35px}.enrollment-step{margin:0 0 35px;padding:0;border:0;min-width:0}.enrollment-step legend{font-family:var(--heading);font-size:36px;line-height:1.1;margin-bottom:18px;scroll-margin-top:120px}.enrollment-step>p{font-size:13px;color:var(--muted)}.required-note{font-size:10px;color:var(--muted);margin-bottom:24px}.enrollment-fields{margin-top:25px}.enrollment-fields .form-field{font-size:12px;gap:8px}.form-field>span[aria-hidden]{display:contents}.enrollment-fields input,.enrollment-fields select{min-height:51px;background:#fcfcf9}.enrollment-fields input[type=date]{padding-inline:0;min-width:0;width:100%}.enrollment-fields input[type=date]::-webkit-datetime-edit{padding-inline:13px}.enrollment-classes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:23px 0 28px}.enrollment-class{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);padding:15px 13px;cursor:pointer;min-width:0}.enrollment-class:has(input:checked){border-color:var(--red);background:#fff6f5;box-shadow:inset 0 0 0 1px var(--red)}.enrollment-class>input{width:16px;height:16px;min-height:0;margin:5px 0 0;accent-color:var(--red);flex:0 0 auto;padding:0}.enrollment-class strong{font-family:var(--heading);font-size:26px;line-height:1.2;font-weight:800;display:block}.enrollment-class small{font-size:10px;color:var(--muted);display:block;line-height:1.6;margin-top:5px}.enrollment-class>span{min-width:0}.form-hint{font-size:11px!important;color:var(--muted);line-height:1.7;margin:18px 0 0}.guardian-fields{margin-top:30px;background:#f4f3ee;padding:25px}.guardian-fields h3{font-size:29px}.guardian-fields p{font-size:12px;color:var(--muted)}.guardian-fields .form-field{font-size:11px}.guardian-fields .form-fields{gap:18px}.consent-label{display:flex;align-items:flex-start;gap:12px;margin-top:25px;font-size:12px;line-height:1.8;color:#555}.consent-label>input{width:19px;height:19px;min-height:0;flex:0 0 auto;margin:3px 0 0;accent-color:var(--red);padding:0}.consent-label a,.enrollment-step>p>a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.field-error{display:block;color:#b31c15;font-size:11px;font-weight:400;line-height:1.6}.enrollment-form [aria-invalid=true]{border-color:#b31c15}.form-error-summary{background:#fff1ee;border:1px solid #e8b6af;padding:25px;margin-bottom:30px;font-size:13px;color:#85251e;overflow-wrap:anywhere}.form-error-summary h2{font-size:30px}.form-error-summary ul{padding-left:18px;margin-bottom:0}.form-error-summary li{margin-bottom:8px}.form-error-summary a{text-decoration:underline}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.enrollment-actions{display:flex;justify-content:space-between;gap:15px;padding-top:25px;border-top:1px solid var(--line)}.enrollment-actions>.button:last-child{margin-left:auto}.review-intro h2{font-size:42px}.review-intro>p{font-size:14px;color:var(--muted)}.review-section{border:1px solid var(--line);background:white;padding:28px;margin:24px 0}.review-section h3{font-size:29px}.review-section dl{margin:18px 0 0}.review-section dl>div{display:grid;grid-template-columns:1fr 1.3fr;gap:22px;border-top:1px solid #e8e8e2;padding:12px 0;font-size:12px;line-height:1.7}.review-section dt{color:var(--muted)}.review-section dd{margin:0;overflow-wrap:anywhere}.review-submit{padding-top:15px}.review-submit .button{font-size:12px;gap:16px}.submit-status{font-size:12px;color:var(--muted);margin-top:15px}.enrollment-success{background:white;border:1px solid var(--line);padding:40px}.success-mark{display:grid;place-items:center;width:60px;height:60px;background:#e8f1e5;color:#39722c;border-radius:50%;margin-bottom:25px}.success-mark .icon{width:32px;height:32px}.enrollment-success h2{font-size:47px}.enrollment-success p{font-size:14px;color:var(--muted)}.enrollment-success .reference{border-block:1px solid var(--line);padding:20px 0;color:var(--ink)}.enrollment-success .reference strong{font-size:16px}.enrollment-success .button-group{margin-top:25px}.enrollment-form .notice{font-size:12px}
@media(max-width:1150px){.class-catalog{grid-template-columns:repeat(4,minmax(0,1fr))}.enrollment-layout{grid-template-columns:minmax(0,1fr) 250px;gap:30px}.enrollment-classes{grid-template-columns:repeat(2,minmax(0,1fr))}.form-progress li{font-size:9px;gap:5px}.enrollment-form{padding:28px}}
@media(max-width:960px){.enrollment-layout{grid-template-columns:minmax(0,1fr)}.enrollment-aside{position:static;display:grid;grid-template-columns:1fr .6fr;gap:25px}.enrollment-classes{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.license-overview{padding:28px 0}.catalog-heading{display:block}.catalog-heading .eyebrow{font-size:9px;margin-bottom:13px}.catalog-heading .text-link{font-size:10px}.class-catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.class-tile{padding:14px 10px;min-height:116px}.class-tile strong{font-size:26px;margin-bottom:8px}.class-tile span{font-size:9px;padding-right:0}.class-tile>.icon{width:11px;height:11px;bottom:8px;right:7px}.catalog-note{font-size:9px;line-height:1.8}.enrollment-form{padding:24px 20px}.form-progress{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 15px;margin-bottom:24px}.form-progress li{font-size:11px;padding:9px 0;gap:9px}.enrollment-classes{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.enrollment-class{padding:13px 10px;gap:8px}.enrollment-class strong{font-size:24px}.enrollment-class small{font-size:10px}.enrollment-step legend{font-size:32px}.enrollment-step>p{font-size:12px}.guardian-fields{padding:20px 16px;margin-inline:-5px}.guardian-fields .form-fields{grid-template-columns:1fr}.enrollment-actions{gap:12px}.enrollment-actions .button{font-size:11px;padding:13px 15px;gap:10px}.enrollment-main>.lead{font-size:15px}.enrollment-aside{grid-template-columns:1fr}.enrollment-help{padding:0 8px}.review-section{padding:24px 20px}.review-section dl>div{grid-template-columns:1fr;gap:4px;font-size:12px}.review-section dt{font-size:11px}.review-submit .button{width:100%;font-size:11px;padding:16px 13px;gap:12px}.review-submit .button-group{gap:20px}.enrollment-success{padding:28px}.enrollment-success h2{font-size:39px}.enrollment-success .button{font-size:11px;padding:14px;gap:10px}.consent-label{font-size:11px}.enrollment-form .form-field{font-size:12px}.required-note{font-size:10px}}
@media(max-width:360px){.class-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.class-tile{min-height:108px}.class-tile strong{font-size:29px}.class-tile span{font-size:10px}.enrollment-form{padding:22px 16px}.enrollment-class{padding:12px 8px;gap:7px}.enrollment-class strong{font-size:23px}.enrollment-class>input{width:14px;height:14px}.enrollment-actions .button{font-size:10px;padding:12px;gap:8px}.enrollment-step legend{font-size:30px}}
@media(prefers-reduced-motion:reduce){.class-tile{transition:none}}
@media print{.enrollment-aside,.form-progress,.enrollment-actions,.review-submit{display:none}.enrollment-layout{display:block}.review-section{break-inside:avoid}}
.mofa-visual{background:var(--ink);color:white;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-bottom:5px solid var(--red)}.mofa-visual strong{font-family:var(--heading);font-size:150px;line-height:1;color:var(--red)}.mofa-visual span{font-size:10px;letter-spacing:.14em;margin-top:15px}
.registration-reset{margin-top:20px}.registration-reset button{border:0;background:none;text-decoration:underline;text-underline-offset:4px;padding:8px 0;color:var(--muted);font-size:11px;text-align:left;min-height:44px}
.class-entry{font-size:9px;line-height:1.6;color:var(--red);display:block;margin-top:8px;padding-right:6px}.class-tile{min-height:150px}
.license-card-motorcycle .image-tag{top:15px;bottom:auto}
.license-card{display:flex;flex-direction:column}.license-card .card-image{flex-shrink:0}.license-card-body{flex:1}.license-card-motorcycle .card-image{height:auto;aspect-ratio:1.55}.license-card-motorcycle .card-image img{object-position:center bottom}.license-card-motorcycle:hover img{transform:none}.motorcycle-full{object-fit:contain!important;background:#e6e6e1}.fleet-navigation{display:flex;flex-wrap:wrap;gap:12px}.fleet-navigation a{display:flex;align-items:center;gap:22px;border:1px solid var(--line);padding:13px 20px;background:white;font-size:13px;font-weight:700}.fleet-navigation a:hover{border-color:var(--red)}.fleet-section{scroll-margin-top:130px}.fleet-section .vehicle-card h3{font-size:35px}.vehicle-image{background:#e6e6e1;margin-bottom:25px;aspect-ratio:1.85;display:flex;align-items:center;justify-content:center}.fleet-section .vehicle-card .vehicle-image img{height:100%;width:100%;object-fit:contain;margin:0}.fleet-section .vehicle-grid{row-gap:45px}.fleet-section .vehicle-card>.text-link{font-size:12px}.fleet-home-link{margin-top:30px;padding-top:25px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:14px}.fleet-home-link p{margin:0;color:var(--muted)}
@media(max-width:700px){.vehicle-image{aspect-ratio:1.5}.fleet-navigation{gap:9px}.fleet-navigation a{font-size:11px;padding:12px 16px;gap:15px}.fleet-home-link{display:block;font-size:13px}.fleet-home-link .text-link{margin-top:15px}.fleet-section .vehicle-card h3{font-size:33px}.license-card-body{flex:initial}}

/* Full-bleed vehicle catalog: identical 16:9 on desktop and mobile. */
.page-fahrzeuge .vehicle-image{aspect-ratio:16/9;display:block;overflow:hidden;background:#171819}.page-fahrzeuge .fleet-section .vehicle-card .vehicle-image img{display:block;aspect-ratio:16/9;width:100%;height:100%;object-fit:cover;object-position:center;margin:0}

/* Use the new full-frame catalog photographs everywhere, at their natural 16:9 ratio. */
.license-card .card-image,.license-card-motorcycle .card-image{height:auto;aspect-ratio:16/9;background:#171819}.license-card .card-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.license-card:hover .card-image img{transform:none}.class-block img.content-image[src*="fleet-"],img.motorcycle-full[src*="fleet-"]{display:block;width:100%;height:auto!important;aspect-ratio:16/9;object-fit:cover!important;background:#171819;object-position:center}.content-image[src*="fleet-"]{height:auto;aspect-ratio:16/9;object-fit:cover}

/* HTML overlays: power remains separate from the photograph. */
.page-fahrzeuge .vehicle-image{position:relative;isolation:isolate}
.vehicle-stickers{position:absolute;z-index:1;top:16px;left:16px;right:16px;display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:0;padding:0;pointer-events:none}
.vehicle-sticker{display:flex;flex-direction:column;gap:3px;min-width:124px;padding:12px 16px;background:#d51d16;color:#fff;box-shadow:0 4px 16px #0003;border:1px solid #ffffff24}
.vehicle-sticker span{font-size:10px;font-weight:800;letter-spacing:.08em;line-height:1.3;text-transform:uppercase}
.vehicle-sticker strong{font-family:Barlow,sans-serif;font-size:30px;line-height:1;font-weight:800}
.vehicle-sticker-open{background:#171819;border-color:#ffffff45}
@media(max-width:700px){.vehicle-stickers{top:10px;left:10px;right:10px;gap:7px}.vehicle-sticker{min-width:100px;padding:9px 11px}.vehicle-sticker span{font-size:9px;letter-spacing:.04em}.vehicle-sticker strong{font-size:25px}}

.fleet-count{display:inline-block;margin-left:10px;padding:5px 9px;background:#e5e3dc;color:#222;font-size:11px;letter-spacing:.02em;white-space:nowrap}
.vehicle-image-stacked .vehicle-stickers{right:auto;flex-direction:column;align-items:stretch}
@media(max-width:700px){.vehicle-image-stacked .vehicle-sticker{min-width:0;padding:7px 8px}.vehicle-image-stacked .vehicle-sticker span{font-size:7px}.vehicle-image-stacked .vehicle-sticker strong{font-size:20px}.vehicle-image-stacked .vehicle-stickers{gap:5px}.fleet-count{font-size:10px;margin-left:6px}}

/* Matched team portraits: keep the complete 16:9 composition at every viewport. */
.page-team .team-card>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;object-position:center;background:#dededb}
.page-team .team-monogram{width:100%;height:auto;aspect-ratio:16/9;background:#dededb}
.page-team .team-monogram>span{font-size:clamp(70px,12vw,130px);line-height:1}
.page-index .about-visual>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;object-position:center;background:#dededb}

/* One consistent full-width form column, including every subsequent step. */
.enrollment-form .form-fields{grid-template-columns:minmax(0,1fr);gap:24px}
.enrollment-form .form-field{width:100%;min-width:0}
.enrollment-form .field-label{display:block;line-height:1.6}
.enrollment-form .field-label small{display:inline;font-size:inherit;font-weight:400;white-space:nowrap}
.enrollment-form .form-field input,.enrollment-form .form-field select,.enrollment-form .form-field textarea{display:block;width:100%}
.enrollment-actions,.review-submit .button-group,.enrollment-success .button-group{display:grid;grid-template-columns:minmax(0,1fr);gap:13px;width:100%}
.enrollment-actions>.button,.enrollment-actions>.button:last-child,.review-submit .button-group>.button,.enrollment-success .button-group>.button{width:100%;margin-left:0;white-space:normal;text-align:center;justify-content:center}
.registration-reset button{width:100%;text-align:center}
.enrollment-aside .content-block>.button{display:flex;width:100%;font-size:12px;gap:12px;margin-top:10px}
