/* NewsDiscoPolo - strona główna z bloków Gutenberga */
.nd-home{--nd-red:#d6102a;--nd-red2:#a3001a;--nd-ink:#1b1b22;--nd-mute:#6b6b78;--nd-line:#ececf1;background:#f7f7f9;padding:24px 0 40px!important;color:var(--nd-ink);margin-top:0!important}
.nd-home .nd-wrap{max-width:1290px;margin:0 auto!important;padding:0 16px}
.nd-home .nd-wrap>*{margin-top:0;margin-bottom:28px}
.nd-home a{text-decoration:none;color:inherit}
.nd-home .wp-block-post-template{list-style:none;margin:0;padding:0}
.nd-home .wp-block-post{margin:0}
.nd-home .wp-block-post-featured-image{margin:0;overflow:hidden;background:linear-gradient(135deg,#d6102a,#5b0b5e)}
.nd-home .wp-block-post-featured-image a,.nd-home .wp-block-post-featured-image img{display:block;width:100%;height:100%;object-fit:cover}
.nd-home .wp-block-post-title{margin:0;font-size:15px;line-height:1.3;font-weight:800}
.nd-home .wp-block-post-title a:hover{color:var(--nd-red)}
.nd-home .wp-block-post-date{font-size:12px;color:var(--nd-mute)}
.nd-home .nd-txt{display:flex;flex-direction:column;gap:6px;margin:0}
.nd-home .nd-txt>*{margin:0}
/* etykieta kategorii, tylko pierwsza */
.nd-home .wp-block-post-terms{font-size:0;line-height:1}
.nd-home .wp-block-post-terms a,.nd-badge{display:inline-block;background:var(--nd-red);color:#fff!important;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:4px 8px;border-radius:4px;line-height:1.2}
.nd-home .wp-block-post-terms a:not(:first-child),.nd-home .wp-block-post-terms__separator{display:none}
.nd-home p.nd-badge{width:max-content;margin:0}
.nd-badge--light{background:rgba(255,255,255,.2)!important}
/* przyciski */
.nd-home .wp-block-button__link{background:linear-gradient(180deg,#ec1a34,var(--nd-red2));color:#fff;font-weight:800;padding:12px 26px;border-radius:999px;box-shadow:0 6px 16px rgba(214,16,42,.3)}
.nd-home .nd-btn--white .wp-block-button__link{background:#fff;color:var(--nd-red);box-shadow:none}

/* HERO */
.nd-hero{display:grid!important;grid-template-columns:2.2fr 1fr;gap:16px}
.nd-hero>*{margin:0!important}
.nd-hero__main,.nd-hero__main .wp-block-post-template,.nd-hero__main .wp-block-post{height:100%}
.nd-hero__main .wp-block-post{position:relative;border-radius:14px;overflow:hidden;min-height:420px;background:#222}
.nd-hero__main .wp-block-post-featured-image{position:absolute;inset:0}
.nd-hero__main .wp-block-post-featured-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(60,0,40,.88) 0%,rgba(120,0,60,.55) 45%,transparent 75%);pointer-events:none}
.nd-hero__main .nd-txt{position:absolute;left:0;bottom:0;padding:36px;max-width:620px;color:#fff;gap:14px}
.nd-hero__main .wp-block-post-title{font-size:clamp(26px,3.4vw,44px);font-weight:900;line-height:1.08;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.35)}
.nd-hero__main .wp-block-post-title a{color:#fff}
.nd-hero__main .wp-block-post-excerpt{font-size:15px;opacity:.92}
.nd-hero__main .wp-block-post-excerpt p{margin:0}
.nd-hero__main .wp-block-post-excerpt__more-text{display:none}
.nd-hero__side .wp-block-post-template{display:flex;flex-direction:column;gap:12px;height:100%}
.nd-mini .wp-block-post{flex:1;display:grid;grid-template-columns:44% 1fr;gap:12px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.05)}
.nd-mini .wp-block-post-featured-image{min-height:110px}
.nd-mini .nd-txt{padding:12px 12px 12px 0;justify-content:center}
.nd-mini .wp-block-post-title{font-size:14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

/* reklamy */
.nd-ad{text-align:center}
.nd-ad__ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:110px;border:2px dashed #e3c3c9;border-radius:12px;background:repeating-linear-gradient(45deg,#fff,#fff 12px,#fdf3f5 12px,#fdf3f5 24px)}
.nd-ad__ph small{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--nd-mute)}
.nd-ad__ph strong{font-size:18px;color:var(--nd-red)}
.nd-ad__ph span{font-size:13px;color:var(--nd-mute)}
.nd-ad--box,.nd-ad--box .nd-ad__ph{height:100%;min-height:250px}

/* nagłówki sekcji */
.nd-head{display:flex!important;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px!important}
.nd-head>*{margin:0!important}
.nd-head h2{font-size:24px;font-weight:900;padding-left:12px;border-left:4px solid var(--nd-red);line-height:1.1}
.nd-head__more{font-size:13px;font-weight:700;white-space:nowrap}
.nd-head__more a{color:var(--nd-red)!important}
.nd-head__more a:after{content:" \2192"}

/* 3 kolumny */
.nd-cols{gap:24px!important}
.nd-col{background:#fff;border-radius:14px;padding:18px;box-shadow:0 2px 10px rgba(0,0,0,.05)}
.nd-list .wp-block-post{display:grid;grid-template-columns:42% 1fr;gap:12px;padding:10px 0;border-top:1px solid var(--nd-line)}
.nd-list .wp-block-post:first-child{border-top:0;padding-top:0}
.nd-list .wp-block-post-featured-image{border-radius:8px;aspect-ratio:4/3}
.nd-list .wp-block-post-title{font-size:14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nd-videos .wp-block-post-featured-image{position:relative;aspect-ratio:16/9}
.nd-videos .wp-block-post-featured-image a:after{content:"";position:absolute;left:50%;top:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;background:rgba(0,0,0,.55) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E") center/22px no-repeat;border:2px solid #fff}
.nd-col .nd-videos .wp-block-post:first-child{display:block}
.nd-col .nd-videos .wp-block-post:first-child .nd-txt{padding-top:10px}
.nd-col .nd-videos .wp-block-post:first-child .wp-block-post-title{font-size:17px}
.nd-col .nd-videos .wp-block-post:not(:first-child) a:after{transform:scale(.7)}

/* siatki kart */
.nd-grid4 .wp-block-post-template{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.nd-cards .wp-block-post{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.05)}
.nd-cards .wp-block-post-featured-image{aspect-ratio:16/9}
.nd-cards .nd-txt{padding:12px}
.nd-band .wp-block-post{text-align:center}
.nd-band .wp-block-post-featured-image{aspect-ratio:16/10}
.nd-band .wp-block-post-title{padding:10px}
.nd-bands{gap:18px!important;margin:0!important}

/* zespoły na wesele */
.nd-wesele{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.06);padding:0!important}
.nd-wesele>*{margin:0!important}
.nd-wesele__banner{display:flex!important;align-items:center;justify-content:space-between;gap:24px;padding:32px 36px;color:#fff;background:linear-gradient(110deg,#a3001a 0%,#d6102a 45%,#7a0f5a 100%)}
.nd-wesele__banner>*{margin:0!important}
.nd-wesele__intro>*{margin:0 0 8px!important}
.nd-wesele__banner h2{color:#fff;font-size:clamp(28px,3.4vw,42px);font-weight:900}
.nd-wesele__banner p{max-width:560px;opacity:.95}
.nd-wesele__list{padding:24px}
.nd-wesele__list .wp-block-post-template{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.nd-wesele__list .wp-block-post{display:grid;grid-template-columns:110px 1fr;gap:14px;border:1px solid var(--nd-line);border-radius:12px;overflow:hidden;min-height:110px}
.nd-wesele__list .wp-block-post:before{content:"\266B";grid-row:1;grid-column:1;display:flex;align-items:center;justify-content:center;color:#fff;font-size:40px;background:linear-gradient(135deg,#d6102a,#7a0f5a)}
.nd-wesele__list .wp-block-post:has(.wp-block-post-featured-image):before{display:none}
.nd-wesele__list .nd-txt{grid-column:2;padding:14px 14px 14px 0;justify-content:center}
.nd-wesele__list .wp-block-read-more{color:var(--nd-red);font-weight:800;font-size:13px}
.nd-wesele__add{display:flex!important;align-items:center;justify-content:space-between;gap:16px;padding:0 24px 24px;font-weight:700}
.nd-wesele__add>*{margin:0!important}

@media (max-width:1000px){
 .nd-hero{grid-template-columns:1fr}
 .nd-hero__side .wp-block-post-template{display:grid;grid-template-columns:repeat(3,1fr)}
 .nd-mini .wp-block-post{grid-template-columns:1fr}
 .nd-mini .wp-block-post-featured-image{aspect-ratio:16/9;min-height:0}
 .nd-mini .nd-txt{padding:0 12px 12px}
 .nd-cols{flex-wrap:wrap!important}
 .nd-grid4 .wp-block-post-template{grid-template-columns:repeat(2,1fr)}
 .nd-wesele__list .wp-block-post-template{grid-template-columns:1fr 1fr}
}
@media (max-width:680px){
 .nd-hero__main .wp-block-post{min-height:340px}
 .nd-hero__main .nd-txt{padding:20px}
 .nd-hero__main .wp-block-post-excerpt{display:none}
 .nd-hero__side .wp-block-post-template{grid-template-columns:1fr}
 .nd-mini .wp-block-post{grid-template-columns:40% 1fr}
 .nd-mini .wp-block-post-featured-image{aspect-ratio:auto;min-height:90px}
 .nd-mini .nd-txt{padding:10px 10px 10px 0}
 .nd-wesele__list .wp-block-post-template{grid-template-columns:1fr}
 .nd-wesele__banner,.nd-wesele__add{flex-direction:column;align-items:flex-start!important;padding:22px}
 .nd-wesele__add{padding-top:0}
}

/* zespoły 3x2 + reklama 300x600 */
.nd-grid3 .wp-block-post-template{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.nd-bands{align-items:stretch!important}
.nd-bands>.wp-block-column:first-child{flex:1 1 auto}
.nd-band .wp-block-post-featured-image{aspect-ratio:auto;height:230px}
.nd-band .wp-block-post-title{font-size:17px;padding:14px 10px}
.nd-bands__ad{flex:0 0 300px!important;max-width:300px}
.nd-ad--300x600,.nd-ad--300x600 .nd-ad__ph{width:300px;height:600px;min-height:600px;margin:0 auto}
/* kolumny Najnowsze / Plotki / Audio równe */
.nd-cols>.nd-col{display:flex;flex-direction:column}
.nd-cols .nd-list{flex:1}
@media (max-width:1000px){
 .nd-grid3 .wp-block-post-template{grid-template-columns:repeat(2,1fr)}
 .nd-bands{flex-wrap:wrap!important}
 .nd-bands>.wp-block-column{flex-basis:100%!important}
 .nd-bands__ad{max-width:100%}
}
@media (max-width:680px){
 .nd-band .wp-block-post-featured-image{height:160px}
}

/* hero wyższy, pełne tytuły po prawej */
@media (min-width:1001px){
 .nd-hero__main .wp-block-post{min-height:540px}
 .nd-mini .wp-block-post{min-height:168px;grid-template-columns:42% 1fr}
 .nd-mini .wp-block-post-featured-image{min-height:168px}
 .nd-mini .nd-txt{padding:14px 14px 14px 0}
 .nd-mini .wp-block-post-title{font-size:15px;-webkit-line-clamp:4}
}

/* 3 kolumny: wpisy w równych rzędach */
.nd-cols .nd-list .wp-block-post{grid-template-columns:154px 1fr;height:137px;padding:10px 0;overflow:hidden;align-items:start}
.nd-cols .nd-list .wp-block-post:first-child{height:127px;padding-top:0}
.nd-cols .nd-list .wp-block-post-featured-image{aspect-ratio:auto;height:116px}
.nd-cols .nd-list .wp-block-post-title{-webkit-line-clamp:3}
@media (max-width:1200px){.nd-cols .nd-list .wp-block-post{grid-template-columns:120px 1fr}}
/* reklamy AdSense */
.nd-ad--live{min-height:90px}
.nd-ad--live.nd-ad--300x600{width:300px;height:600px}

/* baner Zespoły na wesele ze zdjęciem (zdjęcie po lewej, tekst po prawej) */
.nd-wesele__banner{position:relative;min-height:320px;justify-content:flex-end!important;gap:28px;padding:40px 48px!important;background:#a3001a url("/wp-content/uploads/2026/11/zespoly-na-wesele.webp") left center/cover no-repeat!important}
.nd-wesele__banner:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0) 40%,rgba(120,0,30,.35) 60%,rgba(120,0,30,.5) 100%);pointer-events:none}
.nd-wesele__banner>*{position:relative;z-index:1}
.nd-wesele__intro{max-width:470px}
.nd-wesele__banner .wp-block-buttons{flex:0 0 auto}
@media (max-width:1000px){
 .nd-wesele__banner{flex-direction:column;align-items:flex-end!important;text-align:right;padding-left:42%!important}
 .nd-wesele__intro .nd-badge{margin-left:auto!important}
}
@media (max-width:680px){
 .nd-wesele__banner{min-height:0;align-items:flex-start!important;text-align:left;padding:170px 22px 24px!important;background-position:left top!important;background-size:auto 190px!important}
 .nd-wesele__banner:before{background:linear-gradient(180deg,rgba(163,0,26,0) 0,rgba(163,0,26,0) 110px,#a3001a 190px)}
 .nd-wesele__intro .nd-badge{margin-left:0!important}
}
@media (min-width:1001px){
 .nd-wesele__banner{flex-direction:column;align-items:flex-start!important;justify-content:center!important;gap:18px;padding:40px 48px 40px 50%!important}
 .nd-wesele__intro{max-width:520px}
}
