* {
    margin: 0;
    padding: 0;
    font: inherit;
    color: inherit;
    box-sizing: border-box;
}

:root { --lh: 1.5em }

::selection { background: #ddd; color: #000 }

html {
    margin: 0 0 0 calc(100vw - 100%);
    -webkit-text-size-adjust: 100%;
    height: 100%;
}

body {
    font: 1em/var(--lh) monospace;
    background: #f2f2f2;
    padding: 16vh 2em 0;
    display: grid;
	grid: 1fr / minmax(auto, 64ch);
    justify-content: center;
    height: 100%;
    white-space: pre-wrap;
    font-family: "Noto Serif Bengali", serif; 
}

a {
	display: inline-block;
	padding: .16666em;
	margin-left: -.16666em;
	text-decoration: none;
}

a i { border-bottom: 1px dotted }
a:active i { border: none }

h1 { margin-bottom: var(--lh);font-size: large;}

h1 a {
	display: inline;
	margin: 0;
	padding: 0;
}

nav { margin-top: -.16666em }

/* p { margin-bottom: var(--lh) } */

footer { padding: calc(var(--lh)*2) 0 8vh }
footer p { margin: 0 }

@media (max-device-width: 600px) {
    body { padding-top: 2em; justify-content: start }
    footer { padding-bottom: 2em }
	a i { border-color: #888 }
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
}

hr {
  border: 0;
  height: 40px;   
  background: transparent;
}

.sl {
    margin-top: -2rem;
    line-height: 1em;
}