/* Existing forms keep their behavior; these scoped rules apply the public theme. */
.legacy-form main{width:min(1000px,calc(100% - 40px));max-width:1000px;margin:0 auto;padding:50px 0}.legacy-form main>section{padding:0}.legacy-form main h1{font-size:clamp(2.2rem,4vw,3.4rem);margin:0 0 20px}.legacy-form main p{margin-bottom:20px}.legacy-form .form-card,.legacy-form .card{padding:28px;border:1px solid #d9dfe0;background:#fff;border-radius:6px;box-shadow:none;margin-top:30px}.legacy-form .grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.legacy-form .field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.legacy-form .layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px}.legacy-form .field label{font-size:.9375rem}.legacy-form .legal-box{display:flex;gap:12px;margin:20px 0}.legacy-form .legal-box input{flex-shrink:0}.legacy-form main .primary{background:#a74520;color:#fff}.legacy-form main .secondary{background:#f3f5f5;color:#172126}.legacy-form a{color:inherit}.legacy-form form .hint{margin-top:8px}.legacy-form .required:after{content:' *';color:#a74520}.legacy-form button[type=submit]{min-height:48px;padding:14px 22px;background:#a74520;border:0;border-radius:4px;color:#fff;font-weight:600}.legacy-form .site-header a{color:#172126}.legacy-form .site-header .btn-primary{color:#fff}@media(max-width:700px){.legacy-form .grid,.legacy-form .layout{grid-template-columns:1fr}.legacy-form main{width:calc(100% - 32px)}.legacy-form .form-card,.legacy-form .card{padding:20px}}
.form-page{--bg:#fff;--panel:#fff;--panel-2:#f3f5f5;--text:#172126;--muted:#596469;--line:#d9dfe0;--accent:#a74520;--accent-dark:#863717;--danger:#b32d2d;--shadow:0 8px 30px #14242b0a;background:#fff;color:#172126;font-family:"Segoe UI",Arial,sans-serif;line-height:1.65;padding-bottom:0}
.form-page h1,.form-page h2,.form-page h3{color:#172126;font-family:inherit;font-weight:600;letter-spacing:-.035em;text-shadow:none}
.form-page .hero{background:#f3f5f5;background-image:none;min-height:0;padding:44px 0;border-bottom:1px solid #d9dfe0}
.form-page .hero:before,.form-page .hero:after{display:none}
.form-page .hero-inner{max-width:1200px;margin:0 auto;padding:0 32px}
.form-page .hero h1{font-size:clamp(2.2rem,4.2vw,3.5rem);max-width:860px;margin:10px 0 18px;line-height:1.13}
.form-page .hero p{color:#596469;max-width:780px;text-shadow:none;font-size:1rem}
.form-page .hero .eyebrow{color:#a74520;font-size:.8125rem;letter-spacing:.12em}
.form-page .primary-switch{max-width:900px;margin-top:26px;gap:14px}
.form-page .switch-btn{background:#fff;color:#172126;border:1px solid #b8c1c5;border-radius:6px;padding:20px;box-shadow:none;text-align:left}
.form-page .switch-btn strong{font-size:1rem;font-weight:600}
.form-page .switch-btn span{color:#596469;font-size:.875rem;line-height:1.5}
.form-page .switch-btn.active,.form-page .switch-btn[aria-selected=true]{background:#fff8f4;border:2px solid #a74520;color:#172126;box-shadow:none}
.form-page .content{width:min(1200px,calc(100% - 64px));max-width:1200px;padding:42px 0;margin:auto;gap:28px;align-items:start}
.form-page .form-panel,.form-page .side-panel{background:#fff;border:1px solid #d9dfe0;border-radius:6px;box-shadow:none;padding:28px}
.form-page .side-panel{background:#f3f5f5;position:static}
.form-page .panel-head h2{font-size:1.9rem}.form-page .panel-head{margin-bottom:20px}.form-page .hint,.form-page .legal-note{color:#596469;font-size:.875rem}
.form-page .eyebrow{color:#a74520}.form-page .step-strip{display:none}
.form-page .form-section{border-color:#d9dfe0;margin-top:24px;padding-top:24px}.form-page .form-section:first-of-type{margin-top:0;padding-top:0;border:0}
.form-page .form-section h3{font-size:1.15rem;margin-bottom:18px}.form-page .field{min-width:0}.form-page .field label,.form-page .group-label{color:#27343b;font-weight:600;font-size:.9375rem}
.form-page input:not([type=checkbox]):not([type=radio]):not([type=file]),.form-page select,.form-page textarea{background:#fff;color:#172126;border:1px solid #94a2a9;border-radius:4px;min-height:48px;font-size:1rem;padding:12px;box-shadow:none;width:100%}
.form-page input::placeholder,.form-page textarea::placeholder{color:#66737b;opacity:1}.form-page textarea{min-height:130px;resize:vertical}.form-page input:focus,.form-page textarea:focus,.form-page select:focus{border-color:#a74520;outline:2px solid #a7452038;outline-offset:2px}
.form-page .legal-box{background:#f3f5f5;color:#39474f;border:1px solid #d9dfe0;border-radius:4px;padding:14px;font-size:.875rem;align-items:start}
.form-page .legal-box input{accent-color:#a74520;min-width:18px;width:18px;height:18px;margin-top:3px}.form-page .legal-box a{color:#833514;text-decoration:underline}
.form-page .file-drop{background:#fafbfb;color:#39474f;border:1px dashed #94a2a9;border-radius:4px}.form-page .file-drop strong{font-size:.9375rem;font-weight:600}
.form-page .offer-details{padding:20px 0;border-top:1px solid #d9dfe0;border-bottom:1px solid #d9dfe0;margin-top:24px}.form-page .offer-details summary{cursor:pointer;font-weight:600;color:#39474f;font-size:.9375rem}.form-page .offer-details>.grid{margin-top:22px}
.form-page .btn{background:#fff;color:#172126;border:1px solid #aab7bd;border-radius:4px;padding:13px 20px;min-height:48px;font-weight:600;box-shadow:none;text-shadow:none;line-height:1.4}
.form-page .btn-primary{background:#a74520;color:#fff;border-color:#a74520}.form-page .btn-primary:hover{background:#863717;color:#fff}.form-page .btn-secondary{background:#f3f5f5;color:#172126}
.form-page .side-panel h3{font-size:1.2rem}.form-page .side-list,.form-page .side-list li,.form-page .side-list a{color:#27343b}.form-page .side-list strong{color:#172126;font-weight:600}.form-page .side-list a:hover{color:#863717}.form-page .side-list i{color:#a74520}
/* Booking choices and their later steps use the same readable light theme. */
.form-page .choice{background:#fff;color:#172126;border:1px solid #94a2a9;border-radius:6px;padding:18px;gap:14px;box-shadow:none}
.form-page .choice strong{color:#172126;font-size:1rem;font-weight:600;line-height:1.45}
.form-page .choice>span>span{color:#39474f;font-size:.875rem;line-height:1.55;margin-top:3px}
.form-page .choice input{flex:0 0 20px;width:20px;height:20px;margin-top:3px;accent-color:#a74520}
.form-page .choice:hover{border-color:#a74520}
.form-page .choice:has(input:checked){background:#fff4ed;border-color:#a74520;box-shadow:inset 0 0 0 1px #a74520}
.form-page .choice:has(input:focus-visible){outline:3px solid #007484;outline-offset:3px}
.form-page .choice:has(input:disabled){background:#f3f5f5;border-color:#b8c1c5;cursor:not-allowed}
.form-page .service-summary,.form-page .customer-summary-card{background:#f3f5f5;color:#172126;border:1px solid #b8c1c5;border-radius:6px}
.form-page .service-summary strong,.form-page .customer-summary-toggle,.form-page .customer-summary-body div{color:#172126}
.form-page .customer-summary-toggle{background:#f3f5f5;font-weight:600}
.form-page .customer-summary-body{background:#fff}
.form-page .service-summary span,.form-page .customer-summary-toggle span,.form-page .customer-summary-body small{color:#39474f}
.form-page .price-card{background:#fff;border-color:#c48f79;border-radius:6px}
.form-page .price-card th{background:#fff4ed;color:#172126}
.form-page .price-card td{color:#27343b}
.form-page .price-card td:last-child{color:#863717;font-weight:600}
.form-page .price-note{background:#fff4ed;color:#6a2d16}
.form-page .notdienst-availability{background:#eef8f1;color:#245537;border-color:#88b59a;border-radius:6px}
.form-page .notdienst-availability strong{color:#1e462e}
.form-page .notdienst-availability span,.form-page .notdienst-guarantee{color:#245537}
.form-page .btn-danger{background:#a32d2d;color:#fff;border-color:#a32d2d}
.form-page .btn-danger:hover{background:#842323;color:#fff}
.form-page .day{background:#fff;color:#172126;border:1px solid #b8c1c5;border-radius:6px}
.form-page .day[open] summary{background:#eef8f1;color:#245537}
.form-page .day-body{background:#fff}
.form-page .slot-row-label{color:#27343b}
.form-page .slot-cell{background:#eef8f1;color:#245537;border-color:#88b59a;border-radius:4px}
.form-page .slot-cell:hover,.form-page .slot-cell.is-selected{background:#245537;color:#fff}
.form-page .slot-empty{background:#f3f5f5;color:#39474f;border-color:#b8c1c5}
.form-page .suggestion-title{color:#172126;font-weight:600}
.form-page .suggestion-subtitle{color:#39474f}
.form-page .suggestion-source{background:#fff4ed;color:#863717}
.form-page .status.err{background:#fff1f1;border-color:#b32d2d;color:#8c2020}.form-page .status.ok{background:#eef8f1;border-color:#337a4a;color:#225532}
.form-page .choice-card,.form-page .radio-card,.form-page .service-option,.form-page .booking-customer-summary,.form-page .billing-address-box{background:#f3f5f5;color:#172126;border-color:#b8c1c5;box-shadow:none}
.form-page table{color:#172126}.form-page th,.form-page td{border-color:#d9dfe0}.form-page .suggestions{background:#fff;color:#172126;border-color:#aab7bd;box-shadow:0 8px 22px #14242b17}.form-page .suggestions button{color:#172126;background:#fff}.form-page .suggestions button:hover{background:#f3f5f5}
.form-page .trust-section h2,.form-page .trust-section h3{color:#fff}.form-page .trust-section .eyebrow{color:#e4a381}.form-page .trust-section .btn{background:#fff}.form-page .site-header .nav{max-width:1200px}.form-page .site-header .logo img{height:58px;width:124px}
.form-page .site-header .nav-links>.btn{background:#a74520;color:#fff;border-color:#a74520}.form-page .site-header .nav-links>a{font-weight:600}.form-page .site-header .logo{display:block;font-size:1rem}
.form-page [hidden],.form-page .hidden{display:none!important}.form-page [data-customer-only][hidden]{display:none!important}
@media(max-width:860px){.form-page .hero-inner{padding:0 20px}.form-page .content{width:calc(100% - 40px);grid-template-columns:1fr}.form-page .site-header .logo img{height:48px;width:105px}.form-page .hero{padding-block:32px}.form-page .form-panel,.form-page .side-panel{padding:22px}}
@media(max-width:520px){.form-page .content{width:calc(100% - 32px);padding-top:24px}.form-page .hero-inner{padding:0 16px}.form-page .primary-switch{grid-template-columns:1fr;gap:10px}.form-page .switch-btn{padding:16px}.form-page .form-panel,.form-page .side-panel{padding:18px}.form-page .grid{grid-template-columns:1fr}.form-page .field,.form-page .field.third,.form-page .field.full{grid-column:1/-1}.form-page .submit-row .btn{width:100%}.form-page .hero h1{font-size:2.25rem}.form-page .mobile-contact .btn{min-height:44px;padding:10px}}
