h1 {
    font-size: clamp(3.4rem, calc(3.4rem + ((1vw - 0.3rem) * 1.2)), 4rem);
    max-width: 75rem;
    padding: 1rem;
    margin-bottom: 0;
}

h2 {
    margin-top: 5rem;
}

h3:not(.related-title){
    margin-top: 2rem;
}

h2, h3, h4 {
    position: relative;
    display: inline-flex;
    z-index: 1;
}

h2::before, h3::before, h4::before {
    position: absolute;
    content: "";
    height: clamp(0.8rem, calc(0.8rem + ((1vw - 0.32rem) * 0.4545)), 1.2rem);
    width: 60%;
    background: linear-gradient(90deg, #ffa339 0%, #ffd952 70%, rgba(0,212,255,0) 100%);
    top: clamp(2.8rem, calc(2.8rem + ((1vw - 0.32rem) * 0.7955)), 3.5rem);
    left: 0;
    z-index: -1;
}

h3::before {
    background: linear-gradient(90deg, #009fff 0%, #009fff9e 70%, rgba(0,212,255,0) 100%);
    height: clamp(0.5rem, calc(0.5rem + ((1vw - 0.32rem) * 0.3409)), 0.8rem);
    top: clamp(2.4rem, calc(2.4rem + ((1vw - 0.32rem) * 0.5682)), 2.9rem);

}

.related-heading::before, .related-title::before, #comments-section h2::before {
    background: none;
}

.article-banner {
    display: flex;
    position: relative;
    color: #fff;
    background: #010a11;
    text-shadow: 0 0 .5rem #010a11;
    height: 72rem;
}

.article-banner picture {
    width: 100%;
    max-width: 128rem;
    margin-left: auto;
}

.article-banner img {
    height: 100%;
    position: absolute;
    object-fit: cover;
    right: 0;
}

.banner-hover {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 1rem 5rem;
}

h1, .meta {
    background: #010a11;
    z-index: 1;
}

.meta {
    font-size: clamp(1.3rem, calc(1.3rem + ((1vw - 0.3rem) * 0.1754)), 1.5rem);
    padding: 1rem;
    margin-right: auto;
    width: 100%;
}

.article-content {
    padding: clamp(5.5rem, calc(5.5rem + ((1vw - 0.32rem) * 2.2727)), 7.5rem) 1rem;
    max-width: 80rem;
    margin: auto;
}

.article-bg {
    width: 100%;
    background: #ffffff;
}

.article-content {
    position: relative;
    top: -6rem;
    background: #fff;
    border-top: 0.5rem solid #d30000;
}

.article-content p {
    margin-block-start: 1rem;
    margin-block-end: 2rem;
}

.article-content > p:first-of-type {
    margin-block-start: 0;
}

.article-content > p:first-of-type:first-line {
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: .1rem;
}

.article-content img {
    max-width: 100%;
}

.is-layout-flex {
    display: flex;
    justify-content: center;
}

.wp-element-caption {
    font-size: clamp(1.3rem, calc(1.3rem + ((1vw - 0.32rem) * 0.3409)), 1.6rem);
    font-family: 'Poppins';
    text-align: center;
    color: #939393;
    padding: 1rem;
    font-style: italic;
}

.article-content p a {
    color: #0000ff;
    background: #e6f2ff;
    background-image: linear-gradient(#009fffde, #009fffde), linear-gradient(#009fffde, #009fffde);
    background-size: 2rem .2rem, 100% .2rem, 0 .2rem;
    background-position: calc(2rem * -1) 100%, 100% 100%, 0 100%;
    background-repeat: no-repeat;
    transition: background-size .2s linear, background-position .2s linear;
    padding: .4rem .4rem .1rem 0;
    text-decoration: none;
}

.article-content p a:hover {
    background-size: 2rem .2rem, 0 .2rem, 100% .2rem;
    background-position: calc(100% + 2rem) 100%, 100% 100%, 0 100%;
}
   
.alpha-speech {
    align-self: center;
    position: relative;
    max-width: 45rem;
    background-color: #f9f9f9;
    padding: 1.125em 1.5em;
    font-size: 0.9em;
    border-radius: 1rem;
    box-shadow: 0 0.125rem 0.3rem rgba(0, 0, 0, .15), 0 0.0625rem 0.125rem rgba(0, 0, 0, .2);
}

.alpha-speech::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 1.5em;
    border: 0.75rem solid transparent;
    border-top: none;
    transform: rotate(180deg);
    border-bottom-color: #f9f9f9;
    filter: drop-shadow(0 -0.08rem 0.0625rem rgba(0, 0, 0, 0.3));
}

.article-content ul {
    list-style: none;
}

.article-content ul li:before {
    font-family: Icons;
    content: '\e902';
    margin-right: .3rem;
    color: #ff0000;
}

.info:before, .fire:before, .look:before, .beware:before {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    width: 4rem;
    height: 4rem;
    top: -1.9rem;
    left: -2.2rem;
    color: #fff;
    font-size: 2.5rem;
    border-radius: 50%;
    font-family: Icons;
}

.look, .info, .fire, .beware {
    padding: 2rem 1.5rem;
    position: relative;
}

.info:before {
    content: "\e901";
    background: #0072f5;
}

.info {
    border: .1rem solid #0072f514;
    border-left: .5rem solid #0072f5;
    background: #e6f2ff;
}

.look:before {
    content: "\e969";
    background: #ffcf22;
    text-shadow: .1rem .1rem .6rem #00000020;
}

.look {
    border: .1rem solid #ffcf2233;
    border-left: .5rem solid #ffcf22;
    background: #ffebcd;
}

.fire:before {
    content: "\e9a9";
    background: rgb(1,10,17);
    background: linear-gradient(720deg, rgba(1,10,17,1) 0%, rgba(9,75,121,1) 100%);
    font-weight: 900;
    color: #ffb100;
}

.fire {
    border: .1rem solid #0072f514;
    border-left: .5rem solid #010a11;
    background: #e6f2ff;
}

.fire a {
    letter-spacing: .05rem;
}

.beware:before {
    content: "\e900";
    background: #d00000;
}

.beware {
    border: .1rem solid #0072f514;
    border-left: .5rem solid #d00000;
    background: #ffd9d2;
}

.article-content .ratings-upper p {
    margin-block-start: 1rem;
    margin-block-end: 1rem;
}

.rating {
    margin: 2rem auto;
    border: .1rem solid #00000021;
}

.rating p {
    margin: 0;
    color: #555;
}

.ratings-upper {
    border-bottom: .1rem solid #00000014;
    align-items: center;
    padding: 0 1rem;
}

.ratings-upper p, .total-score {
    font-size: clamp(1.5rem, calc(1.5rem + ((1vw - 0.32rem) * 0.1786)), 1.7rem);
}

.ratings-upper, .ratings-lower {
    display: flex;
    justify-content: space-between;
}

.ratings-lower {
    padding: 1rem;
}

.rating-desc {
    padding-right: 1rem;
}

.ratings-upper .star-rating {
    font-size: 2.5rem;
    line-height: 1.2;
}

.star-rating {
    --percent: calc(var(--rating) / 5 * 100%);
    font-size: 3.5rem;
    line-height: 1;
    transition: .3s;
}

p.total-desc {
    font-weight: 900;
    color: #000;
    font-size: clamp(1.9rem, calc(1.9rem + ((1vw - 0.32rem) * 0.4464)), 2.4rem);
}

p.total-number {
    display: flex;
    justify-content: flex-end;
    font-size: 4rem;
    font-weight: 900;
    color: #000;
    transition: .3s;
}

.star-rating:hover, p.total-number:hover {
    transform: scale(1.2);
}

.star-rating::before {
    content: "★★★★★";
    background: linear-gradient(90deg, #c71b00 var(--percent), #fff var(--percent));
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

@media only screen and (min-width: 2100px) {
    .banner-hover {
        padding-left: clamp(5rem, calc(5rem + ((1vw - 2.1rem) * 54.3478)), 30rem);
        position: relative;
        left: 12%;
    }
}

@media only screen and (max-width: 1533px) {
    .article-banner {
        height: 54.1rem;
    }
}

@media only screen and (min-width: 1310px) and (max-width: 1700px) {
    .banner-hover {
        padding: 1rem 2rem;
    }
}

@media only screen and (max-width: 1200px) {
    .banner-hover {
        padding: 1rem;
    }
}

@media only screen and (max-width: 1150px) {
    .banner-hover {
        margin-top: 18rem;
    }
    .social-icons {
        background: #1b2329;
    }
}

@media only screen and (min-width: 800px) {
    h1 {
        font-size: clamp(4rem, calc(4rem + ((1vw - 0.8rem) * 3.125)), 6rem);
    }
}

@media only screen and (max-width: 800px) {
    .breadcrumb, .article-content {
        top: 0;
    }
    .banner-hover {
        margin-top: 31rem;
    }
}

@media only screen and (max-width: 769px) {
    .article-banner {
        flex-direction: column-reverse;
        justify-content: flex-end;
        height: auto;
    }
    .article-banner img {
        position: static;
        height: 43.9rem;
    }
    .banner-hover {
        background: #010a11;
        margin-top: 0;
        padding: 1.5rem 1rem 1.5rem 0;
    }
    .meta {
        padding: 0 1rem;
    }
    h1, .meta {
        background: none;
        padding-top: 0;
        margin-right: auto;
    }
    .social-icons {
        background: rgba(255,255,255,0.1);
        margin-left: 1rem;
        border-radius: 5rem;
    }
}

@media only screen and (max-width: 601px) {
    .related-articles {
        flex-direction: column;
    }
    .related {
        width: 100%;
        align-self: center;
        margin-bottom: 2rem;
        max-width: 48rem;
    }
    .article-banner img {
        height: 33.8rem;
    }
    .is-layout-flex {
        flex-direction: column;
    }
}

@media only screen and (max-width: 480px) {
    .share-icons svg {
        height: 3rem;
        width: 3rem;
        margin: 0 1rem;
    }
    .comments-bottom #commenting-form {
        flex-direction: column;
    }
    #commenting-form > div {
        width: 100%;
    }
	h2 {
		margin-top: 3rem;
		margin-bottom: 0;
	}
	h3, h4 {
		margin-bottom: 0;
	}
}