/*
 * Harmonisation de la marque TravelZy.
 * Cette couche est chargée après les styles historiques afin que toutes les
 * pages publiques partagent le même bleu marine et le même accent bleu clair.
 */
:root {
    --tz-brand-navy: #0b213d;
    --tz-brand-navy-deep: #081d37;
    --tz-brand-blue: #2474b8;
    --tz-brand-blue-dark: #176da8;
    --tz-brand-sky: #5aa9df;
    --tz-brand-sky-light: #8ecbfa;
    --tz-brand-wash: #edf4fb;
    --tz-brand-line: #cfe0f0;
}

/* Guides pays et index des destinations */
.destination-guide-page {
    --dg-ink: #102743;
    --dg-muted: #5d7187;
    --dg-line: rgba(16, 39, 67, .14);
    --dg-green: var(--tz-brand-blue);
    --dg-green-dark: #0b4f84;
    --dg-sand: var(--tz-brand-wash);
    --dg-gold: var(--tz-brand-sky);
    background: #f7faff;
}

.destination-guide-hero {
    background:
        radial-gradient(circle at 78% 18%, rgba(90, 169, 223, .24), transparent 31%),
        linear-gradient(135deg, var(--tz-brand-navy-deep) 0%, #0e3f73 52%, #163a63 100%);
}

.destination-guide-hero.has-image::before {
    background: linear-gradient(90deg, rgba(8, 29, 55, .96) 0%, rgba(8, 29, 55, .84) 53%, rgba(8, 29, 55, .5));
}

.destination-guide-prepare .destination-guide-kicker,
.destination-guide-tipboard .destination-guide-kicker,
.destination-guide-tool-grid span,
.destination-index-hero .destination-guide-kicker,
.destination-index-method .destination-guide-kicker,
.destination-index-method a {
    color: var(--tz-brand-sky-light);
}

.destination-guide-button-primary {
    color: #0b294b;
    background: #9ad3f8;
}

.destination-guide-button-secondary[aria-pressed="true"],
.destination-guide-offers > div a {
    color: #0b294b;
}

.destination-guide-tags span,
.destination-index-filters button {
    border-color: var(--tz-brand-line);
}

.destination-guide-practical-grid article,
.destination-index-card dl div,
.destination-index-tags span,
.destination-guide-editorial-grid img {
    background: var(--tz-brand-wash);
}

.destination-guide-tipboard,
.destination-index-method {
    background: #0b2c52;
}

.destination-guide-tipboard li::before {
    border-color: var(--tz-brand-sky-light);
}

.destination-guide-prepare {
    background: linear-gradient(135deg, #0e3f73, #163a63);
}

.destination-guide-missing .destination-guide-button-secondary,
.destination-index-empty {
    border-color: #bdd6eb;
}

.destination-index-hero {
    background:
        radial-gradient(circle at 82% 18%, rgba(90, 169, 223, .22), transparent 29%),
        linear-gradient(130deg, var(--tz-brand-navy-deep), #0e3f73 55%, #163a63);
}

.destination-index-tags span {
    color: #355979;
}

.destination-guide-editorial {
    background:
        radial-gradient(circle at 92% 8%, rgba(90, 169, 223, .17), transparent 30%),
        linear-gradient(145deg, #f2f7fc 0%, #fff 100%);
}

/* Carnet de voyage */
.carnet-page {
    --carnet-ink: #102743;
    --carnet-muted: #5d7187;
    --carnet-green: var(--tz-brand-blue);
    --carnet-line: rgba(16, 39, 67, .14);
    background: #f7faff;
}

.carnet-hero {
    background:
        radial-gradient(circle at 88% 16%, rgba(90, 169, 223, .22), transparent 30%),
        linear-gradient(130deg, var(--tz-brand-navy-deep), #0e3f73 56%, #163a63);
}

.carnet-project-header {
    background: linear-gradient(125deg, #0e3f73, #163a63);
}

.carnet-hero .carnet-kicker,
.carnet-project-identity span {
    color: var(--tz-brand-sky-light);
}

.carnet-project-meter i {
    background: var(--tz-brand-sky-light);
}

.carnet-local-badge,
.carnet-privacy {
    background: var(--tz-brand-wash);
}

/* Équipements, méthodologie, à propos et contact */
.equipment-page {
    --equipment-green: var(--tz-brand-blue);
    --equipment-sand: #eef6fc;
}

.equipment-card-topline span:first-child {
    color: #176da8;
    background: #e5f1fb;
}

.trust-page {
    --trust-teal: var(--tz-brand-blue);
    --trust-sand: #eef6fc;
}

.methodology-weight-grid i::after {
    background: linear-gradient(90deg, var(--tz-brand-blue), var(--tz-brand-sky));
}

.methodology-checks li::before,
.about-commitments span {
    background: var(--tz-brand-blue);
}

.methodology-score-steps strong,
.methodology-independence a {
    color: var(--tz-brand-blue-dark);
}

.methodology-independence {
    border-color: var(--tz-brand-line);
    background: linear-gradient(145deg, #eef6fc, #fff);
}

.methodology-independence div:last-child > p,
.contact-privacy {
    color: #45627e;
}

.about-model article:last-child,
.contact-privacy {
    border-color: var(--tz-brand-line);
    background: #eef6fc;
}

/* Voyager sereinement */
.serenity-page {
    --serenity-mint: var(--tz-brand-blue);
    background:
        radial-gradient(circle at 8% 4%, rgba(90, 169, 223, .13), transparent 28%),
        radial-gradient(circle at 92% 12%, rgba(37, 99, 235, .11), transparent 30%),
        #f7faff;
}

.serenity-hero {
    background:
        radial-gradient(circle at 85% 15%, rgba(90, 169, 223, .25), transparent 34%),
        linear-gradient(145deg, var(--tz-brand-navy-deep), #0e3f73);
}

.serenity-hero .serenity-kicker,
.serenity-closing .serenity-kicker {
    color: var(--tz-brand-sky-light);
}

.serenity-button-primary,
.serenity-roadmap li > span {
    color: #0b294b;
    background: #9ad3f8;
}

.serenity-check {
    background: #edf5fb;
}

.serenity-check strong {
    color: var(--tz-brand-blue-dark);
}

/* BudgetZy : l'ancien turquoise devient un bleu fonctionnel */
.budgetzy-step-eyebrow,
.budgetzy-hero-card > p,
.budgetzy-progress-heading strong,
.budgetzy-cost b,
.budgetzy-partner-link {
    color: var(--tz-brand-blue-dark);
}

.budgetzy-progress-list li.is-active,
.budgetzy-profile-icon,
.budgetzy-default-status {
    color: #0b4f84;
}

.budgetzy-progress-track span,
.budgetzy-breakdown-track span {
    background: linear-gradient(90deg, var(--tz-brand-blue), var(--tz-brand-sky));
}

.budgetzy-progress-list li.is-complete > span,
.budgetzy-button-primary,
.budgetzy-summary-item:first-child {
    background: linear-gradient(145deg, var(--tz-brand-blue), var(--tz-brand-blue-dark));
}

.budgetzy-choice input:checked + span,
.budgetzy-choice:has(input:checked) > span,
.budgetzy-cost input:focus,
.budgetzy-profile:has(input:checked),
.budgetzy-loading > span {
    border-color: var(--tz-brand-blue);
}

.budgetzy-loading > span {
    border-top-color: var(--tz-brand-blue);
}

/* TripMaker et CompareZy : suppression des anciens violets */
.tripmaker-page {
    --tripmaker-primary: var(--tz-brand-blue);
    --tripmaker-primary-dark: #0b4f84;
    --tripmaker-soft: #edf4fb;
}

.tripmaker-hero {
    background:
        radial-gradient(circle at 85% 15%, rgba(255, 255, 255, .16), transparent 28%),
        linear-gradient(135deg, var(--tz-brand-navy-deep) 0%, #0e3f73 54%, var(--tz-brand-blue) 100%);
    box-shadow: 0 26px 70px rgba(11, 44, 82, .22);
}

.tripmaker-hero .tripmaker-kicker {
    color: var(--tz-brand-sky-light);
}

.tripmaker-progress-track span {
    background: linear-gradient(90deg, var(--tz-brand-blue), var(--tz-brand-sky));
}

.tripmaker-step-list li.is-complete > span,
.tripmaker-match-score,
.tripmaker-reasons li::before,
.tripmaker-affiliate-link {
    color: var(--tz-brand-blue-dark);
}

.comparezy-page {
    background:
        radial-gradient(circle at 90% 0%, rgba(36, 116, 184, .11), transparent 29%),
        radial-gradient(circle at 5% 35%, rgba(90, 169, 223, .1), transparent 25%),
        var(--tz-cloud, #f5f8fc);
}

.comparezy-kicker,
.comparezy-select-card > span,
.comparezy-versus,
.comparezy-summary-item span,
.comparezy-flag-fallback,
.comparezy-budget-link {
    color: var(--tz-brand-blue-dark);
}

.comparezy-hero-card {
    border-color: var(--tz-brand-line);
    background: linear-gradient(150deg, #fff, #eef6fc);
}

.comparezy-hero-card > span,
.comparezy-button-primary,
.comparezy-matrix-header {
    background: linear-gradient(145deg, var(--tz-brand-blue), #0b4f84);
}

.comparezy-select-card.has-value,
.comparezy-select-card select:focus {
    border-color: var(--tz-brand-sky);
}

.comparezy-select-card.has-value {
    background: #f4f9fd;
    box-shadow: 0 0 0 3px rgba(36, 116, 184, .09);
}

.comparezy-select-card select:focus {
    outline-color: rgba(36, 116, 184, .12);
}

.comparezy-versus,
.comparezy-badges span,
.comparezy-affiliate-link,
.comparezy-flag-fallback {
    background: #eaf3fb;
}

.comparezy-loading > span {
    border-color: #dbe8f3;
    border-top-color: var(--tz-brand-blue);
}

.comparezy-affiliate-link {
    color: #0b4f84;
}

.comparezy-affiliate-link:hover {
    color: #fff;
    background: var(--tz-brand-blue-dark);
}

/* Encarts de maillage des articles */
.blog-article .blog-destination-links {
    border-color: var(--tz-brand-line);
    background: linear-gradient(145deg, #eef6fc, #fff);
}

.blog-destination-links-heading > span {
    color: var(--tz-brand-blue-dark);
}

.blog-destination-links-grid small {
    color: #5d7187;
}
