/*
Theme Name: News Theme 2
Theme URI: #
Author: News
Description: Modern, performance-optimized WordPress theme for news portals
Version: 1.0.0
Text Domain: news-theme
Domain Path: /languages
Language: it_IT
*/

/* ============================================
   WordPress Content Styles (the_content)
   ============================================ */

/* Base content container */
.entry-content,
.wp-block-post-content {
    line-height: 1.75;
    color: #374151;
}

/* Paragraphs */
.entry-content p,
.wp-block-post-content p {
    margin-bottom: 1.25em;
    line-height: 1.75;
}

.entry-content p:last-child,
.wp-block-post-content p:last-child {
    margin-bottom: 0;
}

/* Headings */
.entry-content h1,
.wp-block-post-content h1 {
    font-size: 2.25rem;
    font-weight: 700;
    line-height: 1.2;
    margin-top: 2em;
    margin-bottom: 1em;
    color: #111827;
}

.entry-content h2,
.wp-block-post-content h2 {
    font-size: 1.875rem;
    font-weight: 700;
    line-height: 1.3;
    margin-top: 1.75em;
    margin-bottom: 0.875em;
    color: #111827;
    padding-bottom: 0.5em;
    border-bottom: 2px solid #dc2626;
}

.entry-content h3,
.wp-block-post-content h3 {
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.4;
    margin-top: 1.5em;
    margin-bottom: 0.75em;
    color: #1f2937;
}

.entry-content h4,
.wp-block-post-content h4 {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.4;
    margin-top: 1.25em;
    margin-bottom: 0.625em;
    color: #374151;
}

.entry-content h5,
.wp-block-post-content h5 {
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.5;
    margin-top: 1em;
    margin-bottom: 0.5em;
    color: #4b5563;
}

.entry-content h6,
.wp-block-post-content h6 {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
    margin-top: 1em;
    margin-bottom: 0.5em;
    color: #6b7280;
}

/* Links */
.entry-content a,
.wp-block-post-content a {
    color: #dc2626;
    text-decoration: underline;
    transition: color 0.2s ease;
}

.entry-content a:hover,
.wp-block-post-content a:hover {
    color: #b91c1c;
    text-decoration: underline;
}

.entry-content a:focus,
.wp-block-post-content a:focus {
    outline: 2px solid #dc2626;
    outline-offset: 2px;
}

/* Lists */
.entry-content ul,
.entry-content ol,
.wp-block-post-content ul,
.wp-block-post-content ol {
    margin: 1.25em 0;
    padding-left: 2em;
}

.entry-content ul li,
.entry-content ol li,
.wp-block-post-content ul li,
.wp-block-post-content ol li {
    margin-bottom: 0.5em;
    line-height: 1.75;
}

.entry-content ul {
    list-style-type: disc;
}

.entry-content ol {
    list-style-type: decimal;
}

.entry-content ul ul,
.entry-content ol ol,
.entry-content ul ol,
.entry-content ol ul,
.wp-block-post-content ul ul,
.wp-block-post-content ol ol,
.wp-block-post-content ul ol,
.wp-block-post-content ol ul {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

/* Images */
.entry-content img,
.wp-block-post-content img {
    max-width: 100%;
    height: auto;
    margin: 1.5em 0;
    border-radius: 0.5rem;
}

.entry-content img.alignleft,
.wp-block-post-content img.alignleft {
    float: left;
    margin: 0 1.5em 1em 0;
}

.entry-content img.alignright,
.wp-block-post-content img.alignright {
    float: right;
    margin: 0 0 1em 1.5em;
}

.entry-content img.aligncenter,
.wp-block-post-content img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.entry-content figure,
.wp-block-post-content figure {
    margin: 1.5em 0;
}

.entry-content figcaption,
.wp-block-post-content figcaption {
    font-size: 0.875rem;
    color: #6b7280;
    text-align: center;
    margin-top: 0.5em;
    font-style: italic;
}

/* Blockquotes */
.entry-content blockquote,
.wp-block-post-content blockquote {
    margin: 1.5em 0;
    padding: 1em 1.5em;
    border-left: 4px solid #dc2626;
    background-color: #f9fafb;
    font-style: italic;
    color: #4b5563;
}

.entry-content blockquote p:last-child,
.wp-block-post-content blockquote p:last-child {
    margin-bottom: 0;
}

.entry-content blockquote cite,
.wp-block-post-content blockquote cite {
    display: block;
    margin-top: 0.75em;
    font-size: 0.875rem;
    font-style: normal;
    color: #6b7280;
}

.entry-content blockquote cite:before,
.wp-block-post-content blockquote cite:before {
    content: "— ";
}

/* Code */
.entry-content code,
.wp-block-post-content code {
    background-color: #f3f4f6;
    padding: 0.125em 0.375em;
    border-radius: 0.25rem;
    font-size: 0.875em;
    color: #dc2626;
    font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;
}

.entry-content pre,
.wp-block-post-content pre {
    background-color: #1f2937;
    color: #f9fafb;
    padding: 1.25em;
    border-radius: 0.5rem;
    overflow-x: auto;
    margin: 1.5em 0;
    line-height: 1.6;
}

.entry-content pre code,
.wp-block-post-content pre code {
    background-color: transparent;
    padding: 0;
    color: inherit;
}

/* Tables */
.entry-content table,
.wp-block-post-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5em 0;
    font-size: 0.9375rem;
}

.entry-content table th,
.entry-content table td,
.wp-block-post-content table th,
.wp-block-post-content table td {
    padding: 0.75em;
    text-align: left;
    border-bottom: 1px solid #e5e7eb;
}

.entry-content table th,
.wp-block-post-content table th {
    background-color: #f9fafb;
    font-weight: 600;
    color: #111827;
}

.entry-content table tr:hover,
.wp-block-post-content table tr:hover {
    background-color: #f9fafb;
}

/* Horizontal Rules */
.entry-content hr,
.wp-block-post-content hr {
    border: none;
    border-top: 2px solid #e5e7eb;
    margin: 2em 0;
}

/* Text Formatting */
.entry-content strong,
.entry-content b,
.wp-block-post-content strong,
.wp-block-post-content b {
    font-weight: 600;
    color: #111827;
}

.entry-content em,
.entry-content i,
.wp-block-post-content em,
.wp-block-post-content i {
    font-style: italic;
}

.entry-content mark,
.wp-block-post-content mark {
    background-color: #fef3c7;
    padding: 0.125em 0.25em;
    border-radius: 0.25rem;
}

.entry-content del,
.wp-block-post-content del {
    text-decoration: line-through;
    color: #9ca3af;
}

.entry-content ins,
.wp-block-post-content ins {
    text-decoration: underline;
    background-color: #d1fae5;
}

/* WordPress Blocks Support */
.entry-content .wp-block-group,
.wp-block-post-content .wp-block-group {
    margin: 1.5em 0;
}

.entry-content .wp-block-columns,
.wp-block-post-content .wp-block-columns {
    margin: 1.5em 0;
}

.entry-content .wp-block-button,
.wp-block-post-content .wp-block-button {
    margin: 1em 0;
}

.entry-content .wp-block-button__link,
.wp-block-post-content .wp-block-button__link {
    display: inline-block;
    padding: 0.75em 1.5em;
    background-color: #dc2626;
    color: #ffffff;
    text-decoration: none;
    border-radius: 0.375rem;
    font-weight: 500;
    transition: background-color 0.2s ease;
}

.entry-content .wp-block-button__link:hover,
.wp-block-post-content .wp-block-button__link:hover {
    background-color: #b91c1c;
}

/* Gallery */
.entry-content .wp-block-gallery,
.wp-block-post-content .wp-block-gallery {
    margin: 1.5em 0;
}

.entry-content .wp-block-image,
.wp-block-post-content .wp-block-image {
    margin: 1.5em 0;
}

/* Video */
.entry-content .wp-block-video,
.wp-block-post-content .wp-block-video {
    margin: 1.5em 0;
}

.entry-content video,
.wp-block-post-content video {
    max-width: 100%;
    height: auto;
    border-radius: 0.5rem;
}

/* Audio */
.entry-content .wp-block-audio,
.wp-block-post-content .wp-block-audio {
    margin: 1.5em 0;
}

/* Embed */
.entry-content .wp-block-embed,
.wp-block-post-content .wp-block-embed {
    margin: 1.5em 0;
}

.entry-content iframe,
.wp-block-post-content iframe {
    max-width: 100%;
    border-radius: 0.5rem;
}

/* Separator */
.entry-content .wp-block-separator,
.wp-block-post-content .wp-block-separator {
    margin: 2em 0;
    border: none;
    border-top: 2px solid #e5e7eb;
}

/* Spacer */
.entry-content .wp-block-spacer,
.wp-block-post-content .wp-block-spacer {
    margin: 0;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .entry-content h1,
    .wp-block-post-content h1 {
        font-size: 1.875rem;
    }

    .entry-content h2,
    .wp-block-post-content h2 {
        font-size: 1.5rem;
    }

    .entry-content img.alignleft,
    .entry-content img.alignright,
    .wp-block-post-content img.alignleft,
    .wp-block-post-content img.alignright {
        float: none;
        margin: 1em 0;
    }
}


/* Casinolist */

.casinolist {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 30px;
    margin-bottom: 30px;
}

.casinolist div, .casinolist a {
    box-sizing: border-box;
}

.gold-wrapper {
    background: linear-gradient(156deg, #E69D28 10%, #FFD67B 28%, #E69D28 50%, #E8AC49 75%, #EBB965 100%);
    border-radius: 10px;
    box-shadow: 0 3px 15px 0 rgba(147, 149, 204, 0.15);
    padding: 40px 3px 3px 3px;
}

.standart-wrapper {
    background: var(--second-color);
    border-radius: 10px;
    box-shadow: 0 0 6px 0 #57597E1A;
    padding: 40px 0 0 0;
}

.casinoitem {
    width: 100%;
    padding: 10px;
    background: white;
    border-radius: 0 0 8px 8px;
    margin: auto;
    position: relative;
}

.casinolist-review .casinoitem__plus p::before, .casinolist-review .casinoitem__plus ul li::before,
.promo__offer-content .casinoitem__plus p::before, .promo__offer-content .casinoitem__plus ul li::before {
    content: '';
    background-image: url(img/like.png);
    display: block;
    position: absolute;
    top: -2px;
    left: 0;
    width: 18px;
    height: 18px;
    background-size: cover;
}

.casinoitem__rank {
    position: absolute;
    top: -40px;
    left: 10px;
    height: 40px;
    font-size: 26px;
    font-weight: 600;
    line-height: 40px;
    color: white;
}

.casinoitem__rank span {
    margin-right: 12px;
}

.casinoitem__content {
    display: grid;
    grid-template-columns: 16% 10% 24% 24% calc(26% - 40px);
    grid-template-areas: 
        "logo bonus bonus              plus buttons"
        "bonustext bonustext bonustext banking banking";
    align-items: center;
    justify-items: center;
    justify-content: space-between;
    gap: 10px;    
}

.casinoitem__brand {
    grid-area: logo;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.casinoitem__logo {
    width: 130px;
    height: 130px;
    background-size: cover;
    background-position: center;
    border-radius: 8px;
    transition: opacity 0.2s;
}


.casinoitem__logo:hover {
    opacity: .8;
}

.casinoitem__rating {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    grid-area: rating;
}

.rating-info {
    display: flex;
    gap: 8px;
    align-items: center;
    grid-area: info;
}

.rating-star {
    width: 25px;
    height: 25px;
    background-image: url(img/rating-star.png);
    background-repeat: no-repeat;
    background-size: cover;
}

.rating-value {
    font-size: 16px;
    font-weight: 600;
}

.rating-value span {
    color: var(--grey-text);
}

.rating-tc {
    font-size: 12px;
    font-weight: 300;
}

.casinoitem__plus {
    border-radius: 10px;
    border: 2px solid var(--light-bg);
    padding: 10px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center; 
    grid-area: plus;
}

.casinoitem__plus ul {
    margin-bottom: 0;
	list-style-type: none;
    padding: 0;
	margin: 0;
}

.casinoitem__plus p, .casinoitem__plus ul li {
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2; 
    margin-bottom: 10px;
    padding-left: 24px;
    position: relative;
}

.casinoitem__plus p:last-child, .casinoitem__plus ul li:last-child {
    margin-bottom: 0;
}

.casinoitem__plus p::before, .casinoitem__plus ul li::before {
    content: url(img/marker.png);
    background-image: none;
    display: block;
    position: absolute;
    top: -1px;
    left: -4px;
}

.casinoitem__bonus {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    width: 100%;
    height: 100%;
    grid-area: bonus;
}

.casinoitem__bonus-payspeed,
.casinoitem__bonus-payrate,
.casinoitem__bonus-limits,
.casinoitem__bonus-welcome {
    border: 2px solid var(--light-bg);
    border-radius: 8px;
    padding: 8px;
}

.casinoitem__bonus-payspeed > div:nth-of-type(1)::before {
    content: url(img/bonus-1.png);
    position: absolute;
    left: 0;
	top: -3px;
}

.casinoitem__bonus-payrate > div:nth-of-type(1)::before {
    content: url(img/bonus-2.png);
    position: absolute;
    left: 0;
	top: -3px;
}

.casinoitem__bonus-limits > div:nth-of-type(1)::before {
    content: url(img/bonus-3.png);
    position: absolute;
    left: 0;
	top: -3px;
}

.casinoitem__bonus-welcome > div:nth-of-type(1)::before {
    content: url(img/bonus-4.png);
    position: absolute;
    left: 0;
	top: -3px;
}

.casinoitem__bonus-item > div:nth-of-type(1) {
    position: relative;
    font-size: 12px;
    padding: 0 8px 0 24px;
    min-height: 30px;
    line-height: 1;
}

.casinoitem__bonus-item > div:nth-of-type(2) {
    font-size: 16px;
    font-weight: 700;
    padding-top: 4px;
}

.casinoitem__bonus-welcome > div:nth-of-type(2) {
    color: var(--second-color);
    font-size: 20px;
    line-height: 1;
}

.casinoitem__buttons {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: center;
    grid-area: buttons;
}

.casinoitem__reg {
    max-width: 100%;
    border-radius: 6px;
    padding: 14px 30px;
}

.casinoitem__bonustext {
    width: 100%;
    height: 100%;
    grid-area: bonustext;
    border-radius: 10px;
    border: 2px solid var(--light-bg);
    padding: 20px;
}

.casinoitem__bonustext-text {
    font-size: 14px;
    margin-top: 14px;
}

.casinoitem__bonustext-title, .casinoitem__banking-title {
    font-size: 16px;
    font-weight: 700;
    padding-left: 28px;
    position: relative;
}

.casinoitem__bonustext-title::before {
    content: url(img/cherry.png);
    position: absolute;
    top: -5px;
    left: -5px;
}

.casinoitem__banking {
    width: 100%;
    height: 100%;
    grid-area: banking;
    border-radius: 10px;
    border: 2px solid var(--light-bg);
    padding: 20px;
}

.casinoitem__banking-title::before {
    content: url(img/dollar.png);
    position: absolute;
    top: -5px;
    left: -5px;  
}

.casinoitem__banking-items {
    margin-top: 16px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.casinoitem__banking-items div {
    width: 48px;
    height: 36px;
    box-shadow: 0 1px 4px 0 rgba(41, 44, 44, 0.12);
    border-radius: 6px;
    background-repeat: no-repeat;
    background-repeat: no-repeat;
	background-size: contain;
    background-position: center;		
}


.visa {
    background-image: url(img/pay/visa.webp);
}

.mastercard {
    background-image: url(img/pay/mastercard.webp);
}

.bitcoin {
    background-image: url(img/pay/bitcoin.webp);
}

.spei {
    background-image: url(img/pay/spei.webp);
}

.cash {
    background-image: url(img/pay/cash.webp);
}

.skrill {
    background-image: url(img/pay/skrill.webp);
}

.neteller {
    background-image: url(img/pay/neteller.webp);
}

.payscale {
    background-image: url(img/pay/payscale.webp);
}

.paypal {
    background-image: url(img/pay/paypal.webp);
}

.ethereum {
    background-image: url(img/pay/ethereum.webp);
}

.todito {
    background-image: url(img/pay/todito.webp);
}

.euteller {
    background-image: url(img/pay/euteller.webp);
}

.paysafecard {
    background-image: url(img/pay/paysafe2.webp);
}

.zimpler {
    background-image: url(img/pay/zimpler.webp);
}

.payid {
    background-image: url(img/pay/payid.webp);
}

.americanexpress {
    background-image: url(img/pay/americanexpress.webp);
}

.bitcoincash {
    background-image: url(img/pay/bitcoincash.webp);
}

.cashtocode {
    background-image: url(img/pay/cashtocode.webp);
}

.discover {
    background-image: url(img/pay/discover.webp);
}

.ezeewallet {
    background-image: url(img/pay/ezeewallet.webp);
}

.litecoin {
    background-image: url(img/pay/litecoin.webp);
}

.neosurf {
    background-image: url(img/pay/neosurf.webp);
}

.trustly {
    background-image: url(img/pay/trustly.webp);
}

.banktransfer {
    background-image: url(img/pay/banktransfer.webp);
}

.dogecoin {
    background-image: url(img/pay/dogecoin.webp);
}

.ripple {
    background-image: url(img/pay/ripple.webp);
}

.usdt_tether {
    background-image: url(img/pay/tether.webp);
}

.astropay {
    background-image: url(img/pay/astropay.webp);
}

.ecopayz {
    background-image: url(img/pay/ecopayz.webp);
}

.gpay {
    background-image: url(img/pay/gpay.webp);
}

.imps {
    background-image: url(img/pay/imps.webp);
}

.jeton {
    background-image: url(img/pay/jeton.webp);
}

.muchbetter {
    background-image: url(img/pay/muchbetter.webp);
}

.paytm {
    background-image: url(img/pay/paytm.webp);
}

.phonepe {
    background-image: url(img/pay/phonepe.webp);
}

.pix {
    background-image: url(img/pay/pix.webp);
}

.upi {
    background-image: url(img/pay/upi.webp);
}



.casinoitem__more {
    display: none;
    width: 100%;
    border: 2px solid var(--button-color);
    color: var(--button-color);
    margin-bottom: 0;
}

.casinoitem__more::after {
    content: '';
    display: inline-block;
    margin-left: 10px;
    border: solid var(--second-color);
    border-width: 0 2px 2px 0;
    padding: 2px;
    transform: rotate(45deg);
    height: 2px;
    width: 2px;
    margin-bottom: 2px;
}

.casinoitem-open .casinoitem__more::after {
    transform: rotate(225deg);
    margin-bottom: 0;
}

.casinoitem__review {
    max-width: 100%;
    text-decoration: none;
    color: var(--button-color);
    border-bottom: 2px dashed var(--button-color);
	font-weight: 600;
    transition: border-bottom 0.15s, color 0.15s;   
}

.casinoitem__review:hover {
    border-bottom: 2px dashed var(--button-hover);
    color: var(--button-hover);
}



/* casinoitem review */

.casinolist-review {
    margin-top: 20px;
}

.casinolist-review .casinoitem__content {
    grid-template-columns: 2fr 1fr 2fr 3fr 3fr;
    grid-template-areas: none;
}

.casinolist-review .casinoitem__rating, 
.casinolist-review .casinoitem__plus, 
.casinolist-review .casinoitem__bonus, 
.casinolist-review .casinoitem__buttons, 
.casinolist-review .casinoitem__brand { 
    grid-area: auto;
    width: 100%;
}



.casinolist-review .casinoitem__logo {
    width: 100%;
}

.casinolist-review .casinoitem {
    padding: 20px;
    background: var(--light-bg);
    border-radius: 8px;
}

.casinolist-review .casinoitem__plus,
.casinolist-review .casinoitem__bonus {
    background: white;
    border: none;
}

.casinolist-review .casinoitem__reg {
    padding: 10px 30px;
}

.casinoitem__info {
    background: white;
    width: 100%;
    height: 100%;
    border-radius: 10px;  
    padding: 10px;
}

.casinoitem__info > div:nth-of-type(1) {
    font-size: 16px;
    font-weight: 700;
    min-height: 46px;
    position: relative;
    padding-left: 36px;
}

.casinoitem__overview > div:nth-of-type(2) {
    font-size: 13px;
}

.casinoitem__welcome > div:nth-of-type(2)  {
    font-size: 26px;
    font-weight: 700;
    text-align: center;
    color: var(--second-color);
}

.casinolist-review .casinoitem__banking-items {
    margin-top: 0;
}

.casinoitem__welcome > div:nth-of-type(1)::before {
    position: absolute;
    content: url(img/bonus.png);
    left: 0;
    top: -3px;
}

.casinoitem__bankoptions > div:nth-of-type(1)::before {
    position: absolute;
    content: url(img/dollar.png);
    left: 0;
    top: -3px;
}

.casinoitem__overview > div:nth-of-type(1)::before {
    position: absolute;
    content: url(img/overview.png);
    left: 0;
    top: -2px;
}


@media (max-width: 1200px) {
    
    .casinoitem {
        padding: 10px;
    }
    
    .casinoitem__logo {
        width: 100px;
        height: 100px;
    }

    .casinoitem__reg {
        width: 100%;
        padding: 14px 15px;
        font-size: 16px;
    } 
    
    .casinoitem__review {
        font-size: 14px;
    }
    
}

@media (max-width: 768px) {
    
    .gold-wrapper {
        background: linear-gradient(110deg, #E69D28 10%, #FFD67B 28%, #E69D28 50%, #E8AC49 75%, #EBB965 100%);
    }
    
    .casinoitem {
        padding: 20px 10px;
    }    
    
    .casinoitem__content {
        display: flex;
        flex-direction: column;
        width: 280px;
        margin: auto;        
    }

	.casinoitem__bonus-payspeed, .casinoitem__bonus-payrate, .casinoitem__bonus-limits, .casinoitem__bonus-welcome, .casinoitem__bonus {
		height: auto;
	}
    
    .casinoitem__brand {
        width: 100%;
		align-items: center;
    }    
    
    .casinoitem__logo {
        width: 256px;
        height: 256px;
        background-position: center;
    }
    
    .casinoitem__buttons {
        width: 100%;
    }
    
    .casinoitem__reg {
        width: 100%;
        font-size: 18px;
    }    

    .casinoitem__review {
        font-size: 16px;
    }
    
    .casinoitem__plus p, .casinoitem__plus ul li {
        line-height: 1.5;
    }
    
    .casinoitem__bonustext, .casinoitem__banking {
        padding: 10px;
    }
	
    .casinoitem__more {
        display: block;
    }
    
    .casinoitem__content .casinoitem__plus {
        display: none;
    }
    
    .casinoitem__bonustext {
        display: none;
    }
    
    .casinoitem__banking {
        display: none;
    }
    
    .casinoitem-open .casinoitem__plus {
        display: block;
        order: 5;
    }
    
    .casinoitem-open .casinoitem__bonustext {
        display: block;
        order: 6;
    }
    
    .casinoitem-open .casinoitem__banking {
        display: block;
        order: 7;
    } 
    
    .casinoitem-open .casinoitem__more {
        display: block;
        order: 10;
    }
    
}
