* {
    margin: 0;
    padding: 0
}

html {
    background: #fff url(images/main-bg.png) repeat-x center top;
    position: relative
}

body {
    background: url(images/main-bg2.png) no-repeat center top;
    font-family: Arial, Helvetica, sans-serif
}

table {
    font-size: 0.75em;
}

a {
    color: #1B82E8
}

a:hover {
    text-decoration: none
}

a img {
    border: none
}

.separator {
    border-bottom: dotted 1px #000
}

.center {
    text-align: center
}

input[type="checkbox"], input[type="radio"] {
    vertical-align: sub;
}

#wrap {
    width: 1000px;
    margin: 0 auto
}

#header {
    position: relative;
    height: 225px;
    z-index: 100
}

#header #logo {
    position: absolute;
    left: 5px;
    top: 10px;
}

#header #logotv {
    position: absolute;
    left: 515px;
    top: 10px
}

#header #logotel {
    position: absolute;
    left: 290px;
    top: 10px
}

#header #logotelph {
    position: absolute;
    right: 5px;
    top: 17px
}

#header address {
    position: absolute;
    left: 240px;
    top: 30px;
    width: 147px;
    height: 39px
}

#header ul {
    position: absolute;
    left: 3px;
    top: 78px;
    width: 100%;
    display: flex;
    height: 53px;
    list-style-type: none;
    font: 0.8em Arial, Helvetica, sans-serif;
    z-index: 100;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
}

#header ul li {
    text-align: center;
    position: relative;
    background: url(images/main-nav-button-bg.gif) repeat-x left top;
    line-height: 53px;
    width: 100%;
}

#header ul li:hover, #header ul li.jshover {
    background: url(images/main-nav-button-bg.gif) repeat-x left bottom
}

#header ul li.cabinet {
    width: 162px
}

#header ul li a {
    display: block;
    color: #fff;
    background: url(images/main-nav-button-lbg.gif) no-repeat left top;
    height: 53px;
    white-space: nowrap;
    text-decoration: none
}

#header ul li a:hover, #header ul li:hover a, #header ul li.jshover a {
    color: #2F67B2;
    text-decoration: none
}

#header ul li a.first {
    background: url(images/main-nav-first-button-lbg.gif) no-repeat left top
}

#header ul li:hover a.first, #header ul li.jshover a.first {
    background: url(images/main-nav-first-button-lbg.gif) no-repeat left bottom
}

#header ul li a.last {
    background: url(images/main-nav-last-button-lbg.gif) no-repeat left top
}

#header ul li:hover a.last, #header ul li.jshover a.last {
    background: url(images/main-nav-last-button-lbg.gif) no-repeat left bottom
}

#header ul li a span {
    display: block;
    padding: 1px 16px 0;
    height: 53px;
    font-size: 14px;
    cursor: pointer
}

#header #logo img {
    max-width: 208px;
    height: auto;
}

#header ul li a.last span {
    background: url(images/main-nav-last-button-rbg.gif) no-repeat right top;
    padding: 0 14px 0 43px
}

#header ul li:hover a.last span, #header ul li.jshover a.last span {
    background: url(images/main-nav-last-button-rbg.gif) no-repeat right bottom
}

#header ul li div {
    left: 0;
    top: 53px;
    display: none;
    position: absolute;

    padding: 0 0 10px 0
}

#header ul li:hover div, #header ul li.jshover div {
    display: block
}

#header ul li ul {
    position: static;
    left: 0;
    display: block;
    top: 0;
    width: auto;
    height: auto;
    font: 1.1em Arial, Helvetica, sans-serif;
    background: #B8CCE7 url(images/main-subnav-bg.gif) repeat-x left bottom;
    border-left: solid 1px #7eb0e9;
    border-right: solid 1px #7eb0e9;
    border-bottom: solid 1px #7eb0e9;
    border-radius: 0 0 5px 5px;
}

#header ul li li {
    float: none;
    text-align: left;
    background: none;
    line-height: 120%
}

#header ul li li a {
    background: none;
    text-decoration: none;
    padding: 5px 10px 5px 15px;
    height: 1%;
    border-top: solid 1px #7eb0e9
}

#header ul li li a:hover {
    background: #fff
}

#sidebar a {
    text-decoration: none
}

#content {
    overflow: hidden;
    height: 1%;
    background: url("images/content-border.gif") repeat-y scroll 230px top transparent;
    margin-bottom: 10px
}

#main-content {
    width: 750px;
    float: right;
    padding: 25px 10px 0 0
}

#main-content h2 {
    /*background: url(images/headers-bg.gif) no-repeat left 10px transparent;*/
    font: 1.5em Tahoma, Geneva, sans-serif;
    color: #4E4E4E;
    /*padding: 0 0 0 25px;*/
    margin-bottom: 15px
}

#main-content h5 {
    /*background: url(images/headers-bg.gif) no-repeat left 10px transparent;*/
    font: 1.3em Tahoma, Geneva, sans-serif;
    color: #4E4E4E;
    /*padding: 0 0 0 25px;*/
    margin-bottom: 15px
}

#main-content h3 {
    font-size: 0.75em;
    color: #1B82E8;
    margin: 5px 0;
}

#main-content p {
    font-size: 0.75em;
    margin-bottom: 10px;
    text-align: justify
}

#main-content ul {
    font-size: 0.75em;
    margin-bottom: 10px;
    padding: 0 0 0 15px;
    text-align: justify
}

#main-content img {
    margin: 3px;
    position: relative;
}

#captchaimg {
    border: 1px solid #eee;
}

#main-content .main-content-block {
    padding: 0 0 5px 35px;
    margin-bottom: 15px;
    overflow: hidden;
    height: 1%
}

#main-content .mean-content-block {
    float: left;
    width: 49%
}

#main-content .mean-content-block58 {
    float: left;
    width: 58%
}

#main-content .mean-content-block30 {
    float: left;
    width: 220px
}

#main-content .mean-content-block35 {
    float: left;
    width: 35%
}

#main-content a.rs {
    display: block;
    width: 220px;
    height: 500px;
    background: url(images/rs_p.jpg) no-repeat left top
}

#main-content a.gs {
    display: block;
    width: 220px;
    height: 500px;
    background: url(images/gs_p.jpg) no-repeat left top
}

#main-content a.ms {
    display: block;
    width: 220px;
    height: 500px;
    background: url(images/mirc_p.jpg) no-repeat left top
}

#main-content a.res {
    display: block;
    width: 220px;
    height: 500px;
    background: url(images/retracker_p.jpg) no-repeat left top
}

#main-content a.rs:hover {
    background: url(images/rs.jpg)
}

#main-content a.gs:hover {
    background: url(images/gs.jpg)
}

#main-content a.ms:hover {
    background: url(images/mirc.jpg)
}

#main-content a.res:hover {
    background: url(images/retracker.jpg)
}

#main-content .content-block {

}

#main-content .actions {
    list-style-type: none;
    padding: 0
}

#main-content .actions li {
    float: left;
    margin: 0 5px 5px 0
}

#main-content .actions li img {
    vertical-align: bottom
}

#main-content .orders {
    list-style-type: none;
    padding: 0
}

#main-content .orders li {
    margin: 0 0 5px 0
}

#main-content .orders li img {
    vertical-align: bottom
}

#main-content .news {
    overflow: hidden;
    height: 1%;
    margin-bottom: 10px
}

#main-content .news .date {
    font: 1em Tahoma, Geneva, sans-serif;
    font-weight: bold;
    color: #4E4E4E;
    padding: 0 0 0 0px;
    margin-bottom: 5px
}

#main-content .news h3 {
    font-size: 0.9em;
    color: #1B82E8
}

#main-content .news .button {
    float: right
}

#main-content .button {
    display: block;
    width: 104px;
    height: 26px;
    line-height: 25px;
    text-align: center;
    text-decoration: none;
    color: #fff;
    background: url(images/button-bg.png) no-repeat left top
}

#main-content .button:hover {
    text-decoration: underline
}

#sidebar {
    width: 220px;
    float: left;
    position: relative;
    z-index: 50
}

#sidebar address {
    position: relative;
    height: 112px;
    margin-bottom: 1px
}

#centrpod {
    margin-bottom: 8px
}

#sidebar address img {
    position: absolute;
    left: 0;
    top: 0
}

#sidebar h2 {
    background: #fff url(images/headers-bg.gif) no-repeat 5px center;
    font: 1.5em Tahoma, Geneva, sans-serif;
    color: #4E4E4E;
    padding: 0 0 0 30px;
    margin-bottom: 15px
}

#sidebar h3 {
    font-size: 0.75em;
    color: #1B82E8
}

#sidebar p {
    font-size: 0.75em;
    margin-bottom: 10px
}

#sidebar .sidebar-block {
    margin: 0 0 0 10px;
    padding: 0 0 5px 20px;
    margin-bottom: 15px
}

#footer {
    border-top: solid 6px #E1E3E4;
    position: relative;
    overflow: hidden;
    height: 1%;
    padding: 25px 45px 10px 15px
}

#footer address {
    float: left;
    background: url(images/footer-address-bg.png) no-repeat left top;
    padding: 5px 0 10px 90px;
    font-style: normal;
    font-size: 1.3em;
    color: #1B82E8;
    line-height: 100%
}

#footer address a {
    font-size: 0.8em;
}

#footer p {
    float: right;
    font-size: 0.75em;
    color: #4E4E4E;
    padding: 10px 0 0 0
}

#footer ul {
    position: absolute;
    left: 275px;
    bottom: 0;
    background: url(images/footer-nav-bg.png) no-repeat left top;
    padding: 10px 0 0 60px;
    font-size: 0.75em;
    list-style-type: none;
    width: 298px;
    height: 64px
}

#footer ul li {
    float: left;
    width: 120px;
    border-left: solid 3px #6492CD;
    padding: 0 0 5px 10px
}

.form-field {
    font: x-small Verdana
}

td.redbad {
    border: 2px solid red
}

#main-content ol {
    margin: 0 0 0 20px
}

#main-content ol li {
    font-size: 0.75em;
    margin: 0 0 3px
}

#main-content ul li {
    margin: 0 0 3px
}

.tablestyle {
    font-size: 13px;
    width: 100%;
    text-align: left;
    border-collapse: collapse;
    margin: 0
}

.tablestyle th.roundtopleft {
    background: #5287C4 url(images/roundhtl.gif) 0 0 no-repeat
}

.tablestyle th.roundtopright {
    background: #5287C4 url(images/roundhtr.gif) 100% 0 no-repeat
}

.tablestyle th {
    font-weight: 600;
    font-size: 13px;
    color: #FFF;
    background: #5287C4;
    padding: 6px;
}

.tablestyle td {
    background: #E6EDF2;
    border-top: 1px solid #fff;
    color: #212121;
    padding: 5px 6px
}

/*.tablestyle tbody tr:hover td{background:#C9D8E2}*/
.tablestyle td.roundtopleft {
    background: #E6EDF2 url(images/roundtl.gif) 0 0 no-repeat
}

.tablestyle td.roundtopright {
    background: #E6EDF2 url(images/roundtr.gif) 100% 0 no-repeat
}

/*.tablestyle tr:hover td.roundtopleft{background:#C9D8E2 url(images/roundtlhov.gif) 0 0 no-repeat}
.tablestyle tr:hover td.roundtopright{background:#C9D8E2 url(images/roundtrhov.gif) 100% 0 no-repeat}*/
.tablestyle td.selected {
    font-weight: 700;
    color: #C90808
}

.tablestyle td.roundbotleft {
    background: #E6EDF2 url(images/roundbl.gif) 0 100% no-repeat
}

.tablestyle td.roundbotright {
    background: #E6EDF2 url(images/roundbr.gif) 100% 100% no-repeat
}

/*.tablestyle tr:hover td.roundbotleft{background:#C9D8E2 url(images/roundblhov.gif) 0 100% no-repeat}
.tablestyle tr:hover td.roundbotright{background:#C9D8E2 url(images/roundbrhov.gif) 100% 100% no-repeat}*/
.tablestyle td.tdors {
    background: #ffaf53
}

/*.tablestyle tr:hover td.tdors{background:#ffaf53}*/
.tablestyle td.roundbotleft_or {
    background: #ffaf53 url(images/roundbl_or.gif) 0 100% no-repeat
}

.tablestyle td.roundbotright_or {
    background: #ffaf53 url(images/roundbr_or.gif) 100% 100% no-repeat
}

/*.tablestyle tr:hover td.roundbotleft_or{background:#ffaf53 url(images/roundbl_or.gif) 0 100% no-repeat}
.tablestyle tr:hover td.roundbotright_or{background:#ffaf53 url(images/roundbr_or.gif) 100% 100% no-repeat}*/
.tablecenter td, .tablecenter th {
    text-align: center;
}

.tablecenter td.left {
    text-align: left;
}

.street th.roundtopleft {
    width: 155px;
}

.min_comment {
    font-size: 12px
}

.tablestyle td.tdgrs {
    background: #7ae18b;
    font-weight: bold;
}

.tablestyle td.roundbotright_gr {
    background: #7ae18b url(images/roundbr_gr.gif) 100% 100% no-repeat;
    font-weight: bold;
}

/*.tablestyle tr:hover td.roundbotright_gr{background:#7ae18b url(images/roundbr_gr.gif) 100% 100% no-repeat; font-weight: bold;}*/
.tablestyle th.roundtopright_gr {
    background: #7ae18b url(images/roundhtr_gr.gif) 100% 0 no-repeat;
    color: #000
}

.registrform {
    margin-left: 70px;
    text-align: center;
    width: 490px
}

#error {
    color: red;
    font-size: 13px
}

.redbad label {
    color: red
}

.order_form {
    border: 1px solid #BCBCBC;
    margin-bottom: 2px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    padding: 10px
}

.order_form legend {
    color: #4E4E4E;
    font-size: 12px;
    font-weight: 700;
    padding: 0 2px
}

.spisokform {
    padding: 0 !important
}

.spisokform li {
    list-style: none outside none;
    margin-bottom: 5px
}

.spisokform label {
    clear: both;
    float: left;
    padding-right: 9px;
    padding-top: 3px;
    text-align: right;
    width: 169px
}

.spisokform input {
    float: left;
    width: 225px
}

.spisokform select {
    float: left;
    width: 229px
}

.spisokform .dobpole {
    margin: 3px 0 0 178px
}

.spisokform input[type=checkbox] {
    float: left;
    width: 13px;
    margin: 4px 0 0
}

.spisokform input.minpole {
    width: 80px
}

.spisokform select.minpole {
    width: 84px;
    margin: 0 3px 0 0
}

.spisokform textarea {
    float: left;
    height: 50px;
    width: 225px;
    resize: none
}

.spisokform div {
    float: left;
    font-size: 12px;
    line-height: 20px;
    padding-left: 5px;
    text-align: left;
    width: 245px
}

.spisokform .desc {
    clear: both;
    display: block;
    font-size: 10px;
    margin-left: 178px;
    text-align: left
}

.spisokform .descb {
    clear: both;
    display: block;
    font-size: 11px;
    line-height: 19px;
    margin-left: 145px;
    text-align: left
}

.submitbutt {
    float: left;
    margin: 0 0 0 177px
}

.checkinput {
    float: left;
    font-size: 12px !important;
}

h4.orange {
    color: #b6412c;
    font-size: 20px;
    text-align: center;
    margin-bottom: 10px
}

.table_orange {
    -webkit-border-radius: 15px;
    border-radius: 15px;
    overflow: hidden;
    border-spacing: 0;
    width: 100%
}

.table_orange th, .table_orange td {
    border: none;
    font-size: 15px;
    font-weight: 700;
    padding: 3px 2px 3px 15px
}

.table_orange th {
    background: #b6412c;
    color: #fff;
    font-size: 18px;
    -webkit-box-shadow: inset 0px 4px 5px 0px rgba(250, 250, 250, 0.5);
    box-shadow: inset 0px 4px 5px 0px rgba(250, 250, 250, 0.5);
    -webkit-border-radius: 15px 15px 0px 0px;
    border-radius: 15px 15px 0px 0px
}

.table_orange td {
    background: #dde4f3;
    color: #2b3a47;
    border-bottom: 1px solid #f5f7fa
}

.table_orange tr.zag td {
    background: #f5f7fa;
    color: #71859b;
    font-weight: 400;
    font-style: italic;
    font-size: 13px;
    border-bottom: none
}

.table_orange td.linktv a {
    text-decoration: none
}

.table_orange td.smallt a {
    text-decoration: none;
    font-size: 13px
}

.table_orange.mint td {
    font-size: 13px;
    font-weight: 400
}

.icon {
    display: block;
    height: 33px;
    margin: 0 auto;
    background: url(/images/icons_tarif.png) no-repeat
}

.icon.smile {
    background-position: 1px -1px;
    width: 29px
}

.icon.binkl {
    background-position: -30px -4px;
    width: 31px
}

.icon.divan {
    background-position: -68px -2px;
    width: 36px
}

.icon.kybok {
    background-position: -106px -2px;
    width: 31px
}

.icon.oblak {
    background-position: -142px -1px;
    width: 34px
}

.icon.obshn {
    background-position: -178px -3px;
    width: 31px
}

.icon.igray {
    background-position: -212px -2px;
    width: 31px
}

.icon.kacha {
    background-position: -244px -2px;
    width: 31px
}

.icon.letay {
    background-position: -277px -2px;
    width: 36px
}

.icon.tltv1 {
    background-position: -316px -1px;
    width: 31px
}

.icon.tltv2 {
    background-position: -350px -1px;
    width: 31px
}

.icon.tltv3 {
    background-position: -387px -1px;
    width: 31px
}

.icon.strlk {
    background-position: -473px -2px;
    width: 31px
}

.icon.stydd {
    background-position: -504px -2px;
    width: 36px
}

.icon.hit {
    background-position: -425px 0;
    width: 40px;
    height: 40px
}

.icon.ydivl {
    background-position: -547px -2px;
    width: 32px
}

.icon.operez {
    background-position: -589px -2px;
    width: 33px
}

.icon.lite2 {
    background-position: -724px -2px;
    width: 33px
}

.icon.hit2 {
    background-position: -679px -2px;
    width: 33px
}

.icon.top2 {
    background-position: -634px -2px;
    width: 33px
}

.icon.litetv2 {
    background-position: -879px -1px;
    width: 36px;
    height: 37px
}

.icon.hittv2 {
    background-position: -831px -2px;
    width: 39px;
    height: 37px
}

.icon.toptv2 {
    background-position: -781px -2px;
    width: 39px;
    height: 37px
}

.table_orange_bh td {
    padding-top: 2px;
    padding-bottom: 2px;
}

.mps {
    position: absolute;
    right: 231px;
    top: 16px;
    display: none;
}

.icon2 {
    display: block;
    height: 33px;
    margin: 0 auto;
    background: url(http://pskovline.ru/images/icons_tarif_2.png) no-repeat
}

.icon2.summer {
    background-position: -7px -2px;
    width: 30px
}

.icon2.gift {
    background-position: -195px -2px;
    width: 31px
}

.icon2.check {
    background-position: -95px -2px;
    width: 36px
}

.icon2.medal {
    background-position: -52px -2px;
    width: 31px
}

.button-connect {
    align-items: center;
    appearance: button;
    background-color: #427cd4;
    border-radius: 8px;
    border-style: none;
    box-shadow: rgba(255, 255, 255, 0.26) 0 1px 2px inset;
    box-sizing: border-box;
    color: #fff;
    cursor: pointer;
    flex-direction: row;
    flex-shrink: 0;
    font-family: "RM Neue", sans-serif;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
    padding: 13px 32px;
    text-align: center;
    text-transform: none;
    transition: color .13s ease-in-out, background .13s ease-in-out, opacity .13s ease-in-out, box-shadow .13s ease-in-out;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
    text-decoration: none;
    display: inline-block;
}

.button-connect:hover {
    background-color: #2a72d4;
}

.block-tariff-button {
    text-align: center;
    margin: 24px 0;
}

.user-cookie {
    background-color: #fff;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    padding: 20px 50px;
    text-align: center;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.3);
    font-size: 13px;
    box-sizing: border-box;
    transform: translateY(100%);
    transition: all 0.5s ease-in;
}

.user-cookie.active {
    transform: translateY(0);
}

.user-cookie p {
    margin-bottom: 25px;
}

.user-cookie-close {
    position: absolute;
    right: 17px;
    top: 23px;
    text-decoration: none !important;
    font-size: 18px;
    font-weight: 200;
    color: #0a8dd8;
    border: 1px solid #0a8dd8;
    padding: 4px 12px 3px;
    border-radius: 3px;
}

.user-cookie-close:hover {
    opacity: 0.8;
}

/* ========================================
   RESPONSIVE DESIGN - MOBILE & TABLET
   ======================================== */

/* Hamburger button - hidden on desktop */
.mobile-menu-toggle {
    display: none;
    background: #3a4972;
    border: none;
    padding: 6px 0;
    cursor: pointer;
    position: absolute;
    right: 15px;
    top: 15px;
    z-index: 1000;
    border-radius: 4px;
    width: 50px;
    height: 45px;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
}

.mobile-menu-toggle .hamburger-line {
    display: block;
    width: 30px;
    height: 3px;
    background: #fff;
    border-radius: 2px;
    transition: all 0.3s ease;
}

/* Hamburger animation when active */
.mobile-menu-toggle.active .hamburger-line:nth-child(1) {
    transform: rotate(45deg) translateY(8px) translateX(8px);
    width: 36px;
}

.mobile-menu-toggle.active .hamburger-line:nth-child(2) {
    opacity: 0;
}

.mobile-menu-toggle.active .hamburger-line:nth-child(3) {
    transform: rotate(-45deg) translateY(-8px) translateX(8px);
    width: 36px;
}

.block-podkl > div {
    position: relative;
}

.block-podkl > div > a {
    display: block;
}

.ch_accept {
    width: 204px;
}

/* TABLET: 768px - 1024px */
@media screen and (min-width: 767px) and (max-width: 1024px) {
    /* Container - make fluid with minimum width */
    html {
        background: none;
    }

    body {
        background-size: contain;
    }

    #main-content .main-content-block {
        padding: 0;
    }

    #wrap {
        width: 100%;
        max-width: 1000px;
        min-width: 748px;
        padding: 0 10px;
        box-sizing: border-box;
    }

    /* Header adjustments */
    #header {
        height: auto;
        min-height: 130px;
        padding-bottom: 30px;
    }

    /* Hide secondary logos to prevent overlap */
    #header #logotel,
    #header #logotv {
        display: none;
    }

    /* Main logo - keep visible */
    /* Phone logo - keep visible */
    #header #logotelph {
        right: 15px;
    }

    #header #logotelph img {
        max-width: 100%;
        height: auto;
    }

    /* Navigation - smaller font */
    #header ul {
        font-size: 0.7em;
    }

    #header ul li a span {
        padding: 1px 5px 0;
        font-size: 12px;
    }

    /* Content area */
    #content {
        background: none;
    }

    #main-content {
        width: 100%;
        padding: 5px 0 0 0;
    }

    #sidebar {
        display: none;
    }

    #main-content-design .content-block {
        padding: 0;
    }
    #main-content-design {
        width: auto;
        float: none;
        padding: 0;
    }

    /* Footer adjustments */
    #footer ul {
        left: 260px;
        font-size: 0.75em;
        width: 250px;
    }

    .registrform {
        margin: 0 auto;
        text-align: center;
        width: 490px;
    }

    #footer ul li {
        width: 100px;
    }

    .form-pay {
        display: inline-block;
    }

    .mcb-pay {
        text-align: center;
    }
    #main-content-design .main-content-block {
        padding: 0;
        margin-bottom: 0;
        height: 1%;
    }

}

/* MOBILE: Up to 767px */
@media screen and (max-width: 767px) {
    /* Force all elements to border-box */
    * {
        box-sizing: border-box;
    }

    html {
        background: none;
    }

    body {
        background-size: contain;
    }

    #header #logotel,
    #header #logotv {
        display: none;
    }

    .block-podkl > div > a {
        display: inline-block;
    }

    .news div img {
        display: none;
    }

    #main-content .main-content-block {
        padding: 0;
    }

    /* Container - full width */
    #wrap {
        width: 100%;
        padding: 0;
        margin: 0;
        min-width: 310px;
        padding: 0 5px;
    }

    #main-content-design .content-block {
        padding: 0;
    }
    #main-content-design .main-content-block {
        padding: 0;
        margin-bottom: 0;
        height: 1%;
    }

    #main-content-design {
        width: auto;
        float: none;
        padding: 0;
    }

    /* Header mobile layout */
    #header {
        height: auto;
        position: relative;
        padding: 10px 5px 0;
        min-height: 72px;
    }

    /* Logo - centered, stacked */
    #header #logo {
        text-align: center;
        display: block;
        margin-bottom: 10px;
    }

    #footer ul {
        font-size: 0.85em;
    }


    /* Phone - prominent position */
    #header #logotelph {
        position: static;
        display: block;
        text-align: center;
        margin: 10px 0 10px 116px;
    }

    #header #logotelph img {
        max-width: 200px;
        height: auto;
    }

    #main-content h2 {
        color: #000000;
    }

    /* Hide desktop navigation */
    #header ul#main-nav {
        display: none;
    }

    /* Show hamburger menu */
    .mobile-menu-toggle {
        display: flex;
    }

    /* Mobile navigation styles */
    #header ul#main-nav.mobile-active {
        display: block;
        position: static;
        width: 100%;
        height: auto;
        background: #fff;
        flex-direction: column;
        border-radius: 4px;
        overflow: hidden;
    }

    .ch_accept {
        width: auto;
    }

    #header ul#main-nav.mobile-active li {
        width: 100% !important;
        float: none;
        border-bottom: 1px solid #ddd;
    }

    #header ul#main-nav.mobile-active li a {
        background: #f5f5f5;
        height: auto;
        line-height: normal;
        padding: 15px 15px;
        display: flex;
        align-items: center;
        min-height: 44px;
    }

    #header ul#main-nav.mobile-active li a span {
        padding: 0;
        height: auto;
        font-size: 16px;
        color: #000000;
    }

    /* Dropdowns - expand on tap */
    #header ul#main-nav.mobile-active li div {
        position: static;
        display: none;
        padding: 0;
    }

    #header ul#main-nav.mobile-active li.mobile-open div {
        display: block;
    }

    #header ul#main-nav.mobile-active li ul {
        border-radius: 0;
        border: none;
        background: #e8e8e8;
    }


    #header ul#main-nav.mobile-active li li a {
        padding: 12px 20px;
        border-top: 1px solid #ddd;
        color: #000000;
    }

    /* Touch-friendly tap targets */
    #header ul#main-nav.mobile-active li a {
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
    }

    #header ul#main-nav.mobile-active li a:active {
        background: #ddd;
    }

    /* Content - single column */
    #content {
        background: none;
        overflow: visible;
    }

    #main-content {
        width: 100%;
        float: none;
        padding: 25px 0 0 0;
    }

    #main-content h2 {
        font-size: 1.3em;
    }

    #main-content p,
    #main-content ul,
    #main-content ol li {
        font-size: 0.85em;
        text-align: left;
        line-height: 1.5;
    }

    #main-content .main-content-block {
        padding: 0 0 5px 5px;
    }

    /* Float blocks - stack on mobile */
    #main-content .mean-content-block,
    #main-content .mean-content-block58,
    #main-content .mean-content-block30,
    #main-content .mean-content-block35 {
        float: none;
        width: 100%;
        margin-bottom: 15px;
    }

    /* Images - responsive */
    #main-content img {

    }

    .form-pay {
        display: inline-block;
    }

    .mcb-pay {
        text-align: center;
    }


    /* All content images responsive */
    img {
        max-width: 100%;
        height: auto;
    }

    /* News blocks */
    #main-content .news .button {
        float: none;
        margin: 10px auto;
    }

    /* Reset float for images in news blocks */
    #main-content .news div[style*="float"] {
        float: none !important;
        display: block;
        margin: 10px auto !important;
        max-width: 100%;
    }

    /* Sidebar - hide on mobile devices */
    #sidebar {
        display: none;
    }

    /* Footer - stack elements */
    #footer {
        padding: 15px;
        text-align: center;
    }

    #footer address {
        float: none;
        background-position: center top;
        padding: 60px 0 10px;
        margin-bottom: 15px;
        width: 100%;
    }

    #footer ul {
        position: static;
        background: none;
        padding: 0;
        width: 100%;
        height: auto;
        margin-bottom: 15px;
    }

    #footer ul li {
        float: none;
        width: 100%;
        border: none;
        border-bottom: 1px solid #ddd;
        padding: 8px 0;
    }

    #footer p {
        float: none;
        width: 100%;
        padding: 0;
        margin: 10px 0;
    }

    #header ul li a.last span, #header ul li:hover a.last span, #header ul li.jshover a.last span {
        background: none;
    }

    #footer .ipv6img {
        position: static;
        display: inline-block;
        margin: 10px;
    }

    /* Tables - responsive */
    .tablestyle {
        font-size: 11px;
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .tablestyle th,
    .tablestyle td {
        padding: 5px;
        font-size: 12px;
    }

    .table_orange th,
    .table_orange td {
        font-size: 13px;
        padding: 2px 5px;
    }

    /* Forms - full width inputs */
    .registrform {
        margin-left: 0;
        width: 100%;
        padding: 0 0;
    }


    .order_form {
        padding: 15px 10px;
    }

    .spisokform label {
        float: none;
        width: 100%;
        text-align: left;
        padding: 5px 0;
    }

    .spisokform input,
    .spisokform select,
    .spisokform textarea {
        float: none;
        width: 100%;
        max-width: 100%;
    }

    .spisokform .dobpole,
    .spisokform .desc,
    .spisokform .descb {
        margin-left: 0;
    }

    .submitbutt {
        float: none;
        margin: 10px 0;
        text-align: center;
    }


    /* Form inputs - larger, touch-friendly */
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="password"],
    select,
    textarea {
        font-size: 16px;
        padding: 6px;
        min-height: 36px;
    }

    .captchaf label {
        float: left;
        text-align: right;
        width: auto;
    }

    .captchaf #regi5 {
        width: 30%;
        float: left;
    }


    /* Submit buttons - full width on mobile */
    input[type="submit"],
    button[type="submit"],
    .button-connect {
        width: 100%;
        max-width: 305px;
        padding: 10px 15px;
        font-size: 16px;
    }

    .block-tariff-button .button-connect {
        margin: 15px auto;
        display: block;
    }

    /* Cookie notice - smaller padding */
    .user-cookie {
        padding: 15px 20px;
        font-size: 12px;
    }

    .user-cookie p {
        margin-bottom: 15px;
    }

    .user-cookie-close {
        position: static;
        display: inline-block;
        margin-top: 10px;
    }

    /* Background images - adjust or hide */
    html {
        background-size: cover;
        background-position: center top;
    }

    body {
        background-size: contain;
        background-position: center top;
    }

    /* Embedded iframes (YouTube, maps, cameras) - responsive */
    iframe {
        max-width: 100%;
        height: auto;
    }

    /* Yandex Maps iframe special handling */
    iframe[src*="yandex"] {
        width: 100% !important;
        height: 300px !important;
    }

    /* Pskov Camera iframe special handling */
    iframe[src*="pskov.camera"] {
        width: 100% !important;
        height: 200px !important;
    }

    /* Tariff cards - stack on mobile */
    #main-content-design {
        width: 100%;
        float: none;
        padding: 15px;
    }

    .block-design .tariff-list .tariff-item {
        float: none;
        width: 100%;
        max-width: 350px;
        margin: 0 auto 15px;
    }

    .block-design .tariff-list .tariff-item + .tariff-item {
        margin-left: auto;
    }

    .icon {
        height: 25px;
    }

    .icon.smile,
    .icon.binkl,
    .icon.divan,
    .icon.kybok,
    .icon.oblak {
        width: 25px;
        background-size: 600px auto;
    }
}

@media screen and (max-width: 505px) {
    #header #logotelph {
        display: none;
    }
}

@media screen and (max-width: 480px) {
    #header #logo img {
        max-width: 200px;
    }

    #header #logotv img,
    #header #logotel img {
        display: none;
    }

    #main-content h2 {
        font-size: 1.1em;
    }

    #main-content p,
    #main-content ul {
        font-size: 0.8em;
    }

    .tablestyle {
        font-size: 10px;
    }

    .tablestyle th,
    .tablestyle td {
        padding: 4px 5px;
        font-size: 12px;
    }
}
