#top                            { max-width: 100%; overflow-x: hidden; }
#right                          { display: none; }
#container                      { display: block; padding: 20px; min-width: 0; }
#overlay                        { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(0,0,0,0.5); z-index: 4000; }
#overlay                        { animation: overlay 1s forwards; }
.mobile_btn:before              { content: '\f059'; font: 100 30px/70px 'Font Awesome 5 Pro'; color: var(--color-text-button); }
.mobile_menu:before             { content: '\f0c9'; }
.mobile_login:before            { content: '\f007'; }
.menu_close:before              { content: '\f00d'; }
#window                         { width: 100vw; height: 100vh; }
.text,.select                   { max-width: 100%; box-sizing: border-box; }

#header                         { height: 70px; }
#header .logo                   { top: 12px; left: 50%; transform: scale(0.8) translateX(-50%); transform-origin: 0 0; }
#header .nav                    { width: 85vw; height: 100vh; background: #fff; position: fixed; z-index: 5000; top: 0; left: -110vw; overflow-y: auto; }
#header .nav                    { box-shadow: 0 0 10px rgba(0,0,0,0.5); margin: 0; padding: 60px 30px 30px 30px; box-sizing: border-box; transition: all 600ms; }
#header .nav.open               { left: 0; }
#header .nav li                 { display: block; margin: 0; }
#header .nav .acc               { display: block; text-align: center; }
#header .nav .active a          { border: none; color: #000; }
#header .mobile_btn             { position: absolute; top: 0; left: 0; line-height: 70px; padding-left: 20px; }
#header .mobile_login           { left: auto; right: 0; padding-left: 0; padding-right: 20px; }
#header .menu_close             { right: 30px; top: 0; left: auto; }
#header .nav .acc               { margin-top: 50px; }
#header .nav .level_2           { display: block; }
#header .nav .level_2 li        { margin: 0; }
#header .nav .level_2 a:before  { content: '\f0c8'; font: bold 14px 'Font Awesome 5 Pro'; display: inline-block; color: var(--color-text-two); margin-right: 10px; }
#header .nav .show_regular      { display: none; }
#header .nav .search            { display: block; }
#header .nav .search input      { height: 40px; line-height: 30px; border: none; outline: none; background: #eee; border-radius: 20px; text-align: center; padding: 0 20px; }
#header .nav .search input      { display: block; width: 100%; margin-top: 10px; box-sizing: border-box; }

#slider                         { height: auto; text-align: center; min-height: 70vh; transition: all 1s; }
#slider h2                      { font-size: 48px; margin-bottom: 10px; color: #CD982E; background: linear-gradient(#F0CF85, #CF8500); }
#slider h2                      { -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
#slider p                       { font-size: 36px; padding: 0 30px 30px 30px; }
#slider .block                  { padding: 60px 30px; box-sizing: border-box; transition: all 1s; }
#slider .image                  { opacity: 0.5; top: 50%; left: 50%; transform: translate(-50%, -50%); display: none; }
#slider .image img              { zoom: 0.3; }
#slider .button                 { font-size: 18px; line-height: 50px; height: 50px; border-radius: 25px; margin: 0 -30px; padding: 0; display: block; }

#main .agent_filter             { display: none; }
#main .mod_register form        { display: block; }
#main .mod_register .row        { margin-bottom: 10px; }
#main .mod_register .submit     { display: block; text-align: center; width: 100%; }
#main div.phone                 { grid-gap: 10px; }
#main .check label              { max-width: 90%; }
#main .mod_login .text          { width: 100%; margin: 0 0 10px; line-height: 40px; height: 40px; border-radius: 20px; box-sizing: border-box; }
#main .mod_login .submit        { display: block; width: 100%; box-sizing: border-box; margin: 0 0 10px; line-height: 40px; height: 40px; border-radius: 20px; }
#main .mod_login .pwlink        { display: block; text-align: center; opacity: 0.7; }
#main .free_agent:before        { display: none; }
#main .favorites                { display: block; }
#main .payment .submit          { width: 100%; box-sizing: border-box; }

#main .profile                  { padding: 145px 20px 20px 20px; }
#main .mod_logout .infos        { line-height: 25px; margin-bottom: 15px; }
#main .mobile_btn               { display: none; }
#main .nav li                   { line-height: 22px; }
#main .profile .circle          { top: 20px; left: 20px; }
#main .profile img              { width: 90px; height: 90px; }
#main .profile .circle svg      { width: 100px; height: 100px; top: 15px }
#main .profile h3               { position: absolute; top: 20px; left: 140px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; width: calc(100% - 165px); }
#main .profile .infos           { position: relative; top: auto; left: auto; }
#main .profile .button          { display: block; margin-bottom: 10px; }
#main .profile .right           { position: static; top: auto; right: auto; width: auto; text-align: left; margin-bottom: 20px; }
#main .profile .infos           { display: grid; grid-template-columns: 1fr 1fr; width: auto; text-align: left; margin-bottom: 20px; font-size: 14px; }
#main .profile .rating          { position: absolute; top: 60px; left: 140px; }
#main .profile .ratings         { position: absolute; top: 95px; left: 140px; color: var(--color-text-soft); }
#main .profile .buttons         { display: block; }
#main .campagent:after          { padding: 2px 6px; font-size: 12px; }

#main .detail                   { text-align: center; padding-top: 30px; }
#main .detail h1                { margin-bottom: 60px; font-size: 36px; }
#main .detail img               { position: static; width: 50%; height: auto; margin-bottom: 10px; }
#main .detail .tariff           { display: block; text-align: center; }
#main .detail .pnotice          { margin-bottom: 0; }
#main .detail .rating           { top: 90px; left: 50%; transform: translateX(-50%); }
#main .detail .ratings           { display: none; }

#main .ratings .inside          { display: block; }
#main div.rating .stars         { position: static; margin-left: -10%; display: block; margin-bottom: 10px; }
#main .cats ul                  { display: block; }

#tariffs .pay                   { width: 21%; margin-right .5%; }
#tariffs p                      { width: 100%; }
#tariffs .cte_tariffs           { display: block; }
#tariffs .cte_tariffs p         { margin-bottom: 20px; }

#footer .inside                 { display: block; text-align: center; }
#footer .block                  { margin-bottom: 30px; }
#footer .last ul                { position: static; margin: 30px 0; }
#footer .last li                { display: block; }
#footer li.last                 { display: none; }

@keyframes overlay {
    from { opacity: 0; }
    to { opacity: 1; }
}