.remove { display: none; }
:root {
    --bg-color: #f3f3f2;
    --text-color: #000;
    --gray-color: #e0e0de;
    --red-color: #c30a37;
    --orange-color: #f39200;
    --white-color: #fff;
    --gray-text: #767676;
}

@font-face {
    font-family: "Chivo";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/chivo-v11-latin-regular.woff2") format("woff2");
}

@font-face {
    font-family: "Chivo";
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/chivo-v11-latin-700.woff2") format("woff2");
}

@font-face {
    font-family: "icomoon";
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/icomoon.ttf?rnnl6c") format("truetype");
}

body { background-color: var(--bg-color); color: var(--text-color); font-family: "Chivo", Arial, sans-serif; line-height: 1; }
a { text-decoration: none; color: var(--red-color); }
a.more { font-weight: 700; }
a.more::after { font-family: "icomoon"; content: ""; margin: 0 .25rem 0 .5rem; }
a:hover { text-decoration: underline; }
p { margin: 0 0 .75rem 0; }

header { height: 60px; background-color: var(--red-color); display: flex; align-items: center; justify-content: space-between; padding: 0 1rem; position: relative; }
header .logo { width: 70px; }
header .claim { display: none; }
header .icons { display: flex; gap: 1rem; }
header .icons > * { width: 30px; }
header .icons img { width: 100%; }
header .icons span { display: none; }
header .nav-icon { background: transparent; border: 0; display: flex; justify-content: space-between; flex-direction: column; padding: 5px 0; cursor: pointer; }
header .nav-icon i { height: 3px; background: var(--white-color); transition: all .4s; }
header .nav-icon.active i:nth-child(1) { transform: translateY(10px) translateX(0) rotate(45deg); }
header .nav-icon.active i:nth-child(2) { opacity: 0; }
header .nav-icon.active i:nth-child(3) { transform: translateY(-10px) translateX(0) rotate(-45deg); }
header nav { position: absolute; top: 60px; right: 0; background: var(--white-color); display: none; z-index: 10; border: 1px solid #000; border-top: 0; }
header nav ul { list-style: none; padding: 0; margin: 0; }
header nav li { border-top: 1px solid var(--bg-color); padding: 1rem 2rem 1rem 1rem; }

.headline { font-size: 1.25rem; background: var(--red-color); color: var(--white-color); padding: 1rem; display: inline-block; margin: 0; }
.content-right .headline { display: block; }
.header-section { position: relative; }
.header-section img { width: 100%; display: block; }
.header-section .desktop { display: none; }
.header-section .headline { font-size: 1.75rem; position: absolute; top: 70%; left: 0; text-transform: uppercase; }

.content-section { margin-top: 3rem; }
section .content { padding: 2rem 1rem; background: var(--white-color); }
.abo-content img { width: 100%; }
.container { margin: 0 auto; max-width: 1370px; }
.big { font-size: 1.125rem; }

footer, .sub-grid { gap: 2rem 1rem; display: grid; }
footer { background-color: var(--red-color); color: var(--white-color); padding: 2rem 1rem; margin-top: 3rem; font-size: .875rem; }
footer .h3 { font-size: 1.125rem; margin: 0 0 .8125rem 0; font-weight: 400; line-height: 1.4rem; }
footer a { color: var(--white-color); line-height: 1.43; font-size: .875rem; }
footer .h3 a { font-size: 1.125rem; }
footer ul { padding-left: 0; margin: 0; list-style: none; }
footer .social { list-style-type: none; padding: 0; display: flex; gap: 1rem; margin: 2rem 0; }
footer .social img { height: 25px; }
footer li { padding: 2px 0; }

input[type="radio"] { margin-right: 0.5rem; vertical-align: middle; position: relative; top: -1px; }
input[type="text"], input[type="password"], select { border: 1px solid var(--gray-text); padding: 4px 8px; font-size: 14px !important; font-family: "Chivo", Arial, sans-serif !important; line-height: 1; width: 100%!important; }
input[readonly="readonly"] { background-color: var(--bg-color)!important; }

#eyeAble_customToolOpenerID { cursor: pointer; }

#ctl00_ContentPlaceHolder1_AdressBlock_Vertragn_UpdatePanel_GDATUM select,
#ctl00_ContentPlaceHolder1_tr_gdatum select,
#ctl00_ContentPlaceHolder1_AdressBlock_Vertragn_txt_Plz { width: 32.3%!important; }

input[type="button"], input[type="submit"] { color: var(--white-color); font-size: 18px; font-weight: bold; border-radius: 4px; padding: 8px 30px; cursor: pointer; border: 0; background-color: var(--red-color); }
input[type="button"]:hover, input[type="submit"]:hover { background-color: var(--gray-text); color: var(--white-color); }
#lblIBANChek { display: inline-block; position: relative; left: 5px; top: -17px; float: none !important; height: 20px !important; vertical-align: middle; }
.textstartgrau, .smalltextgray { color: var(--gray-text); }
.smalltextgray { font-size: 12px; margin-top: 5px; display: block; float: none !important; }
.Spalte_1_Rechtliche_Radiobox { vertical-align: top; padding-right: 10px; }
span.ErrorInput_noBorder { border: 4px solid var(--red-color); display: flex; }

.TD_As_Titel { font-size: 16px; font-weight: bold; color: var(--text-color); }
.AsTitel { background-color: var(--orange-color); padding: 2px 4px; }
.AsTitel .more { text-align: left; padding: 2px 4px; }
.AsTitel .more a { color: #fff; text-decoration: underline; }
.AsTitel .more a:hover { text-decoration: none; }
#pnl_Print { margin: 2rem 0; }
td.more { text-align: left; }

.msg_error { font-weight: bold; background-color: var(--red-color); color: var(--white-color); margin-top: 2rem; }

h3 { margin: 2rem 0 0 0; }

#ctl00_ContentPlaceHolder1_pnl_TicketVariante > span,
#ctl00_ContentPlaceHolder1_pnl_Tarifgebiet > span,
.vertragnehmer span,
#ctl00_ContentPlaceHolder1_pnl_Gueltigkeit label { display: inline-block; margin-bottom: 0.75rem; }
.vertragnehmer h3 { margin-bottom: 1rem; }

#pnl_btn1 { margin-bottom: 3rem; }
.abo-content .bild { margin-top: 2rem; }
.stepbox > table { margin-right: 1rem; }

.abo-content .box_white + td, .abo-content .box_red + td, .abo-content .box_gree + td { display: none; }
#Auftragsnavi { position: relative; }
#Auftragsnavi::before { content: ""; width: 100%; height: 2px; background-color: var(--bg-color); position: absolute; top: 50%; left: 0; }
#NaviItems { z-index: 1; position: relative; }

.abo-content .box_white, .abo-content .box_red, .abo-content .box_gree { background: var(--gray-text); color: var(--white-color); padding: 5px; border-radius: 6px; }
.abo-content .box_red + td, .abo-content .box_white + td { padding-left: 5px; }
.abo-content .box_red { background: var(--red-color); color: var(--white-color); font-weight: bold; }
.abo-content .box_red + td { font-weight: bold; }
.abo-content .content { padding: 0; }
.abo-content .produktInfotext, .abo-content .textstartgrau, .msg_error { line-height: 1.5; }

.box.index, .box.index a { font-size: 16px; color: var(--text-color); }
.box.index .Stil1 { font-weight: bold; }

.abo-content table.content tr td,
#BankBlock table tr td,
#pnl_Print table tr td,
#ctl00_ContentPlaceHolder1_pnl_Access table tr td,
.loginContentLeft table tr td,
.loginContent table tr td,
#ctl00_ContentPlaceHolder1_pnl_Dticket_Uni table tr td { vertical-align: top; height: auto !important; padding: 3px 0; width: 100% !important; display: block; }

.abo-content span[style="color:Red;font-size:10px;"],
.abo-content span[style="color:Red;"] { background-color: var(--red-color); color: var(--white-color)!important; font-size: 12px!important; padding: 4px 6px 2px 6px; margin: 0 0 5px 0; display: block; width: 100%; }
#maintext .caption { background-color: var(--bg-color); font-weight: bold; padding: 2px 4px; margin-bottom: 5px; color: var(--red-color); }

.vh { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

[id^=pnl_btn] { margin-bottom: 2rem; text-align: right; }

#ctl00_ContentPlaceHolder1_pnl_Vertragsnehmer+h3 { margin-bottom: 20px; }
label[for="ctl00_ContentPlaceHolder1_NEW_rb_Nutzer_Vertragnehmer"]::after { content: ""; display: block; }

#ctl00_ContentPlaceHolder1_NEW_ERR_GUELTIGKEIT,
#ctl00_ContentPlaceHolder1_NEW_ERR_ZAHLWEISE { margin-top: 5px; }

#ctl00_UpdateProgress1 { display: flex!important; position: fixed; top: 0; left: 0; background: rgb(255 255 255 / 70%); width: 100%; height: 100%; z-index: 10; justify-content: center; align-items: center; }
#ctl00_UpdateProgress1 > div { display: inline-block; width: auto !important; height: auto !important; }
#imgProgress { margin: 0!important; padding: 0!important; }

.completionList { background-color: #fff; border: 2px solid var(--gray-text); padding: 1rem 1rem 1rem 2rem; margin: -1px 0 0 -1px; width: 331px !important; }
.completionList li { cursor: pointer; }
.completionList li:hover { text-decoration: underline; }

#ctl00_ContentPlaceHolder1_Page5Back { margin: 0 0 1rem 0; float: right; }
.more_noblock_nofett { float: none!important; margin-bottom: 1rem; display: inline-block; }
#ctl00_ContentPlaceHolder1_Button1 { margin-right: 1rem; }

#ctl00_ContentPlaceHolder1_pnl_Access, #ctl00_ContentPlaceHolder1_PanelAccess { white-space: revert!important; }
.wrapper_error, #ctl00_ContentPlaceHolder1_UpdatePanel_PersonlicheDaten { position: static!important; width: 100% !important; padding-right: 0 !important; }
.wrapper_error .msg_error { margin-top: -1rem; }

#ctl00_ContentPlaceHolder1_UpdatePanel_PersonlicheDaten table { text-align: left; border-collapse: collapse; margin-top: 1rem; }
#ctl00_ContentPlaceHolder1_UpdatePanel_PersonlicheDaten table p.link { text-align: left; margin: 0; }
#ctl00_ContentPlaceHolder1_UpdatePanel_PersonlicheDaten table th { border: 1px solid #ccc; background-color: var(--bg-color); padding: 5px; }
#ctl00_ContentPlaceHolder1_UpdatePanel_PersonlicheDaten table td { border: 1px solid #ccc; padding: 5px;  }
#ctl00_ContentPlaceHolder1_UpdatePanel_PersonlicheDaten table th, #ctl00_ContentPlaceHolder1_UpdatePanel_PersonlicheDaten table td { display: block; width: 100%; }
#ctl00_ContentPlaceHolder1_UpdatePanel_PersonlicheDaten table thead th:nth-child(4) { background-color: #fff; border: 0; }

#ctl00_ContentPlaceHolder1_UpdatePanel_PersonlicheDaten h3 { margin-top: 0; }
#ctl00_ContentPlaceHolder1_link_Registrieren { margin-bottom: 2rem; }
#ctl00_ContentPlaceHolder1_pwd_image { height: 27px!important;  width: auto!important; display: block; margin: 0 0 1rem 0; }
#ctl00_ContentPlaceHolder1_TABLE1 span.link { float: none!important; margin-top: 0.75rem; display: block; }
.send_token { margin-top: 0.75rem; }
.loginContentLeft { margin-top: -2rem; }
#ctl_Login { margin-bottom: 3rem; }

section .content-right-logo { background-color: var(--red-color); }
section .content-right-logo img { width: 100%; max-width: 150px; display: block; margin: auto; }
section .content-right-logo .claim { max-width: 100px; position: relative; right: -31px; top: 10px; }

#pnl_Print table[style="width: 100%;"] { background-color: var(--orange-color); color: var(--white-color); }
#pnl_Print table[style="width: 100%;"] a { color: var(--text-color); text-decoration: underline; }
#pnl_Print table[style="width: 100%;"] td { padding: 5px; }
#pnl_Print table[style="width: 100%;"] td[style="width: 3px; height: 16px"] { display: none; }
#pnl_Print .caption { color: var(--text-color); }
#pnl_Print .msg_error { padding: 1rem !important; margin-top: 0; }
#ctl00_ContentPlaceHolder1_Button_Ansicht_Drucken { float: none!important; margin-bottom: 1.5rem; }

.modalPopup { padding: 1rem; }
.modalPopup #ctl00_ContentPlaceHolder1_btnAbbrechen { margin-top: 10px; }
#ctl00_ContentPlaceHolder1_pnl_Tarifoptionen { margin-bottom: 2rem; }

.mainpage-content { overflow: initial!important; height: auto!important; }
.h2-txt { font-size: 1.17rem; margin: 2rem 0 0 0; }

.p_fehler .msg_error { margin-top: 0; }
.p_passwort_vergessen .loginContentLeft { margin-top: 0; }
.lostpwd_btns { text-align: left!important; }
.lostpwd_btns input { float: left!important; margin-top: 10px; }

a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, [tabindex]:focus-visible, .fv:focus-visible {
  outline: 2px solid var(--orange-color);
  outline-offset: 2px;
  border-radius: 2px;
}

@media (min-width: 460px) {
    #ctl00_ContentPlaceHolder1_Page5Back { margin: 0; float: none; }
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
    #pnl_Print table td.more { text-align: right; }
    #ctl00_ContentPlaceHolder1_pwd_image { margin-top: 1rem; }
    .AsTitel .more { text-align: right; }
    #ctl00_ContentPlaceHolder1_AdressBlock_Vertragn_UpdatePanel_GDATUM select,
    #ctl00_ContentPlaceHolder1_AdressBlock_Nutzer_UpdatePanel_GDATUM select,
    #ctl00_ContentPlaceHolder1_tr_gdatum select,
    #ctl00_ContentPlaceHolder1_AdressBlock_Vertragn_txt_Plz { width: 107px!important; }
    input[type="text"], input[type="password"], select { width: 330px!important; }

    .abo-content table.content tr td,
    #BankBlock table tr td,
    #pnl_Print table tr td,
    #ctl00_ContentPlaceHolder1_pnl_Access table tr td,
    .loginContentLeft table tr td,
    .loginContent table tr td,
    #ctl00_ContentPlaceHolder1_pnl_Dticket_Uni table tr td { padding: 5px 0; width: auto !important; display: revert; }

    .abo-content table.content tr td:nth-child(1),
    #BankBlock table tr td:nth-child(1),
    #ctl00_ContentPlaceHolder1_pnl_Dticket_Uni table tr td:nth-child(1),
    #ctl00_ContentPlaceHolder1_pnl_Access table tr td:nth-child(1),
    .loginContentLeft table tr td:nth-child(1),
    .loginContent table tr td:nth-child(1),
    #pnl_Print table tr td:nth-child(1) { width: 170px !important; }

    .abo-content span[style="color:Red;font-size:10px;"],
    .abo-content span[style="color:Red;"] { width: 330px; }

    .header-section .mobile { display: none; }
    .header-section .desktop { display: block; }
    footer { grid-template-columns: repeat(2, 1fr); }
    .header-section .headline { font-size: 2.625rem; }
    .abo-content img { max-width: 528px; }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
    footer { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 575px) {
    #startLogo {
        display: none !important;
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {

    .lostpwd_btns { text-align: right!important; }
    .lostpwd_btns input { float: none!important; }

    #ctl00_ContentPlaceHolder1_UpdatePanel_PersonlicheDaten table p.link { text-align: center; margin: 0; }
    #ctl00_ContentPlaceHolder1_UpdatePanel_PersonlicheDaten table th, #ctl00_ContentPlaceHolder1_UpdatePanel_PersonlicheDaten table td { display: revert; width: 100%; }

    /* footer { grid-template-columns: repeat(4, 1fr); } */
    /* footer > div:nth-child(3) { text-align: right; }
    footer > div:nth-child(3) .social { justify-content: flex-end; } */

    header { height: auto; background-color: transparent; padding: 0; align-items: flex-start; gap: 0.5rem; margin-bottom: 0.5rem; }
    .logo-box { width: 125px; height: 109px; background-color: var(--red-color); display: flex; justify-content: center; flex-wrap: wrap; align-content: center; gap: 5px; }
    header .logo { width: 83px; }
    header .claim { display: inline-block; height: 12px; position: relative; right: -21px; }
    header .nav-icon { display: none; }
    header nav { position: initial; display: block!important; margin-top: 0.5rem; background: transparent; border: 0; }
    header nav ul { display: flex; align-items: stretch; }
    header nav li { padding: 0; color: #000; border: 0; }
    header nav li a { padding: .938rem .75rem; color: #000;  height: 100%; display: flex; align-items: center; }
    header nav li a:hover { background-color: var(--red-color); color: var(--white-color); text-decoration: none; }
    header .icons { justify-content: flex-end; gap: 0.5rem; }
    header .icons a, header .icons span { height: 55px; width: 55px; display: inline-block; background: var(--orange-color); padding: 0.75rem; }
    header .icons svg path { fill: #000; }
    main { display: flex; gap: 3rem; }
    .content-left { flex: 3; min-width: 0; }
    .content-right { flex: 1; min-width: 0; }
}

@media (min-width: 1140px) {
    .logo-box { height: 109px; }
}

@media (min-width: 1200px) {
    footer, section .content { padding: 2rem; }
}

@media (min-width: 1270px) {
    .abo-content .box_white + td, .abo-content .box_red + td, .abo-content .box_gree + td { display: revert; }
    #Auftragsnavi::before { display: none; }
}

@media (min-width: 1370px) {
    /* .header-container { max-width: 1600px; text-align: right; } */
}

@media (min-width: 1545px) {
    .header-section { display: inline-block; }
    .header-section .headline {
        margin-left: -2.15rem;
    }
}

.contact-img { display: block; margin: 0 0 1rem 0; }

#breadcrumb { display: none; }
#maintext_, #maintext__ { position: static!important; width: 100% !important; }

span[style="color: red; font-size: 10px; visibility: hidden;"] { display: none; }
input[style="color:Black;background-color:White;border-color:White;border-style:None;font-family:Arial;font-size:9pt;height:1px;width:0px;"] { width: 0px!important; }

#ctl00_ContentPlaceHolder1_Anlagen1_AnlagenFoto_ucCropImage1_crop { background: #fff; border: 2px solid #000; }
.modalBackground { background: rgb(255 255 255 / 85%); }
.jcrop-holder > div .jcrop-tracker { background: rgb(255 255 0 / 20%); }
.ButtonRotieren { margin-top: 5px; }
#ctl00_ContentPlaceHolder1_Anlagen1_AnlagenFoto_ucCropImage1_preview_btn { margin-top: 7px!important; text-align: center!important; }
#ctl00_ContentPlaceHolder1_Anlagen1_AnlagenFoto_ucCropImage1_preview_btn input { font-size: 14px; padding: 6px 12px; }
/*#ctl00_ContentPlaceHolder1_Anlagen1_AnlagenFoto_pnlKeinBild > span:nth-child(1) { display: block; }*/

#ctl00_ContentPlaceHolder1_Anlagen1_AnlagenFoto_ucCropImage1_Image8 {
    height: unset !important;
    width: unset !important;
    visibility: unset !important;
}