/* ==========================================================================
   WedInGreece — Destinations hub + destination/region pages
   ========================================================================== */

/* ---------- Hub ---------- */
.wig .wig-dhub { max-width: var(--wig-max); margin: 0 auto; padding: 0 var(--wig-gutter) clamp(64px, 8vw, 110px); font-family: var(--wig-sans); }
.wig .wig-dhub__head { max-width: 760px; margin: 0 auto; padding: clamp(40px, 6vw, 72px) 0 clamp(24px, 3vw, 36px); text-align: center; }
.wig .wig-dhub__intro { margin-top: 14px; font-size: 16px; line-height: 1.7; color: var(--wig-muted); }
.wig .wig-dhub__intro p:last-child { margin-bottom: 0; }
.wig .wig-dhub__empty { padding: 40px 0; text-align: center; font-style: italic; color: var(--wig-muted); }
.wig .wig-dhub__jump { margin-bottom: 0; }
.wig .wig-dhub__region { margin-top: clamp(48px, 6vw, 84px); scroll-margin-top: 110px; }
.wig .wig-dhub__rowhead { max-width: 1120px; margin: 0 auto clamp(24px, 3vw, 36px); text-align: center; }
.wig .wig-dhub__rowhead .wig-h2 { margin-bottom: 6px; }
.wig .wig-dhub__rowhead .wig-sub { margin: 0; }
/* Incomplete rows stay centred */
.wig .wig-dhub__grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; }
.wig .wig-dhub__grid > .wig-card { flex: 0 1 360px; }

/* ---------- Destination hero ---------- */
.wig .wig-dhero { position: relative; display: flex; align-items: flex-end; justify-content: center; min-height: clamp(380px, 62vh, 640px); overflow: hidden; background: var(--wig-stone); font-family: var(--wig-sans); }
.wig .wig-dhero__img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.wig .wig-dhero__shade { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.55) 0%, rgba(0,0,0,.15) 45%, rgba(0,0,0,0) 70%); }
.wig .wig-dhero__text { position: relative; z-index: 1; max-width: 860px; padding: 0 var(--wig-gutter) clamp(36px, 5vw, 64px); text-align: center; color: #fff; }
.wig .wig-dhero__title { margin: 0 0 10px; font: 100 clamp(34px, 4.6vw, 54px)/1.15 var(--wig-serif); letter-spacing: 1px; text-transform: none; color: #fff; text-shadow: 0 1px 3px rgba(0,0,0,.25); }
.wig .wig-dhero__sub { margin: 0; font: italic 400 16px/1.5 var(--wig-sans); color: rgba(255,255,255,.92); text-shadow: 0 1px 2px rgba(0,0,0,.25); }
.wig .wig-dhero--noimg { min-height: 0; align-items: center; background: none; }
.wig .wig-dhero--noimg .wig-dhero__text { padding: clamp(40px, 6vw, 72px) var(--wig-gutter) 0; color: var(--wig-ink); }
.wig .wig-dhero--noimg .wig-dhero__title { color: var(--wig-ink); text-shadow: none; }
.wig .wig-dhero--noimg .wig-dhero__sub { color: var(--wig-muted); text-shadow: none; }

.wig .wig-dintro { max-width: 760px; margin: 0 auto; padding: clamp(36px, 5vw, 56px) var(--wig-gutter) 0; font: 400 17px/1.8 var(--wig-sans); color: var(--wig-text); text-align: center; }
.wig .wig-dintro p { font: inherit; color: inherit; }
.wig .wig-dintro p:last-child { margin-bottom: 0; }
.wig .wig-dintro a { color: var(--wig-primary); text-decoration: underline; text-underline-offset: 3px; }
.wig.wig-dest-page .wig-browse__spacer { height: clamp(28px, 4vw, 44px); }

/* ---------- Guide ---------- */
.wig .wig-dguide { margin-top: clamp(56px, 7vw, 96px); padding: clamp(56px, 7vw, 96px) var(--wig-gutter); background: var(--wig-stone); font-family: var(--wig-sans); }
.wig .wig-dguide__in { max-width: 1120px; margin: 0 auto; text-align: center; }
.wig .wig-dguide .wig-sub { margin: 0 0 clamp(28px, 4vw, 44px); }
.wig .wig-dguide__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 0; text-align: left; }
.wig .wig-dguide__item { padding: 28px 30px; background: #fff; border-radius: 2px; }
.wig .wig-dguide__item dt { margin: 0 0 10px; font: 400 12px/1.3 var(--wig-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--wig-primary); }
.wig .wig-dguide__item dd { margin: 0; font-size: 15px; line-height: 1.75; color: var(--wig-text); }
.wig .wig-dguide__item dd p { margin: 0 0 .7em; font: inherit; color: inherit; }
.wig .wig-dguide__item dd p:last-child { margin-bottom: 0; }

/* ---------- Other sections ---------- */
.wig .wig-dsec { max-width: var(--wig-max); margin: clamp(56px, 7vw, 96px) auto 0; padding: 0 var(--wig-gutter); }
.wig .wig-dsec:last-of-type { padding-bottom: clamp(64px, 8vw, 110px); }

@media (max-width: 760px) {
	.wig .wig-dhero:not(.wig-dhero--noimg) { display: block; min-height: 0; background: none; }
	.wig .wig-dhero:not(.wig-dhero--noimg) .wig-dhero__img { position: relative; inset: auto; display: block; height: auto; aspect-ratio: 4 / 3; }
	.wig .wig-dhero__shade { display: none; }
	.wig .wig-dhero:not(.wig-dhero--noimg) .wig-dhero__text { padding: 24px var(--wig-gutter) 0; color: var(--wig-ink); }
	.wig .wig-dhero:not(.wig-dhero--noimg) .wig-dhero__title { font-size: 32px; color: var(--wig-ink); text-shadow: none; }
	.wig .wig-dhero:not(.wig-dhero--noimg) .wig-dhero__sub { color: var(--wig-muted); text-shadow: none; }
	.wig .wig-dintro { padding-top: 22px; text-align: left; font-size: 16px; }
	.wig .wig-dguide__grid { grid-template-columns: 1fr; }
	.wig .wig-dguide__item { padding: 22px; }
}

/* ---------- Collection page ---------- */
.wig .wig-cdest__list { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; max-width: 900px; margin: 0 auto; }
.wig .wig-cdest__list a { display: inline-flex; align-items: center; gap: 10px; padding: 10px 18px; border: 1px solid var(--wig-line); border-radius: 3px; background: #fff; font: 400 14px/1.2 var(--wig-sans); color: var(--wig-text); text-decoration: none; transition: border-color .2s, color .2s; }
.wig .wig-cdest__list a:hover { border-color: var(--wig-primary); color: var(--wig-primary); }
.wig .wig-cdest__list span { font-size: 12px; color: var(--wig-secondary); }
.wig .wig-ctext { max-width: 760px; text-align: center; }
.wig .wig-ctext__body { margin-top: 18px; font: 400 17px/1.8 var(--wig-sans); color: var(--wig-text); text-align: left; }
.wig .wig-ctext__body p { font: inherit; color: inherit; }
