/* ==========================================================================
   WedInGreece — Inspiration (blog): hub, archives, single article
   ========================================================================== */

.wig .wig-blog,
.wig .wig-article { font-family: var(--wig-sans); color: var(--wig-text); }
.wig .wig-blog :where(p, a, li, time, figcaption),
.wig .wig-article :where(p, a, li, time, figcaption) { font-family: inherit; }

.wig .wig-blog { max-width: var(--wig-max); margin: 0 auto; padding: 0 var(--wig-gutter) clamp(64px, 8vw, 110px); }
.wig .wig-blog__head { max-width: 760px; margin: 0 auto; padding: clamp(40px, 6vw, 72px) 0 clamp(28px, 4vw, 44px); text-align: center; }
.wig .wig-blog__intro { margin-top: 14px; font-size: 16px; line-height: 1.7; color: var(--wig-muted); }
.wig .wig-blog__intro p:last-child { margin-bottom: 0; }
.wig .wig-blog__empty { padding: 40px 0; text-align: center; font-style: italic; color: var(--wig-muted); }

/* Category tabs on archives */
.wig .wig-blog__cats { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 26px; margin: 0 auto clamp(32px, 4vw, 48px); padding-bottom: 14px; border-bottom: 1px solid var(--wig-line); max-width: 1120px; }
.wig .wig-blog__cats a { padding: 6px 0; font: 400 12px/1.2 var(--wig-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--wig-secondary); text-decoration: none; border-bottom: 1px solid transparent; }
.wig .wig-blog__cats a:hover,
.wig .wig-blog__cats a.is-current { color: var(--wig-primary); border-bottom-color: var(--wig-primary); }

/* Rows */
.wig .wig-blog__row { margin-top: clamp(56px, 7vw, 96px); }
.wig .wig-blog__rowhead { position: relative; max-width: 1120px; margin: 0 auto clamp(24px, 3vw, 36px); text-align: center; }
.wig .wig-blog__rowhead .wig-h2 { margin-bottom: 6px; }
.wig .wig-blog__rowhead .wig-sub { margin: 0; }
.wig .wig-blog__all { display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; font: 400 12px/1.2 var(--wig-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--wig-primary); text-decoration: none; }
.wig .wig-blog__all:hover { color: var(--wig-primary-d); }
.wig .wig-blog__all .wig-icon { width: 12px; height: 12px; }

/* Article grid — incomplete rows stay centred */
.wig .wig-grid--posts { display: flex; flex-wrap: wrap; justify-content: center; gap: 44px 20px; }
.wig .wig-grid--posts > .wig-post { flex: 0 1 360px; }

/* Article card */
.wig .wig-post { min-width: 0; }
.wig .wig-post__media { display: block; position: relative; aspect-ratio: 4 / 5; overflow: hidden; border-radius: 2px; background: var(--wig-stone); }
.wig .wig-post__media img,
.wig .wig-post__noimg { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 0; transition: transform .8s var(--wig-ease); }
.wig .wig-post:hover .wig-post__media img { transform: scale(1.03); }
.wig .wig-post__body { padding-top: 18px; }
.wig .wig-post__cat { display: inline-block; margin-bottom: 8px; font: 400 11px/1.3 var(--wig-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--wig-primary); text-decoration: none; }
.wig .wig-post__cat:hover { color: var(--wig-primary-d); }
.wig .wig-post__title { margin: 0; font: 400 20px/1.35 var(--wig-serif); letter-spacing: .3px; text-transform: none; color: var(--wig-ink); }
.wig .wig-post__title a { color: inherit; text-decoration: none; background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat; transition: background-size .4s var(--wig-ease); }
.wig .wig-post:hover .wig-post__title a { background-size: 100% 1px; }

/* Feature (latest article) */
.wig .wig-post--feature { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); align-items: center; gap: clamp(28px, 5vw, 72px); max-width: 1120px; margin: 0 auto; }
.wig .wig-post--feature .wig-post__media { aspect-ratio: 4 / 3; }
.wig .wig-post--feature .wig-post__body { padding: 0; }
.wig .wig-post--feature .wig-post__title { font: 100 clamp(28px, 3vw, 38px)/1.2 var(--wig-serif); letter-spacing: 1px; }
.wig .wig-post__excerpt { margin: 16px 0 22px; font-size: 16px; line-height: 1.7; color: var(--wig-muted); }
.wig .wig-post__more { display: inline-flex; align-items: center; gap: 8px; font: 400 12px/1.2 var(--wig-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--wig-primary); text-decoration: none; padding-bottom: 4px; border-bottom: 1px solid currentColor; }
.wig .wig-post__more:hover { color: var(--wig-primary-d); }
.wig .wig-post__more .wig-icon { width: 12px; height: 12px; }

/* ---------- Single article ---------- */
.wig .wig-article { padding: 0 var(--wig-gutter) clamp(64px, 8vw, 110px); }
.wig .wig-article__head { max-width: 820px; margin: 0 auto; padding: clamp(44px, 6vw, 80px) 0 clamp(28px, 4vw, 44px); text-align: center; }
.wig .wig-article__title { margin: 0 0 14px; font: 100 clamp(32px, 4.4vw, 50px)/1.15 var(--wig-serif); letter-spacing: 1px; text-transform: none; color: var(--wig-ink); }
.wig .wig-article__meta { display: flex; justify-content: center; gap: 10px; margin: 14px 0 0; font: 400 12px/1.4 var(--wig-sans); letter-spacing: .12em; text-transform: uppercase; color: var(--wig-secondary); }
.wig .wig-article__hero { max-width: 1120px; margin: 0 auto clamp(40px, 5vw, 64px); }
.wig .wig-article__hero img { display: block; width: 100%; height: auto; max-height: 720px; object-fit: cover; border-radius: 2px; }
.wig .wig-article__hero figcaption,
.wig .wig-article__content figcaption { margin-top: 10px; font: italic 400 13px/1.5 var(--wig-sans); color: var(--wig-muted); text-align: center; }

.wig .wig-article__content { max-width: 720px; margin: 0 auto; font-size: 17px; line-height: 1.8; color: var(--wig-text); }
.wig .wig-article__content > * { margin-top: 0; margin-bottom: 1.4em; }
.wig .wig-article__content p { font-size: inherit; line-height: inherit; color: inherit; }
.wig .wig-article__content > p:first-child::first-letter { float: left; margin: 6px 10px 0 0; font: 400 64px/.8 var(--wig-serif); color: var(--wig-ink); }
.wig .wig-article__content h2 { margin: 2.2em 0 .7em; font: 100 clamp(26px, 2.8vw, 32px)/1.25 var(--wig-serif); letter-spacing: .8px; text-transform: none; color: var(--wig-ink); }
.wig .wig-article__content h3 { margin: 1.8em 0 .6em; font: 400 22px/1.35 var(--wig-serif); letter-spacing: .4px; text-transform: none; color: var(--wig-ink); }
.wig .wig-article__content h4 { margin: 1.6em 0 .5em; font: 700 13px/1.4 var(--wig-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--wig-ink); }
.wig .wig-article__content a { color: var(--wig-primary); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.wig .wig-article__content a:hover { color: var(--wig-primary-d); }
.wig .wig-article__content :where(ul, ol) { padding-left: 1.3em; }
.wig .wig-article__content li { margin-bottom: .45em; font-size: inherit; line-height: 1.7; }
.wig .wig-article__content ul li::marker { color: var(--wig-primary); }
.wig .wig-article__content blockquote,
.wig .wig-article__content .wp-block-quote,
.wig .wig-article__content .wp-block-pullquote { margin: 2.2em 0; padding: 4px 0 4px 28px; border: 0; border-left: 1px solid var(--wig-primary); background: none; font: 400 clamp(22px, 2.4vw, 26px)/1.5 var(--wig-serif); color: var(--wig-ink); text-align: left; }
.wig .wig-article__content blockquote::before,
.wig .wig-article__content blockquote::after { content: none !important; display: none !important; }
.wig .wig-article__content blockquote p { margin: 0 0 .5em; font: inherit; }
.wig .wig-article__content blockquote cite { display: block; margin-top: 10px; font: 400 12px/1.4 var(--wig-sans); font-style: normal; letter-spacing: .14em; text-transform: uppercase; color: var(--wig-secondary); }
.wig .wig-article__content img { max-width: 100%; height: auto; border-radius: 2px; }
.wig .wig-article__content :where(.wig-card, .wig-spot) img { height: 100%; max-width: none; border-radius: 0; }
.wig .wig-article__content figure { margin-left: 0; margin-right: 0; }
.wig .wig-article__content .alignwide { width: min(1120px, calc(100vw - 2 * var(--wig-gutter))); max-width: none; margin-left: 50%; transform: translateX(-50%); }
.wig .wig-article__content .wp-block-gallery { gap: 12px; }
.wig .wig-article__content hr { width: 60px; margin: 2.6em auto; border: 0; border-top: 1px solid var(--wig-line); }
.wig .wig-article__content table { width: 100%; border-collapse: collapse; font-size: 15px; }
.wig .wig-article__content :where(th, td) { padding: 10px 12px; border-bottom: 1px solid var(--wig-line); text-align: left; }

.wig .wig-article__foot { max-width: 720px; margin: 40px auto 0; padding-top: 24px; border-top: 1px solid var(--wig-line); display: flex; flex-wrap: wrap; justify-content: space-between; gap: 14px; align-items: center; }
.wig .wig-article__tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.wig .wig-article__tags a { padding: 6px 12px; border: 1px solid var(--wig-line); border-radius: var(--wig-radius); font: 400 12px/1.2 var(--wig-sans); color: var(--wig-secondary); text-decoration: none; }
.wig .wig-article__tags a:hover { border-color: var(--wig-primary); color: var(--wig-primary); }
.wig .wig-article__author { margin: 0; font: italic 400 14px/1.4 var(--wig-sans); color: var(--wig-muted); }

/* End-of-article box */
.wig .wig-cta { max-width: 1120px; margin: clamp(56px, 7vw, 90px) auto 0; padding: clamp(40px, 6vw, 72px) var(--wig-gutter); background: var(--wig-stone); border-radius: 2px; text-align: center; }
.wig .wig-cta .wig-sub { max-width: 560px; margin: 0 auto 26px; }
.wig .wig-article__related { max-width: 1120px; margin-left: auto; margin-right: auto; }

/* [wig_venue] inside articles */
.wig .wig-article__content .wig-spot { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 28px; align-items: center; margin: 2.4em 0; padding: 20px; border: 1px solid var(--wig-line); border-radius: 2px; background: var(--wig-ivory); }
.wig .wig-spot__media { display: block; aspect-ratio: 4 / 5; overflow: hidden; border-radius: 2px; }
.wig .wig-spot__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.wig .wig-article__content .wig-spot__loc { margin: 0 0 6px; font: 400 11px/1.3 var(--wig-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--wig-primary); }
.wig .wig-article__content .wig-spot__title { margin: 0 0 10px; font: 400 24px/1.3 var(--wig-serif); color: var(--wig-ink); }
.wig .wig-article__content .wig-spot__title a { color: inherit; text-decoration: none; }
.wig .wig-article__content .wig-spot__text { margin: 0 0 10px; font-size: 15px; line-height: 1.7; color: var(--wig-muted); }
.wig .wig-article__content .wig-spot__facts { margin: 0 0 18px; font-size: 13px; letter-spacing: .04em; color: var(--wig-secondary); }
.wig .wig-article__content .wig-spot .wig-btn { color: #fff; text-decoration: none; }
.wig .wig-article__content .wig-grid--inline { width: min(1120px, calc(100vw - 2 * var(--wig-gutter))); margin: 2.4em 0 2.4em 50%; transform: translateX(-50%); }
.wig .wig-article__content .wig-grid--inline a { text-decoration: none; }

/* ---------- Responsive ---------- */
@media (max-width: 900px) {
	.wig .wig-post--feature { grid-template-columns: 1fr; gap: 22px; }
	.wig .wig-post--feature .wig-post__media { aspect-ratio: 3 / 2; }
}
@media (max-width: 640px) {
	.wig .wig-grid--posts { gap: 40px; }
	.wig .wig-article__content { font-size: 16px; }
	.wig .wig-article__content .wig-spot { grid-template-columns: 1fr; gap: 18px; padding: 16px; }
	.wig .wig-spot__media { aspect-ratio: 3 / 2; }
	.wig .wig-blog__cats { justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; gap: 22px; scrollbar-width: none; }
	.wig .wig-blog__cats a { white-space: nowrap; }
	.wig .wig-article__foot { flex-direction: column; align-items: flex-start; }
}

/* [wig_posts] inside Elementor/other pages: keep the card typography over page/kit styles */
.wig .wig-posts-sc .wig-post__title { font-family: var(--wig-serif) !important; font-weight: 400 !important; font-size: 20px !important; line-height: 1.35 !important; letter-spacing: .3px !important; text-transform: none !important; margin: 0 !important; }
.wig .wig-posts-sc .wig-post__cat { font-family: var(--wig-sans) !important; font-size: 11px !important; }
.wig .wig-posts-sc .wig-post__media img { margin: 0; max-width: none; }
.wig .wig-posts-sc { margin: 0 auto; max-width: 1120px; }
.wig .wig-post__title a { font: inherit !important; letter-spacing: inherit; color: inherit; }

/* Featured venue (Boost) under posts */
.wig-featured-venue { margin: 48px 0 0; }
.wig-featured-venue a { display: grid; grid-template-columns: 200px 1fr; gap: 24px; align-items: center; padding: 16px; border: 1px solid var(--wig-line); border-radius: 3px; background: var(--wig-ivory, #FAF8F4); color: inherit; text-decoration: none; }
.wig-featured-venue__img { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 2px; }
.wig-featured-venue__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.wig-featured-venue a, .wig-featured-venue a * { text-decoration: none !important; border-bottom: 0 !important; box-shadow: none !important; }
.wig-featured-venue__text { display: flex; flex-direction: column; gap: 4px; }
.wig-featured-venue__label { font: 700 10px/1.4 var(--wig-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--wig-primary); }
.wig-featured-venue__title { font: 400 24px/1.25 var(--wig-serif); color: var(--wig-ink); }
.wig-featured-venue__loc { font: 400 13px var(--wig-sans); letter-spacing: .06em; text-transform: uppercase; color: var(--wig-muted); }
.wig-featured-venue__cta { margin-top: 8px; font: 400 14px var(--wig-sans); color: var(--wig-primary); }
@media (max-width: 600px) { .wig-featured-venue a { grid-template-columns: 1fr; } }
