/* =========================================================================
   Archivio destinazione — Impronte a Nord Ovest (v2)
   Palette: SOLO variabili globali Astra (--ast-global-color-0..8).
   MAPPATURA REALE degli slot INO:
     0  #5e605a  grigio-verde neutro   -> testo corpo alternativo
     1  #b6a784  oro/sabbia            -> CTA, accenti caldi, hover
     2  #2a3415  verde-nero            -> HEADING, testo forte, icone box
     3  #617040  verde logo (glacier)  -> accenti, link, enfasi, eyebrow
     4  #faf8f2  crema avorio          -> sfondo pagina + (via mix) fasce chiare
     5  #94ad83  salvia                -> fasce chiare colorate (stagioni)
     6  #3a4c1c  verde foresta scuro   -> sfondi scuri (hero overlay, CTA)
     7  #ccc09a  sabbia chiara         -> hover oro, sottotitoli su scuro
     8  #d0d9c4  verde chiarissimo     -> dettagli su sfondi scuri
   Fascia "ghiaccio": nessuno slot dedicato -> color-mix di slot-4 verso slot-5.
   Font invariati: Cormorant Garamond (display) + Outfit (corpo).
   ====================================================================== */

.ino-dest-archive {
	--dest-maxw: 1300px;
	--dest-header-h: 70px; /* altezza header Astra: tarare se cambia */
	--dest-ice: color-mix(in srgb, var(--ast-global-color-4, #faf8f2) 88%, var(--ast-global-color-5, #94ad83));
	font-family: 'Outfit', sans-serif;
	color: var(--ast-global-color-2, #2a3415);
	background: var(--ast-global-color-4, #faf8f2);
	/* NB: niente overflow-x qui, romperebbe position:sticky della subnav. */
}
.ino-dest-archive *,
.ino-dest-archive *::before,
.ino-dest-archive *::after { box-sizing: border-box; }

.ino-dest-archive section[id],
.ino-dest-archive header[id] { scroll-margin-top: calc(var(--dest-header-h) + 56px); }

.ino-dest-archive .section-eyebrow {
	font-size: 0.875rem; letter-spacing: 0.22em; text-transform: uppercase;
	color: var(--ast-global-color-3, #617040); margin-bottom: 0.6rem; display: block;
}
.ino-dest-archive .section-header { text-align: center; margin-bottom: 3rem; }
.ino-dest-archive .section-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight: 300;
	color: var(--ast-global-color-2, #2a3415); line-height: 1.15;
}
.ino-dest-archive .section-title em { font-style: italic; font-weight: 600; color: var(--ast-global-color-3, #617040); }

/* -- BOTTONI -- */
.ino-dest-archive .btn-primary {
	padding: 0.9rem 2.4rem; background: var(--ast-global-color-1, #b6a784);
	color: var(--ast-global-color-2, #2a3415);
	font-size: 0.9375rem; letter-spacing: 0.14em; text-transform: uppercase;
	font-weight: 500; text-decoration: none; display: inline-block;
	border: none; cursor: pointer; transition: background 0.2s;
}
.ino-dest-archive .btn-primary:hover { background: var(--ast-global-color-7, #ccc09a); }
.ino-dest-archive .btn-ghost {
	padding: 0.9rem 2.4rem; border: 1px solid rgba(255,255,255,0.45);
	color: #fff; font-size: 0.9375rem; letter-spacing: 0.14em; text-transform: uppercase;
	font-weight: 400; text-decoration: none; display: inline-block;
	background: transparent; cursor: pointer; transition: border-color 0.2s, background 0.2s;
}
.ino-dest-archive .btn-ghost:hover { border-color: #fff; background: rgba(255,255,255,0.08); }
.ino-dest-archive .btn-link {
	font-size: 0.78rem; letter-spacing: 0.14em; text-transform: uppercase;
	color: var(--ast-global-color-3, #617040); text-decoration: none;
	border-bottom: 1px solid transparent; transition: border-color 0.2s; display: inline-block;
}
.ino-dest-archive .btn-link:hover { border-color: var(--ast-global-color-3, #617040); }

/* -- HERO -- */
.ino-dest-archive .dest-hero {
	position: relative; min-height: 68vh; display: flex; align-items: flex-end;
	padding: 0 5vw 4rem; overflow: hidden; background: var(--ast-global-color-6, #3a4c1c);
}
.ino-dest-archive .dest-hero-bg { position: absolute; inset: 0; z-index: 0; }
.ino-dest-archive .dest-hero-bg-img,
.ino-dest-archive .dest-hero-bg img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ino-dest-archive .dest-hero::after {
	content: ''; position: absolute; inset: 0; z-index: 1;
	background: linear-gradient(to top,
		color-mix(in srgb, var(--ast-global-color-2, #2a3415) 80%, transparent) 0%,
		color-mix(in srgb, var(--ast-global-color-2, #2a3415) 22%, transparent) 55%,
		transparent 100%);
}
.ino-dest-archive .dest-hero-content { position: relative; z-index: 2; max-width: var(--dest-maxw); width: 100%; margin: 0 auto; }
.ino-dest-archive .dest-hero-breadcrumb {
	font-size: 0.72rem; letter-spacing: 0.18em; text-transform: uppercase;
	color: rgba(255,255,255,0.78); margin-bottom: 1.2rem;
}
.ino-dest-archive .dest-hero-region { color: var(--ast-global-color-1, #b6a784); }
.ino-dest-archive .dest-hero-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(3.5rem, 7vw, 6rem); font-weight: 300; color: #fff; line-height: 1; margin: 0 0 0.8rem;
}
.ino-dest-archive .dest-hero-sub {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(1.2rem, 2vw, 1.6rem); font-weight: 300; font-style: italic;
	color: var(--ast-global-color-7, #ccc09a); margin: 0 0 2rem;
}
.ino-dest-archive .dest-hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; }

/* -- NAV STICKY -- */
.ino-dest-archive .dest-subnav {
	position: sticky; top: var(--dest-header-h); z-index: 40;
	background: color-mix(in srgb, var(--ast-global-color-6, #3a4c1c) 96%, transparent);
	backdrop-filter: blur(10px);
	border-bottom: 1px solid color-mix(in srgb, var(--ast-global-color-1, #b6a784) 25%, transparent);
}
.ino-dest-archive .dest-subnav-inner {
	max-width: var(--dest-maxw); margin: 0 auto; display: flex; gap: 0.4rem;
	overflow-x: auto; padding: 0.55rem 5vw; scrollbar-width: none;
}
.ino-dest-archive .dest-subnav-inner::-webkit-scrollbar { display: none; }
.ino-dest-archive .dest-subnav-link {
	white-space: nowrap; padding: 0.4rem 1rem;
	font-size: 0.74rem; letter-spacing: 0.12em; text-transform: uppercase;
	color: rgba(255,255,255,0.75); text-decoration: none; border-radius: 2px;
	transition: color 0.2s, background 0.2s;
}
.ino-dest-archive .dest-subnav-link:hover,
.ino-dest-archive .dest-subnav-link.is-active {
	color: #fff; background: color-mix(in srgb, var(--ast-global-color-1, #b6a784) 22%, transparent);
}

/* -- INTRO -- */
.ino-dest-archive .dest-intro {
	max-width: var(--dest-maxw); margin: 0 auto; display: grid;
	grid-template-columns: 1fr 1fr; gap: 5rem; align-items: center; padding: 6rem 5vw;
}
.ino-dest-archive .dest-intro-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 300;
	color: var(--ast-global-color-2, #2a3415); line-height: 1.15; margin: 0 0 1.4rem;
}
.ino-dest-archive .dest-intro-title em { font-style: italic; font-weight: 600; color: var(--ast-global-color-3, #617040); }
.ino-dest-archive .dest-intro-body {
	font-size: 1.0625rem; color: var(--ast-global-color-3, #617040);
	line-height: 1.8; font-weight: 300; margin-bottom: 1.5rem;
}
.ino-dest-archive .dest-intro-body p { margin: 0 0 1rem; }
.ino-dest-archive .dest-intro-divider { width: 48px; height: 1px; background: var(--ast-global-color-1, #b6a784); margin: 1.5rem 0; }
.ino-dest-archive .dest-intro-img { position: relative; height: 480px; max-width: 100%; }
.ino-dest-archive .dest-intro-img-main { width: 78%; height: 82%; position: absolute; top: 0; left: 0; overflow: hidden; }
.ino-dest-archive .dest-intro-img-accent {
	width: 52%; height: 50%; position: absolute; bottom: 0; right: 0; overflow: hidden;
	border: 6px solid var(--ast-global-color-4, #faf8f2);
}
.ino-dest-archive .dest-intro-img-main img,
.ino-dest-archive .dest-intro-img-accent img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* -- PERCHE -- */
.ino-dest-archive .dest-why { background: var(--dest-ice); padding: 5rem 5vw; }
.ino-dest-archive .dest-why-inner { max-width: var(--dest-maxw); margin: 0 auto; }
.ino-dest-archive .dest-why-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.ino-dest-archive .dest-why-grid[data-count="1"] { grid-template-columns: minmax(auto, 340px); justify-content: center; }
.ino-dest-archive .dest-why-grid[data-count="2"] { grid-template-columns: repeat(2, minmax(auto, 340px)); justify-content: center; }
.ino-dest-archive .dest-why-grid[data-count="3"] { grid-template-columns: repeat(3, 1fr); }
.ino-dest-archive .dest-why-card {
	background: var(--ast-global-color-4, #faf8f2); padding: 2rem 1.6rem;
	border-bottom: 2px solid transparent; transition: border-color 0.25s, box-shadow 0.25s;
}
.ino-dest-archive .dest-why-card:hover {
	border-color: var(--ast-global-color-1, #b6a784);
	box-shadow: 0 8px 24px color-mix(in srgb, var(--ast-global-color-2, #2a3415) 10%, transparent);
}
.ino-dest-archive .dest-why-icon {
	width: 48px; height: 48px; background: var(--ast-global-color-2, #2a3415);
	border-radius: 10px; display: flex; align-items: center; justify-content: center;
	margin-bottom: 1.2rem; overflow: hidden;
}
.ino-dest-archive .dest-why-icon .dashicons { color: #fff; font-size: 24px; width: 24px; height: 24px; }
.ino-dest-archive .dest-why-icon-img { width: 26px; height: 26px; object-fit: contain; filter: brightness(0) invert(1); }
.ino-dest-archive .dest-why-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.25rem; font-weight: 400; color: var(--ast-global-color-2, #2a3415); margin-bottom: 0.6rem;
}
.ino-dest-archive .dest-why-text { font-size: 0.9rem; color: var(--ast-global-color-3, #617040); line-height: 1.65; font-weight: 300; }

/* -- STAGIONI -- */
.ino-dest-archive .dest-seasons { background: var(--ast-global-color-5, #94ad83); padding: 4rem 5vw; }
.ino-dest-archive .dest-seasons .section-eyebrow { color: var(--ast-global-color-6, #3a4c1c); }
.ino-dest-archive .dest-seasons .section-title { color: var(--ast-global-color-2, #2a3415); }
.ino-dest-archive .dest-seasons .section-title em { color: var(--ast-global-color-6, #3a4c1c); }
.ino-dest-archive .dest-seasons-inner { max-width: var(--dest-maxw); margin: 0 auto; }
.ino-dest-archive .dest-seasons-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; }
.ino-dest-archive .dest-seasons-grid[data-count="1"] { grid-template-columns: minmax(auto, 360px); justify-content: center; }
.ino-dest-archive .dest-seasons-grid[data-count="2"] { grid-template-columns: repeat(2, 1fr); }
.ino-dest-archive .dest-seasons-grid[data-count="3"] { grid-template-columns: repeat(3, 1fr); }
.ino-dest-archive .season-card {
	padding: 1.4rem 1.5rem; background: rgba(255,255,255,0.25);
	border-top: 4px solid transparent; transition: background 0.2s, border-color 0.2s;
}
.ino-dest-archive .season-card:hover { background: rgba(255,255,255,0.45); border-color: var(--ast-global-color-2, #2a3415); }
.ino-dest-archive .season-name {
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.3rem; font-weight: 300; color: var(--ast-global-color-2, #2a3415); margin-bottom: 0.3rem;
}
.ino-dest-archive .season-months {
	font-size: 0.7rem; letter-spacing: 0.16em; text-transform: uppercase;
	color: var(--ast-global-color-6, #3a4c1c); margin-bottom: 1rem; font-weight: 500;
}
.ino-dest-archive .season-tags { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-bottom: 0.8rem; }
.ino-dest-archive .season-tag {
	padding: 0.2rem 0.6rem;
	background: color-mix(in srgb, var(--ast-global-color-2, #2a3415) 10%, transparent);
	font-size: 0.72rem; color: var(--ast-global-color-2, #2a3415);
	border: 1px solid color-mix(in srgb, var(--ast-global-color-2, #2a3415) 20%, transparent);
}
.ino-dest-archive .season-text { font-size: 0.875rem; color: var(--ast-global-color-6, #3a4c1c); line-height: 1.65; font-weight: 300; }
.ino-dest-archive .season-rating { display: flex; gap: 2px; margin-top: 0.8rem; }
.ino-dest-archive .season-dot { width: 8px; height: 8px; border-radius: 50%; background: color-mix(in srgb, var(--ast-global-color-2, #2a3415) 20%, transparent); }
.ino-dest-archive .season-dot.active { background: var(--ast-global-color-6, #3a4c1c); }

/* -- VIAGGI -- */
.ino-dest-archive .dest-tours { padding: 6rem 5vw; max-width: var(--dest-maxw); margin: 0 auto; }
.ino-dest-archive .dest-tours-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.8rem; }
.ino-dest-archive .tour-card {
	background: var(--ast-global-color-4, #faf8f2); overflow: hidden; border: 1px solid var(--dest-ice);
	transition: transform 0.3s, box-shadow 0.3s, border-color 0.3s; display: flex; flex-direction: column;
}
.ino-dest-archive .tour-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 20px 44px color-mix(in srgb, var(--ast-global-color-2, #2a3415) 12%, transparent);
	border-color: var(--ast-global-color-1, #b6a784);
}
.ino-dest-archive .tour-card-img { height: 220px; overflow: hidden; position: relative; }
.ino-dest-archive .tour-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s; }
.ino-dest-archive .tour-card:hover .tour-card-img img { transform: scale(1.05); }
.ino-dest-archive .tour-card-tag {
	position: absolute; top: 1rem; left: 1rem;
	background: var(--ast-global-color-1, #b6a784); color: var(--ast-global-color-2, #2a3415);
	font-size: 0.62rem; letter-spacing: 0.16em; text-transform: uppercase; padding: 0.28rem 0.7rem; font-weight: 500;
}
.ino-dest-archive .tour-card-body { padding: 1.5rem; display: flex; flex-direction: column; flex: 1; }
.ino-dest-archive .tour-card-meta { display: flex; gap: 1rem; flex-wrap: wrap; font-size: 0.85rem; color: var(--ast-global-color-3, #617040); margin-bottom: 0.7rem; }
.ino-dest-archive .tour-card-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.35rem; font-weight: 400; color: var(--ast-global-color-2, #2a3415);
	line-height: 1.2; margin-bottom: 0.6rem; text-decoration: none; display: block;
}
.ino-dest-archive .tour-card-title:hover { color: var(--ast-global-color-3, #617040); }
.ino-dest-archive .tour-card-desc { font-size: 0.9375rem; color: var(--ast-global-color-3, #617040); line-height: 1.6; font-weight: 300; margin-bottom: 1.2rem; }
.ino-dest-archive .tour-card-footer {
	display: flex; justify-content: space-between; align-items: center;
	padding-top: 1rem; margin-top: auto; border-top: 1px solid var(--dest-ice);
}
.ino-dest-archive .tour-card-price-from { font-size: 0.72rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--ast-global-color-3, #617040); }
.ino-dest-archive .tour-card-price {
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.6rem; font-weight: 300; color: var(--ast-global-color-2, #2a3415); line-height: 1;
}
.ino-dest-archive .dest-tours-all { text-align: center; margin-top: 3rem; }

/* -- BLOG -- */
.ino-dest-archive .dest-blog { background: var(--dest-ice); padding: 5rem 5vw; }
.ino-dest-archive .dest-blog-inner { max-width: var(--dest-maxw); margin: 0 auto; }
.ino-dest-archive .dest-blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.8rem; }
.ino-dest-archive .blog-card { background: var(--ast-global-color-4, #faf8f2); overflow: hidden; transition: transform 0.3s, box-shadow 0.3s; }
.ino-dest-archive .blog-card:hover { transform: translateY(-4px); box-shadow: 0 16px 36px color-mix(in srgb, var(--ast-global-color-2, #2a3415) 10%, transparent); }
.ino-dest-archive .blog-card-img { display: block; height: 200px; overflow: hidden; }
.ino-dest-archive .blog-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s; }
.ino-dest-archive .blog-card:hover .blog-card-img img { transform: scale(1.05); }
.ino-dest-archive .blog-card-body { padding: 1.4rem 1.5rem 1.6rem; }
.ino-dest-archive .blog-card-cat {
	font-size: 0.68rem; letter-spacing: 0.16em; text-transform: uppercase;
	color: var(--ast-global-color-3, #617040); display: block; margin-bottom: 0.5rem;
}
.ino-dest-archive .blog-card-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.3rem; font-weight: 400; color: var(--ast-global-color-2, #2a3415);
	line-height: 1.25; text-decoration: none; display: block; margin-bottom: 0.5rem;
}
.ino-dest-archive .blog-card-title:hover { color: var(--ast-global-color-3, #617040); }
.ino-dest-archive .blog-card-date { font-size: 0.75rem; color: var(--ast-global-color-3, #617040); }

/* -- FAQ -- */
.ino-dest-archive .dest-faq { padding: 6rem 5vw; }
.ino-dest-archive .dest-faq-inner { max-width: 900px; margin: 0 auto; }
.ino-dest-archive .dest-faq-content { font-size: 1rem; color: var(--ast-global-color-3, #617040); line-height: 1.7; }
.ino-dest-archive .dest-faq-content .uagb-faq-child__wrapper { max-width: 100%; }

/* -- CTA FINALE -- */
.ino-dest-archive .dest-cta { background: var(--ast-global-color-6, #3a4c1c); padding: 6rem 5vw; text-align: center; position: relative; overflow: hidden; }
.ino-dest-archive .dest-cta-inner { max-width: 720px; margin: 0 auto; position: relative; z-index: 1; }
.ino-dest-archive .dest-cta-eyebrow {
	font-size: 0.875rem; letter-spacing: 0.22em; text-transform: uppercase;
	color: var(--ast-global-color-1, #b6a784); margin-bottom: 1rem; display: block;
}
.ino-dest-archive .dest-cta-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(2.2rem, 4vw, 3.4rem); font-weight: 300; color: #fff; line-height: 1.1; margin: 0 0 1.4rem;
}
.ino-dest-archive .dest-cta-title em { font-style: italic; font-weight: 600; color: var(--ast-global-color-7, #ccc09a); }
.ino-dest-archive .dest-cta-desc {
	font-size: 1.0625rem; color: var(--ast-global-color-8, #d0d9c4);
	line-height: 1.7; font-weight: 300; margin: 0 auto 2.4rem; max-width: 560px;
}
.ino-dest-archive .dest-cta-actions { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; }

/* -- RESPONSIVE -- */
@media (max-width: 1024px) {
	.ino-dest-archive .dest-intro { grid-template-columns: 1fr; gap: 3rem; }
	.ino-dest-archive .dest-intro-img { height: 360px; }
	.ino-dest-archive .dest-tours-grid,
	.ino-dest-archive .dest-blog-grid { grid-template-columns: 1fr 1fr; }
	.ino-dest-archive .dest-why-grid { grid-template-columns: 1fr 1fr; }
	.ino-dest-archive .dest-seasons-grid,
	.ino-dest-archive .dest-seasons-grid[data-count="3"] { grid-template-columns: 1fr 1fr; gap: 1px; }
}
@media (max-width: 640px) {
	.ino-dest-archive .dest-hero { min-height: 60vh; }
	.ino-dest-archive .dest-why-grid,
	.ino-dest-archive .dest-why-grid[data-count="3"],
	.ino-dest-archive .dest-tours-grid,
	.ino-dest-archive .dest-blog-grid { grid-template-columns: 1fr; }
	.ino-dest-archive .dest-seasons-grid,
	.ino-dest-archive .dest-seasons-grid[data-count="3"] { grid-template-columns: 1fr; }
	.ino-dest-archive .dest-hero-actions { flex-direction: column; align-items: flex-start; }
	.ino-dest-archive .dest-hero-actions .btn-primary,
	.ino-dest-archive .dest-hero-actions .btn-ghost { width: 100%; text-align: center; }
	.ino-dest-archive .dest-intro { padding: 4rem 5vw; }
	.ino-dest-archive .dest-cta-actions { flex-direction: column; }
	.ino-dest-archive .dest-cta-actions .btn-primary,
	.ino-dest-archive .dest-cta-actions .btn-ghost { width: 100%; }
}

/* -- ACCESSIBILITA -- */
@media (prefers-reduced-motion: reduce) {
	.ino-dest-archive * { transition: none !important; animation: none !important; }
	.ino-dest-archive .tour-card:hover,
	.ino-dest-archive .blog-card:hover { transform: none; }
}
