html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{box-sizing:border-box;margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0} :root { --main-bg-color: #f2f3f6; --line-color: #8b687f; --link-color: #3e7543; } body { width: 100%; min-height: 100vh; font-size: 24px; display: flex; flex-direction: column; align-items: center; padding: 1em; background-color: var(--main-bg-color); } body > header { display: flex; flex-direction: row; gap: 0.5em; border-bottom: 1px solid var(--line-color); padding-bottom: 0.5em; width: 100%; @media only screen and (min-width: 651px) { #sidebar-show-hide { display: none; } } h1 { flex: 1; } } section#content { display: flex; flex-direction: row; width: 100%; @media only screen and (max-width: 650px) { position: relative; } } #contacts-sidebar { display: flex; flex-direction: column; padding-right: 1em; @media only screen and (max-width: 650px) { position: absolute; float: left; z-index: 1; left: 0; width: 100%; background-color: #0003; height: 100%; &.hide { display: none; } } ul { flex: 1; width: fit-content; background-color: var(--main-bg-color); padding: 0.5em 1em 0 0; @media only screen and (min-width: 651px) { border-right: 1px solid var(--line-color); } button { width: 100%; } } li { border-bottom: 1px solid var(--line-color); padding: 0.5em 0; &:last-of-type { border-bottom: none; } } } main { display: flex; flex-direction: column; flex: 1; } .icon { width: 1em; height: 1em; vertical-align: -0.125em; overflow: visible; } a, a:visited { color: var(--link-color); text-decoration: underline dotted; }