:root{--red:#D0021B;--red-dark:#a30016;--red-light:#e8001e;--white:#ffffff;--gray-50:#fafafa;--gray-100:#f4f4f4;--gray-200:#e8e8e8;--gray-400:#999;--gray-600:#555;--gray-800:#222}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100%;overflow-x:hidden}body::before{content:'';position:fixed;inset:0;background:rgba(0,0,0,0.40);z-index:0;pointer-events:none}.hero,.main{position:relative;z-index:1}body{font-family:'Roboto',sans-serif;background:var(--gray-100);background-image:url('images/background_rk_innsbruck.jpg');background-size:cover;background-position:center 30%;background-attachment:fixed;color:var(--gray-800);min-height:100vh}.hero{position:relative;height:380px;overflow:hidden}.hero-bg{display:none}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,0.0) 0%,rgba(0,0,0,0.0) 40%,rgba(0,0,0,0.50) 100%)}.hero-content{position:absolute;top:0;left:0;right:0;z-index:2;padding:24px 48px 0;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.logo-area{display:flex;align-items:flex-start;gap:16px}.logo-box{background:white;border-radius:10px;padding:10px 14px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(0,0,0,0.3);flex-shrink:0}.logo-img{height:72px;width:auto;display:block}.hero-title-area{position:absolute;bottom:36px;left:48px;right:48px;z-index:2}.hero-title-block h1{font-family:'Roboto Condensed',sans-serif;font-size:clamp(26px,4vw,46px);font-weight:900;color:white;line-height:1.05;text-transform:uppercase;letter-spacing:0.5px;text-shadow:0 2px 12px rgba(0,0,0,0.5)}.hero-title-block p{color:rgba(255,255,255,0.78);font-size:14px;font-weight:300;margin-top:7px;letter-spacing:0.4px}.hero-badge{background:var(--red);color:white;padding:10px 20px;font-family:'Roboto Condensed',sans-serif;font-weight:700;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;border-radius:3px;white-space:nowrap;box-shadow:0 2px 12px rgba(208,2,27,0.5)}.top-bar{position:relative;z-index:1;padding:20px 0 32px}.top-bar-inner{max-width:860px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.top-title h1{font-family:'Roboto Condensed',sans-serif;font-size:clamp(20px,3vw,34px);font-weight:900;color:white;text-transform:uppercase;letter-spacing:0.5px;text-shadow:0 2px 8px rgba(0,0,0,0.4);line-height:1.05}.top-title p{color:rgba(255,255,255,0.80);font-size:13px;font-weight:300;margin-top:4px}.main{max-width:860px;margin:0 auto 60px;padding:0 24px;position:relative;z-index:1}.progress-bar{background:white;border-radius:8px 8px 0 0;padding:16px 32px;display:flex;gap:0;border-bottom:2px solid var(--gray-200);box-shadow:0 -4px 20px rgba(0,0,0,0.08)}.progress-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;opacity:0.4;transition:opacity 0.2s}.progress-step.active{opacity:1}.progress-step.done{opacity:0.7}.step-dot{width:28px;height:28px;border-radius:50%;border:2px solid var(--gray-200);background:white;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--gray-400);transition:all 0.2s}.progress-step.active .step-dot{background:var(--red);border-color:var(--red);color:white}.progress-step.done .step-dot{background:var(--gray-200);border-color:var(--gray-200);color:var(--gray-600)}.step-label{font-size:10px;font-weight:600;letter-spacing:0.5px;text-transform:uppercase;color:var(--gray-600);text-align:center}.progress-step.active .step-label{color:var(--red)}.card{background:white;border-radius:0 0 10px 10px;box-shadow:0 8px 40px rgba(0,0,0,0.10);padding:40px 40px 32px;animation:slideIn 0.3s ease}@keyframes slideIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.section-header{display:flex;align-items:center;gap:14px;margin-bottom:28px;padding-bottom:16px;border-bottom:2px solid var(--red)}.section-icon{width:40px;height:40px;background:var(--red);border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.section-icon svg{width:22px;height:22px;fill:white}.section-title{font-family:'Roboto Condensed',sans-serif;font-size:22px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--gray-800)}.section-sub{font-size:12px;color:var(--gray-400);margin-top:2px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 28px}.form-grid.full{grid-template-columns:1fr}.span-2{grid-column:1 / -1}.addr-row{grid-column:1 / -1;display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px 28px}.field{display:flex;flex-direction:column;gap:6px}.select-search{position:relative}.select-search-trigger{width:100%;border:1.5px solid var(--gray-200);border-radius:6px;padding:11px 14px;font-family:'Roboto',sans-serif;font-size:15px;color:var(--gray-800);background:var(--gray-50);cursor:pointer;display:flex;align-items:center;justify-content:space-between;user-select:none;transition:border-color 0.15s,box-shadow 0.15s}.select-search.open .select-search-trigger{border-color:var(--red);box-shadow:0 0 0 3px rgba(208,2,27,0.08)}.select-search-arrow{font-size:11px;color:var(--gray-400);transition:transform 0.2s;flex-shrink:0}.select-search.open .select-search-arrow{transform:rotate(180deg)}.select-search-dropdown{display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;background:white;border:1.5px solid var(--gray-200);border-radius:6px;box-shadow:0 4px 16px rgba(0,0,0,0.12);z-index:200;overflow:hidden}.select-search.open .select-search-dropdown{display:block}.select-search-dropdown input[type="text"]{width:100%;border:none;border-bottom:1.5px solid var(--gray-200);border-radius:0;padding:10px 14px;font-size:14px;background:white;box-shadow:none}.select-search-dropdown input[type="text"]:focus{border-color:var(--gray-200);box-shadow:none}.select-search-list{list-style:none;max-height:210px;overflow-y:auto;padding:4px 0;margin:0}.select-search-list li{padding:9px 14px;font-size:15px;cursor:pointer;color:var(--gray-800);font-weight:400;text-transform:none;letter-spacing:normal}.select-search-list li:hover{background:var(--gray-100)}.select-search-list li.selected{background:var(--gray-100);font-weight:600}.select-search-list li.ss-hidden{display:none}label{font-size:12px;font-weight:600;letter-spacing:0.4px;text-transform:uppercase;color:var(--gray-600)}label .req{color:var(--red);margin-left:2px}input[type="text"],input[type="email"],input[type="tel"],input[type="date"],input[type="time"],input[type="number"],select,textarea{width:100%;border:1.5px solid var(--gray-200);border-radius:6px;padding:11px 14px;font-family:'Roboto',sans-serif;font-size:15px;color:var(--gray-800);background:var(--gray-50);transition:border-color 0.15s,box-shadow 0.15s,background 0.15s;outline:none;appearance:none}::placeholder{color:#757575;opacity:1}.input-wrap{position:relative}.input-wrap .field-placeholder{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#757575;font-size:15px;font-family:'Roboto',sans-serif;pointer-events:none;z-index:1}.input-wrap input.has-value + .field-placeholder,.input-wrap input:focus + .field-placeholder{display:none}input:focus,select:focus,textarea:focus{border-color:var(--red);background:white;box-shadow:0 0 0 3px rgba(208,2,27,0.08)}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23999' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}select:has(option[value=""]:checked){color:#757575}textarea{resize:vertical;min-height:80px}.toggle-group{display:flex;gap:10px}.toggle-btn{flex:1;padding:10px;border:1.5px solid var(--gray-200);border-radius:6px;background:var(--gray-50);font-family:'Roboto',sans-serif;font-size:14px;font-weight:600;color:var(--gray-600);cursor:pointer;text-align:center;transition:all 0.15s}.toggle-btn:hover{border-color:var(--red);color:var(--red)}.toggle-btn.active{background:var(--red);border-color:var(--red);color:white}.conditional{display:none;grid-column:1 / -1;background:rgba(208,2,27,0.04);border:1px solid rgba(208,2,27,0.15);border-radius:8px;padding:18px 20px;margin-top:-8px}.conditional.show{display:block}.conditional .form-grid{gap:16px 24px}.conditional-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--red);margin-bottom:12px}.section-gap{margin-top:32px}.subsection{border-left:3px solid var(--red);padding-left:16px;margin:20px 0 0}.subsection-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--red);margin-bottom:14px}.form-nav{display:flex;justify-content:space-between;align-items:center;margin-top:36px;padding-top:24px;border-top:1px solid var(--gray-200)}.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;border-radius:6px;font-family:'Roboto Condensed',sans-serif;font-size:16px;font-weight:700;letter-spacing:0.8px;text-transform:uppercase;cursor:pointer;border:none;transition:all 0.15s}.btn-outline{background:white;border:2px solid var(--gray-200);color:var(--gray-600)}.btn-outline:hover{border-color:var(--gray-400);color:var(--gray-800)}.btn-primary{background:var(--red);color:white;box-shadow:0 4px 14px rgba(208,2,27,0.3)}.btn-primary:hover{background:var(--red-dark);box-shadow:0 6px 20px rgba(208,2,27,0.4);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.step-indicator{font-size:13px;color:var(--gray-400);font-weight:500}.page{display:none}.page.active{display:block;animation:slideIn 0.25s ease}.success-screen{text-align:center;padding:32px 0 16px}.success-icon{width:80px;height:80px;background:var(--red);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;animation:popIn 0.4s cubic-bezier(0.175,0.885,0.32,1.275)}@keyframes popIn{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.success-icon svg{width:40px;height:40px;stroke:white;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.success-screen h2{font-family:'Roboto Condensed',sans-serif;font-size:32px;font-weight:800;text-transform:uppercase;color:var(--gray-800)}.success-screen p{color:var(--gray-600);margin-top:10px;font-size:15px;line-height:1.6}.success-ref{display:inline-block;background:var(--gray-100);border-radius:6px;padding:10px 20px;margin-top:16px;font-size:13px;color:var(--gray-600);font-weight:600;letter-spacing:0.5px}.notice{background:rgba(208,2,27,0.05);border:1px solid rgba(208,2,27,0.2);border-radius:6px;padding:12px 16px;font-size:13px;color:var(--gray-600);line-height:1.5;display:flex;gap:10px;align-items:flex-start}.notice svg{width:16px;height:16px;flex-shrink:0;margin-top:1px;fill:var(--red)}.label-with-info{display:flex;align-items:center;gap:6px}.info-btn{background:none;border:none;cursor:pointer;padding:0;color:var(--gray-400);display:flex;align-items:center;flex-shrink:0}.info-btn:hover{color:var(--red)}.info-btn svg{width:16px;height:16px;fill:currentColor}.tooltip-wrap{position:relative;display:inline-flex;align-items:center}.tooltip-text{visibility:hidden;opacity:0;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--gray-800);color:white;font-size:12px;font-weight:400;text-transform:none;letter-spacing:0;border-radius:6px;padding:8px 12px;width:300px;line-height:1.5;z-index:10;transition:opacity 0.15s;pointer-events:none;white-space:normal}.tooltip-wrap:hover .tooltip-text,.tooltip-wrap:focus-within .tooltip-text{visibility:visible;opacity:1}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.50);z-index:200;display:none;align-items:center;justify-content:center;padding:24px}.modal-overlay.show{display:flex}.modal{background:white;border-radius:10px;padding:32px;max-width:640px;width:100%;max-height:80vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px rgba(0,0,0,0.3)}.modal-close{position:absolute;top:14px;right:18px;background:none;border:none;cursor:pointer;color:var(--gray-400);font-size:26px;line-height:1}.modal-close:hover{color:var(--gray-800)}.modal h3{font-family:'Roboto Condensed',sans-serif;font-size:18px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--gray-800);margin-bottom:12px;padding-right:32px}.modal-intro{font-size:14px;color:var(--gray-600);margin-bottom:14px}.modal ol{padding-left:20px;color:var(--gray-600);font-size:14px;line-height:1.7}.modal ol li{margin-bottom:8px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;font-weight:600;color:var(--gray-600);text-transform:none;letter-spacing:0}.checkbox-label input[type="checkbox"]{width:16px;height:16px;accent-color:var(--red);cursor:pointer;flex-shrink:0}.checkbox-label a{color:var(--red)}.billing-note{font-size:13px;font-weight:600;color:var(--gray-600);text-transform:none;letter-spacing:0}.billing-note.hide{display:none}.day-tag-header{display:none;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--red);padding-bottom:4px;border-bottom:1px solid rgba(208,2,27,0.2)}#day-1-tag.show{display:flex;justify-content:space-between;align-items:center;margin-bottom:-8px}.extra-day-section{margin-top:20px}.extra-day-section .day-tag-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.btn-remove-day{background:none;border:none;cursor:pointer;color:var(--gray-400);font-size:12px;font-weight:600;padding:0}.btn-remove-day:hover{color:var(--red)}#add-day-wrap{display:none}#add-day-wrap.show{display:block}.btn-add-day{width:100%;background:none;border:1.5px dashed var(--gray-200);border-radius:6px;padding:10px;font-family:'Roboto',sans-serif;font-size:13px;font-weight:600;color:var(--gray-400);cursor:pointer;transition:all 0.15s}.btn-add-day:hover{border-color:var(--red);color:var(--red)}.error-banner{background:rgba(208,2,27,0.08);border:1px solid rgba(208,2,27,0.3);border-radius:6px;padding:12px 16px;font-size:13px;color:var(--red);line-height:1.5;margin-top:16px;display:none}.error-banner.show{display:block}.error-banner ul{padding-left:18px;margin-top:6px}@media (max-width:640px){.hero{height:auto;min-height:260px;padding-bottom:20px}.hero-content{padding:20px 20px 0}.hero-title-area{position:static;padding:16px 20px 0}.logo-box{padding:8px 10px}.logo-img{height:52px}.hero-title-block h1{font-size:24px}.hero-badge{display:none}.main{margin-top:24px}.card{padding:24px 20px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:1}.addr-row{grid-template-columns:1fr}.progress-bar{padding:12px 16px}.step-label{display:none}}