@charset "UTF-8";

/* ==========================================================================
   1. FONTS (Global laden ist okay)
   ==========================================================================  
@font-face { font-family: 'RobotoFlexRegular'; src: url('aBody/cssfonts/RobotoFlexRegular.ttf') format('truetype'); font-display: swap; }
@font-face { font-family: 'RobotoLight'; src: url('aBody/cssfonts/RobotoLight.ttf') format('truetype'); font-display: swap; }
@font-face { font-family: 'RobotoSerifCondThin'; src: url('aBody/cssfonts/RobotoSerifCondThin.ttf') format('truetype'); font-display: swap; }
@font-face { font-family: 'RobotoSerifCondSemiBold'; src: url('aBody/cssfonts/RobotoSerifCondSemiBold.ttf') format('truetype'); font-display: swap; }
@font-face { font-family: 'RobotoSerifCondenRegular'; src: url('aBody/cssfonts/RobotoSerifCondenRegular.ttf') format('truetype'); font-display: swap; }
*/

.enterprise-scope {
    /* Farben */
    --bg-page: #fdfdfd; /* Leichtes Grau als Standard für alle Pages */
    --bg-white: #ffffff;
    --bg-secondary: #f5f5f7;
    --card-bg: #ffffff;
    
    --text-main: #1d1d1f;
    --text-muted: #86868b;
    
    --primary: #006FCF;
    --primary-glow: rgba(0, 111, 207, 0.15);
    --accent-dark: #000e28;
    
    --save-color: #059669;
    --success-bg: #dcfce7;
    --forced-color: #ffd700;
    
    --error-color: #dc2626;
    --error-bg: #fee2e2;
    --error-border: #fecaca;
    
    --border-light: rgba(0,0,0,0.08);

    /* Typografie */
    --font-headline: 'Roboto Serif', serif; 
    --font-body: 'Roboto', sans-serif;
    
    /* Fluid Typography  
    --text-h1:   clamp(1.8rem, 3.5vw, 3.5rem);
    --text-h2:   clamp(1.2rem, 2vw, 1.8rem);
    --text-h3:   clamp(1rem, 1.5vw, 1.4rem); */
    --text-body: clamp(0.9rem, 0.9vw, 1rem); 
    
    /* Spacing & UI */
    --spacing-container: clamp(20px, 4vw, 60px);
    --radius: 20px;
    --radius-sm: 12px;

    /* Shadows */
    --shadow-card: 0 4px 20px rgba(0,0,0,0.04);
    --shadow-hover: 0 15px 35px rgba(0,0,0,0.08);

    /* Reset innerhalb des Scopes */
    font-family: var(--font-body);
    font-weight: 400;
    line-height: 1.5;
    color: var(--text-main);
    -webkit-font-smoothing: antialiased;
    background-color: var(--bg-page); /* Falls Wrapper ganze Seite füllt */
}

/* Box Sizing Reset nur für Elemente innerhalb des Scopes */
.enterprise-scope * {
    box-sizing: border-box;
}


.enterprise-scope .containerInn {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 var(--spacing-container);
    width: 100%;
}

 

 
/* Buttons General */
.enterprise-scope .btn {
    display: inline-flex; align-items: center; justify-content: center;
    padding: 14px 24px; border-radius: 50px; font-weight: 500; cursor: pointer;
    transition: all 0.2s ease; border: none; width: 100%; font-size: 0.95rem;
    font-family: var(--font-body); text-decoration: none;
}
.enterprise-scope .btn-hero,
.enterprise-scope .btn-submit,
.enterprise-scope .btn-confirm, 
.enterprise-scope .btn-asap-submit { 
    background: var(--primary); color: white; 
    box-shadow: 0 4px 15px var(--primary-glow); border: none;
    border-radius: 50px; padding: 14px 24px; font-weight: 600; cursor: pointer;
    transition: transform 0.2s, box-shadow 0.2s; width: 100%; display: inline-block; text-align: center;
}
.enterprise-scope .btn-hero:hover,
.enterprise-scope .btn-submit:hover,
.enterprise-scope .btn-confirm:hover,
.enterprise-scope .btn-asap-submit:hover { 
    transform: translateY(-1px); box-shadow: 0 8px 25px var(--primary-glow); 
}

.enterprise-scope .btn-ghost { 
    background: transparent; color: var(--text-muted); border: 1px solid #e1e1e6; padding: 8px; font-size: 0.85rem; 
    border-radius: 50px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center;
}
.enterprise-scope .btn-ghost:hover { background: var(--bg-secondary); color: var(--text-main); border-color: #d1d1d6; }

.enterprise-scope  label{ margin: 0 !important; padding: 0 !important;   text-indent: 0;      width: auto;       text-align: left;     font-size: 1rem;   line-height: 1;  }

/* Inputs (Global Style for all forms) - .inputInhalt ausgenommen, dafür gilt das globale Floating-Label-System aus body.css */
.enterprise-scope input[type=number]:not(.inputInhalt),
.enterprise-scope input[type=text]:not(.inputInhalt),
.enterprise-scope input[type=email]:not(.inputInhalt),
.enterprise-scope input[type=tel]:not(.inputInhalt),
.enterprise-scope select:not(.inputInhalt) {
    font-family: var(--font-body); font-size: 1rem;
    background: var(--bg-secondary); outline: none;
    border: 1px solid #d1d1d6; border-radius: 8px;
    color: var(--text-main);
}
.enterprise-scope input:not(.inputInhalt):focus,
.enterprise-scope select:not(.inputInhalt):focus {
    border-color: var(--primary); background: #fff; box-shadow: 0 0 0 3px var(--primary-glow);
}

/* Range Slider */
input[type=range] { -webkit-appearance:none; width:100%; background:transparent; cursor:pointer; height:30px; margin:0; outline:none; border:none; }
input[type=range]:focus { outline:none; box-shadow:none; }
input[type=range]::-webkit-slider-runnable-track { width:100%; height:6px; border-radius:10px; background:linear-gradient(to right,var(--primary) 0%,var(--primary) var(--percent,0%),#e5e7eb var(--percent,0%),#e5e7eb 100%); border:none; transition:background .1s linear; }
input[type=range]::-webkit-slider-thumb { -webkit-appearance:none; height:24px; width:24px; border-radius:50%; background:#fff; border:1px solid rgba(0,0,0,0.05); box-shadow:0 2px 6px rgba(0,0,0,0.15),0 4px 10px rgba(0,0,0,0.08); margin-top:-9px; transition:transform .2s,box-shadow .2s; }
input[type=range]:hover::-webkit-slider-thumb { transform:scale(1.1); box-shadow:0 4px 12px rgba(0,0,0,0.2); cursor:grab; }
input[type=range]:active::-webkit-slider-thumb { transform:scale(1.1); background:#fff; border-color:var(--primary); cursor:grabbing; }
/* Firefox Support */
input[type=range]::-moz-range-track { width:100%; height:6px; border-radius:10px; background:#e5e7eb; border:none; }
input[type=range]::-moz-range-progress { background-color:var(--primary); height:6px; border-radius:10px; }
input[type=range]::-moz-range-thumb { height:24px; width:24px; border-radius:50%; background:#fff; border:1px solid rgba(0,0,0,0.05); box-shadow:0 2px 6px rgba(0,0,0,0.15); }

/* Toggle Checkbox */
.enterprise-scope .toggle-checkbox { position: relative; display: inline-block; width: 44px; height: 26px; flex-shrink: 0; }
.enterprise-scope .toggle-checkbox input { opacity: 0; width: 0; height: 0; }
.enterprise-scope .toggle-checkbox .slider {
    position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0;
    background-color: #e5e5ea; transition: .3s; border-radius: 34px;
}
.enterprise-scope .toggle-checkbox .slider:before {
    position: absolute; content: ""; height: 20px; width: 20px; left: 3px; bottom: 3px;
    background-color: white; transition: .3s; border-radius: 50%; box-shadow: 0 1px 3px rgba(0,0,0,0.15);
}
.enterprise-scope .toggle-checkbox input:checked + .slider { background-color: var(--primary); }
.enterprise-scope .toggle-checkbox input:checked + .slider:before { transform: translateX(18px); }
.enterprise-scope .toggle-checkbox input:disabled + .slider { opacity: 0.5; cursor: not-allowed; }
.enterprise-scope .toggle-checkbox input.forced-active + .slider, 
.enterprise-scope .toggle-checkbox input.php-fixed + .slider { background-color: var(--forced-color) !important; opacity: 1 !important; }


/* ==========================================================================
   4. PAGE: PRICING (Calculator)
   ========================================================================== */
.enterprise-scope #mpc-wrapper { width: 100%; padding: var(--spacing-container) 0; }
.enterprise-scope #mpc-wrapper .mpc-grid {
    display: grid; grid-template-columns: 7.5fr 4.5fr; 
    gap: clamp(20px, 3vw, 50px); align-items: start;
}

.enterprise-scope #mpc-wrapper .mpc-card {
    background: var(--card-bg); border-radius: var(--radius);
    padding: clamp(20px, 2.5vw, 40px);
    box-shadow: var(--shadow-card); border: 1px solid var(--border-light);
}

.enterprise-scope #mpc-wrapper .mpc-summary {
    position: sticky; top: 20px; z-index: 10; background: #fff;
}

.enterprise-scope #mpc-wrapper h2.pBig { 
    font-size: var(--text-h2); text-align: center; color: var(--text-muted); 
    font-family: var(--font-body); font-weight: 300; 
    margin-bottom: 50px; max-width: 800px; margin-left: auto; margin-right: auto; 
}

/* Controls */
.enterprise-scope .control-row { display: flex; gap: 30px; align-items: center; margin-bottom: 30px; padding: 10px 0; }
.enterprise-scope #mpc-wrapper input[type=number] { padding: 10px 14px; text-align: center; font-weight: 500; width: 100%; }

/* Module List */
.enterprise-scope #modulesContainer { display: flex; flex-direction: column; gap: 20px;  margin-bottom: 50px; }
.enterprise-scope .module-group { border-radius: var(--radius-sm); border: 1px solid var(--border-light); overflow: hidden; margin: 10px 0px; }
.enterprise-scope .module-group h3 {
    margin: 0; padding: 15px 20px; border-bottom: 1px solid rgba(0,0,0,0.05);
     
    background: rgba(255,255,255,0.6); font-size: 0.95rem;
}

.enterprise-scope .module {
    padding: 15px 20px; border-bottom: 1px solid var(--border-light);
    display: flex; justify-content: space-between; align-items: flex-start;
    transition: background 0.2s; gap: 20px;
}
.enterprise-scope .module:last-child { border-bottom: none; }
.enterprise-scope .module:hover { background: rgba(0,0,0,0.02); }

.enterprise-scope .module .title { font-weight: 500; font-size: 1rem; color: var(--text-main); }
.enterprise-scope .module .desc { font-size: 0.85rem; color: var(--text-muted); margin-top: 2px; }
.enterprise-scope .module .right { display: flex; flex-direction: column; align-items: flex-end; gap: 10px; flex-shrink: 0; }
.enterprise-scope .price-tag { font-weight: 600; color: var(--text-main); font-size: 0.95rem; text-align: right; line-height: 1.3; }
.enterprise-scope .price-sub { font-size: 0.75rem; color: var(--text-muted); display: block; }

/* Premium Suites */
.enterprise-scope #suitesContainer { margin-top: 10px;margin-bottom: 10px; }
.enterprise-scope .exclusive-title { 
    text-align: left; font-size: 1.3rem; border-bottom:1px solid var(--border-light);
    padding-bottom: 10px; margin-bottom: 25px; 
}
.enterprise-scope .anchor {
    display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 20px;
    border: 1px solid rgba(0,0,0,0.05); border-radius: var(--radius-sm);
    padding: 20px 25px; margin-bottom: 15px; cursor: pointer;
    transition: all 0.3s ease; position: relative; overflow: hidden;
}
.enterprise-scope .anchor:hover { transform: translateY(-3px); box-shadow: 0 10px 20px rgba(0,0,0,0.06); border-color: var(--primary); }
.enterprise-scope .anchor.active-suite { box-shadow: 0 0 0 2px var(--primary); }

.enterprise-scope .anchor-content h4 { margin: 0; font-size: 1.1rem; font-weight: 600; color: var(--text-main); }
.enterprise-scope .anchor-content p { margin: 4px 0 0 0; font-size: 0.9rem; color: var(--text-muted); }
.enterprise-scope .anchor-price-block { text-align: right; display: flex; flex-direction: column; align-items: flex-end; }
.enterprise-scope .anchor-tag { font-size: 0.75rem; font-weight: 700; background: var(--text-main); color: white; padding: 3px 8px; border-radius: 4px; margin-bottom: 6px; }
.enterprise-scope .anchor-tag.discount { background: #000000; color: #ffffff; }
.enterprise-scope .anchor-tag.angebotdiv { background: #e9b614; color: #0b182f;  }
.enterprise-scope .price-blue { color: var(--primary) !important; }
.enterprise-scope .price-black { color: var(--text-main) !important; }
.enterprise-scope .suite-price-user { font-size: 1.2rem; font-weight: 700; }
.enterprise-scope .suite-strike { font-size: 0.85rem; color: var(--text-muted); text-decoration: line-through; opacity: 0.8; }
.enterprise-scope .suite-fix { font-size: 0.75rem; color: var(--text-muted); margin-top: 2px; }

/* Summary */
.enterprise-scope .line { display: flex; justify-content: space-between; align-items: center; padding: 10px 0; border-top: 1px dashed #e1e1e6; font-size: 0.9rem; }
.enterprise-scope .big { font-size: 1.3rem; font-weight: 700; color: var(--text-main); font-family: var(--font-headline); }
.enterprise-scope .action-row { display: grid; grid-template-columns: 1fr 1fr auto; gap: 8px; margin-top: 12px; }
.enterprise-scope .btn-icon-only { width: 40px; padding: 0; }
.enterprise-scope .trust-box { margin-top: 20px; background: #fcfcfc; border: 1px solid #f0f0f0; border-radius: var(--radius-sm); padding: 15px; }
.enterprise-scope .trust-item { display: flex; gap: 8px; margin-bottom: 6px; font-size: 0.8rem; color: #555; }
.enterprise-scope .trust-item svg { width: 16px; height: 16px; color: var(--save-color); }

/* FAQ */
.enterprise-scope .faqContainer { padding: 80px 0; }
.enterprise-scope .faqContainer h3 { text-align: center; color: var(--primary); font-size: 0.85rem; text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 10px; }
.enterprise-scope .faqContainer h2 { text-align: center; font-size: var(--text-h2); margin-bottom: 50px; }
.enterprise-scope .faq ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(400px, 1fr)); gap: 30px; padding: 0; list-style: none; max-width: 100%; margin: 0 auto; }
.enterprise-scope .faq ul li { background: transparent; padding: 0 15px; border-left: 2px solid var(--border-light); transition: border-color 0.3s; }
.enterprise-scope .faq ul li:hover { border-left-color: var(--primary); }
.enterprise-scope .faq ul li .FAQ-titel { font-family: var(--font-headline); font-size: 1.05rem; font-weight: 600; margin-bottom: 8px; color: var(--text-main); }
.enterprise-scope .faq ul li .FAQ-besch { font-size: 0.9rem; color: var(--text-muted); line-height: 1.6; }


/* ==========================================================================
   5. PAGE: BASKET (Checkout)
   ========================================================================== */
.enterprise-scope #basket-wrapper { width: 100%; padding: var(--spacing-container) 0; }
.enterprise-scope .basket-grid { 
    display: grid; grid-template-columns: 1.5fr 1fr; gap: clamp(30px, 4vw, 60px); align-items: start; 
}
.enterprise-scope .basket-grid.demo-mode { grid-template-columns: 1fr; max-width: 700px; margin: 0 auto; }

.enterprise-scope .form-section .subtitle { font-size: 1.1rem; color: var(--text-muted); margin-bottom: 40px; }
.enterprise-scope .form-section h2 { 
    font-size: 1.3rem; margin-bottom: 20px; border-bottom: 1px solid var(--border-light); 
    padding-bottom: 10px; margin-top: 40px; 
}

/* Floating Label Inputs: wird jetzt global aus body.css übernommen (.inputInhalt / .inputLabel) */

.enterprise-scope .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.enterprise-scope .form-row-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 20px; }


/* Basket Summary */
.enterprise-scope .summary-card { 
    background: var(--card-bg); border-radius: var(--radius); padding: clamp(25px, 2.5vw, 40px);
    box-shadow: var(--shadow-card); border: 1px solid var(--border-light); position: sticky; top: 20px;
}
.enterprise-scope .summary-row { display: flex; justify-content: space-between; padding: 12px 0; font-size: 0.95rem; border-top: 1px dashed var(--border-light); }
.enterprise-scope .summary-row:last-child { border-bottom: none !important; }
.enterprise-scope .summary-label { color: var(--text-muted); }
.enterprise-scope .summary-val { font-weight: 500; }
.enterprise-scope .strike { text-decoration: line-through; color: var(--text-muted); font-size: 0.85em; margin-right: 8px; }

.enterprise-scope .module-list-container { background: var(--bg-secondary); border-radius: 8px; padding: 15px; margin-bottom: 20px; }
.enterprise-scope .module-item { display: flex; justify-content: space-between; padding: 8px 0; font-size: 0.9rem; }
.enterprise-scope .suite-box { background: #f0f9ff; border: 1px solid #e0f2fe; border-left: 4px solid var(--primary); padding: 15px; border-radius: 8px; margin-bottom: 20px; }
.enterprise-scope .suite-title { font-weight: 700; font-size: 1rem; display: block; margin-bottom: 4px; }
.enterprise-scope .suite-desc { font-size: 0.85rem; color: var(--text-muted); line-height: 1.4; display: block; }

.enterprise-scope .total-row { display: flex; justify-content: space-between; align-items: baseline; margin-top: 20px; padding-top: 20px; border-top: 2px solid var(--text-main); }
.enterprise-scope .total-label { font-weight: 700; font-size: 1.1rem; }
.enterprise-scope .total-val { font-weight: 700; font-size: 1.6rem; color: var(--primary); font-family: var(--font-headline); }
.enterprise-scope .tax-note { text-align: right; font-size: 0.8rem; color: var(--text-muted); margin-top: 4px; }
.enterprise-scope .savings-hint { margin-top: 15px; padding: 12px; background: #ecfdf5; border: 1px solid #d1fae5; border-radius: 8px; font-size: 0.85rem; color: #065f46; line-height: 1.5; }

.enterprise-scope .onboarding-info { margin-top: 30px; margin-bottom: 20px; padding: 20px; border-left: 4px solid var(--primary); background: var(--bg-secondary); border-radius: 0 8px 8px 0; }


/* ==========================================================================
   6. PAGE: ORDER (Calendar & Status)
   ========================================================================== */
.enterprise-scope .status-card {
    background: var(--card-bg); border-radius: var(--radius); border: 1px solid var(--border-light);
    box-shadow: var(--shadow-card); padding: clamp(30px, 5vw, 50px); text-align: center; margin-bottom: 30px;
    animation: fadeIn 0.6s ease-out;
}
.enterprise-scope .icon-circle { width: 80px; height: 80px; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 25px auto; }

/* Status Modifiers */
.enterprise-scope .status-card.success .icon-circle { background: var(--success-bg); color: var(--save-color); }
.enterprise-scope .status-card.error { border-color: var(--error-border); }
.enterprise-scope .status-card.error .icon-circle { background: var(--error-bg); color: var(--error-color); }
.enterprise-scope .status-card.error h1 { color: var(--error-color); }

.enterprise-scope .sub-text { color: var(--text-muted); font-size: 1.1rem; margin-bottom: 30px; }
.enterprise-scope .meta-info { display: inline-flex; gap: 30px; background: var(--bg-secondary); padding: 12px 25px; border-radius: var(--radius-sm); font-size: 0.9rem; color: var(--text-muted); margin-bottom: 25px; }
.enterprise-scope .email-hint { padding: 20px; border-radius: var(--radius-sm); background: #eff6ff; border: 1px solid #bfdbfe; color: #1e40af; font-size: 0.95rem; text-align: left; display: flex; gap: 15px; align-items: center; }
.enterprise-scope .email-resend { font-size: 0.85rem; color: var(--text-muted); text-decoration: underline; cursor: pointer; display: block; margin-top: 4px; }
.enterprise-scope .btn-retry { background: var(--text-main); color: white; padding: 14px 30px; border-radius: 50px; text-decoration: none; font-weight: 600; display: inline-block; transition: all 0.2s; cursor: pointer; border: none;   }

/* Calendar */
.enterprise-scope .calendar-wrapper { background: var(--card-bg); border-radius: var(--radius); border: 1px solid var(--border-light); box-shadow: var(--shadow-card); overflow: hidden; display: flex; flex-direction: column; }
.enterprise-scope .cal-header { padding: 25px 30px; border-bottom: 1px solid var(--border-light); display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 20px; background: rgba(255,255,255,0.8); }
.enterprise-scope .cal-title h2 { margin: 0; font-size: 1.4rem; }

.enterprise-scope .btn-asap { background: white; border: 1px solid var(--primary); color: var(--primary); padding: 10px 20px; border-radius: 50px; font-size: 0.9rem; font-weight: 500; cursor: pointer; transition: all 0.2s; display: flex; align-items: center; gap: 8px; }
.enterprise-scope .btn-asap:hover { background: var(--bg-secondary); box-shadow: 0 4px 10px var(--primary-glow); }
.enterprise-scope .btn-asap svg { width: 18px; height: 18px; }

.enterprise-scope .date-scroller { display: flex; gap: 12px; padding: 25px 30px; overflow-x: auto; scroll-behavior: smooth; background: var(--bg-secondary); border-bottom: 1px solid var(--border-light); scrollbar-width: none; }
.enterprise-scope .date-scroller::-webkit-scrollbar { display: none; }

.enterprise-scope .day-card { min-width: 90px; padding: 18px 10px; background: white; border: 1px solid var(--border-light); border-radius: 14px; display: flex; flex-direction: column; align-items: center; justify-content: center; cursor: pointer; transition: all 0.2s; flex-shrink: 0; }
.enterprise-scope .day-card:hover:not(.disabled) { border-color: var(--primary); transform: translateY(-3px); box-shadow: 0 4px 12px rgba(0,0,0,0.06); }
.enterprise-scope .day-card.active { background: var(--accent-dark); border-color: var(--accent-dark); color: white; box-shadow: 0 8px 20px rgba(0, 14, 40, 0.2); }
.enterprise-scope .day-card.active .day-name, .enterprise-scope .day-card.active .day-num { color: white; }
.enterprise-scope .day-card.disabled { background: #f1f2f4; border-color: transparent; cursor: not-allowed; opacity: 0.6; }
.enterprise-scope .day-card.active .day-name,
.enterprise-scope .day-card.active .day-num {
    color: #ffffff !important;
}
.enterprise-scope .day-name { font-size: 0.75rem; text-transform: uppercase; font-weight: 600; margin-bottom: 6px; color: var(--text-muted); letter-spacing: 0.05em; }
.enterprise-scope .day-num { font-size: 1.3rem; font-weight: 700; color: var(--text-main); font-family: var(--font-headline); }

.enterprise-scope .slots-container { padding: 30px; min-height: 150px; display: flex; align-items: center; justify-content: center; flex-direction: column; }
.enterprise-scope .slot-grid { display: none; width: 100%; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 15px; animation: fadeIn 0.3s ease-in; }
.enterprise-scope .slot-grid.active { display: grid; }
.enterprise-scope .time-slot { padding: 14px; text-align: center; border: 1px solid var(--border-light); border-radius: 10px; font-weight: 500; color: var(--text-main); cursor: pointer; transition: all 0.2s; background: white; font-size: 0.95rem; }
.enterprise-scope .time-slot:hover { border-color: var(--primary); color: var(--primary); background: #f8fbff; }
.enterprise-scope .time-slot.selected { background: var(--primary); color: white; border-color: var(--primary); box-shadow: 0 4px 15px var(--primary-glow); }

.enterprise-scope .action-area, .enterprise-scope .asap-options { border-top: 1px solid var(--border-light); padding: 30px; text-align: center; background: #fcfcfd; display: none; }
.enterprise-scope .visible { display: block; animation: slideUp 0.3s ease-out; }
.enterprise-scope .asap-options { text-align: left; background: var(--bg-secondary); }
.enterprise-scope .asap-row { margin-bottom: 15px; display: flex; align-items: center; gap: 12px; }
.enterprise-scope .time-range-inputs { display: none; margin-left: 30px; gap: 10px; align-items: center; margin-top: 10px; }
.enterprise-scope .time-range-inputs.show { display: flex; }

.enterprise-scope .export-buttons { display: none; gap: 12px; justify-content: center; flex-wrap: wrap; margin-top: 15px; }
.enterprise-scope .export-btn { background: white; border: 1px solid var(--border-light); padding: 10px 18px; border-radius: 8px; font-size: 0.85rem; font-weight: 500; color: var(--text-main); cursor: pointer; display: inline-flex; align-items: center; gap: 8px; transition: all 0.2s; }
.enterprise-scope .export-btn:hover { border-color: var(--primary); background: #f8fbff; color: var(--primary); }

.enterprise-scope .next-steps-area { margin-top: 40px; padding-top: 30px; border-top: 1px dashed var(--border-light); text-align: center; }
.enterprise-scope .btn-discover { background: transparent; border: 1px solid var(--accent-dark); color: var(--accent-dark); padding: 12px 24px; border-radius: 50px; font-weight: 500; text-decoration: none; display: inline-block; transition: all 0.2s; }
.enterprise-scope .btn-discover:hover { background: var(--accent-dark); color: white; }

@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes slideUp { from { opacity: 0; height: 0; } to { opacity: 1; height: auto; } }


.enterprise-scope .status-card.loading { border-color: #bfdbfe;  }
.enterprise-scope .status-card.loading .icon-circle { background: #eff6ff;  }
.enterprise-scope .loading-warning-box { margin-top: 15px;  text-align: center;  padding: 15px 25px;  border-radius: 12px;  background: #eff6ff; border: 1px solid #bfdbfe; color: #1e40af; display: inline-block; font-size: 0.9rem; width: 100%; max-width: 400px; }
    
  

 

/* ==========================================================================
   7. MEDIA QUERIES
   ========================================================================== */
@media (max-width: 1024px) {
    .enterprise-scope #mpc-wrapper .mpc-grid { grid-template-columns: 1fr; }
    .enterprise-scope #mpc-wrapper .mpc-summary { position: relative; top: 0; margin-top: 40px; margin-bottom: 40px; }
    .enterprise-scope .basket-grid { grid-template-columns: 1fr; }
    .enterprise-scope .summary-card { position: relative; top: 0; order: -1; margin-bottom: 40px; }
    .enterprise-scope .form-section { order: 2; }
}
@media (max-width: 768px) {
    .enterprise-scope #mpc-wrapper .anchor { grid-template-columns: 1fr; text-align: center; }
    .enterprise-scope .anchor-price-block { align-items: center; margin-top: 10px; }
    .enterprise-scope .form-row, .enterprise-scope .form-row-3 { grid-template-columns: 1fr; gap: 0; }
    .enterprise-scope .meta-info { flex-direction: column; gap: 10px; width: 100%; text-align: center; }
    .enterprise-scope .cal-header { flex-direction: column; align-items: flex-start; }
    .enterprise-scope .btn-asap { width: 100%; justify-content: center; }
    .enterprise-scope .time-range-inputs { flex-direction: column; align-items: flex-start; }
}
@media (min-width: 2560px) {
    .enterprise-scope { font-size: 0.7vw; --spacing-container: 4vw; }
    .enterprise-scope .containerInn { max-width: 80vw; }
    .enterprise-scope .toggle-checkbox { width: 3rem; height: 1.8rem; }
    .enterprise-scope .toggle-checkbox .slider:before { width: 1.4rem; height: 1.4rem; }
    .enterprise-scope .toggle-checkbox input:checked + .slider:before { transform: translateX(1.2rem); }
}
 



@media print{:root,body,*{print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important;color-adjust:exact!important}@page{margin:0.5cm;size:A4 portrait}html,body,.enterprise-scope{font-size:10pt!important;margin:0!important;padding:0!important;width:100%!important}header,footer,#footerNav,.pakettitel,.enterprise-scope h1,.enterprise-scope h2,.enterprise-scope .pBig{display:none!important}.enterprise-scope .containerInn,.enterprise-scope #mpc-wrapper{max-width:100%!important;width:100%!important;padding:0!important;margin:0!important}.enterprise-scope .mpc-grid{display:grid!important;grid-template-columns:64% 34%!important;gap:2%!important;align-items:start!important;}.enterprise-scope .mpc-card.controls,.enterprise-scope .mpc-summary{margin-top:0!important;position:static!important;box-shadow:none!important;border:1px solid #eee!important;break-inside:avoid!important;background-color:#fbfbfc!important;}.enterprise-scope .control-row{display:block!important;margin-bottom:5px!important}.enterprise-scope .control-row>div:first-child{width:100%!important}.enterprise-scope .control-row>div:nth-child(2){display:none!important}.enterprise-scope input[type=number]{border:none!important;background:transparent!important;font-weight:700!important;font-size:1.1rem!important;padding:0!important;padding-left:5px!important;margin:0!important;text-align:left!important;-moz-appearance:textfield!important}.enterprise-scope input[type=number]::-webkit-inner-spin-button,.enterprise-scope input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.enterprise-scope .cta-wrapper,.enterprise-scope .action-row,.enterprise-scope .btn,.enterprise-scope button,.enterprise-scope .group-select-all,.enterprise-scope #userSlider{display:none!important}.enterprise-scope .toggle-checkbox{transform:scale(0.4)!important;transform-origin:right center!important;margin:0!important}.enterprise-scope .toggle-checkbox .slider{display:block!important;opacity:1!important}.enterprise-scope .module{padding:5px 10px 3px 10px!important;min-height:0!important}.enterprise-scope .module-group h3{padding:4px 10px!important}.enterprise-scope .faqContainer{padding:10px 0!important}.enterprise-scope .faq ul{display:flex!important;flex-wrap:wrap!important;gap:0!important;padding:0!important}.enterprise-scope .faq ul li{width:49%!important;margin:0 1% 10px 0!important;break-inside:avoid!important;border-left:2px solid #ccc!important;padding-left:8px!important;font-size:0.85rem!important}a{text-decoration:none!important;color:inherit!important}.enterprise-scope .module-group,.enterprise-scope .anchor{break-inside:avoid!important;border:1px solid #eee!important;margin-bottom:5px!important}}
 
/* ==========================================================================
   8. SPECIFIC ADJUSTMENTS (Order Page & Responsive Width)
   ========================================================================== */

/* 1. Der Container für die Bestell-Seite */
 

/* 2. Styling der Zeit-Inputs im ASAP Bereich */
.enterprise-scope .time-range-inputs {
    display: none;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
    margin-left: 30px;
    flex-wrap: wrap; /* Erlaubt Umbruch auf sehr kleinen Handys */
}

/* Wird per JS eingeblendet */
.enterprise-scope .time-range-inputs.show {
    display: flex;
}

.enterprise-scope .time-range-inputs input[type="time"] {
    /* Hier setzen wir deine Wunschbreite: */
    width: 100%;       /* Versucht voll zu füllen... */
    max-width: 30%;    /* ...aber stoppt bei 30% der Breite */
    min-width: 110px;  /* Verhindert, dass es auf Handys unbenutzbar klein wird */
    
    padding: 10px 12px;
    border-radius: 8px;
    border: 1px solid #d1d1d6;
    background: var(--bg-secondary);
    color: var(--text-main);
    font-family: var(--font-body);
    font-size: 0.95rem;
    outline: none;
    transition: all 0.2s ease;
    cursor: pointer;
    text-align: center;
}

/* Focus-Effekt passend zum Rest */
.enterprise-scope .time-range-inputs input[type="time"]:focus {
    background: #ffffff;
    border-color: var(--primary);
    box-shadow: 0 0 0 3px var(--primary-glow);
}

/* Der "bis" Text dazwischen */
.enterprise-scope .time-range-inputs span {
    font-size: 0.9rem;
    color: var(--text-muted);
    white-space: nowrap;
}

/* Responsive Anpassung für sehr kleine Handys (unter 400px) */
@media (max-width: 480px) {
    .enterprise-scope .time-range-inputs {
        margin-left: 0; /* Mehr Platz auf Handy */
        justify-content: space-between;
    }
    /* Auf Handy nebeneinander erzwingen oder untereinander */
    .enterprise-scope .time-range-inputs input[type="time"] {
        max-width: 45%; /* Auf Handy etwas breiter erlauben */
    }
}


/* ==========================================================================
   9. UTILITY CLASSES (Globale Text-Steuerung)
   ========================================================================== */

/* ==========================================================================
   GLOBAL UTILITY CLASSES (Responsive & Universal)
   Nutzbar auf der ganzen Website
   ========================================================================== */

/* --- 1. SCHRIFTGRÖSSEN (Responsive mit Clamp) --- */

/* Sehr klein (Labels, Footer) - Fixiert, damit lesbar */
.text-xs { font-size: 0.815rem !important; line-height: 1.3; }

/* Klein (Beschreibungen) - Fixiert */
.text-sm { font-size: 0.895rem !important; line-height: 1.4; }
/* Standard (Body) - Fixiert */
.text-base { font-size: 1rem !important; line-height: 1.5; }

/* Mittel (Zwischenüberschriften) - Skaliert leicht */
.text-lg { font-size: clamp(1.1rem, 1.5vw, 1.25rem) !important; line-height: 1.4; }

/* Groß (Wichtige Preise, h3) - Skaliert */
.text-xl { font-size: clamp(1.25rem, 2vw, 1.5rem) !important; line-height: 1.3; }

/* Sehr Groß (h2) - Skaliert stark */
.text-2xl { font-size: clamp(1.5rem, 3vw, 2.2rem) !important; line-height: 1.2; }

/* Hero Groß (h1) - Skaliert sehr stark */
.text-3xl { font-size: clamp(1.8rem, 4vw, 3rem) !important; line-height: 1.1; }


/* --- 2. FARBEN (Greift auf deine Variablen zu) --- */
/* Hinweis: Die Variablen müssen im :root definiert sein, damit sie global gehen */

.text-main    { color: var(--text-main, #1d1d1f) !important; }
.text-muted   { color: var(--text-muted, #4a4a4a) !important; }  
.text-primary { color: var(--primary, #006FCF) !important; }
.text-success { color: var(--save-color, #059669) !important; }
.text-white   { color: #ffffff !important; }


/* --- 3. SCHRIFTART & GEWICHT --- */
 
.font-serif   { font-family: 'Roboto Serif', serif !important; }
.font-sans    { font-family: 'Roboto', sans-serif !important; }

.font-light   { font-weight: 300 !important; }
.font-normal  { font-weight: 400 !important; }
.font-medium  { font-weight: 500 !important; }
.font-bold    { font-weight: 600 !important; }
.font-black   { font-weight: 700 !important; }
 

/* --- 4. ALIGNMENT & DEKO --- */

.text-center { text-align: center !important; }
.text-left   { text-align: left !important; }
.text-right  { text-align: right !important; }

.text-strike { text-decoration: line-through !important; opacity: 0.7; }
.uppercase   { text-transform: uppercase !important; letter-spacing: 1px; }



/* --- LOADING --- */
@keyframes rot { 100% { transform: rotate(360deg); } }

.hyp_loader_blue, .hyp_loader_black { display:block; width:70px; height:70px; border:3px solid; border-radius:50%; margin:0 auto; position:relative; box-sizing:border-box; animation:rot 12s linear infinite; backdrop-filter:blur(5px); -webkit-backdrop-filter:blur(5px); box-shadow:0 4px 30px rgba(0,0,0,0.1); }
.hyp_loader_blue, .hyp_loader_black { background:linear-gradient(currentColor, currentColor) no-repeat center 11px / 3px 22px, rgba(255,255,255,0.2); }
.hyp_loader_blue::before, .hyp_loader_blue::after, .hyp_loader_black::before, .hyp_loader_black::after { content:""; position:absolute; left:0; right:0; margin:0 auto; bottom:50%; transform-origin:bottom center; border-radius:3px; }
.hyp_loader_blue::before, .hyp_loader_black::before { width:3px; height:28px; background:currentColor; animation:rot 3s linear infinite; }
.hyp_loader_blue::after, .hyp_loader_black::after { width:2px; height:31px; background:#60a5fa; animation:rot 1s linear infinite; }
.hyp_loader_blue { color:var(--primary); border-color:var(--primary); }
.hyp_loader_black { color:var(--text-main); border-color:var(--text-main); }

.loading_style1_blue, .loading_style1_black { display:block; width:90px; height:90px; border-radius:50%; border:6px solid; animation:rot 1s linear infinite; margin:0 auto; }
.loading_style1_blue  { border-color: rgba(0,111,207,0.15); border-top-color: var(--primary); }
.loading_style1_black { border-color: rgba(0,0,0,0.1); border-top-color: var(--text-main); }

.loading_style2_blue, .loading_style2_black { display:block; width:40px; height:40px; margin:0 auto; }
.loading_style2_blue::after, .loading_style2_black::after { content:" "; display:block; width:34px; height:34px; margin:3px; border-radius:50%; border:3px solid; border-color: currentColor transparent currentColor transparent; animation:rot 1.2s linear infinite; }
.loading_style2_blue  { color: var(--primary); }
.loading_style2_black { color: var(--text-main); }
 
.loading_style3_blue,.loading_style3_black{width:5px;height:5px;border-radius:50%;display:block;position:relative;margin:0 auto;animation:dotTyping 1.5s infinite linear}
.loading_style3_blue{color:#3b82f6}
.loading_style3_black{color:#000}
@keyframes dotTyping{0%{box-shadow:-10px 0 0 0,0 0 0 0,10px 0 0 0}16.667%{box-shadow:-10px -5px 0 0,0 0 0 0,10px 0 0 0}33.333%{box-shadow:-10px 0 0 0,0 -10px 0 0,10px 0 0 0}50%{box-shadow:-10px 0 0 0,0 0 0 0,10px -5px 0 0}66.667%{box-shadow:-10px 0 0 0,0 0 0 0,10px 0 0 0}}

.loading_style4_blue,.loading_style4_black{display:block;position:relative;width:60px;height:60px;margin:0 auto;border-radius:50%;border:2px dashed;box-sizing:border-box}
.loading_style4_blue::after,.loading_style4_black::after{content:"";position:absolute;inset:5px;border-radius:50%;border:3px solid transparent;border-top-color:currentColor;animation:rot 1s linear infinite}
.loading_style4_blue{border-color:rgba(0,111,207,.3);color:var(--primary)}
.loading_style4_black{border-color:rgba(0,0,0,.2);color:var(--text-main)}
 
.loading_style5_blue, .loading_style5_black { display:block; margin:0 auto; width:0; height:0; border:18px solid; border-radius:50%; animation:hourglass 2s infinite ease-in-out; }
.loading_style5_blue { border-color:var(--primary) transparent var(--primary) transparent; }
.loading_style5_black { border-color:var(--text-main) transparent var(--text-main) transparent; }
@keyframes hourglass { 0% { transform:rotate(0deg); animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19); } 50% { transform:rotate(900deg); animation-timing-function:cubic-bezier(0.215,0.61,0.355,1); } 100% { transform:rotate(1800deg); } }

 
 