/* MC4 Price Calculator – Corporate Design */
.mc4-price-calc,
.mc4-price-calc *{box-sizing:border-box}

.mc4-price-calc{
    --mc4-pc-primary:#009fe3;
    --mc4-pc-primary-dark:#007fba;
    --mc4-pc-orange:#ef7d00;
    --mc4-pc-text:#102033;
    --mc4-pc-muted:#64748b;
    --mc4-pc-line:#d8eafa;
    --mc4-pc-soft:#eef8ff;
    --mc4-pc-disabled:#a9b7c4;
    width:100%;
    max-width:1380px;
    margin:0 auto;
    padding:36px;
    color:var(--mc4-pc-text);
    background:linear-gradient(180deg,#f5fbff 0%,#ffffff 58%);
    border:1px solid #e6f4ff;
    border-radius:28px;
    font-family:inherit;
    font-size:15px;
    line-height:1.45;
}

.mc4-price-calc button,
.mc4-price-calc input,
.mc4-price-calc select,
.mc4-price-calc a{font:inherit}

.mc4-price-calc__hero{
    display:block;
    margin:0 0 25px;
    padding:0;
    text-align:left;
}

.mc4-price-calc__hero h2{
    margin:0 0 8px;
    color:#0f2236;
    font-size:clamp(34px,4vw,48px);
    line-height:1.08;
    font-weight:800;
    letter-spacing:-.025em;
}

.mc4-price-calc__hero p{
    max-width:900px;
    margin:0;
    color:var(--mc4-pc-muted);
    font-size:17px;
    line-height:1.45;
}

.mc4-price-calc__wrapper{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(370px,430px);
    gap:24px;
    align-items:start;
    width:100%;
    max-width:none;
    margin:0;
    overflow:visible;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
}

.mc4-price-calc__wrapper--single{
    grid-template-columns:minmax(370px,520px);
    justify-content:center;
}

.mc4-price-calc__features,
.mc4-price-calc__calculator{
    min-width:0;
    padding:24px;
    background:#fff;
    border:1px solid var(--mc4-pc-line);
    border-radius:22px;
    box-shadow:0 12px 30px rgba(0,159,227,.08);
}

.mc4-price-calc__features{
    display:block;
}

.mc4-price-calc__disabled-wrap{
    margin-top:16px;
}


.mc4-price-calc__section-label{
    margin:0 0 14px;
    color:#31506c;
    font-size:13px;
    font-weight:800;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.mc4-price-calc__feature-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px 14px;
    width:100%;
    margin:0;
    padding:0;
    list-style:none;
}

.mc4-price-calc__feature-list--disabled{
    grid-template-columns:1fr;
}

.mc4-price-calc__section-label--sub{
    margin-top:2px;
    margin-bottom:10px;
    color:var(--mc4-pc-muted);
}

.mc4-price-calc__feature-item{
    display:flex;
    align-items:center;
    gap:11px;
    min-width:0;
    min-height:52px;
    margin:0;
    padding:12px 13px;
    background:#f7fbfe;
    border:1px solid #e3eff6;
    border-radius:14px;
}

.mc4-price-calc__feature-icon{
    display:grid;
    place-items:center;
    flex:0 0 26px;
    width:26px;
    height:26px;
    color:var(--mc4-pc-primary);
}

.mc4-price-calc__feature-item--active .mc4-price-calc__feature-text{
    color:#173149;
    font-size:13.5px;
    font-weight:700;
}

.mc4-price-calc__feature-item--disabled{
    background:#fafcfd;
    border-color:#edf2f5;
}

.mc4-price-calc__feature-item--disabled .mc4-price-calc__feature-icon,
.mc4-price-calc__feature-item--disabled .mc4-price-calc__feature-text{
    color:var(--mc4-pc-disabled);
}

.mc4-price-calc__feature-item--disabled .mc4-price-calc__feature-text{
    font-size:13px;
    text-decoration:line-through;
}

.mc4-price-calc__calculator{
    display:flex;
    flex-direction:column;
    align-items:start;
    text-align:left;
}

.mc4-price-calc__calculator-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:16px;
    margin-bottom:18px;
}

.mc4-price-calc__title{
    margin:0;
    color:#10263a;
    font-size:26px;
    line-height:1.15;
    font-weight:800;
    letter-spacing:-.02em;
}

.mc4-price-calc__calculator-head p{
    margin:5px 0 0;
    color:var(--mc4-pc-muted);
    font-size:12.5px;
}

.mc4-price-calc__platforms{
    display:flex;
    gap:11px;
    margin:0 0 18px;
    color:#6e8192;
}

.mc4-price-calc__platform{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    opacity:.75;
    background:#f3f8fb;
    border:1px solid #e2edf3;
    border-radius:10px;
}

.mc4-price-calc__field{
    width:100%;
    margin:0 0 14px;
}

.mc4-price-calc__label{
    display:block;
    margin:0 0 7px;
    color:#506575;
    font-size:12px;
    font-weight:800;
    letter-spacing:0;
    text-transform:none;
}

.mc4-price-calc__device-input{
    display:grid;
    grid-template-columns:46px minmax(0,1fr) 46px;
    gap:8px;
    align-items:center;
    width:100%;
    max-width:none;
    margin:0;
    padding:7px;
    background:#fff;
    border:1px solid var(--mc4-pc-line);
    border-radius:14px;
    box-shadow:0 3px 12px rgba(0,90,135,.04);
    transition:border-color .18s,box-shadow .18s;
}

.mc4-price-calc__device-input:focus-within{
    border-color:var(--mc4-pc-primary);
    box-shadow:0 0 0 3px rgba(0,159,227,.12),0 8px 20px rgba(0,159,227,.08);
}

.mc4-price-calc button.mc4-price-calc__btn-minus,
.mc4-price-calc button.mc4-price-calc__btn-plus{
    display:grid!important;
    place-items:center!important;
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    min-height:46px!important;
    margin:0!important;
    padding:0!important;
    color:#fff!important;
    background:linear-gradient(135deg,var(--mc4-pc-primary),var(--mc4-pc-primary-dark))!important;
    border:0!important;
    border-radius:11px!important;
    box-shadow:0 8px 18px rgba(0,137,199,.18)!important;
    appearance:none!important;
    -webkit-appearance:none!important;
    cursor:pointer!important;
    transition:filter .18s,transform .18s,box-shadow .18s!important;
}

.mc4-price-calc button.mc4-price-calc__btn-minus:hover,
.mc4-price-calc button.mc4-price-calc__btn-plus:hover{
    filter:brightness(.97);
    transform:translateY(-1px)!important;
    box-shadow:0 12px 24px rgba(0,137,199,.24)!important;
}

.mc4-price-calc button.mc4-price-calc__btn-minus svg,
.mc4-price-calc button.mc4-price-calc__btn-plus svg{
    width:19px!important;
    height:19px!important;
    color:#fff!important;
}

.mc4-price-calc button.mc4-price-calc__btn-minus svg line,
.mc4-price-calc button.mc4-price-calc__btn-plus svg line{
    stroke:#fff!important;
    stroke-width:2.5!important;
}

.mc4-price-calc__input-number{
    width:100%;
    min-width:0;
    height:46px;
    padding:0 10px;
    color:#173149;
    background:#f8fbfd;
    border:1px solid #e4eef4;
    border-radius:10px;
    outline:none;
    font:inherit;
    font-size:20px;
    font-weight:800;
    text-align:center;
    -moz-appearance:textfield;
}

.mc4-price-calc__input-number::-webkit-outer-spin-button,
.mc4-price-calc__input-number::-webkit-inner-spin-button{
    margin:0;
    -webkit-appearance:none;
}

.mc4-price-calc__select-wrap{
    position:relative;
    width:100%;
    max-width:none;
    margin:0;
}

.mc4-price-calc__select{
    width:100%;
    min-height:54px;
    padding:13px 44px 13px 15px;
    color:var(--mc4-pc-text);
    background:#fff;
    border:1px solid var(--mc4-pc-line);
    border-radius:14px;
    outline:none;
    box-shadow:0 3px 12px rgba(0,90,135,.04);
    font:inherit;
    font-size:14px;
    font-weight:700;
    cursor:pointer;
    appearance:none;
    -webkit-appearance:none;
    transition:border-color .18s,box-shadow .18s;
}

.mc4-price-calc__select:focus{
    border-color:var(--mc4-pc-primary);
    box-shadow:0 0 0 3px rgba(0,159,227,.12),0 8px 20px rgba(0,159,227,.08);
}

.mc4-price-calc__select-arrow{
    position:absolute;
    right:15px;
    top:50%;
    color:#718697;
    pointer-events:none;
    transform:translateY(-50%);
}

.mc4-price-calc__price-display{
    width:100%;
    margin:5px 0 15px;
    padding:18px;
    color:#fff;
    background:linear-gradient(135deg,#08a5e7 0%,#0088c7 52%,#0876a7 100%);
    border:1px solid rgba(0,98,145,.18);
    border-radius:16px;
    box-shadow:0 14px 30px rgba(0,137,199,.22),inset 0 1px 0 rgba(255,255,255,.18);
}

.mc4-price-calc__price-display:before{
    content:"Jährlicher Richtpreis";
    display:block;
    margin-bottom:7px;
    color:rgba(255,255,255,.9);
    font-size:12.5px;
    font-weight:800;
}

.mc4-price-calc__price-main{
    display:flex;
    align-items:baseline;
    justify-content:flex-start;
    gap:5px;
    margin:0 0 7px;
}

.mc4-price-calc__currency,
.mc4-price-calc__price-period{
    color:rgba(255,255,255,.9);
    font-weight:700;
}

.mc4-price-calc__currency{font-size:17px}
.mc4-price-calc__price-period{font-size:13px}

.mc4-price-calc__price-value{
    color:#fff;
    font-size:clamp(34px,4vw,44px);
    line-height:1;
    font-weight:800;
    letter-spacing:-.035em;
}

.mc4-price-calc__price-per-device{
    margin:0;
    color:rgba(255,255,255,.82);
    font-size:12px;
}

.mc4-price-calc__discount-badge{
    display:inline-flex;
    align-items:center;
    margin-top:10px;
    padding:4px 9px;
    color:#0876a7;
    background:#fff;
    border-radius:999px;
    font-size:11px;
    font-weight:800;
}

.mc4-price-calc__discount-badge--visible{
    display:inline-flex!important;
    animation:mc4-price-badge-pop .25s ease;
}

.mc4-price-calc a.mc4-price-calc__cta{
    display:flex!important;
    align-items:center;
    justify-content:center;
    width:100%;
    max-width:none;
    min-height:50px;
    padding:13px 20px!important;
    color:#fff!important;
    background:linear-gradient(135deg,var(--mc4-pc-primary),var(--mc4-pc-primary-dark))!important;
    border:0!important;
    border-radius:14px!important;
    box-shadow:0 10px 22px rgba(0,137,199,.18)!important;
    text-decoration:none!important;
    text-transform:none;
    letter-spacing:0;
    font-size:14px;
    font-weight:800;
    cursor:pointer;
    transition:filter .18s,transform .18s,box-shadow .18s;
}

.mc4-price-calc a.mc4-price-calc__cta:hover{
    color:#fff!important;
    filter:brightness(.97);
    transform:translateY(-1px);
    box-shadow:0 14px 28px rgba(0,137,199,.23)!important;
    text-decoration:none!important;
}

.mc4-price-calc__vat-note{
    margin:12px 0 0;
    color:#7a8b9b;
    font-size:11px;
    text-align:center;
}

.mc4-price-calc__guarantee{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:100%;
    margin-top:15px;
    padding-top:15px;
    color:#65798a;
    border-top:1px solid var(--mc4-pc-line);
    font-size:12px;
}

.mc4-price-calc__guarantee svg{
    flex:0 0 auto;
    color:var(--mc4-pc-primary);
}

.mc4-price-flip{animation:mc4-price-flip-number .3s ease}

@keyframes mc4-price-badge-pop{
    from{opacity:0;transform:scale(.88)}
    to{opacity:1;transform:scale(1)}
}

@keyframes mc4-price-flip-number{
    from{opacity:.35;transform:translateY(6px)}
    to{opacity:1;transform:translateY(0)}
}

@media(max-width:960px){
    .mc4-price-calc__wrapper{grid-template-columns:1fr}
    .mc4-price-calc__feature-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:700px){
    .mc4-price-calc{padding:20px;border-radius:20px}
    .mc4-price-calc__hero h2{font-size:clamp(30px,9vw,42px)}
    .mc4-price-calc__hero p{font-size:15.5px}
    .mc4-price-calc__features,
    .mc4-price-calc__calculator{padding:18px;border-radius:18px}
    .mc4-price-calc__feature-list{grid-template-columns:1fr}
}

@media(max-width:420px){
    .mc4-price-calc{padding:15px}
    .mc4-price-calc__device-input{grid-template-columns:42px minmax(0,1fr) 42px}
    .mc4-price-calc button.mc4-price-calc__btn-minus,
    .mc4-price-calc button.mc4-price-calc__btn-plus{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}
}


.mc4-price-calc--light{
    color-scheme:light;
}

.mc4-price-calc--dark{
    --mc4-pc-primary:#6DC8F2;
    --mc4-pc-primary-dark:#1fa7e0;
    --mc4-pc-orange:#ef7d00;
    --mc4-pc-text:#eef8ff;
    --mc4-pc-muted:#a9c2d4;
    --mc4-pc-line:rgba(109,200,242,.20);
    --mc4-pc-soft:#082233;
    --mc4-pc-disabled:#7f95a6;
    color-scheme:dark;
    color:var(--mc4-pc-text);
    background:linear-gradient(180deg,#031522 0%,#082233 100%);
    border-color:rgba(109,200,242,.18);
    box-shadow:0 18px 45px rgba(3,21,34,.32);
}

.mc4-price-calc--dark .mc4-price-calc__hero h2,
.mc4-price-calc--dark .mc4-price-calc__title,
.mc4-price-calc--dark .mc4-price-calc__feature-item--active .mc4-price-calc__feature-text,
.mc4-price-calc--dark .mc4-price-calc__select,
.mc4-price-calc--dark .mc4-price-calc__label,
.mc4-price-calc--dark .mc4-price-calc__input-number,
.mc4-price-calc--dark .mc4-price-calc__calculator-head p,
.mc4-price-calc--dark .mc4-price-calc__section-label,
.mc4-price-calc--dark .mc4-price-calc__guarantee,
.mc4-price-calc--dark .mc4-price-calc__vat-note,
.mc4-price-calc--dark .mc4-price-calc__platform,
.mc4-price-calc--dark .mc4-price-calc__price-per-device,
.mc4-price-calc--dark .mc4-price-calc__feature-item--disabled .mc4-price-calc__feature-text{
    color:inherit;
}

.mc4-price-calc--dark .mc4-price-calc__hero p,
.mc4-price-calc--dark .mc4-price-calc__calculator-head p,
.mc4-price-calc--dark .mc4-price-calc__label,
.mc4-price-calc--dark .mc4-price-calc__vat-note,
.mc4-price-calc--dark .mc4-price-calc__guarantee,
.mc4-price-calc--dark .mc4-price-calc__platform,
.mc4-price-calc--dark .mc4-price-calc__select-arrow,
.mc4-price-calc--dark .mc4-price-calc__feature-item--disabled .mc4-price-calc__feature-icon,
.mc4-price-calc--dark .mc4-price-calc__feature-item--disabled .mc4-price-calc__feature-text{
    color:var(--mc4-pc-muted);
}

.mc4-price-calc--dark .mc4-price-calc__features,
.mc4-price-calc--dark .mc4-price-calc__calculator{
    background:rgba(5,31,49,.88);
    border-color:rgba(109,200,242,.18);
    box-shadow:0 12px 30px rgba(0,0,0,.22);
}

.mc4-price-calc--dark .mc4-price-calc__feature-item,
.mc4-price-calc--dark .mc4-price-calc__platform,
.mc4-price-calc--dark .mc4-price-calc__device-input,
.mc4-price-calc--dark .mc4-price-calc__select,
.mc4-price-calc--dark .mc4-price-calc__input-number,
.mc4-price-calc--dark .mc4-price-calc__feature-item--disabled{
    background:#0c2a3e;
    border-color:rgba(109,200,242,.16);
}

.mc4-price-calc--dark .mc4-price-calc__input-number{
    color:#eef8ff;
    background:#0b2435;
}

.mc4-price-calc--dark .mc4-price-calc__feature-item--active .mc4-price-calc__feature-icon,
.mc4-price-calc--dark .mc4-price-calc__section-label,
.mc4-price-calc--dark .mc4-price-calc__guarantee svg,
.mc4-price-calc--dark .mc4-price-calc__platform svg{
    color:#6DC8F2;
}

.mc4-price-calc--dark .mc4-price-calc__cta{
    background:linear-gradient(135deg,#0aa7ee,#6DC8F2) !important;
    box-shadow:0 12px 28px rgba(109,200,242,.20) !important;
}

.mc4-price-calc--dark .mc4-price-calc__price-display{
    background:linear-gradient(135deg,#093550 0%,#0a5b82 52%,#0ea5e8 100%);
    border-color:rgba(109,200,242,.18);
}

.mc4-price-calc--dark .mc4-price-calc__discount-badge{
    color:#031522;
    background:#dff5ff;
}
