/* ======================================== DIGITAL MATURITY SCAN STYLING ======================================== *//* =================== INTRO PAGE =================== */.digital-scan-intro{min-height:calc(100vh - var(--menu-height));display:flex;align-items:center;background:var(--body-bg);padding:120px 0;}.scan-intro__content{max-width:700px;}.scan-intro__content h1{margin-bottom:30px;font-size:3.5rem;}.scan-intro__description{font-size:1.25rem;margin-bottom:40px;line-height:1.6;color:rgba(255,255,255,0.9);}.scan-intro__benefits{list-style:none;margin:0 0 50px 0;padding:0;display:flex;flex-direction:column;gap:15px;max-width:400px;}.scan-intro__benefits li{font-size:1.125rem;display:flex;align-items:center;gap:12px;}.scan-intro__benefits i{color:#4ade80;font-size:1.25rem;}/* =================== FORM PAGE =================== */.digital-scan-form{background:var(--body-bg);min-height:100vh;padding:80px 0 120px;}.digital-scan-form .container{max-width:900px;}.scan-back{display:inline-flex;align-items:center;gap:8px;color:#fff;text-decoration:none;margin-bottom:30px;opacity:0.7;transition:opacity 0.3s;font-size:1rem;}.scan-back:hover{opacity:1;}.scan-back i{font-size:0.875rem;}/* Progress bar */.scan-progress{height:4px;background:rgba(255,255,255,0.1);border-radius:2px;margin-bottom:60px;overflow:hidden;}.scan-progress__bar{height:100%;background:var(--yellow-1);transition:width 0.4s ease;}/* Steps */.scan-step{display:none;animation:fadeIn 0.4s ease;}.scan-step.active{display:block;}@keyframes fadeIn{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}.scan-step__title{font-size:2.5rem;margin-bottom:50px;color:#fff;}.scan-question{margin-bottom:50px;}.scan-question > label{display:block;font-size:1.25rem;margin-bottom:20px;font-weight:400;color:#fff;line-height:1.4;}.scan-question > label small{font-size:0.875rem;opacity:0.7;font-style:italic;}/* Radio buttons (A,B,C style) */.scan-radio-group{display:flex;flex-direction:column;gap:15px;}.scan-radio{display:flex;align-items:center;gap:15px;padding:18px 24px;background:rgba(255,255,255,0.05);border:2px solid rgba(255,255,255,0.1);border-radius:8px;cursor:pointer;transition:all 0.3s;}.scan-radio:hover{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.2);}.scan-radio input{display:none !important;}.scan-radio input:checked ~ .scan-radio__button{background:var(--yellow-1);color:var(--bodycolor-dark);border-color:var(--yellow-1);}.scan-radio input:checked ~ .scan-radio__label{color:#fff;}/* Update:Selected radio gets yellow border only */.scan-radio:has(input:checked){border-color:var(--yellow-1);}.scan-radio:has(input:checked) .scan-radio__button{background:var(--yellow-1);color:var(--bodycolor-dark);border-color:var(--yellow-1);}.scan-radio__button{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.1);border:2px solid rgba(255,255,255,0.2);border-radius:6px;font-weight:600;font-size:1rem;transition:all 0.3s;flex-shrink:0;color:rgba(255,255,255,0.7);}.scan-radio__label{font-size:1rem;color:rgba(255,255,255,0.8);transition:color 0.3s;flex:1;}/* Checkboxes (yellow check style) */.scan-checkbox-group{display:flex;flex-direction:column;gap:12px;}.scan-checkbox{display:flex;align-items:center;gap:12px;cursor:pointer;padding:12px 0;}.scan-checkbox input{display:none !important;/* Override global checkbox:required styling */}.scan-checkbox__box{width:24px;height:24px;border:2px solid rgba(255,255,255,0.3);border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all 0.3s;flex-shrink:0;background:rgba(255,255,255,0.05);}.scan-checkbox input:checked + .scan-checkbox__box{background:var(--yellow-1);border-color:var(--yellow-1);background-image:url("../images/icon-checked.svg");background-position:center;background-repeat:no-repeat;background-size:13px;}.scan-checkbox__label{font-size:1rem;color:rgba(255,255,255,0.9);}/* Text inputs and textareas - Override template.css defaults */.digital-scan-form input[type="text"],.digital-scan-form input[type="email"],.digital-scan-form textarea,.scan-input,.scan-textarea{width:100%;background:rgba(255,255,255,0.05) !important;border:2px solid rgba(255,255,255,0.2) !important;border-radius:8px !important;padding:16px 20px !important;color:#fff !important;font-size:1rem !important;font-family:var(--mainfont) !important;font-weight:400 !important;line-height:1.5 !important;transition:all 0.3s;box-shadow:none !important;display:block !important;}.digital-scan-form input[type="text"]:focus,.digital-scan-form input[type="email"]:focus,.digital-scan-form textarea:focus,.scan-input:focus,.scan-textarea:focus{outline:none !important;border-color:var(--yellow-1) !important;background:rgba(255,255,255,0.08) !important;}/* Invalid field styling (HTML5 validation) */.digital-scan-form input:invalid:not(:focus):not(:placeholder-shown),.digital-scan-form textarea:invalid:not(:focus):not(:placeholder-shown){border-color:#BF0F00 !important;}.digital-scan-form input:invalid:focus,.digital-scan-form textarea:invalid:focus{border-color:#BF0F00 !important;background:rgba(191,15,0,0.05) !important;}.scan-input::placeholder,.scan-textarea::placeholder{color:rgba(255,255,255,0.4);font-family:var(--mainfont);font-size:1rem;}.scan-textarea{resize:vertical;min-height:120px;}/* Validation error message */.scan-error{display:block;color:#BF0F00;font-size:0.875rem;margin-top:8px;margin-bottom:12px;}/* Add error styling to fields when error message is shown */.scan-question:has(.scan-error) input[type="text"],.scan-question:has(.scan-error) input[type="email"],.scan-question:has(.scan-error) textarea{border-color:#BF0F00 !important;background:rgba(191,15,0,0.05) !important;}/* Conditional fields (for "Anders/Andere" options) */.scan-conditional-field{margin-top:20px;animation:slideDown 0.3s ease;}@keyframes slideDown{from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:translateY(0);}}/* Navigation buttons */.scan-next,.scan-form button[type="submit"]{margin-top:40px;}.btn i{margin-left:8px;font-size:0.875rem;}/* =================== SUCCESS PAGE =================== */.digital-scan-success{min-height:calc(100vh - var(--menu-height));display:flex;align-items:center;background:var(--body-bg);padding:120px 0;}.scan-success__content{max-width:800px;margin:0 auto;}.scan-success__content h1{font-size:3rem;margin-bottom:40px;color:#fff;}.scan-success__content p{font-size:1.125rem;line-height:1.7;margin-bottom:25px;color:rgba(255,255,255,0.9);}.scan-success__email{color:var(--yellow-1);text-decoration:underline;font-weight:500;transition:opacity 0.3s;}.scan-success__email:hover{opacity:0.8;text-decoration:underline;}.scan-success__quote{margin:50px 0;padding:30px;border-left:4px solid var(--yellow-1);background:rgba(255,255,255,0.03);font-size:1.125rem;line-height:1.8;color:rgba(255,255,255,0.85);font-style:italic;}.scan-success__quote strong{color:#fff;font-weight:600;}.scan-success__content .btn{margin-top:30px;}/* Responsive */@media (max-width:768px){.scan-intro__content h1{font-size:2.5rem;}.scan-intro__description{font-size:1.125rem;}.scan-intro__benefits{max-width:100%;}.scan-success__content h1{font-size:2rem;margin-bottom:30px;}.scan-success__content p{font-size:1rem;}.scan-success__quote{padding:20px;font-size:1rem;margin:35px 0;}.digital-scan-form{padding:60px 0 80px;}.scan-step__title{font-size:1.75rem;margin-bottom:35px;}.scan-question{margin-bottom:35px;}.scan-question > label{font-size:1.125rem;margin-bottom:15px;}.scan-radio{padding:14px 18px;gap:12px;}.scan-radio__button{width:35px;height:35px;font-size:0.875rem;}.scan-radio__label,.scan-checkbox__label{font-size:0.9375rem;}.scan-input,.scan-textarea{padding:14px 16px;font-size:1rem;}}@media (max-width:480px){.scan-intro__content h1{font-size:2rem;}.scan-step__title{font-size:1.5rem;}.scan-question > label{font-size:1rem;}.scan-radio{padding:12px 14px;}}