/**
 *  BLOG LAYOUTS
 *  
 */

article.width {
    max-width: var(--article-width);
    margin: 0 auto;
}

article h1,
article h2,
article h3 {
    color: var(--color-green);
}

article strong {
    font-weight: 800;
}

article h1,
.align-center,
.attr__center {
    text-align: center;
}

.align-justify {
    text-align: justify;
}

.align-right {
    text-align: right;
}

.lyt-row {
    margin-bottom: var(--margin-double);
}

/** **/

/*
.ns__intro .lyt-row {
    margin-bottom: calc(var(--margin-double) * 2);
}

.ns__intro h2 {
    font-size: 2.2em;
}
*/

/** **/

article a {
    color: var(--color-bluegreen);
    text-decoration: underline;
}

/**
 * T A B L E S
 */

.tbl_MD {
    border-left: 1px solid #D6D6D6;
    border-top: 1px solid #D6D6D6;
    margin: 1em 0;
}

.tbl_MD td,
.tbl_MD th {
    border-right: 1px solid #D6D6D6;
    border-bottom: 1px solid #D6D6D6;
    padding: .4em .6em;
    font-weight: normal;
}

/**
 *  LAYOUTS
 */

.ns__layout {
    display: grid;
    gap: var(--gap) var(--gap);
}

.ns__layout.layout-1,
.ns__layout.layout-4,
.ns__layout.layout-5,
.ns__layout.layout-6,
.ns__layout.layout-7,
.ns__layout.layout-15,
.ns__layout.layout-18 {
    display: block;
}

.layout-0,
.layout-2,
.layout-3,
.layout-8,
.layout-16,
.layout-17 {
    grid-template-columns: repeat(2, 1fr);
}

.layout-9,
.layout-10,
.layout-11,
.layout-12,
.layout-13,
.layout-14 {
    grid-template-columns: repeat(3, 1fr);
}


.layout-0.r__1-2,
.layout-2.r__1-2,
.layout-3.r__1-2,
.layout-8.r__1-2,
.layout-16.r__1-2,
.layout-17.r__1-2 {
    grid-template-columns: 1fr 2fr;
}

.layout-0.r__1-3,
.layout-2.r__1-3,
.layout-3.r__1-3,
.layout-8.r__1-3,
.layout-16.r__1-3,
.layout-17.r__1-3 {
    grid-template-columns: 1fr 3fr;
}

.layout-0.r__2-1,
.layout-2.r__2-1,
.layout-3.r__2-1,
.layout-8.r__2-1,
.layout-16.r__2-1,
.layout-17.r__2-1 {
    grid-template-columns: 2fr 1fr;
}


.layout-0.r__3-1,
.layout-2.r__3-1,
.layout-3.r__3-1,
.layout-8.r__3-1,
.layout-16.r__3-1,
.layout-17.r__3-1 {
    grid-template-columns: 3fr 1fr;
}

/**
 *  LAYOUT 18
 */

.layout-18 {
    line-height: 0;
}

.layout-18 img {
    display: inline-block;
}


/** **/

.layout-4 {
    text-align: center;
}

.layout-4 img {
    display: block;
}

.layout-4.r__1-2 img {
    width: 33.3%;
}

.layout-4.r__1-3 img {
    width: 25%;
}

.layout-4.r__2-1 img {
    width: 66.6%;
}

.layout-4.r__3-1 img {
    width: 75%;
}

/** **/

.img_cover {
    background-size: cover;
}

/** **/

.imgGallery {
    display: flex;
    gap: var(--gap) var(--gap);
    flex-wrap: wrap;
    text-align: left;
}

.imgGallery a,
.imgGallery a img {
    display: block;
    text-decoration: none;
}

.imgGallery a span {
    display: block;
    padding-top: .6em;
    color: #000;
}

.imgGallery img {
    border-radius: var(--border-radius);
    overflow: hidden;
}

/** Zoom effect on image **/

.imgGallery img {
    transition: all .2s;
}

.imgGallery:has(a:hover) img {
    opacity: .5;
}

.imgGallery a:hover img {
    transform: scale(1.05);
    z-index: 66;
    position: relative;
    opacity: 1 !important;
}

/** **/

.elem-col img {
    border-radius: var(--border-radius);
}

/** **/

.pagination ul {
    list-style: none;
    padding: 0;
    margin: 2em 0;
    text-align: center;
    font-size: 1.2em;
}

.pagination li {
    display: inline-block;
    margin: 0 .2em;
}

.pagination li.selected a {
    background-color: var(--color-bluegreen);
    color: #fff;
}

.pagination a {
    display: block;
    min-width: 1.2em;
    padding: .2em .4em;
    text-decoration: none;
    /* border: 1px solid rgba(0, 0, 0, .2); */
    border-radius: 2px;
    color: #000;
    background: #fff;
    transition: all .2s;
}

.pagination a:hover {
    outline: 2px solid rgb(193 205 237 / 31%);
}

/** **/

.layout-7 {
    color: #fff;
    padding: 6em 15% 4em 15%;
    text-align: center;
    text-shadow: 1px 1px 2px #000;
    font-size: 130%;
}

.layout-7 h2,
.layout-7 h3 {
    color: var(--color-yellow-light);
}

.layout-7 a {
    display: inline-block;
    color: var(--color-yellow-light);
    border: 2px solid var(--color-yellow-light);
    padding: .4em 1em;
    text-decoration: none;
    border-radius: var(--border-radius-button);
    margin-top: var(--margin-double);
}

.layout-7 a:hover {
    background-color: var(--color-yellow-light);
    color: #000;
    text-shadow: none;
}